这个端点是用新版本的telgraf https://github.com/telegraf/telegraf/releases/tag/v4.0.0#:~:text=ctx.updateSubTypes删除的。
如何使用新的API检测消息类型
这是旧的ctx复现
发布于 2021-03-14 10:41:29
这是ctx.updatesubtypes
AKA在telegraf 3中获取消息类型的一种替代用法。
bot.use((ctx, next) => {
console.log(`Message Type is: ${getMessageType(ctx.message)}`);
// Message Type is: STICKER or Message Type is: TEXT
});
const getMessageType = (message) => {
var keys = Object.keys(message);
var messageType = keys.pop();
console.log(messageType);
return messageType.toUpperCase();
};
发布于 2022-01-23 12:46:57
在4.6.0中使用ctx.updatesubtypes的一个good
替代方案是:
bot.use((ctx, next) => {
let message_type = "";
let keys = Object.keys(ctx.message);
if (keys.includes("text")) {
message_type = "text";
} else if (keys.includes("sticker")) {
message_type = "sticker";
} else if (keys.includes("photo")) {
message_type = "photo";
}
console.log(`Message Type is: ${message_type}`);
next();
});
https://stackoverflow.com/questions/66623191
复制相似问题