==== Интерфейс настройки контроллера ====
Постоянная память контроллера слишком мала, чтобы на ней можно было разместить полноценный интерфейс по его настройке.
Точнее, это можно сделать, но в ущерб функциональности, занимая ценную память и ресурсы для веб содержимого, совершенно бесполезного, когда контроллер уже настроен и просто работает
Поэтому Страница настройки изначально отсутствовала, вместо этого конфигурацию можно задавать через "портал" - https://lazyhome.ru/portal - Это описано тут [[как_lighthub_работает_с_файлом_конфигурации#простой_метод_настройки_-_через_портал_lazyhomeru]]
Но это не единственный способ
После того, как у контроллера появился HTTP API, стало возможным использование браузера для настройки
Для настройки контроллера, можно обратиться на его адрес. Например
* http://192.168.1.55
* http://lighthub.local
контроллер отрабатывая этот запрос, подгрузит страницу управления с публичного ресурса, а уже она будет использовать [[API]] контроллера в вашей локальной сети
* Первый недостаток - адрес надо знать и помнить
* Второй - зависимость от интернета и внешнего ресурса
* Главный недостаток: Начиная с последних версий браузера chrome данный способ перестал работать, так как google ужесточила требования к безопасности и запретила страницам, загруженным из интернета, обращаться к ресурсам локальной сети
Тем не менее, метод продолжает работать на браузере fireFox
Недавно я исследовал еще одну возможность сделать удобной настройку контроллеров в локальной сети - установив плагин для браузера chrome (для fireFox, также, это возможно)
===== Плагин для браузера =====
Преимущества:
* Весь веб-контент лежит внутри плагина, в вашем браузере. Кроме того, что не требуется доступ в интернет, решается и вопрос безопасности - chrome позволяет браузеру использовать [[API]] контроллера в локальной сети
* Появляется возможность поиска контроллеров в вашей локальной сети, так как в них давно реализован протокол MDNS
Недостаток тут только один - надо потратить 5 минут на установку этого плагина.
Так как браузер не имеет прав просканировать локальную сеть на предмет наличия контроллеров, плагин использует утилиту zeroconf_lookup которая была разработана в рамках открытого проекта https://github.com/railduino/zeroconf-lookup
На базе этого проекта, я сделал прототип плагина для конфигурирования контроллеров lighthub
https://github.com/anklimov/zeroconf-lighthub
Плагин состоит из двух частей:
* Собственно плагин браузера
* Утилита поиска zeroconf-lookup
==== Скачивание проекта ====
Скачивание и разархивирование надо сделать перед началом всех последующих действий
- На странице проекта https://github.com/anklimov/zeroconf-lighthub скачиваем архив (нажать зеленую кнопку Code и выбрать download ZIP)
- Разархивируем в какую-либо папку, которую вы в дальнейшем не будете удалять (например \Users\youName\plugin)
- (если вы разработчик - вместо предыдущих двух пунктов, вы, конечно, предпочтете использовать утилиту git)git clone https://github.com/anklimov/zeroconf-lighthub
==== Как установить плагин: ====
* Установить из магазина приложений Chrome (чуть позже выложу)
* Установить из папки, скачанной с ГитХаб в режиме разработчика. Это не сильно сложнее, но позволит дорабатывать плагин (очень надеюсь на то, что кто-то будет его дорабатывать, я не веб разработчик).
* Для этого открываем браузер chrome, в меню "расширения" выбираем "управление расширениями".
* Включаем переключатель "режим разработчика",
* нажимаем кнопку"Загрузить распакованное расширение".
* Выбираем папку __zeroconf-lighthub-master/Chrome__ в распакованном на предыдущем этапе архиве
* Расширение устанавливается, заглядываем на страницу его свойств и копируем идентификатор расширения (например gepnlbipogackhpjkojhkonkijdgpgji ) это нам пригодится чуть позже
==== Как установить утилиту: ====
==== Windows ====
- Переходите в каталог __zeroconf-lighthub-master\Windows_Go__
- Из командной строки запускаете - zeroconf_lookup.exe -i -с gepnlbipogackhpjkojhkonkijdgpgji
(тут укажите ваш идентификатор расширения, скопированный на предыдущем этапе)
- После этого переносить данный файл с этого места или удалять папку нельзя
- Если ставили плагин из магазина приложений - можно при запуске не указывать идентификатор расширения. zeroconf_lookup.exe -i
===== MacOS =====
то же самое, только выполнимый файл лежит в директории __zeroconf-lighthub/Apple_Go__
==== Использование ====
Теперь все просто - нажимаем на иконку расширения - оно сканирует сеть и выдает перечень всех контроллеров онлайн в локальной сети (и не только контроллеров - любых устройств, которые заявляют о себе)
Для входа в настройки контроллера надо нажать Edit напротив него в списке