сообщение при подключении к VPN

Автоматизация при помощи встроенного скриптового языка и RouterOS API
playful2017
Сообщения: 3
Зарегистрирован: 23 янв 2018, 11:28

сообщение при подключении к VPN

Сообщение playful2017 » 23 янв 2018, 11:35

добрый день, подскажите пожалуйста как реализовать,
я хочу сделать информирование, о подключении клиента к vpn, через e-mail.
1.JPG
1.JPG (22.83 КБ) 3187 просмотров
первая команда не выводит вообще никакого результата(хотя подключение есть)
вторая команда выводит, но при добавлении в скрипт и выполнении его, приходит не данные а пустое сообщение.
скрин скрипта
2.JPG
2.JPG (17.11 КБ) 3187 просмотров
так же на просторах интернета нашел код, но у меня он не работает, и разобрать синтаксис я пока не могу

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

:local email "ваш_адрес_почты"
##### Тело скрипта
/tool e-mail send to=$email subject="Пользователь $user подключился к VPN"  body="Пользователь $user подключился по $[/ppp active get [/ppp active find where name=$user caller-id=$"caller-id" address=$"remote-address"] service] в $[/system clock get time].\r\nIP-адрес клиента - $"caller-id".\r\nИнфо об IP клиента - http://apps.db.ripe.net/search/query.html?searchtext=$"caller-id""

Аватара пользователя
Chupaka
Сообщения: 1800
Зарегистрирован: 29 фев 2016, 15:26
Откуда: Минск
Контактная информация:

Re: сообщение при подключении к VPN

Сообщение Chupaka » 23 янв 2018, 13:16

playful2017 писал(а):
23 янв 2018, 11:35
первая команда не выводит вообще никакого результата(хотя подключение есть)
У вас переменные $user и $"caller-id" глобальные и заполнены корректными данными?
playful2017 писал(а):
23 янв 2018, 11:35
вторая команда выводит, но при добавлении в скрипт и выполнении его, приходит не данные а пустое сообщение.
Она выводит данные в терминал побочно, сама же команда должна лишь присваивать переменной значение. А значение там своеобразное будет - вы внутренние идентификаторы так получите.
playful2017 писал(а):
23 янв 2018, 11:35
так же на просторах интернета нашел код, но у меня он не работает, и разобрать синтаксис я пока не могу

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

:local email "ваш_адрес_почты"
##### Тело скрипта
/tool e-mail send to=$email subject="Пользователь $user подключился к VPN"  body="Пользователь $user подключился по $[/ppp active get [/ppp active find where name=$user caller-id=$"caller-id" address=$"remote-address"] service] в $[/system clock get time].\r\nIP-адрес клиента - $"caller-id".\r\nИнфо об IP клиента - http://apps.db.ripe.net/search/query.html?searchtext=$"caller-id""
Это предлагается в on-up запихнуть в профиле ppp? Какие данные вам в письме нужны? Начните с малого, добавляйте переменные, если работает:

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

:local email "ваш_адрес_почты"
/tool e-mail send to=$email \
	subject="Пользователь $user подключился к VPN" \
	body="Пользователь $user подключился по в $[/system clock get time]. IP-адрес клиента - $"caller-id"."
Доступные переменные можно глянуть вот тут: https://wiki.mikrotik.com/wiki/Manual:P ... r_Profiles - в параметре on-up.

playful2017
Сообщения: 3
Зарегистрирован: 23 янв 2018, 11:28

Re: сообщение при подключении к VPN

Сообщение playful2017 » 23 янв 2018, 13:41

Спасибо за разъяснение куда ставить скрипт

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

:local email "ваш_адрес_почты"
##### Тело скрипта
/tool e-mail send to=$email subject="Пользователь $user подключился к VPN"  body="Пользователь $user подключился по $[/ppp active get [/ppp active find where name=$user caller-id=$"caller-id" address=$"remote-address"] service] в $[/system clock get time].\r\nIP-адрес клиента - $"caller-id".\r\nИнфо об IP клиента - http://apps.db.ripe.net/search/query.html?searchtext=$"caller-id""

