Оплаты, заказы и сбои в рабочем чате
Интернет-магазину нужно сообщать менеджеру о новом заказе, SaaS-сервису — об оплате счета, а разработчикам — об ошибке фоновой задачи. Во всех трех случаях приложение уже знает о событии. Передайте его в Alert4Me, чтобы выбирать получателей по правилам и проверять результат в одном журнале.
Alert4Me принимает JSON по HTTP API. Канал Telegram задает чат доставки, а правило связывает его с источником, типом события и условиями по полям данных. Например, оплаты направляются менеджерам, а ошибки приложения — разработчикам.
Как настроить отправку уведомлений
- Создайте аккаунт и API-ключ для приложения. Храните ключ на сервере, вне клиентского JavaScript.
- Подготовьте Telegram-бота, добавьте его в нужный чат и настройте канал с токеном бота и chat_id. Подключение через управляемого бота зависит от настроек сервиса; для него может потребоваться помощь поддержки.
- Создайте правило: источник billing, тип invoice.paid и Telegram-канал команды.
- Отправьте событие по примеру HTTP-запроса в документации.
- Откройте журнал и проверьте, какое правило сработало и чем закончилась попытка доставки.
Какие данные передать из приложения
Для оплаты подойдет событие с source: billing, type: invoice.paid и данными data.title, data.description. В заголовке можно указать «Оплачен счет», а в описании — номер заказа и сумму. Не передавайте реквизиты карты, пароли и другие данные, которым не место в общем чате.
Формат CloudEvents сохраняет общий контракт для разных приложений. Поля source и type помогают настроить правила фильтрации, а data содержит полезную нагрузку. Когда нужны разные сообщения об одном заказе, задавайте отдельный id каждому реальному событию.
Что означает ответ 202 и где искать ошибку
Ответ 202 Accepted означает, что API принял событие для последующей обработки. Он не подтверждает, что сообщение уже появилось в Telegram или было прочитано человеком. Результат проверяйте в журнале доставки.
Если сообщения нет, проверьте включенность правила, совпадение source и type, права бота в чате и настройки канала. Для передачи событий в собственный сервис вместо чата подойдетдоставка через Webhook.