Самый простой способ отправить сообщение из скрипта в Telegram: отправьте /start этому боту Notifine, и он выдаст чату адрес вебхука; всё, что вы отправите на этот адрес POST-запросом, придёт обычным текстом. Бесплатно, открытый код, без своего токена и аккаунта.
Beep Beep — бот «простых уведомлений через вебхук» из Notifine, проекта с открытым кодом на Rust от разработчика Мехмета Хюсейина Кафадара, где есть также боты для GitHub, GitLab и мониторинга. README прямо ссылается на этого бота, а проект публикует страницу доступности своих ботов.
Панели нет, настраивать нечего. Отправьте /start в личном чате, группе или теме форума, и бот ответит адресом на webhook.notifine.com для этого чата. С этого момента POST-запрос с любым текстом в теле — из cron-задачи, скрипта бэкапа, шага CI или домашнего сервера — приходит в чат сообщением. По исходному коду тело отправляется обычным текстом с экранированными HTML-символами, а пустое тело игнорируется.
Из простоты следуют и ограничения. Нет форматирования, файлов, выбора получателя для отдельного сообщения и никакой защиты, кроме секретности самого адреса: кто его узнает, сможет писать в ваш чат, поэтому не кладите его в публичные репозитории. Если нужно форматирование или гарантии, создайте своего бота в BotFather и вызывайте Bot API; для быстрого «бэкап готов» Beep Beep избавит от этой работы.
/startПолучить адрес вебхука для этого чатаБесплатно
| Критерий | Вес | Баллы | |
|---|---|---|---|
| Функциональность | 25 | 7 / 10 | |
| Надёжность и скорость | 15 | 8 / 10 | |
| Популярность и доверие | 15 | 3 / 10 | |
| Цена и бесплатный тариф | 10 | 10 / 10 | |
| Удобство | 10 | 8 / 10 | |
| Безопасность и приватность | 10 | 6 / 10 | |
| Актуальность | 5 | 8 / 10 | |
| Локализация | 5 | 5 / 10 | |
| Отсутствие навязчивой рекламы | 5 | 10 / 10 | |
| Балл | 100 | 69.0 |
Отправьте текст телом POST-запроса на адрес, который дал бот, например curl -d "Бэкап готов" и затем адрес. Текст придёт в чат обычным сообщением.
Обращайтесь с ним как с паролем: бот не проверяет, кто отправил запрос, так что писать в чат сможет любой, у кого есть адрес. Храните его в переменной окружения, а не в публичном репозитории.