Отправка уведомлений в Telegram с mikrotik

Отправка уведомлений с mikrotik в telegram

Есть у меня один прекрасный сервер, который имеет характерную особенность – зависать. В данной статье мы не будем рассматривать очевидные идеи по типу того, что не плохо бы найти причину этого зависания …

Я подумал, что было бы очень хорошо иметь оперативное уведомление о том что сервер более не доступен. Поехали!

Создаем в телеграмме нового бота. Отправляем контакту BotFather команду /newbot (кстати там можно и другие настройки делать, менять имя, устанавливать аватару и т.д.)

Задаем отображаемое имя бота в произвольном формате. Затем, задаем юзернейм для бота. Он должен быть без пробелов и содержать _bot в конце.

После этого BotFather отрапортует об успешном создании бота, и выдаст уникальный идентификатор (токен) для работы с ботом по API.

Выглядит он примерно вот так

111111111:AAEqbGdOUtAA7GK1TJSAEdy3vIUFAuE68vk

Открываем браузер, и заходим по адресу
https://api.telegram.org/botТОКЕН/getMe

В ответ получаем информацию в JSON формате
{“ok”:true,”result”:{“id”:111111111,”is_bot”:true,”first_name”:”vium”,”username”:”vium_bot”}}
Отлично! Двигаемся далее

Пишем нашему созданному боту команду /start. После любое сообщение, например test.

Открываем в браузере адрес
https://api.telegram.org/botТОКЕН/getUpdates

{“ok”:true,”result”:[{“update_id”:31449293,
“message”:{“message_id”:2,”from”:{“id”:311840248,”is_bot”:false,”first_name”:”Aleksey”,”last_name”:”Bear”,”username”:”bearscience”,”language_code”:”ru”},”chat”:{“id”:311840248,”first_name”:”Aleksey”,”last_name”:”Bear”,”username”:”bear”,”type”:”private”},”date”:1559536164,”text”:”\u0432\u0430″}}]}

Из этого ответа берем ID, я выделил их …
Теперь если вы в браузере откроете строку
https://api.telegram.org/botТОКЕН/sendMessage?chat_id=ID&text=MESSAGE то сообщение будет доставлено в ваш бот. (Я надеюсь понятно что нужно вставить свой токен, ID и текст сообщения).

Касаемо уведомления с mikrotik, то тут все просто:
Заходим в Tools>Netwatch. Добавляем там цель для пинга.
Там же можем видеть две вкладки Up & Down. Это скрипты, которые исполняются при событии когда хост поднялся или упал.
Вставляем уже полученную строку для отправки сообщения туда в виде
tool fetch url=” https://api.telegram.org/botТОКЕН/sendMessage?chat_id=ID&text=Server alive!” dst-path=log.txt

Вот собственно и всё. Вместо того чтобы отремонтировать сервер, я просто сделал костыль и подставил под сервер. Следующим этапом будет автоматическая перезагрузка при зависании :-DDD
p.s. данная информация документирована на сайте телеграмм, и я потратил всего 10-15 минут для реализации данной задачи.

Будьте здоровы!

Ничего сложного …

Отправка уведомлений в Telegram с mikrotik: 3 комментария

    1. Вы можете использовать прокси сервер и он будет работать. Пробовали? Если нужна помощь пишите
      1. Такой вариант не рассматривал. Если подскажете буду очень благодарен.

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *