我一直在使用telegram_bot,并试图获得groupChat id发送通知到组聊天,但不知道我必须使用哪些方法。

为了获得聊天id,当机器人参与聊天时,我使用message.chat.id,但我必须使用它来获得组聊天id,无法找到/


当前回答

2018年代中期之后: 1)邀请@getidsbot或@RawDataBot到你的组,并从聊天id字段获取你的组id。

Message
 ├ message_id: 338
 ├ from
 ┊  ├ id: *****
 ┊  ├ is_bot: false
 ┊  ├ first_name: 사이드
 ┊  ├ username: ******
 ┊  └ language_code: en
 ├ chat
 ┊  ├ id: -1001118554477    // This is Your Group id
 ┊  ├ title: Test Group
 ┊  └ type: supergroup
 ├ date: 1544948900
 └ text: A

2:)使用非官方的聊天工具,比如Plus Messenger,在群组/频道信息中查看你的群组id。

2018年年中之前:(不要使用) 1: Goto (https://web.telegram.org) 2:去你的Gorup,找到你的Gorup链接(https://web.telegram.org/#/im?p=g154513121) 3:复制g后面的数字,在前面加一个(-)-154513121 4:发送你的信息给Gorup 机器人。“嗨”sendMessage (-154513121) 我现在就测试了,效果很好

其他回答

您可以以同样的方式检索组ID。它以message.chat.id的形式出现在消息体中,通常是一个负数,而正常的聊天则是正数。

组id和聊天id只能从收到的消息中检索,没有可用的调用来检索活动的组等。收到消息时必须记住组ID,并将其存储在缓存或类似的东西中。

我对错误的第二个解决方案{"ok":true,"result":[]}

加入你的电报群 添加新用户(邀请) 搜索“getidsbot”=> @getidsbot 消息:/ start@getidsbot 现在您看到了ID。看起来像1068773197,对于bot来说是-1001068773197(前缀是-100)!! 把机器人踢出群组。 现在转到web浏览器,发送这一行(测试消息):

https://api.telegram.org/botAPITOKENNUMBER:APITOKENKEYHERE/sendmessage?chat_id=-100GROUPNUMBER&text=test

编辑API令牌和Group-ID!

如果您正在实现您的bot,则保留存储的组名-> id表,并使用命令询问它。然后还可以按名称发送。

要获取群聊id,请执行以下步骤:

将Telegram BOT添加到群组中。 获取BOT的更新列表:

https://api.telegram.org/bot<YourBOTToken>/getUpdates

Ex:

https://api.telegram.org/bot123456789:jbd78sadvbdy63d37gda37bd8/getUpdates

查找"chat"对象:

{“update_id”:8393年,“消息”:{“message_id”:3,"从":{" id ": 7474年,“first_name”:“AAA”},“聊天”:{" id ": < group_ID >,“标题”:"},“日期”:25497年,“new_chat_participant”:{" id ": 71年,“first_name”:“名字”,“用户名”:“YOUR_BOT_NAME”}}}

这是将BOT添加到组中时的响应示例。

使用"chat"对象的"id"发送消息。 (如果你用bot创建了一个新的组,你只得到{"ok":true,"result":[]},删除并重新添加bot到组中) 私有图表只适用于image argoprojlabs/argocd-notifications:v1.1.0或更高版本。

我想说的是一个非常具体的案例让我绕开了它。

我已经得到了上面步骤的chat_id格式如-1001379XXXXXX。因此,我假设真实的id是1001379XXXXXX,并将其以这样的格式留给grafana管理页面。但事实上,id得到了这个,作为积分部分。如果真的需要和数字一起复制。