Telegram Bot - как да получите Id за групов чат?
Използвам telegram_bot и се опитвам да получа groupChat id, за да изпращам известия в групов чат, но не знам кои методи трябва да използвам за това.
За получаването на id на чата използвам message.chat.id, когато ботът участва в чата, но кое трябва да използвам за получаването на id на груповия чат не мога да намеря/
125
3
За да получите идентификатора на груповия чат, направете следното:
Добавете Telegram BOT към групата.
Получете списъка с актуализации за вашия BOT:
Пример:
Потърсете обекта "chat":
Това е образец на отговора при добавяне на вашия BOT в група.
Ето последователността, която ми помогна, след като се борих в продължение на няколко часа:
Предполагаме, че името на бота е my_bot.
1- Добавете бота в групата.
Отидете в групата, щракнете върху името на групата, щракнете върху Add members (Добавяне на членове), в полето за търсене потърсете вашия бот по следния начин: @my_bot, изберете своя бот и кликнете върху добавяне.
2- Изпратете фиктивно съобщение на бота.
Можете да използвате този пример:
/my_id @my_bot
(Опитах няколко съобщения, не всички съобщения работят. Примерът по-горе работи добре. Може би съобщението трябва да започва с /)
3- Отидете на следния адрес:
https://api.telegram.org/botXXX:YYYY/getUpdates
Заменете XXX:YYYY с токена на вашия бот
4- Потърсете "chat":{"id":-zzzzzzzzzz,
-zzzzzzzzzz е вашият чат id (с отрицателен знак).
5- Тестване: Можете да тествате изпращането на съобщение до групата с помощта на curl:
Ако пропуснете стъпка 2, няма да има актуализация за търсената група. Също така, ако има няколко групи, можете да потърсите името на групата в отговора ("title":"group_name").
Надявам се това да помогне.
Можете да извлечете идентификатора на групата по същия начин. Той се появява в тялото на съобщението като
message.chat.id
и обикновено е отрицателно число, докато при нормалните чатове е положително.Идентификаторите на групи и на чатове могат да се извличат само от получено съобщение, няма налични повиквания за извличане на активни групи и т.н. Трябва да запомните идентификатора на групата, когато получите съобщението, и да го съхраните в кеш или нещо подобно.