Аватара пользователя
Chupaka
Сообщения: 1800
Зарегистрирован: 29 фев 2016, 15:26
Откуда: Минск
Контактная информация:

Re: сообщение при подключении к VPN

Сообщение Chupaka » 23 янв 2018, 14:26

Это значит, заработало, или это как будто был вопрос?..

playful2017
Сообщения: 3
Зарегистрирован: 23 янв 2018, 11:28

Re: сообщение при подключении к VPN

Сообщение playful2017 » 24 янв 2018, 08:01

Chupaka писал(а):
23 янв 2018, 14:26
Это значит, заработало, или это как будто был вопрос?..
Заработало, спасибо за разъяснение куда вставлять скрипт=)

Vita077
Сообщения: 33
Зарегистрирован: 28 сен 2018, 12:38

Re: сообщение при подключении к VPN

Сообщение Vita077 » 28 сен 2018, 12:55

Как отправить этим скриптом сообщение в 2 или более адреса? Цепочками адресов через , ; : с пробелами и без не получается.
:local email "адрес электронной почты"
##### Тело скрипта
/tool e-mail send to=$email subject="Пользователь $user подключился к VPN" body="Пользователь $user подключился по $[/ppp active get [/ppp active find where name=$user caller-id=$"caller-id" address=$"remote-address"] service] в $[/system clock get time].\r\nIP-$"caller-id""

Аватара пользователя
Chupaka
Сообщения: 1800
Зарегистрирован: 29 фев 2016, 15:26
Откуда: Минск
Контактная информация:

Re: сообщение при подключении к VPN

Сообщение Chupaka » 28 сен 2018, 13:33

Ну, если не получилось одной командой - всегда можно отправить несколькими :)

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

:local msg_subj "Пользователь $user подключился к VPN"
:local msg_body "Пользователь $user подключился по $[/ppp active get [/ppp active find where name=$user caller-id=$"caller-id" address=$"remote-address"] service] в $[/system clock get time].\r\nIP-$"caller-id"";
/tool e-mail
  send to="email 1" subject=$msg_subj body=$msg_body
  send to="email 2" subject=$msg_subj body=$msg_body

Vita077
Сообщения: 33
Зарегистрирован: 28 сен 2018, 12:38

Re: сообщение при подключении к VPN

Сообщение Vita077 » 28 сен 2018, 18:57

у меня с таким синтаксисом не работает (RouterOS 6.39.3), видимо я логику не понимаю, скорее просто не знаю как... Работает скрипт, который я приводил выше. Правильно понимаю, надо ввести локальные переменные email 1 и email 2?

Аватара пользователя
Chupaka
Сообщения: 1800
Зарегистрирован: 29 фев 2016, 15:26
Откуда: Минск
Контактная информация:

Re: сообщение при подключении к VPN

Сообщение Chupaka » 28 сен 2018, 19:02

Нет, вместо email 1 и email 2 надо вбить ручками нужные email'ы. Что именно не работает? Что вы делаете, чего ожидаете и что идёт не так, как вы ожидаете? Телепатов тут, к сожалению, нет.

Vita077
Сообщения: 33
Зарегистрирован: 28 сен 2018, 12:38

Re: сообщение при подключении к VPN

Сообщение Vita077 » 01 окт 2018, 17:09

Просто заменяю рабочий скрипт для одного email (приводил чуть выше) Вашим, с указанием двух адресов. В итоге ничего не происходит - в логах отображается только изменение профиля РРР, подключение/отключение vpn-клиента. В идеале хочется отправлять на 2 адреса, не хочу создавать второе подключение с отдельным профилем - как я понимаю, это очень даже "не по феншую". Ну и совсем было бы идеальным - отправлять сообщение не при переподключении клиента, а при смене его Caller ID.

Ответить