Перейти к содержанию

Как определить бота в мессенджере Telegram?#

Начиная с API месседжера Telegram версии 4.4.24 от GREEN-API появилась возможность определять ботов при отправлении и получении сообщений.

Для этого в вебхуки API были добавлены поля chatType и senderType, а также добавлены новые значения для поля type.

С помощью таблицы выберите удобный для вас метод или вебхук для отслеживания ботов в типе чата или отправителя. Поле будет принимать значение bot для Telegram ботов.

Поле Тип Описание Метод / Вебхук
chatType string Тип чата. Принимает значение: "user", "group", "supergroup", "channel", "bot" Добавлен в объект senderData в вебхуках. Добавлены в журнальные методы lastIncomingMessages, lastOutgonigMessages, getMessage, getChatHistory
senderType string Тип отправителя. Принимает значение: "user", "group", "supergroup", "channel", "bot" Добавлен в объект senderData в вебхуках. Добавлены в журнальные методы lastIncomingMessages, lastOutgonigMessages, getMessage, getChatHistory
type string Тип чата.
Может принимать значения: "user", "group", "supergroup", "channel", "bot"
Поле расширено в методе getChats

Пример полей chatType и senderType объекта senderData в вебхуках#

Отправитель бот

"senderData": {
    "chatId": "10000000",
    "chatType": "bot", 
    "sender": "10000000",
    "chatName": "Василиса Премудрая",
    "senderName": "Василиса Премудрая",
    "senderType": "bot", 
    "senderContactName": "Василиса Премудрая",
    "senderPhoneNumber": 79998887766
}

Бот отправляет сообщение в групповом чате

"senderData": {
    "chatId": "-10000000",
    "chatType": "group", 
    "sender": "10000000",
    "chatName": "Группа",
    "senderName": "Василиса Премудрая",
    "senderType": "bot",
    "senderContactName": "Василиса Премудрая",
    "senderPhoneNumber": 79998887766
}

Пример поля type в ответах методов getChats#

Пример ответа метода getChats

    {
        "chatId": "10000000",
        "name": "Василиса Премудрая",
        "type": "bot",  
        "phoneNumber": 79876543210
    }

Пример полей chatType и senderType в журнальных методах#

Пример ответа журнальных методов

{
    "type": "incoming",
    "idMessage": "1769676078000",
    "timestamp": 1769676078,
    "typeMessage": "textMessage",
    "chatId": "-10000000",
    "chatType": "group",  
    "textMessage": "Я использую GREEN-API для отправки этого сообщения!",
    "senderId": "20000000",
    "senderName": "Василиса Премудрая",
    "senderType": "bot",
    "senderContactName": "Василиса Премудрая",
    "deletedMessageId": "",
    "editedMessageId": "",
    "isEdited": false,
    "isDeleted": false
}