Mikrotik отследить подключении к WiFi

Mikrotik как отследить подключение пользователя к WiFi

Скрипт который  следит за подключением определенного MAC адреса к сети WiFi

Недавно обсуждали с коллегами скрипт в котором ребята сделали так, что при подключении начальника к WiFi точке — маршрутизатор играл имперский марш.

Решил сделать похожее, но по своему

 

Простая проверка

Проверять для теста буду сам себя, точнее свой телефон

Создаю глобальную переменную (который так же будет датчиком того что я на месте)

Присвоил ему значение 0 (ноль)

Мой телефон имеет MAC адрес: 10:2A:B3:FF:FF:FF

Здесь я проверяю есть ли MAC адрес в таблице регистрации WiFi (если его нет он будет пустым), если он НЕ пустой и глобальная переменная равна 0 (нулю), то выполняю следующее действие:

  • Написать в лог «get»
  • Присвоить $WiFicheck значение 24

Далее скрипт выполняться не будет т.к. значение $WiFicheck != 0 (НЕ равно нулю)

Теперь хочу сделать так чтоб он понимал когда я ушел, НО не думал что ушел когда я выхожу выкинуть мусор или проверить почту (1-2 минуты не считается)

Таким же образом проверяю есть ли мак адрес в таблице регистрации WiFi (если его нет он будет пустым), если он пустой и глобальная переменная НЕ равна 0 (нулю), то выполняю следующее действие:

  • Написать в лог значение $WiFicheck (Как обратный отчет будет выглядеть)
  • Отнимать единицу (-1) от значения $WiFicheck

Теперь скрипт будет выполняться до тех пор пока $WiFicheck не станет равен 0, данный скрипт в scheduler думаю поставить выполняться каждые 5 сек.

Тогда значение 24*5 (будет давать 2 минуты) для того чтобы он решил что я ушел.

Отправить сообщение в лог когда я ушел

 

Один из минусов данного метода в том что когда я периодически пропадаю с поля зрения WiFi то он дает в сумме 2 минуты, а не на каждое пропадание
Решение: Добавить каждые 5 минут проверить на месте ли я, если да вернуть значение $WiFicheck 24

 

Полный скрипт который добавить в scheduler:

 

Как отрабатывает (поставил $WiFicheck 10) :

 

Вместо того чтобы писать в лог можете свою команду добавить, будь то имперский марш, фанфары, включение сирены, приготовления кофе и т.д.

 

Отправка в telegram

Добавил вместо записи в лог команду

При подключении:

При отключении:

 

Те же самые GET — OUT только пишет телеграм

 

Добавил новую глобальную переменную, для того чтобы везде MAC не прописывать.

 

Готовый полный скрипт будет иметь такой вид

 

 

Не забываем что глобальные переменные стираются после перезагрузки

Поэтому стоит добавить scheduler скрипт на запуск при включении (Start Time — startup)

 

 

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

Ваш e-mail не будет опубликован.