Документация / Вебхуки

Вебхуки

Настройте эндпоинт в разделе «Настройки → Вебхуки», и Meshwire будет отправлять POST-запросом подписанную JSON-нагрузку для каждого подписанного события.

Каталог событий

СобытиеОписание
bot.publishedОпубликована новая версия сценария
subscriber.createdНовый подписчик присоединился к боту
subscriber.blockedПодписчик заблокировал бота
broadcast.completedРассылка завершила отправку
broadcast.failedНе удалось отправить рассылку
message.inboundПолучено входящее сообщение

Проверка подписей

Каждый запрос включает заголовок X-Meshwire-Signature : шестнадцатеричный дайджест HMAC-SHA256 от исходного тела запроса, подписанный секретом вашего эндпоинта.

const expected = crypto
  .createHmac("sha256", endpointSecret)
  .update(rawBody)
  .digest("hex");

if (expected !== req.headers["x-botforge-signature"]) {
  return res.status(401).end();
}

Повторы и задержка

Доставки, не получившие ответ 2xx в течение 5 секунд, повторяются с экспоненциальной задержкой: 1 мин, 5 мин, 30 мин, 2 ч, затем 12 ч, в течение до 24 часов. После неудачи последней попытки эндпоинт помечается, и вам придёт уведомление по электронной почте. Эндпоинты с частотой сбоев более 50% за 1 час временно отключаются.

Пример полезной нагрузки

{
  "id": "evt_3n7f",
  "type": "broadcast.completed",
  "createdAt": "2024-05-02T14:03:11Z",
  "data": {
    "broadcastId": "bcast_7f1",
    "botId": "bot_9k2",
    "stats": { "total": 4210, "delivered": 4180, "blocked": 19, "failed": 11 }
  }
}

Читать дальше

Доставка, повторы и диагностика только для чтения

Исходящие вебхуки отправляют подписанный JSON-пейлоад на настроенный эндпоинт; входящие запускают сценарии по внешним событиям, и каждый триггер слушает своё имя события — один эндпоинт может вести несколько сценариев.\nДиагностика, которая касается самого Telegram — поставляемые скрипты smoke и diagnose, — строго read-only: они никогда не регистрируют вебхуки и не шлют команды, потому что диагностический инструмент, способный менять продакшн-состояние, — это инцидент на таймере. Регистрация происходит только внутри охраняемых потоков приложения.\nЕсли установка за прокси или WAF, страницу-челлендж может перехватить вызов вебхука; система распознаёт эту форму и предлагает жёсткое обновление вместо молчаливых повторов в ту же стену.