Получение уведомлений через Webhook Endpoint#
Технология Webhook Endpoint позволяет выполнять получение входящих уведомлений непосредственно на ваш сервер. Это означает, что сервер GREEN-API будет выполнять вызов метода, опубликованного на стороне вашего сервера. Преимуществами данной технологии является максимально быстрое получение входящих уведомлений и высокая пропускная способность, ограниченная только скоростью обработки уведомлений на стороне вашего сервера. К недостаткам можно отнести сложность реализации.
Сервер GREEN-API выполняет попытки доставки уведомлений с интервалом в 1 минуту. Поэтому, настраивайте свой сервер таким образом, чтобы он всегда был доступен для обработки входящих уведомлений, либо воспользуйтесь технологией Получение уведомлений через HTTP API. Доставка входящих уведомлений гарантируется в течение 24 часов. Скорость отправки вебхуков составляет порядка 50 уведомлений в 1 секунду (20 мсек на 1 вебхук).
Настройка сервера#
Для получения входящих уведомлений по технологии Webhook Endpoint потребуется выполнить следующие шаги:
- опубликовать IP-адрес в Интернете
- реализовать логику обработки входящих уведомлений на указанный IP-адрес
- если требуется для сервера, то установить Webhook URL Token
Публичный IP-адрес#
Для получения входящих уведомлений требуется наличие публичного IP-адреса (endpoint), который будет доступен из сети Интернет. Таким образом сервер GREEN-API сможет выполнить вызов вашего сервера по указанному адресу и передать входящее уведомление.
Наши публичные IP-адреса, с которых отправляются уведомления#
Вы можете указать следующие IP адреса, с которых приходят уведомления от нас, в настройках безопасности вашего сервера:
46.101.109.139
51.250.12.167
51.250.84.44
51.250.95.149
89.169.137.216
158.160.49.84
165.22.93.202
167.172.162.71
104.248.252.93
Обработка входящих уведомлений#
После получения входящего вызова на IP-адрес вашего сервера потребуется выполнить обработку полученного уведомления.
Настройка инстанса#
Перед получением входящих уведомлений требуется выполнить настройку инстанса. Настройка инстанса может быть выполнена программно с использованием метода SetSettings, либо интерактивно в интерфейсе личного кабинета.
Настройка методом SetSettings#
Для настройки получения входящих уведомлений по технологии Webhook Endpoint требуется указать в качестве параметра webhookUrl
значение вашего IP-адреса или вашего доменного имени, и, если необходимо, webhookUrlToken
для доступа на ваш сервер. Например:
https://84.211.100.201:3000/green-api/webhook/
Также требуется указать какие виды уведомлений необходимо получать. Для включения входящих уведомлений по видам, а также для указания параметра webhookUrl
и webhookUrlToken
воспользуйтесь методом SetSettings.
Пример тела запроса метода SetSettings#
{
"webhookUrl": "https://84.211.100.201:3000/green-api/webhook/",
"webhookUrlToken": "dscnsdiuafkascndjhsalbcvatsvcbasn23rfregvfdg54tds",
"outgoingWebhook": "yes",
"stateWebhook": "yes",
"incomingWebhook": "yes",
"deviceWebhook": "no"
}
Настройка в личном кабинете#
Настройку получения входящих уведомлений можно также выполнить интерактивно. Для этого перейдите в Личный кабинет и выберите требуемый инстанс. Если инстанс авторизован, то будут отображены настройки для получения входящих уведомлений см. рис. Укажите значение параметра webhookUrl
, а также переключатели по видам уведомлений и, если необходима авторизация на вашем вебхук сервере, Webhook URL Token. Если инстанс не авторизован и настройки уведомлений не отображаются, обратитесь к разделу Перед началом работы.
Получение входящих уведомлений#
После выполнения настройки инстанса можно приступать к получению уведомлений.
Отладка входящих уведомлений#
Для отладки входящих уведомлений можно использовать любой бесплатный сервис в Интернет, например сервис webhook.site. Сервис выдает уникальный адрес (URL), который требуется установить в качестве значения параметра webhookUrl
.
Подробное описание формата входящих уведомлений представлено в разделе Формат входящих уведомлений.