电报机器人向自己发送消息但不在公共组中

Vik*_*pta 4 python telegram telegram-bot

我用@botfather 制作了一个电报机器人,并将该机器人提升为公共组的管理员。每当我尝试从 python 代码发送消息时,它总是将消息发送给自己,我的意思是在私人聊天中而不是在公共组中。

编写的代码快照:

bot_token = 'XXXXXXXXXXXXXXXXXXX'
bot_chatID = '395014927'
bot_message = "Testing"
send_text = 'https://api.telegram.org/bot' + bot_token + '/sendMessage?chat_id=' + bot_chatID + '&text=' + bot_message
response = requests.get(send_text)

response.json()
Run Code Online (Sandbox Code Playgroud)

如何让机器人在群组中发送消息,而不是发送给自己?

我在这里遗漏了什么还是我需要修改一些设置?

编辑(已解决):聊天组始终为负数。查找该号码以获取该组的聊天 ID。

Gam*_*7er 5

您应该向该组发送消息chat_id。您似乎正在向您的机器人本身或您自己发送消息。为什么?因为chat_id组或超组以-负号开头。例如:-1001331798505chat_id我的超级组

  "ok": true,
  "result": [{
    "update_id": 751829615,
    "message": {
      "message_id": 5968,
      "from": {
        "id": 223110107,
        "is_bot": false,
        "first_name": "\u011e\u0105me",
        "last_name": "\u01fever!",
        "username": "GameO7er",
        "language_code": "en"
      },
      "chat": {
        "id": -257326110,
        "title": "This group is not Super Group",
        "type": "group",
        "all_member                                                                                                                           s_are_administrators": true
      },
Run Code Online (Sandbox Code Playgroud)

如您所见,类型:组

这是超群的一个例子

 {
   "ok": true,
   "result": [{
     "update_id": 751829616,
     "message": {
       "message_id": 141,
       "from": {
         "id": 223110107,
         "is_bot": false,
         "first_name": "\u011e\u0105me",
         "last_name": "\u01fever!",
         "username": "GameO7er",
         "language_code": "en"
       },
       "chat": {
         "id": -1001241538300,
         "title": "this groups is supergroup",
         "type": "supergroup"
       },
       "date": 1568644531,
       "text": "A"
     }
   }]
 }
Run Code Online (Sandbox Code Playgroud)

如您所见,类型:supergroup

如果您不知道如何获取您的群组的 ID,您可以阅读此链接