Subscribe#
Настраивает доставку входящих событий (уведомлений) бота через Webhook.
Запрос#
Поля запроса#
| Поле | Тип | Обязательный | Описание |
|---|---|---|---|
url | string | Да | URL-адрес вашего сервера (Webhook), на который будут приходить POST-запросы с обновлениями. |
update_types | array | Нет | Список типов обновлений. Если не передан, бот будет получать все доступные типы обновлений. Возможные значения: |
bot_added - Бот добавлен в чат или группу | |||
bot_removed - Бот удален из чата или группы | |||
bot_started - Пользователь нажал кнопку «Старт» или возобновил работу с ботом | |||
bot_stopped - Пользователь заблокировал бота или остановил его работу | |||
chat_title_changed - Изменено название группового чата | |||
dialog_muted - Уведомления в диалоге отключены пользователем | |||
dialog_unmuted - Уведомления в диалоге снова включены | |||
dialog_cleared - История сообщений в диалоге очищена, но сам чат не удален | |||
dialog_removed - Диалог полностью удален из списка чатов | |||
message_created - Получено новое входящее сообщение | |||
message_callback - Обработка нажатия на инлайн-кнопку | |||
message_edited - Ранее отправленное сообщение было изменено | |||
message_removed - Сообщение было удалено из истории переписки | |||
user_added - В чат добавлен новый участник | |||
user_removed - Участник покинул чат или был из него удален | |||
secret | string | Нет | Секретный токен для верификации входящих запросов на вашем сервере. Будет передаваться сервером MAX в заголовках. |
Пример запроса#
response, err := bot.Updates.Subscribe(
context.Background(),
models.SubscribeReq{
Url: "https://webhook.site/my-bot-endpoint",
UpdateTypes: []m.UpdateType{
"message_created",
"message_callback",
},
Secret: "my-secret-token",
}
)
Синхронный метод:
response = bot.subscriptions.Subscribe(SubscribeReq(
url="https://webhook.site/my-bot-endpoint",
secret="my-secret-key"
))
Асинхронный метод:
response = await bot.subscriptions.SubscribeAsync(SubscribeReq(
url="https://webhook.site/my-bot-endpoint",
secret="my-secret-key"
))
Ответ#
Поля ответа#
| Поле | Тип | Описание |
|---|---|---|
success | boolean | Флаг успешного выполнения операции (true или false) |
message | string | Текстовое сообщение с подробностями выполнения или ошибкой |
Пример тела ответа#
{
"success": true,
"message": "Webhook has been successfully set"
}