Счастливого Дня TwosDay (22.02.22), уважаемое сообщество, в прошлом месяце на ioBroker снова многое произошло. После длительного периода разработки новый js-контроллер 4.0 (название выпуска «Isabelle») доступен в репозитории Beta/Latest Repository. Помимо некоторых оптимизаций и улучшений, основное внимание в этой версии уделялось повышению производительности. Кроме того, есть и другие новости со встречи разработчиков и не только, которые мы собрали для вас здесь.
##JS-контроллер 4.x
В новом выпуске больше не доступна поддержка Node.js 10.x, которая не поддерживалась с апреля прошлого года. Кроме того, была добавлена совместимость с Node.js 16.x и NPM 7 и 8 соответственно. Поддерживаемые версии Node.js: 12.x, 14.x и 16.x, поэтому на данный момент мы рекомендуем Node.js версии 14.x.
С js-контроллером 4.0 база данных внутренне изменена с «файла» на «jsonl». Это происходит автоматически во время установки без каких-либо дополнительных действий, если используется файл. После завершения миграции информация об этом также появится при следующем открытии Admin 5. Но чем лучше база данных JSONL, а не файл? Файловая БД регулярно сохраняет все в большой файл JSON. Это определенно может привести к большому количеству операций ввода-вывода и не идеально подходит, в частности, для систем на основе SD-карт, но также и с SSD, поскольку это создает большую нагрузку на карту. Кроме того, есть проблема, что сбой при записи приводит к повреждению всего файла. В этих случаях ioBroker использует файл резервной копии при следующем запуске. Здесь JSONL работает по-другому: изменения сначала только добавляются к файлу, и только в случае необходимости файл затем «сжимается» и, таким образом, перезаписывается. Битый байт в БД больше не ломает все, а сбой при записи гарантирует, что будут потеряны только еще не записанные изменения, а не все. Кроме того, JSONL защищает SD-карту с меньшим количеством операций записи.
Ожидается, что новая версия будет доступна в стабильной ветке к концу месяца. Дополнительную информацию о контроллере JS 4 можно найти в на форуме.
Подтверждено/Подтверждено
Тема, которая поднимается снова и снова, — флаг подтверждения. Это начинается с Blockly с «управления» или «обновления», проходит через цвета (красный, зеленый, желтый) значений в админке и заканчивается разработчиками, которые также должны правильно использовать этот флаг. В принципе, это очень просто: флаг Ack или Confirmed говорит вам, представляет ли значение команду или представляет окончательное значение, подтвержденное устройством. Допустим, вы включаете лампу через ioBroker. Для этого установите значение точки данных на «истина». ioBroker отправляет команду на лампу, но пока не получил ответа. Поэтому для флага Ack установлено значение «false». Это значение теперь не подтверждено и отображается красным цветом в админке. Затем, как только действие будет выполнено, лампа сообщит о своем новом статусе ioBroker. Это состояние устанавливается в «истинное» с помощью флага подтверждения, и можно быть уверенным, что это значение также отражает фактическое состояние лампы. Админ показывает это зеленым цветом. Если значение отображается желтым цветом в панели администрирования, это просто значение точки данных по умолчанию или другое заменяющее значение, которое не получено ни в результате управляющего действия, ни подтверждено устройством.
При установке значения точки данных у вас всегда есть возможность установить флаг или нет. Здесь следует отметить, что флаг Ack, установленный в значение true, не представляет никакого контроля, и устройство не будет реагировать на него, потому что вы только явно обновили точку данных. Устройствами можно управлять только с не установленными флагами!
В сценариях Blockly или Rules «управляющий» блок (Ack false) эффективно отправляет команду на устройство. При «обновлении» (Ack true) точка данных просто устанавливается на подтвержденное значение. Вы делаете это, если, например, точка данных была создана самим пользователем и вы точно знаете, что значение отражает текущий статус.
Разработчики также должны убедиться, что они используют флаг в нужное время. Вы можете найти больше информации об этом здесь.
Управление устройствами
На встрече много говорили об идее нового диспетчера устройств. В долгосрочной перспективе это должно взять на себя настройку устройств для отдельных адаптеров, чтобы у вас был только один единый интерфейс для установки, интеграции и исключения устройств. Идея еще прорабатывается и разработчики проверяют техническую реализуемость. Как только появятся более конкретные подробности, мы сообщим об этом подробнее.
Новые адаптеры
Также в этом месяце мы можем блистать некоторыми новичками.
Температура и ветер по-прежнему ледяные! Теперь вы можете чувствовать себя комфортно дома и интегрировать кости [Термостаты Netatmo] (https://github.com/Homemade-Disaster/ioBroker.netatmo-energy) и [сауны Huum] (https://github.com/Chris-1965/ioBroker.huum-sauna) могут быть управляется через ioBroker. В области систем умного дома мы рады сообщить, что теперь у нас есть устройства от Gigaset, [Blebox](https://github.com /ka-vaNu/ioBroker.blebox) и Panasonic Cloud. В области сигнализации [камеры Hikvision] (https://github.com/raintonr/ioBroker.hikvision-alarmserver) и в области энергетики [E3DC Hauskraftwerk] (https://github.com/git-kick/ ioBroker.e3dc-rscp) и Resol VBus.
Кроме того, был выпущен адаптер для Вебунтис. Это позволяет следить за расписанием и классной работой подключенных школ.
С Адаптер Alexa-Timer-Vis, вы можете использовать таймер из Alexa2 легче работать, а с помощью адаптера Signal Messenger у нас теперь есть все более крупные мессенджеры.
Но появились не только новые адаптеры. Новый Выпущено приложение Material для устройств Android. Это позволяет вам получить доступ к визуализации адаптера материала, находясь в пути. Материал также был разработан для автоматического создания объявлений, при этом пользователю не нужно тратить много времени на его настройку.
Переводы
ioBroker теперь поддерживает 10 языков, и они автоматически переводятся на первом этапе. Мы все знакомы с этими автоматическими переводами и знаем, что они более чем поверхностны. Поскольку мы всегда придаем большое значение совершенствованию нашего проекта, мы тем временем преобразовали тексты 81 из существующих адаптеров в ioBroker Weblate (инструмент). Здесь каждый может помочь улучшить перевод. Это также очень просто и также может быть сделано с мобильного телефона между ними.
Мы просим сообщество поддержать нас с переводом, ведь каждое переведенное или проверенное слово — это шаг вперед для всех нас. Вы должны обратить особое внимание на языки за пределами немецкого и английского, хотя они определенно нуждаются в некоторой полировке. Здесь вы найдете подробнее для переводчиков. Мы хотели бы попросить разработчиков адаптеров среди вас интегрировать ваши адаптеры в Weblate, если ваш адаптер предлагает много текста для перевода.
Заключительные слова
В этот раз на встрече присутствовало много людей, и мы думаем, что это здорово! ioBroker может существовать и идти дальше только вместе с вами и через вас. В самом начале встречи мы вспомнили времена до Короны и наши живые встречи, которые ежегодно проходили в Касселе. Мы надеемся, что эти времена скоро вернутся и мы снова встретимся в Касселе (или где-то еще).
Следующая встреча разработчиков состоится, как и было запланировано, 16 марта. Получайте удовольствие в мире ioBroker. Оставаться здоровым!