Navigation

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

    NEWS

    • Neuer Blog: Fotos und Eindrücke aus Solingen

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

    • ioBroker goes Matter ... Matter Adapter in Stable

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

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

      @Bluefox:

      Можешь попробовать ещё раз? Я пересмотрел javascript драйвер. `
      Скрипт на события реагирует но изменить состояние устройства не выходит

      команда setState(SwitchStateID, 1 );

      пытается изменить состояние "io.javascript.0.zwave.0.NODE3.SWITCH_MULTILEVEL.Level" вместо "io.zwave.0.NODE3.SWITCH_MULTILEVEL.Level"

      В логе такие сообщения.

      2014-11-17 12:02:50.505 - info: javascript.0 script.js.Script1: io.zwave.0.NODE2.SENSOR_MULTILEVEL.Temperature change detected. Value [object Object]

      2014-11-17 12:02:50.505 - info: javascript.0 script.js.Script1: Switch heater off

      2014-11-17 12:02:50.507 - warn: zwave.0 Object io.javascript.0.zwave.0.NODE3.SWITCH_MULTILEVEL.Level not found

      1 Reply Last reply Reply Quote 0
      • 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

                                451
                                Online

                                31.8k
                                Users

                                79.9k
                                Topics

                                1.3m
                                Posts

                                8
                                39
                                20864
                                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