четверг, 23 сентября 2021 г.

Domoticz. Уведомления о работах на линии РОССЕТИ (версия Pro)

 Мои отношения с Россетями переходят на новый уровень. Прошлогодний скрипт об уведомлениях о плановых работах (перебоях в электроснабжении) в Domoticz перестал работать, в связи со сменой адреса в сети Интернет о самих работах (переехал сюда) и изменением формата запроса. Теперь можно задать только свой регион, плюнуть в строку "Адрес" любое слово и форма выплюнет тебе все адреса с содержанием этого слова. Возможно, это сделано для диспетчеров - чтобы быстрее находить информацию о работах не заполняя множество форм.

Переписал все на python со следующей логикой (актуальная версия скрипта на гитхабе). Основные настройки для работы хранятся в conf.cfg

domoticz_server: 'localhost' 
domoticz_port: '505' 
username: 'ivan' 
password: 'pechkin' 
domoticz_idx: '115' 
region: 'Карелия' 
days: '7' 
Тут прописываем настройки доступа к серверу, основное регион для поиска, количество дней для диапазона поиска, а также idx виртуального датчика с типом текст. Огромное значение имеет имя этого датчика. Все что находится после ":" будет воспринято как данные о геолокации для поиска. Например мой датчик "Плановые работы на: Пирогова 3" с idx 115


Да собственно и все. Скрипт проверяет наличие работ по указанному региону + адресу из названия датчика, если работы есть - сверяет это значение с текущем значением датчика в Domoticz. Записывает новое значение если значение отличается, и пропускает если они совпадают. Если записей по работам вообще нет - пишет об отсутствии работ в указанном диапазоне дат для поиска в значении датчика.

Скрипт можно оперативно скачать себе на малинку
cd domoticz
git clone https://github.com/agapovmax/rosseti-domoticz.git
cd rosseti-domoticz
pip3 install -r requirements.txt
python3 ./rosseti-domoticz.py


Осталось добавить задание в планировщик
crontab -e
0 1 * * * cd /home/pi/domoticz/rosseti-domoticz && /usr/bin/python3 /home/pi/domoticz/rosseti-domoticz/rosseti-domoticz.py>/dev/null 2>&1
11.2021 Здрасьте. Россети проспали продление сертификата. Вот вообще не удивлен.
Пришлось править скрипт для игнорирования проверки сертификата.

Комментариев нет :

Отправить комментарий