Skip to content

ptath/sevsn

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

7 Commits
 
 
 
 

Repository files navigation

Набор скриптов для ТСН "Северное сияние"

Передача состояния интернета (для роутеров Keenetic)

Представленный инструмент периодически отправляет на сервер сведения о состоянии подключения к Интернету. Если данные не передаются длительное время можно сделать вывод об аварии. Обработка получаемых от клиентов данных происходит на стороне сервера и не может быть настроена клиентом.

Данные передаются по протоколу MQTT, используемому в системах автоматизации. Скрипт публикует данные в топик users/НОМЕР_УЧАСТКА/internet/, которые потом обрабатываются на сервере. Каждому пользователю доступны для чтения и записи только топики, соответствующие его НОМЕРУ_УЧАСТКА (участков). Следует отметить, что данные, в том числе логин и пароль, передаются в незашифрованном виде (для совместимости и возможности работы на устаревших устройствах). Хотя риск перехвата минимален (возможен только на стороне провайдера), а данные не являются критическими, не следует использовать выданные логин и пароль где-то ещё.

  1. Следуя инструкции на сайте производителя необходимо установить OPKG. Так как необходимые ресурсы незначительны можно воспользоваться инструкцией для установки на встроенную память роутера

  2. Все операции выполняются в интерфейсе командной строки роутера после подключения к shell.

Это можно сделать в веб-интерфейсе роутера, написав в командной строке exec sh, или подключившись напрямую через ssh-клиент к роутеру (порт 222, стандартный пароль — keenetic). Для unix-систем и Windows powershell команда ssh root@АДРЕС_РОУТЕРА -p 222, где АДРЕС_РОУТЕРА это адрес вашего роутера вида 192.168.0.1. После этого откроется консоль роутера, где можно вводить команды.

  1. Установить необходимые пакеты.

opkg update — обновляем список доступных пакетов opkg install mosquitto-client-nossl whois curl mc nano — устанавливаем нужные пакеты

  • mosquitto-client-nossl - клиент MQTT для отправки сообщений на сервер
  • whois - инструмент для определения провайдера по IP адресу
  • curl - инструмент для передачи данных по различным сетевым протоколам
  • mc - файловый менеджер (необязательно)
  • nano - редактор текстовых файлов (необязательно)
  1. Создаём и настраиваем скрипт.

В браузере открываем файл 010-neighbour.sh и полностью копируем в буфер обмена.

В консоли сохраняем скопированное в новый файл 010-neighbour.sh, который должен храниться в каталоге /opt/etc/ndm/neighbour.d или /storage/etc/ndm/neighbour.d если OPKG был установлен на встроенную память роутера.

Для этого можно воспользоваться командной nano /opt/etc/ndm/neighbour.d/010-neighbour.sh (nano /storage/etc/ndm/neighbour.d/010-neighbour.sh), вставить ранее скопированное из буфера обмена и сохранить файл (ctrl + x в nano и выбрать "сохранить"). После сохранения нужно отредактировать файл, указав свой кадастровый номер участка, логин и пароль от сервера MQTT. Сделать это можно повторно открыв файл nano /opt/etc/ndm/neighbour.d/010-neighbour.sh (nano /storage/etc/ndm/neighbour.d/010-neighbour.sh) и изменив строки:

kadastr_no="900"

mqtt_username=000000
mqtt_password=PASSWORD

После этого нужно сделать файл исполняемым: chmod +x /opt/etc/ndm/neighbour.d/010-neighbour.sh (chmod +x /storage/etc/ndm/neighbour.d/010-neighbour.sh). На этом настройка завершена.

  1. Возможно проверить работу скрипта, подключившись MQTT-клиентом (например MQTT Explorer) к серверу mqtt.sevsn.ru (порт 1883) с полученным логином и паролем.

Использование инфраструктуры ТСН для управления собственными устройствами

Управление телефонным звонком

При нажатии кнопки 0 во время звонка на телефонный номер управления шлагбаумами ТСН в топик users/НОМЕР_УЧАСТКА/gate сервером публикуется значение "open". Это происходит при звонке с любого номера телефона, соответствующего лицевому счёту пользователя (список "члены семьи" в личном кабинете телеграм-бота).

Этот факт можно использовать в собственной системе автоматизации умного дома, прочитав указанное значение и к примеру открывать личные ворота.

About

Набор скриптов ТСН Северное Сияние

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages