Идентификатор чата#
Идентификатор чата (chatId) — это уникальный маркер, необходимый для корректной отправки сообщений через GREEN-API. Он может принадлежать как человеку, так и группе. В случае группового чата идентификатор чата может содержать знак минус "-".
Формат chatId
- Личный чат:
"10000000"(положительное число) - Группа:
"-10000000000000"(всегда начинается с минуса)
Совет: В API идентификатор передается как строка, но в базе данных его лучше хранить как число для экономии места.
Как получить идентификатор чата?#
Идентификатор чата можно получить:
-
При обработке входящих уведомлений
Идентификатор чата будет указан в поле
"senderData": "sender"
Пример уведомления:{ "typeWebhook": "incomingMessageReceived", "instanceData": { "idInstance": 4100000000, "wid": "79876543210@c.us", "typeInstance": "tgm" }, "timestamp": 1588091580, "idMessage": "1769676078000", "senderData": { "chatId": "10000000", "sender": "10000000", "chatName": "Василиса Премудрая", "senderName": "Василиса Премудрая", "senderContactName": "Василиса Премудрая", "senderPhoneNumber": 79876543210 }, "messageData": { "typeMessage": "textMessage", "textMessageData": { "textMessage": "Я использую GREEN-API для отправки этого сообщения!" } } } -
Через журнал входящих сообщений LastIncomingMessages
Идентификатор чата будет указан в поле
"senderData": "sender"
Пример сообщения в журнале:{ "typeWebhook": "incomingMessageReceived", "instanceData": { "idInstance": 4100000000, "wid": "79876543210@c.us", "typeInstance": "tgm" }, "timestamp": 1588091580, "idMessage": "1769676078000", "senderData": { "chatId": "10000000", "sender": "10000000", "chatName": "Василиса Премудрая", "senderName": "Василиса Премудрая", "senderContactName": "Василиса Премудрая", "senderPhoneNumber": 79876543210 }, "messageData": { "typeMessage": "textMessage", "textMessageData": { "textMessage": "Я использую GREEN-API для отправки этого сообщения!" } } } -
Методом получения списка контактов GetContacts
Идентификатор чата будет указан в поле
"chatId"
Пример контакта:{ "chatId": "10000002", "name": "Царевна Лягушка", "contactName": "Царевна Лягушка", "type": "user" } -
Методом проверки существования аккаунта по номеру телефона CheckAccount.
Идентификатор чата будет указан в поле
"chatId"
Пример ответа:{ "exist": true, "chatId": "10000000" }
Отправка сообщений по идентификатору чата#
Рекомендуется отправлять сообщения по идентификатору чата (chatId).
- Если Идентификатор чата известен, то используйте его в методах отправки сообщений SendMessage и др.
- Если Идентификатор чата неизвестен, то сначала используйте метод CheckAccount, получите значение
chatId, и далее используйтеchatIdв методах отправки сообщений SendMessage и др.
Отправка сообщений по номеру телефона#
Для поддержки обратной совместимости с предыдущими версиями интерфейса допускается указывать номер телефона клиента в формате phoneNumber@c.us в качестве идентификатора чата в методе отправки сообщений SendMessage и др.
Рекомендуется сначала получать Идентификатор чата методом CheckAccount, а затем выполнять отправку по полученному значению chatId, а не по номеру телефона.