Skip to content

MihVS/lighting_zont

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

29 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Lighting ZONT

Скрипт Lighting ZONT позволяет управлять выходом контроллера ZONT по восходу и закату солнца. К выходу контроллера подключено внешнее реле. К реле подключена нагрузка, которой скрипт будет управлять. Если lighting_schedule.json не заполнен, то данные о восходе и закате солнца подтягиваются с ресурса sunrise-sunset.org Есть возможность вручную редактировать включение и отключение освещения. Документация для получения токена контроллера ZONT тут.

Скрипт работает только для токена пользователя с одним устройством. Токен получается для имени и логина назначенных производителем контроллера(на карточке в комплекте). При необходимости расширения функционала пишите в issues.

Протестировано на контроллерах:
  • ZONT H2000+
  • ZONT H1000+

Установка

Для запуска приложения проделайте следующие шаги:

  1. Склонируйте репозиторий.
  2. Перейдите в каталог со скриптом и создайте виртуальное окружение:
cd lighting_zont/
python -m venv venv
  1. Активируйте виртуальное окружение:
source venv\scripts\activate
  1. Установите зависимости:
python -m pip install -r requirements.txt
  1. Создайте в каталоге приложения файл .env:
touch .env
  1. Заполните файл .env по примеру example_env.
  2. Запустите скрипт:
python main.py

Получение токена ZONT API

С помощью API клиента (например postman) отправьте POST запрос на endpoint https://zont-online.ru/api/get_authtoken Этот метод должен отправляться с аутентификацией по паролю.

  • Закодируйте свой логин пароль в Base64 формат.
    • воспользуйтесь любыми кодировщиком, например этим.
    • формат кодирования login:password
Пример декодирования тут

base64

  • Добавьте в Headers post запроса поля со своими значениями:
    • Authorization
    • X-ZONT-Client
    • Content-Type
Пример Headers

post_request

Пример ответа

response_token

  • Полученный токен внесите в файл .env в поле XZONTTOKEN

Получение id device и id object

Отправьте post запрос на адресс https://zont-online.ru/api/devices c ключами Headers (значения подставьте свои):

  • X-ZONT-Token
  • X-ZONT-Client
  • Content-Type

Тело запроса:

{
    "load_io": true
}

Далее ищем в ответе id контроллера (device id) и id кнопки управления освещением (object id)

device id

device_id

object id

object_id

Заполнение файла .env

  • XZONTTOKEN - токен авторизации ZONT API
  • XZONTCLIENT - ваш адрес электронной почты
  • DEVICEID - id вашего контроллера
  • OBJECTID - id элемента кнопка
  • TIMEZONE - ваша временная зона
  • TIMEOFFSETON - корректировка времени включения освещения полученного из сети
  • TIMEOFFSETOFF - корректировка времени выключения освещения полученного из сети
  • LATITUDE - широта вашего населённого пункта
  • LONGITUDE - долгота вашего населённого пункта

Разработчик

Михаил Шутов

связаться

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages