Как «прикрутить» бота Telegram к Mikrotik
Сегодня я хотел бы рассказать о том, как реализовать отправку событий из Mikrotik в чат telegram.
Ни для кого не секрет, что Telegram, на данный момент, является самым быстрым мессенджером в мире, а мы все хотим получать оповещения о событиях максимально оперативно, отсюда и родилась идея данной статьи.
Итак, приступим.
Первое, что нам нужно сделать – создать собственного бота telegram.
Делается это довольно просто:
- Находим в поиске аккаунт с именем @botfather
- Нажимаем на кнопку Start в нижней части экрана
- После чего пишем ему команду /newbot
- Потом отвечаем на 2 несложных вопроса:
Первый вопрос – имя создаваемого бота Test1splaBot
Второй вопрос – ник создаваемого бота (должен оканчиваться на bot) Test_1spla_bot
- В ответ получим токен нашего бота, в моём случае, это 153358077:AAF4qYdUNIcWfp-SLtduVR18DuzqtXwEQAs
Затем, нужно найти нашего бота в поиске по имени @Test_1spla_bot и нажать на кнопку Start, чтобы его запустить.
После этого нужно создать групповой чат в telegram.
Делается это довольно просто:
- Нажимаем “Next”.
- Указываем название нашего чата, например, “Test_1spla_support”.
- Приглашаем нашего бота в данный чат, напомню, найти его теперь можно по имени @Test_1spla_bot
Итак, к данному моменту у нас есть бот, он активирован и приглашён в наш чат. Но он молчит.
Для того, чтобы заставить его говорить необходимо:
- Ввести в чате команду /join @Ник вашего бота, в моём случае, команда выглядела так: /join @Test_1spla_Bot
- После этого, нужно открыть браузер и ввести следующую строку https://api.telegram.org/botXXXXXXXXXXXXXXXXXX/get…
Где XXXXXXXXXXXXXXXXXX – токен вашего бота
- Откроется страница примерно следующего вида:
Находим на ней следующий текст:
“chat”:{“id”:-175202495
ИД групповых чатов начинаются с минуса, именно этот id нам и нужен.
Итак, мы собрали всю необходимую информацию для написания скриптов для Mikrotik’а, а именно:
Токен бота: 153358077:AAF4qYdUNIcWfp-SLtduVR18DuzqtXwEQAs
ID чата, куда он должен писать: -175202495
В RouterOS есть отличная консольная утилита для копирования файлов через ftp или http/https, утилита называется fetch, именно ей мы и будем пользоваться.
Для удобства, ниже я приведу 2 варианта кода, первый – для скриптов, второй – для написания сообщений при помощи окна терминала.
- /tool fetch url=”https://api.telegram.org/bot153358077:AAF4qYdUNIcWfp-SLtduVR18DuzqtXwEQAs/sendMessage?chat_id=-175202495&text=Vazhniy_tunnel_DOWN”
- /tool fetch url=”https://api.telegram.org/bot153358077:AAF4qYdUNIcWfp-SLtduVR18DuzqtXwEQAs/sendMessage\?chat_id=-175202495&text=Vazhniy_tunnel_DOWN”
Отличаются они только экранированием знака ? в URL.
Вот пример отправки сообщения из терминала микротика:
Вот так выглядит сообщение, отправленное в групповой чат:
По сути всё, скрипт отправки в чат готов и вы можете применять его в своих скриптах, в утилите NetWatch и многих других.
Если вы системный администратор или IT-директор, то у нас есть партнёрская программа с очень интересными предложениями по взаимовыгодному сотрудничеству.
С подробностями вы можете ознакомиться у нашего онлайн-консультанта, оставив контакты через форму обратной связи или позвонив по телефону (812) 425-12-19.
Если вам нужна помощь в настройке оповещений с оборудования или серверов, наши специалисты всегда готовы вам помочь.
Статью подготовил технический директор компании Первый Сервисный Провайдер Гавриш Артём.