Telegram Bot - hvordan får man et gruppechat-id?

Jeg har brugt telegram_bot og forsøger at få groupChat-id til at sende meddelelser til gruppechat, men jeg ved ikke, hvilke metoder jeg skal bruge til det.

For at få chat id bruger jeg til message.chat.id når bot deltog i chatten, men hvilken jeg skal bruge til at få gruppe chat id kan jeg ikke finde/

For at få gruppechat-id'et skal du gøre som følger:

    1. Tilføj Telegram BOT til gruppen.
  1. Få vist listen over opdateringer for din BOT:

     https://api.telegram.org/bot/getUpdates

    Eks:

     https://api.telegram.org/bot123456789:jbd78sadvbdy63d37gda37bd8/getUpdates
  2. Kig efter objektet "chat":

{"update_id":8393,"message":{"message_id":3,"from":{"id":7474,"first_name":"AAA"},"chat":{"id":,"title":" name>""},"date":25497,"new_chat_participant":{"id":71,"first_name":"NAME","username":"YOUR_BOT_NAME"}}}

Dette er et eksempel på svaret, når du tilføjer din BOT til en gruppe.

  1. Brug "id" af "chat" objektet til at sende dine beskeder.
Kommentarer (16)

Her er den sekvens, der virkede for mig efter at have kæmpet i flere timer:

Antag, at botnavnet er my_bot.

1- Tilføj bot til gruppen.
Gå til gruppen, klik på gruppens navn, klik på Tilføj medlemmer, i søgefeltet søg efter din bot på denne måde: @my_bot, vælg din bot, og klik på tilføj.

2- Send en dummy-besked til bot'en.
Du kan bruge dette eksempel: /my_id @my_bot
(Jeg prøvede et par meddelelser, ikke alle meddelelser virker. Eksemplet ovenfor virker fint. Måske skal beskeden starte med /)

3- Gå til følgende url: https://api.telegram.org/botXXX:YYYY/getUpdates
erstat XXX:YYYYYY med dit bot-token

4- Kig efter "chat":{"id":-zzzzzzzzzzzzzzzz,
-zzzzzzzzzzzzzzzz er dit chat-id (med det negative tegn).

5- Test: Du kan teste at sende en besked til gruppen med en curl:

curl -X POST "https://api.telegram.org/botXXX:YYYY/sendMessage" -d "chat_id=-zzzzzzzzzz&text=my sample text"

Hvis du ikke gennemfører trin 2, vil der ikke være nogen opdatering for den gruppe, du søger. Hvis der er flere grupper, kan du også kigge efter gruppens navn i svaret ("title":"group_name").

Jeg håber, at dette hjælper.

Kommentarer (10)

Du kan hente gruppe-id'et på samme måde. Det vises i beskedteksten som message.chat.id, og det er normalt et negativt tal, hvor normale chats er positive.

Gruppe-id'er og chat-id'er kan kun hentes fra en modtaget besked, der er ingen opkald til rådighed for at hente aktive grupper osv. Du skal huske gruppe-ID'et, når du modtager beskeden og gemme det i cache eller lignende.

Kommentarer (1)