我用telegraf.js制作了电报机器人
bot工作正常,但是如果用户直接从bot内部发送消息,那么我需要处理另一件事情,比如bot应该重播帮助命令文档(例如)。
问题是:
如何重新定位用户开始聊天的地方?从内部聊天组还是直接从内部机器人?
我试过了
var groupInfo =await ctx.telegram.getChat()未获成功
我觉得解决办法很简单,但我现在还找不到。
谢谢你的进阶。
发布于 2021-11-09 11:34:45
您应该查看电报文档中的聊天类型。它有一个名为Type的字段,并根据文档:
聊天的类型,可以是“私有”、“组”、“超级组”或“频道”。
因此,在telegraf.js中,您可以通过以下方式检查字段:
bot.on('text', (ctx) => {
return ctx.reply(`Chat type is: ${ctx.message.chat.type}`)
})在您的示例中,ctx.message.chat.type == "private"是私下发送给bot的消息,而ctx.message.chat.type == "group"或ctx.message.chat.type == "supergroup"是发送给组的消息。
https://stackoverflow.com/questions/69895311
复制相似问题