创建电报机器人后,访问并管理此机器人通道。如何在用户加入此频道时获取频道成员列表或事件?
答案 0 :(得分:13)
对目前的答案感到非常失望,所以我会留下一个更新的(截至2018年2月)答案,解释如何使用Telegram API本身以及我正在使用的框架,Telegraf for Node。
Telegram API非常强大,就API而言非常简单。如果您正在使用获取更新的轮询方法,而不是另外一个问题的websockets,那么检查是否有人将新的内容添加到组或频道中非常容易。
API方法getUpdates
返回Update
个对象的数组,其中包含您可能需要的所有可能信息,包括发送的任何消息,内联查询和新聊天成员。要获得任何新的聊天成员,您只需访问将包含一系列新用户的update.message.new_chat_members
。作为参考,您可以查看API文档here。
要在浏览器中或使用curl获取更新对象,您只需向https://api.telegram.org/botYOUR-BOT-TOKEN/getUpdates发送GET或POST请求即可。然后只需查看messages->new_chat_members
。
如果您正在使用带有NodeJ的Telegraf bot框架,则可以使用bot.on
方法和事件new_chat_members
。
示例:
bot.on('new_chat_members', (ctx) => console.log(ctx.message.new_chat_members))
我知道这是前一段时间被问过的,但我希望这有助于其他人搜索。
答案 1 :(得分:3)
https://api.telegram.org/bot< botapitoken >/getChatMember?chat_id=<@channelusername>&user_id=< user_id >
答案 2 :(得分:0)
答案 3 :(得分:-1)
是的!您可以使用:
https://api.telegram.org/bot[TOKEN]/promoteChatMember?chat_id=@[channelname]&user_id=[user_id]
如果已加入用户,则响应正常,否则响应不正常。