【发布时间】:2021-04-24 06:47:09
【问题描述】:
关于电报机器人,我如何通过 getupdates (https://api.telegram.org/bot/getupdates) 之类的 url 从特殊聊天(不是所有聊天,按聊天 ID)获取 json 信息。
因为我从 getupdates 获得的信息很少,所以我想知道每个组和聊天中的成员 ID 和消息 ID 等信息。
【问题讨论】:
标签: url telegram telegram-bot
关于电报机器人,我如何通过 getupdates (https://api.telegram.org/bot/getupdates) 之类的 url 从特殊聊天(不是所有聊天,按聊天 ID)获取 json 信息。
因为我从 getupdates 获得的信息很少,所以我想知道每个组和聊天中的成员 ID 和消息 ID 等信息。
【问题讨论】:
标签: url telegram telegram-bot
没有办法专门通过聊天 ID 过滤更新(API不允许允许),但如果不是在您自己的代码中,您仍然可以按其类型过滤更新。
这是一个关于如何仅过滤回调查询和消息的示例:
api.telegram.org/bot{token}/getUpdates?allowed_updates=["callback_query","message"]
注意:如BotApi Documentation 上所写,即使您在getUpdates 上传递allowed_updates 参数,也只会过滤新收到的更新:
请注意,此参数不会影响之前创建的更新 调用 getUpdates,因此可能会收到不需要的更新 很短的时间。
此处列出了所有可能的更新类型:core.telegram.org/bots/api#update
【讨论】:
知道聊天的ID,可以使用以下方法:
getChat - 获取有关聊天的最新信息。
getChatAdministrators - 获取聊天中的管理员列表。
getChatMembersCount - 获取聊天中的成员数量。
Int
getChatMember - 获取有关聊天成员的信息。
所有这些方法都需要chat_id 参数,可以是Integer 或String 类型。您可以指定聊天或频道用户名,例如@channelusername
示例请求:
https://api.telegram.org/bot<API_TOKEN>/getChat?chat_id=<CHAT_ID>
【讨论】: