在Python-telegram-bot中,如果可能的话,如何获得添加机器人的组的所有参与者的完整列表?
您不能使用当前的API,但可以通过它的API加入/退出用户成员.
如果您检查Message对象,则会发现:
new_chat_participant:一个新成员被添加到该组,有关他们的信息(该成员可能是机器人本身)
left_chat_participant:一个成员被从组中删除,有关他们的信息(该成员可能是机器人本身)
因此,通过这两个信息,您可以跟踪聊天中的用户总数以及他们的身份.
基本策略是在某个地方(如数据库)存储从组中加入和退出用户的事件.
当用户加入聊天存储时,将对象User存储到存储中.当用户退出聊天时,从存储中删除对象User.
然后根据需要做逻辑.
此外,最新的API更新允许您:
telegram.getChatMembersCount(chat_id):使用此方法获取聊天中的成员数.
telegram.getChatMember(chat_id,user_id):使用此方法获取有关聊天成员的信息.
您可以结合使用new_chat_participant和left_chat_participant策略来构建有关组的信息.
更多信息:
http://pythonhosted.org/python-telegram-bot/telegram.bot.html?highlight=telegram.bot#telegram.bot.Bot.getChatMembersCount
http://pythonhosted.org/python-telegram-bot/telegram.bot.html?highlight=telegram.bot#telegram.bot.Bot.getChatMember