Dude + Scripting + telegram

Здесь выкладываем скрипты
vqd
Модератор
Сообщения: 3784
Зарегистрирован: 26 сен 2013, 14:20
Откуда: НСК
Контактная информация:

Dude + Scripting + telegram

Сообщение vqd » 10 янв 2017, 05:29

Что то утро оказалось продуктивным. Заказы все сделал и собственно делать нечего больше.

Думаю дай ка я прикручу телеграм к Dude и заодно вспомню как скрипты на микротике по событию в Dude выполнять да еще и с параметрами

И так:

1. На микротике создаем скрипт с функцией, в моем случае имя скрипта TelegramSend

Код: Выделить всё

:global TelegramSend do={
:local id %You_telegram_id%
:local chatid %Chat_id%
:local str
:set str ($device . " - " . $status . " " . [/system clock get time])
/log warning $str
/tool fetch keep-result=no url=("https://api.telegram.org/bot" . $id . "/sendMessage\?chat_id=" . $chatid . "&text=" . $str)
}


Помещаем ее в автозагрузку при старте микротика

Код: Выделить всё

/system scheduler
add name=TelegramSend on-event="/system script run TelegramSend " start-time=startup


Собственно инициируем функцию

Код: Выделить всё

/system script run TelegramSend


Дальше идем в Dude и создаем notification (к сожалению скриптом создать не получилось и потому тупо пишу параметры)

Name = Telegram
Enable = yes
Type = execute on server
script = [$TelegramSend device=[Device.Name] status=[Service.Status]]

Собственно все, на схеме добавляем уведомление на нужном устройстве.

Делалось на Dude v6.39rc7
Есть интересная задача и бюджет? http://mikrotik.site
vqd
Модератор
Сообщения: 3784
Зарегистрирован: 26 сен 2013, 14:20
Откуда: НСК
Контактная информация:

Re: Dude + Scripting + telegram

Сообщение vqd » 10 янв 2017, 10:22

Собственно позвонил мне человек тему эту прочитавший и говорит:- "Вячеслав, хочу что бы сообщения отправлялись по списку chat_id (всем нашим админам) и что бы в случае недоступности сервера телеграм дублировались в виде СМС через УСБ модем, все тем же админам, вот вам благодарность моя за оперативность в решении"

Ну надо так чего же не сделать то. Со списками скрипт выкладывать не буду, а вот дублирование по средствам СМС через УСБ модем ловите. СМС уходит только в случае если сервер Телеграм не доступен по какой либо причине

Код: Выделить всё

:global TelegramSend do={
:local phone 89134552316
:local id %You_telegram_id%
:local chatid %Chat_id%
:local str
:set str ($device . " - " . $status . " " . [/system clock get time])
/log warning $str
:do {
/tool fetch keep-result=no url=("https://api.telegram.org/bot" . $id . "/sendMessage\?chat_id=" . $chatid . "&text=" . $str)
/log warning "Message send to Telegram"
} on-error={
/tool sms send usb3 phone-number=$phone message=$str channel=0
/log warning "Message send to SMS"
}
}
Есть интересная задача и бюджет? http://mikrotik.site

Вернуться в «Готовые скрипты Mikrotik»

Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и 3 гостя