创建电报机器人后,访问并管理该机器人到通道。当用户加入该频道时,如何获取频道成员列表或事件?
发布于 2018-02-05 15:57:47
对目前的答案非常失望,所以我将留下一个更新的答案(截至2018年2月),解释如何使用Telegram API本身以及我正在使用的框架Telegraf for Node来实现这一点。
Telegram API既非常强大,就API的go而言也相当简单。如果你使用轮询的方法来获取更新,而不是websockets,这是另一个问题,检查是否有新的人被添加到组或通道中是非常容易的。
getUpdates方法返回一个Update对象数组,其中包含您想要的所有可能信息,包括发送的任何消息、内联查询和新的聊天成员。要获得任何新的聊天成员,您只需访问update.message.new_chat_members,其中将包含一组新用户。有关参考信息,请参阅API文档here。
要在浏览器中或使用curl获取更新对象,您需要做的就是向https://api.telegram.org/botYOUR-BOT-TOKEN/getUpdates发送GET或POST请求。那就去找messages->new_chat_members吧。
如果你在NodeJs中使用Telegraf机器人框架,你可以在事件new_chat_members中使用bot.on方法。
示例:
bot.on('new_chat_members', (ctx) => console.log(ctx.message.new_chat_members))我知道不久前有人问过这个问题,但我希望这能帮助其他人搜索。
发布于 2020-01-07 02:36:37
发布于 2020-09-20 22:59:13
是!您可以使用以下命令:
https://api.telegram.org/bot[TOKEN]/promoteChatMember?chat_id=@[channelname]&user_id=[user_id]
如果用户加入响应是ok,否则响应就不是ok。
https://stackoverflow.com/questions/38324448
复制相似问题