Задать вопрос

The Dude. Как отправлять уведомления в Telegram?

Создал в Telegram своего бота и канал. Научился отправлять в созданный канал уведомления из RouterOS. Но как настроить сервер мониторинга The Dude для отправки уведомлений пока не понимаю..((

Предполагаю, что нужно воспользоваться командой вида:
ros_command("/tool fetch url="https://api.telegram.org/bot........

Но куда, как, в какой последовательности ее прописать, создавать для этого службу, уведомление или что-то еще, - все это еще не понятно.

Вопрос особенно интересен применительно к современной версии сервера The Dude, работающего в RouterOS, а не на Windows.
  • Вопрос задан
  • 7941 просмотр
Подписаться 3 Оценить Комментировать
Помогут разобраться в теме Все курсы
  • Нетология
    1C-программист: расширенный курс
    18 месяцев
    Далее
  • Академия Эдюсон
    Python-разработчик + ИИ
    9 месяцев
    Далее
  • ProductStar × РБК
    Профессия: Инженер по информационной безопасности
    9 месяцев
    Далее
Решения вопроса 2
nafigat
@nafigat Автор вопроса
Вопрос давно решился, но забыл отписаться вовремя. Работает следующий вариант нотификации в дуде (Type: execute on server):

/tool fetch url="https://api.telegram.org/botXXXXXXXXX:XXXXXXXXXXXXXXXXXXXXXXXX/sendMessage?chat_id=-10XXXXXXXXXXXXX&parse_mode=HTML&text=at <b>[TimeAndDate]</b> %0A\
on map <b>[Device.NetMaps]</b> %0A\
Device IP <b>[Device.Name]</b> %0A\
Probe <b>[Probe.Name]</b> %0A\
Status <b>[Service.Status]</b> %0A\
Problem Description: <b>[Service.ProblemDescription]</b> %0A\
Changed since <b>[Service.TimeSinceChanged]</b> %0A\
Last time up <b>[Service.TimeLastUp]</b> \
" keep-result=no


Это реальный пример с переносами, выделениями жирным и пр. "лишними" мелочами, достойными удаления.
Ответ написан
@moneron89
Сертифицированный тренер Mikrotik
На данный момент - никак. Я лично писал по этому поводу в саппорт. Мне ответили, что меня поняли, и возможно, со временем, добавят функционал утилиты fetch в notifications, но на данный момент -- никак, увы.
Ответ написан
Пригласить эксперта
Ответы на вопрос 3
hwsun
@hwsun
Обратите внимание, что если отправлять сообщение с RouterOS так:
/tool fetch url="https://api.telegram.org/botXXXXXXXXXXXXXXXXXX/sendMessage?
chat_id=-XXXXXX&text=Your text"
то после каждой отправки сообщения в ФС устройства будет загружаться файл.
Ответ написан
@ayapov86
Все это делается через "remote syslog"
У меня работает, по крайне мере
Ответ написан
@Preheater1
Для всех тех, кто оказался тут после недавних обновлений RouterOS выкладываю вышеупомянутый скрипт в JSON.
Обязательно изменить ЧАТИД и БОТИД на свои.
/tool fetch http-method=post http-header-field="Content-Type: application/json" http-data="{\"chat_id\":\"ЧАТИД\",\"text\":\"at [TimeAndDate]\nOn map [Device.NetMaps]\nDevice IP [Device.Name]\nProbe [Probe.Name]\nStatus [Service.Status]\nProblem Description: [Service.ProblemDescription]\nChanged since [Service.TimeSinceChanged]\nLast time up [Service.TimeLastUp]\"}" url="https://api.telegram.org/botБОТИД/sendMessage" keep-result=no
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы