Вебхук не приходит
Порядок проверки
- Модуль «Интеграции» включён?
- Вебхук включён? Проверьте в списке
/вебхук список. - Тот ли адрес? Скопируйте его заново из настроек Kizora.
- Тот ли источник? GitHub, GitLab и «свой» проверяют разные заголовки.
- Совпадает ли секрет? Это причина большинства отказов.
- Присылает ли отправитель идентификатор доставки? Без него запрос не принимается.
- Указан ли канал и может ли бот в него писать?
- Что в журнале доставок?
/вебхук журнал.
Что говорит журнал
| Состояние | Что чинить |
|---|---|
| Не принято | Секрет, подпись, отметка времени или размер тела |
| Ждёт отправки | Ничего: событие в очереди |
| Отказ Discord | Канал удалён или у бота нет права писать |
| Исход неизвестен | Посмотрите канал глазами: сообщение могло уйти |
| Не показывается | Сервер настроен не публиковать такое событие |
| Доставлено | Всё в порядке — ищите сообщение в канале |
Частые случаи
- GitHub показывает 401 или 403. Секрет в репозитории не совпадает с секретом Kizora. Перевыпустите:
/вебхук новый-секрет, затем укажите новый в репозитории. - Свой сервис получает отказ по отметке времени. Часы отправителя расходятся с реальным временем больше чем на минуту.
- Свой сервис получает отказ по подписи. Подписывается строка
<отметка времени>.<идентификатор доставки>.<тело>, а не одно тело. - Приходит один раз и больше нет. Повторы с тем же идентификатором доставки отмечаются дубликатами — это защита, а не сбой.
Секрет потерян
Секрет показывается один раз. Восстановить его нельзя — только перевыпустить. Старый перестаёт работать сразу, поэтому обновите его у отправителя.