Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Русский
    3. ioBroker
    4. ioBroker основное
    5. Основные особенности системы

    NEWS

    • ioBroker@Smart Living Forum Solingen, 14.06. - Agenda added

    • ioBroker goes Matter ... Matter Adapter in Stable

    • Monatsrückblick - April 2025

    Основные особенности системы

    This topic has been deleted. Only users with topic management privileges can see it.
    • K
      KondorSoft last edited by

      в адартере "javascript" в файле "javascript.js" заменил вызов функции "setState"

      adapter.setState(id, state, function () {
                          if (typeof callback === 'function') callback();
                      });
      

      на вызов "setForeignState"

      adapter.setForeignState(id, {
                          val: state
                      }, function () {
                          if (typeof callback === 'function') callback();
                      });
      

      и````
      getState: function (id) {
      return states[id];
      }

      
      заменил на````
       getState:  function (id) {
                      return states[id].val;
                  }
      

      Скрипт начал правильно работать.

      1 Reply Last reply Reply Quote 0
      • Bluefox
        Bluefox last edited by

        @KondorSoft:

        в адартере "javascript" в файле "javascript.js" заменил вызов функции "setState"

        adapter.setState(id, state, function () {
                            if (typeof callback === 'function') callback();
                        });
        

        на вызов "setForeignState"

        adapter.setForeignState(id, {
                            val: state
                        }, function () {
                            if (typeof callback === 'function') callback();
                        });
        

        и````
        getState: function (id) {
        return states[id];
        }

        
        заменил на````
         getState:  function (id) {
                        return states[id].val;
                    }
        

        Скрипт начал правильно работать. `
        Спасибо, надо будет исправить.

        1 Reply Last reply Reply Quote 0
        • X
          X13 last edited by

          @Bluefox: `
          Не смотрели в сторону https://github.com/tavendo/WAMP - Web Application Messaging Protocol?

          Что интересного:

          Поддерживает asynchronous messaging patterns: publish-subscribe и RPC.

          В качестве транспорта использует Websocket+JSON или TCP+MsgPack.

          Есть клиентская библиотека для JavaScript из браузера.

          Сложность базового профиля сопоставима с MQTT. Advanced профиль содержит кучу расширений.

          Удобно использовать для связи между плагинами и на web-интерфейс данные можно напрямую отдавать.

          1 Reply Last reply Reply Quote 0
          • Bluefox
            Bluefox last edited by

            @X13:

            @Bluefox: `
            Не смотрели в сторону https://github.com/tavendo/WAMP - Web Application Messaging Protocol?

            Что интересного:

            Поддерживает asynchronous messaging patterns: publish-subscribe и RPC.

            В качестве транспорта использует Websocket+JSON или TCP+MsgPack.

            Есть клиентская библиотека для JavaScript из браузера.

            Сложность базового профиля сопоставима с MQTT. Advanced профиль содержит кучу расширений.

            Удобно использовать для связи между плагинами и на web-интерфейс данные можно напрямую отдавать. `
            Спасибо за подсказку. Интересный протокол.

            Но время будет только после драйвера визуализации. (ioBroker.vis)
            291_offset.png

            1 Reply Last reply Reply Quote 0
            • aurodionov
              aurodionov last edited by

              Странные записи в админке вкладка лог

              ! legacy.0 NaN-aN-aN aN:aN:aN info socket.io <– 192.168.55.3:59445 websocket connected
              ! legacy.0 NaN-aN-aN aN:aN:aN info socket.io: handshake authorized
              ! legacy.0 NaN-aN-aN aN:aN:aN info socket.io <-- 192.168.55.3:50043 websocket disconnected
              ! legacy.0 NaN-aN-aN aN:aN:aN info socket.io: transport end (undefined)
              ! controller NaN-aN-aN aN:aN:aN info Update repository "default" under "conf/sources-dist.json"
              ! node-red.0 NaN-aN-aN aN:aN:aN error 14 Dec 23:34:39 - ------------------------------------------
              ! node-red.0 NaN-aN-aN aN:aN:aN error 14 Dec 23:34:39 - [25-serial.js] Error: Cannot find module 'serialport'
              ! node-red.0 NaN-aN-aN aN:aN:aN error 14 Dec 23:34:39 - [36-rpi-gpio.js] Info : Ignoring Raspberry Pi specific node.
              ! node-red.0 NaN-aN-aN aN:aN:aN error 14 Dec 23:34:39 - [35-arduino.js] Error: Cannot find module 'arduino-firmata'
              ! node-red.0 NaN-aN-aN aN:aN:aN info starting. Version 0.0.7
              ! controller NaN-aN-aN aN:aN:aN info instance system.adapter.node-red.0 started with pid 3358
              ! socketio.0 NaN-aN-aN aN:aN:aN info socket.io server listening on port 8084
              ! socketio.0 NaN-aN-aN aN:aN:aN info starting. Version 0.0.4
              ! controller NaN-aN-aN aN:aN:aN info instance system.adapter.socketio.0 started with pid 3347
              ! history.0 NaN-aN-aN aN:aN:aN info starting. Version 0.0.7
              непонятно что это NaN-aN-aN aN:aN:aN вместо таймстампа
              291_tabelle.png
              291_before.png

              1 Reply Last reply Reply Quote 0
              • Bluefox
                Bluefox last edited by

                @aurodionov:

                Странные записи в админке вкладка лог

                ! legacy.0 NaN-aN-aN aN:aN:aN info socket.io <– 192.168.55.3:59445 websocket connected
                ! legacy.0 NaN-aN-aN aN:aN:aN info socket.io: handshake authorized
                ! legacy.0 NaN-aN-aN aN:aN:aN info socket.io <-- 192.168.55.3:50043 websocket disconnected
                ! legacy.0 NaN-aN-aN aN:aN:aN info socket.io: transport end (undefined)
                ! controller NaN-aN-aN aN:aN:aN info Update repository "default" under "conf/sources-dist.json"
                ! node-red.0 NaN-aN-aN aN:aN:aN error 14 Dec 23:34:39 - ------------------------------------------
                ! node-red.0 NaN-aN-aN aN:aN:aN error 14 Dec 23:34:39 - [25-serial.js] Error: Cannot find module 'serialport'
                ! node-red.0 NaN-aN-aN aN:aN:aN error 14 Dec 23:34:39 - [36-rpi-gpio.js] Info : Ignoring Raspberry Pi specific node.
                ! node-red.0 NaN-aN-aN aN:aN:aN error 14 Dec 23:34:39 - [35-arduino.js] Error: Cannot find module 'arduino-firmata'
                ! node-red.0 NaN-aN-aN aN:aN:aN info starting. Version 0.0.7
                ! controller NaN-aN-aN aN:aN:aN info instance system.adapter.node-red.0 started with pid 3358
                ! socketio.0 NaN-aN-aN aN:aN:aN info socket.io server listening on port 8084
                ! socketio.0 NaN-aN-aN aN:aN:aN info starting. Version 0.0.4
                ! controller NaN-aN-aN aN:aN:aN info instance system.adapter.socketio.0 started with pid 3347
                ! history.0 NaN-aN-aN aN:aN:aN info starting. Version 0.0.7
                непонятно что это NaN-aN-aN aN:aN:aN вместо таймстампа `
                а как это выглядит в log/iobroker.log ??

                1 Reply Last reply Reply Quote 0
                • aurodionov
                  aurodionov last edited by

                  как не странно ,нормально ,такие траблы только в web log

                  ! 3347
                  ! 2014-12-14 23:34:27.312 - info: socketio.0 starting. Version 0.0.4
                  ! 2014-12-14 23:34:27.337 - info: socketio.0 socket.io server listening on port 8084
                  ! 2014-12-14 23:34:28.907 - info: controller instance system.adapter.node-red.0 started with pid 3358
                  ! 2014-12-14 23:34:29.397 - info: node-red.0 starting. Version 0.0.7
                  ! 2014-12-14 23:34:39.385 - error: node-red.0 14 Dec 23:34:39 - [35-arduino.js] Error: Cannot find module 'arduino-firmata'
                  ! 2014-12-14 23:34:39.386 - error: node-red.0 14 Dec 23:34:39 - [36-rpi-gpio.js] Info : Ignoring Raspberry Pi specific node.
                  ! 14 Dec 23:34:39 - [25-serial.js] Error: Cannot find module 'serialport'
                  ! 14 Dec 23:34:39 - –----------------------------------------
                  Маленько понаблюдал, если не находиться на вкладке лог в админке то пишет нон-но и тд.

                  когда переходишь на вкладку лог начинает отображать таймстамп

                  ! SmartHome 2014-12-16 19:40:48 info controller Restart adapter system.adapter.admin.0 because enabled
                  ! SmartHome 2014-12-16 19:40:47 info controller instance system.adapter.admin.0 started with pid 11800
                  ! legacy.0 NaN-aN-aN aN:aN:aN info socket.io <– readFile dashui-views.json
                  ! legacy.0 NaN-aN-aN aN:aN:aN info socket.io <-- getIndex
                  ! legacy.0 NaN-aN-aN aN:aN:aN info socket.io <-- getObjects
                  ! legacy.0 NaN-aN-aN aN:aN:aN info socket.io <-- touchFile www/dashui/css/dashui-user.css
                  ! legacy.0 NaN-aN-aN aN:aN:aN info socket.io <-- getDat

                  1 Reply Last reply Reply Quote 0
                  • Bluefox
                    Bluefox last edited by

                    @aurodionov:

                    как не странно ,нормально ,такие траблы только в web log

                    ! 3347
                    ! 2014-12-14 23:34:27.312 - info: socketio.0 starting. Version 0.0.4
                    ! 2014-12-14 23:34:27.337 - info: socketio.0 socket.io server listening on port 8084
                    ! 2014-12-14 23:34:28.907 - info: controller instance system.adapter.node-red.0 started with pid 3358
                    ! 2014-12-14 23:34:29.397 - info: node-red.0 starting. Version 0.0.7
                    ! 2014-12-14 23:34:39.385 - error: node-red.0 14 Dec 23:34:39 - [35-arduino.js] Error: Cannot find module 'arduino-firmata'
                    ! 2014-12-14 23:34:39.386 - error: node-red.0 14 Dec 23:34:39 - [36-rpi-gpio.js] Info : Ignoring Raspberry Pi specific node.
                    ! 14 Dec 23:34:39 - [25-serial.js] Error: Cannot find module 'serialport'
                    ! 14 Dec 23:34:39 - –----------------------------------------
                    Маленько понаблюдал, если не находиться на вкладке лог в админке то пишет нон-но и тд.

                    когда переходишь на вкладку лог начинает отображать таймстамп

                    ! SmartHome 2014-12-16 19:40:48 info controller Restart adapter system.adapter.admin.0 because enabled
                    ! SmartHome 2014-12-16 19:40:47 info controller instance system.adapter.admin.0 started with pid 11800
                    ! legacy.0 NaN-aN-aN aN:aN:aN info socket.io <– readFile dashui-views.json
                    ! legacy.0 NaN-aN-aN aN:aN:aN info socket.io <-- getIndex
                    ! legacy.0 NaN-aN-aN aN:aN:aN info socket.io <-- getObjects
                    ! legacy.0 NaN-aN-aN aN:aN:aN info socket.io <-- touchFile www/dashui/css/dashui-user.css
                    ! legacy.0 NaN-aN-aN aN:aN:aN info socket.io <-- getDat `
                    Firefox не умеет делать объекты Date из строчек ("2014-12-12 04:05:06"), а chrome может.. Пофиксил.

                    Спасибо за баг. 😄

                    1 Reply Last reply Reply Quote 0
                    • Bluefox
                      Bluefox last edited by

                      На немецкой ветке я уже некоторое время описываю новые возможности, которые появляются в ioBroker. Т.к. на русской ветке народ уже тоже поддтянулся, начну описывать и здесь.

                      • при установке riсkshaw все дополнительные драйвера активируются и настраиваются автоматом. По идее, если активировать историю у состояний, то графики должны заработать.

                      • при редактировании настроек истории появилась возможность настроить сразу несколько объектов одновременно. Для этого надо отфильтровать объекты на закладке "Объекты" (например ввести temperature) и потом нажать сверху справа кнопку с часами в строке с фильтром.

                      • Появилась возможность распределить драйвера между несколькими ioBroker системами. Например к центральной системе (cubie/banana) подключить малину или windows PC на котором бежит node-red с owfs и датчиком температуры.

                      Для этого надо установить обычные две ioBroker системы на устройствах и потом на второстепенной выполнить в консоли: "node iobroker setup custom"

                      Type of objects DB [file, couch, redis], default [file]: просто нажать ENTER
                      Host of objects DB(file), default[127.0.0.1]: ввести IP адрес головной системы или DNS имя (например "cubie" или "192.168.1.100")
                      Port of objects DB(file), default[9001]: просто нажать ENTER
                      Type of states DB [file, redis], default [file]:просто нажать ENTER
                      Host of states DB (file), default[cubie]:просто нажать ENTER
                      Port of states DB (file), default[9000]:просто нажать ENTER
                      

                      После перезапуска второй системы в админке "cubie:8081" должен появится второй хост.

                      После этого можно перейти на закладку Драйвера, выбрать в селекторе сверху нужный хост и установить необходимый драйвер. Он должен встать на выбранном хосте. Позже хост для драйвера можно поменять в "Настройках драйверов".

                      1 Reply Last reply Reply Quote 0
                      • S
                        Sergey777 last edited by

                        @Bluefox:

                        • Появилась возможность распределить драйвера между несколькими ioBroker системами. Например к центральной системе (cubie/banana) подключить малину или windows PC на котором бежит node-red с owfs и датчиком температуры.

                        Для этого надо установить обычные две ioBroker системы на устройствах и потом на второстепенной выполнить в консоли: "node iobroker setup custom"

                        Type of objects DB [file, couch, redis], default [file]: просто нажать ENTER
                        Host of objects DB(file), default[127.0.0.1]: ввести IP адрес головной системы или DNS имя (например "cubie" или "192.168.1.100")
                        Port of objects DB(file), default[9001]: просто нажать ENTER
                        Type of states DB [file, redis], default [file]:просто нажать ENTER
                        Host of states DB (file), default[cubie]:просто нажать ENTER
                        Port of states DB (file), default[9000]:просто нажать ENTER
                        ```` `  
                        

                        Не получилось:

                        root@orangepiplus2e:/opt/iobroker# node iobroker setup custom
                        /opt/iobroker/iobroker:1
                        (function (exports, require, module, __filename, __dirname) { node node_modules/iobroker.js-controller/iobroker.js $1 $2 $3 $4 $5
                                                                                           ^^^^^^^^^^^^
                        
                        SyntaxError: Unexpected identifier
                            at createScript (vm.js:80:10)
                            at Object.runInThisContext (vm.js:139:10)
                            at Module._compile (module.js:616:28)
                            at Object.Module._extensions..js (module.js:663:10)
                            at Module.load (module.js:565:32)
                            at tryModuleLoad (module.js:505:12)
                            at Function.Module._load (module.js:497:3)
                            at Function.Module.runMain (module.js:693:10)
                            at startup (bootstrap_node.js:191:16)
                            at bootstrap_node.js:612:3
                        root@orangepiplus2e:/opt/iobroker#
                        
                        
                        1 Reply Last reply Reply Quote 0
                        • S
                          Sergey777 last edited by

                          Так что делать-то и как быть? Не прокатывает мультихост:

                          
                          pi@ioBroker-RasPi:~ $ node iobroker setup custom
                          internal/modules/cjs/loader.js:583
                              throw err;
                              ^
                          
                          Error: Cannot find module '/home/pi/iobroker'
                              at Function.Module._resolveFilename (internal/modules/cjs/loader.js:581:15)
                              at Function.Module._load (internal/modules/cjs/loader.js:507:25)
                              at Function.Module.runMain (internal/modules/cjs/loader.js:742:12)
                              at startup (internal/bootstrap/node.js:283:19)
                              at bootstrapNodeJSCore (internal/bootstrap/node.js:743:3)
                          
                          
                          1 Reply Last reply Reply Quote 0
                          • S
                            Sergey777 last edited by

                            Нашёл инструкции. Имеем два iobroker на разных устройствах. Одно выбираем как мастер, другое будет слейв. Поехали:

                            На мастере вводим:

                            sudo iobroker multihost enable
                            
                            

                            Просит ввести кодовую фразу, вводим, повторяем ввод.

                            Теперь идём на слейв:

                            посмотрим, какие мастеры видны

                            команда

                            sudo iobroker multihost browse 
                            
                            

                            ответ:

                            root@ioBroker-OPi2E:~# sudo iobroker multihost browse
                            1 |        192.168.1.44 |  host |        192.168.1.44 | "authentication required"
                            root@ioBroker-OPi2E:~#
                            
                            

                            Отлично! Мы увидели мастера! Коннектимся к мему:

                            root@ioBroker-OPi2E:~# sudo iobroker multihost connect
                            1 |        192.168.1.44 |  host |        192.168.1.44 | "authentication required"
                            Please select host [1]: 1
                            Enter secret phrase for connection: ********
                            
                            IP Address of the host is 127.0.0.1\. It accepts no connections. Please change.
                            root@ioBroker-OPi2E:~#
                            
                            

                            И.. Как видим, вылетает ошибка: IP Address of the host is 127.0.0.1. It accepts no connections. Please change.

                            Что делать?? Хм… Тут http://www.iobroker.net/docu/?page_id=3068&lang=de нагуглил следующее:

                            Надо сделать так
                            ` > nano /etc/redis/redis.conf

                            Содержащаяся строка

                            bind 127.0.0.1

                            должен быть дополнен IP-адресом сетевого адаптера, чтобы сервер Redis мог подключаться извне. так, например,

                            bind 127.0.0.1 192.168.1.10 Сделано, и перезапскаем: > sudo service redis-server restart `
                            Ииии… Ничего не поменялось.., ошибка таже IP Address of the host is 127.0.0.1. It accepts no connections. Please change., при этом запись bind 127.0.0.1 192.168.1.10 имеется.

                            Снова вопрос - что делать?

                            1 Reply Last reply Reply Quote 0
                            • S
                              Sergey777 last edited by

                              Решил ещё это сделать:

                              ./iobroker setup custom
                              
                              

                              Сделал и вся система рухнула. не доступен веб интерфейс, хотя в консоли говорит:

                              root@ioBroker-OPi2E:~# iobroker status
                              events.js:160
                                    throw er; // Unhandled 'error' event
                                    ^
                              
                              Error: listen EADDRNOTAVAIL 192.168.1.44:9000
                                  at Object.exports._errnoException (util.js:1020:11)
                                  at exports._exceptionWithHostPort (util.js:1043:20)
                                  at Server._listen2 (net.js:1249:19)
                                  at listen (net.js:1298:10)
                                  at net.js:1408:9
                                  at _combinedTickCallback (internal/process/next_tick.js:83:11)
                                  at process._tickCallback (internal/process/next_tick.js:104:9)
                              root@ioBroker-OPi2E:~#
                              
                              

                              В мастере слейв стал виден, но он в оффлайне.
                              5574_______.png

                              1 Reply Last reply Reply Quote 0
                              • First post
                                Last post

                              Support us

                              ioBroker
                              Community Adapters
                              Donate

                              888
                              Online

                              31.7k
                              Users

                              79.6k
                              Topics

                              1.3m
                              Posts

                              8
                              39
                              20561
                              Loading More Posts
                              • Oldest to Newest
                              • Newest to Oldest
                              • Most Votes
                              Reply
                              • Reply as topic
                              Log in to reply
                              Community
                              Impressum | Datenschutz-Bestimmungen | Nutzungsbedingungen
                              The ioBroker Community 2014-2023
                              logo