Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Русский
    3. ioBroker
    4. Скрипты
    5. node-red Скрипты (flows)
    6. Node-RED примеры, решения и и вопросы. Общая тема по Node-RED

    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

    Node-RED примеры, решения и и вопросы. Общая тема по Node-RED

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

      @andryp:

      Попробую разобраться с таймером, на примере. Тут плохо, что в логе ничего не видно, что значений нет или подвисло что-то. Логично было бы сразу в NODE предусмотреть, что запрос на адаптер не отработает… `
      если речь про nod-red то там можно как раз на таймер и повесить и лог и сразу в телегу слать если что-то не так.

      А в драйвере ioBroker нет объекта проверяющего что облако живо?

      Может на ping повесить?

      1 Reply Last reply Reply Quote 0
      • A
        andryp last edited by

        @OlegJktu:

        @andryp:

        Попробую разобраться с таймером, на примере. Тут плохо, что в логе ничего не видно, что значений нет или подвисло что-то. Логично было бы сразу в NODE предусмотреть, что запрос на адаптер не отработает… `
        если речь про nod-red то там можно как раз на таймер и повесить и лог и сразу в телегу слать если что-то не так.

        А в драйвере ioBroker нет объекта проверяющего что облако живо?

        Может на ping повесить? `
        Ну надо лезть в исходники адаптера для NETATMO, я даже не уверен что можно симитировать вчерашнюю ситуацию.

        По поводу таймера, я сделал вход инжектом, повесил на таймер раз в 10 сек, да он выдает, например 0, как дефолт. Но как сделать, чтобы он выдавал тогда, когда отклика от устройства не дождался?

        1 Reply Last reply Reply Quote 0
        • G
          Golan last edited by

          @OlegJktu:

          Конешно. Содержимое msg можно <>= и кучу другой математики.

          Вот в этой статье разбирается с яркостью https://habr.com/post/396985/ `
          Спасибо ![](</s><URL url=)http://www.remserv-bt.ru/images/smilies/icon_81.gif" />

          1 Reply Last reply Reply Quote 0
          • O
            OlegJktu last edited by

            @andryp:

            Но как сделать, чтобы он выдавал тогда, когда отклика от устройства не дождался? `
            это что-то типа мерелки температуру с получением данных из облака?

            Нужно сделать провод от данных в таймер, и там есть настройка запускать таймер снова если что-то прилетело.

            интервалы нужно посмотреть, наверно раз в три минуты что-то ходит?

            Если выложите код/рисунок может кто еще что посоветует.

            Народ в телеге на канале нод-ред ответить по логике, если спросить как сделать, и что хочешь получить. Конечно желательно попытку показать и пояснения дать.

            1 Reply Last reply Reply Quote 0
            • O
              OlegJktu last edited by

              По итогам продолжительных поисков пользовательского интерфейса для управления умным домом с тв (Android TV) - остановился на связке wallpanel https://github.com/WallPanel-Project/wallpanel-android

              и node-red-dashboard https://flows.nodered.org/node/node-red-dashboard

              В настройках dashboard есть галка разрешающая перемещаться по webgui стрелками от пульта от ТВ бокса.

              Плюс можно сразу через dashboard и звуки выводить (sayit).

              ! 3955_screenshot_20181125_200427.png
              3955_screenshot_20181126_085943.png
              3955_screenshot_20181126_090804.png

              ! вывод звука драйвер sayit

              [
                  {
                      "id": "48979e09.8263d8",
                      "type": "ui_audio",
                      "z": "d369ede2.680eb",
                      "name": "",
                      "group": "a77d8246.98ece8",
                      "voice": "",
                      "always": true,
                      "x": 960,
                      "y": 780,
                      "wires": []
                  },
                  {
                      "id": "3f9406c2.830122",
                      "type": "ioBroker in",
                      "z": "d369ede2.680eb",
                      "name": "Is now speaking",
                      "topic": "sayit.0.tts.playing",
                      "payloadType": "value",
                      "onlyack": "",
                      "func": "all",
                      "gap": "",
                      "x": 480,
                      "y": 780,
                      "wires": [
                          [
                              "f1a9c85f.deca08",
                              "50c5f06c.07cd88"
                          ]
                      ]
                  },
                  {
                      "id": "f1a9c85f.deca08",
                      "type": "ioBroker get",
                      "z": "d369ede2.680eb",
                      "name": "Binary mp3 file",
                      "topic": "sayit.0.tts.mp3",
                      "attrname": "payload",
                      "payloadType": "object",
                      "x": 740,
                      "y": 780,
                      "wires": [
                          [
                              "48979e09.8263d8",
                              "b0945816.a139e8"
                          ]
                      ]
                  },
                  {
                      "id": "50c5f06c.07cd88",
                      "type": "debug",
                      "z": "d369ede2.680eb",
                      "name": "говорит?",
                      "active": true,
                      "tosidebar": true,
                      "console": false,
                      "tostatus": false,
                      "complete": "payload",
                      "x": 560,
                      "y": 720,
                      "wires": []
                  },
                  {
                      "id": "b0945816.a139e8",
                      "type": "debug",
                      "z": "d369ede2.680eb",
                      "name": "какой файл",
                      "active": true,
                      "tosidebar": true,
                      "console": false,
                      "tostatus": false,
                      "complete": "payload",
                      "x": 760,
                      "y": 720,
                      "wires": []
                  },
                  {
                      "id": "cf4e0f18.3d51f8",
                      "type": "inject",
                      "z": "d369ede2.680eb",
                      "name": "",
                      "topic": "",
                      "payload": "true",
                      "payloadType": "str",
                      "repeat": "",
                      "crontab": "",
                      "once": false,
                      "onceDelay": 0.1,
                      "x": 350,
                      "y": 720,
                      "wires": [
                          [
                              "f1a9c85f.deca08",
                              "50c5f06c.07cd88"
                          ]
                      ]
                  },
                  {
                      "id": "a1a729b8.0f83c8",
                      "type": "ui_button",
                      "z": "d369ede2.680eb",
                      "name": "скажи",
                      "group": "a77d8246.98ece8",
                      "order": 4,
                      "width": 0,
                      "height": 0,
                      "passthru": false,
                      "label": "button",
                      "color": "",
                      "bgcolor": "",
                      "icon": "",
                      "payload": "true",
                      "payloadType": "str",
                      "topic": "",
                      "x": 470,
                      "y": 900,
                      "wires": [
                          [
                              "f1a9c85f.deca08"
                          ]
                      ]
                  },
                  {
                      "id": "94cf28dc.33e72",
                      "type": "comment",
                      "z": "d369ede2.680eb",
                      "name": "кнопка дашборд для удобства отладки",
                      "info": "",
                      "x": 570,
                      "y": 860,
                      "wires": []
                  },
                  {
                      "id": "a77d8246.98ece8",
                      "type": "ui_group",
                      "z": "",
                      "name": "СВЕТ ЗАЛ",
                      "tab": "e2d5e6c4.2778",
                      "order": 1,
                      "disp": true,
                      "width": "6",
                      "collapse": false
                  },
                  {
                      "id": "e2d5e6c4.2778",
                      "type": "ui_tab",
                      "z": "",
                      "name": "Дом",
                      "icon": "dashboard",
                      "order": 2
                  }
              ]
              >! ````
              1 Reply Last reply Reply Quote 0
              • A
                andryp last edited by

                @andryp:

                Всем привет, поставил IOB, добавил и настроил устройства NETATMO. Это погодные станции, получаю с них через адаптер данные по СО2. Для этого использую Input ioBrоker topic = "netatmo.0.Netatmo.Спальня.CO2.CO2", Payload = value.

                Логика работает, все считывается. Но вчера, как назло, облачный сервис NEtatmo в коем веке, был недоступен :evil: В итоге логика схемы NODE Red вообще перестала работать, т.е. у меня она начинается с того, что взять значения с netatmo, а раз значений не было, то все висело.

                Можно ли как-то в NODE типа ввода данных с IOB прописать значение по умолчанию и таймаут, сколько времени ждать отклика с адаптера? `

                Вот что в итоге получилось. Реализовал определение ручного режима (если скорость вентилятора приточки >=5, то значит кто-то вручную включил). Определяется СО2 >900, >1000, <900. И управляется от этих значений приточка.

                ! [{"id":"4484ad27.bff564","type":"ioBroker in","z":"99a1edcb.6bb1","name":"CO2_BedRoom","topic":"netatmo.0.Netatmo.Спальня.CO2.CO2","payloadType":"value","onlyack":"","func":"all","gap":"","x":140,"y":380,"wires":[["157afaf7.c32cd5"]]},{"id":"e303fee7.27fd9","type":"ioBroker out","z":"99a1edcb.6bb1","name":"RotationSpeed","topic":"breezart.0.RotationSpeed","ack":"false","autoCreate":"false","x":1477,"y":420,"wires":[]},{"id":"4f08171a.f18ae8","type":"switch","z":"99a1edcb.6bb1","name":"CheckCO2","property":"$max(payload)","propertyType":"jsonata","rules":[{"t":"gt","v":"1000","vt":"jsonata"},{"t":"gt","v":"900","vt":"str"},{"t":"else"}],"checkall":"false","repair":false,"outputs":3,"x":767,"y":440,"wires":[["e83b0ac3.7d7548","34e17a0f.81bf56"],["50ba9a58.a17ef4","8f15e8f6.fb5fc8"],["21c3d88.efd6e28"]]},{"id":"e83b0ac3.7d7548","type":"change","z":"99a1edcb.6bb1","name":"SetSpeed_High","rules":[{"t":"set","p":"payload","pt":"msg","to":"4","tot":"num"}],"action":"","property":"","from":"","to":"","reg":false,"x":977,"y":380,"wires":[["6703ae3d.7cb51","8e0268e2.01da78"]]},{"id":"21c3d88.efd6e28","type":"change","z":"99a1edcb.6bb1","name":"SetSpeed_Low","rules":[{"t":"set","p":"payload","pt":"msg","to":"1","tot":"num"}],"action":"","property":"","from":"","to":"","reg":false,"x":980,"y":520,"wires":[["8e0268e2.01da78","fb89fdb4.42a12"]]},{"id":"66798763.03f088","type":"ioBroker in","z":"99a1edcb.6bb1","name":"CO2_Nika","topic":"netatmo.0.Netatmo.Детская.CO2.CO2","payloadType":"value","onlyack":"","func":"all","gap":"","x":160,"y":440,"wires":[["157afaf7.c32cd5"]]},{"id":"3546dba5.074ed4","type":"ioBroker in","z":"99a1edcb.6bb1","name":"CO2_Hall","topic":"netatmo.0.Netatmo.Гостинная.CO2.CO2","payloadType":"value","onlyack":"","func":"all","gap":"","x":160,"y":500,"wires":[["157afaf7.c32cd5"]]},{"id":"34e17a0f.81bf56","type":"debug","z":"99a1edcb.6bb1","name":"","active":false,"tosidebar":true,"console":false,"tostatus":false,"complete":"false","x":770,"y":400,"wires":[]},{"id":"50ba9a58.a17ef4","type":"debug","z":"99a1edcb.6bb1","name":"","active":false,"tosidebar":true,"console":false,"tostatus":false,"complete":"false","x":770,"y":480,"wires":[]},{"id":"ca2a615d.e7a42","type":"join","z":"99a1edcb.6bb1","name":"","mode":"custom","build":"array","property":"payload","propertyType":"msg","key":"topic","joiner":"\n","joinerType":"str","accumulate":false,"timeout":"10","count":"3","reduceRight":false,"reduceExp":"$max(array)\t","reduceInit":"","reduceInitType":"num","reduceFixup":"","x":587,"y":440,"wires":[["8f37c5b7.dda928","4f08171a.f18ae8","a7dfa8af.7e7e48"]]},{"id":"8f37c5b7.dda928","type":"debug","z":"99a1edcb.6bb1","name":"","active":false,"tosidebar":true,"console":false,"tostatus":false,"complete":"payload","x":587,"y":400,"wires":[]},{"id":"6703ae3d.7cb51","type":"debug","z":"99a1edcb.6bb1","name":"Побольше","active":false,"tosidebar":true,"console":false,"tostatus":false,"complete":"payload","x":970,"y":340,"wires":[]},{"id":"fb89fdb4.42a12","type":"debug","z":"99a1edcb.6bb1","name":"На минимум","active":false,"tosidebar":true,"console":false,"tostatus":false,"complete":"payload","x":970,"y":560,"wires":[]},{"id":"157afaf7.c32cd5","type":"function","z":"99a1edcb.6bb1","name":"parseInt-2","func":"msg.payload=parseInt(msg.payload);\nreturn msg;","outputs":1,"noerr":0,"x":381,"y":440,"wires":[["ca2a615d.e7a42"]]},{"id":"ef3b5e52.1036f","type":"ioBroker in","z":"99a1edcb.6bb1","name":"RotationSpeed","topic":"breezart.0.RotationSpeed","payloadType":"value","onlyack":"","func":"all","gap":"","x":160,"y":180,"wires":[["ba5b1121.d1064"]]},{"id":"a7dfa8af.7e7e48","type":"trigger","z":"99a1edcb.6bb1","op1":"","op2":"1","op1type":"nul","op2type":"num","duration":"5","extend":true,"units":"min","reset":"","bytopic":"all","name":"Если нет данных","x":887,"y":620,"wires":[["176d08b4.2219d7","8e0268e2.01da78"]]},{"id":"176d08b4.2219d7","type":"debug","z":"99a1edcb.6bb1","name":"#НД","active":false,"tosidebar":true,"console":false,"tostatus":false,"complete":"payload","x":867,"y":660,"wires":[]},{"id":"415e51ac.9c042","type":"inject","z":"99a1edcb.6bb1","name":"Для запуска триггера","topic":"","payload":"1","payloadType":"num","repeat":"","crontab":"","once":true,"onceDelay":0.1,"x":657,"y":620,"wires":[["a7dfa8af.7e7e48"]]},{"id":"ba5b1121.d1064","type":"switch","z":"99a1edcb.6bb1","name":"Ручной?","property":"payload","propertyType":"msg","rules":[{"t":"gt","v":"4","vt":"str"},{"t":"lte","v":"4","vt":"str"}],"checkall":"true","repair":false,"outputs":2,"x":400,"y":220,"wires":[["a04c7d5.28e2f8"],[]]},{"id":"a04c7d5.28e2f8","type":"change","z":"99a1edcb.6bb1","name":"ДА","rules":[{"t":"set","p":"manual","pt":"flow","to":"true","tot":"bool"}],"action":"","property":"","from":"","to":"","reg":false,"x":530,"y":220,"wires":[["2c968846.ab1c68","42f60e42.6093c"]]},{"id":"2c968846.ab1c68","type":"debug","z":"99a1edcb.6bb1","name":"РУЧНОЙ РЕЖИМ","active":true,"tosidebar":true,"console":false,"tostatus":false,"complete":"payload","x":570,"y":180,"wires":[]},{"id":"42f60e42.6093c","type":"delay","z":"99a1edcb.6bb1","name":"Сброс руч. режима","pauseType":"delay","timeout":"30","timeoutUnits":"minutes","rate":"1","nbRateUnits":"1","rateUnits":"second","randomFirst":"1","randomLast":"5","randomUnits":"seconds","drop":false,"x":740,"y":220,"wires":[["cf3bf784.5430c8"]]},{"id":"cf3bf784.5430c8","type":"change","z":"99a1edcb.6bb1","name":"ДА","rules":[{"t":"set","p":"manual","pt":"flow","to":"false","tot":"bool"}],"action":"","property":"","from":"","to":"","reg":false,"x":930,"y":220,"wires":[["eb7f78c0.27d548"]]},{"id":"eb7f78c0.27d548","type":"debug","z":"99a1edcb.6bb1","name":"СБРОС РЕЖИМА","active":true,"tosidebar":true,"console":false,"tostatus":false,"complete":"payload","x":970,"y":180,"wires":[]},{"id":"8e0268e2.01da78","type":"switch","z":"99a1edcb.6bb1","name":"РУЧНОЙ?","property":"manual","propertyType":"flow","rules":[{"t":"true"},{"t":"else"}],"checkall":"true","repair":false,"outputs":2,"x":1230,"y":420,"wires":[["4361f73b.11eef8"],["c352c46.dc73e38","e303fee7.27fd9"]]},{"id":"4361f73b.11eef8","type":"debug","z":"99a1edcb.6bb1","name":"Ручной","active":true,"tosidebar":true,"console":false,"tostatus":false,"complete":"payload","x":1457,"y":380,"wires":[]},{"id":"8b5aef57.797ab","type":"inject","z":"99a1edcb.6bb1","name":"ПРОБА","topic":"","payload":"5","payloadType":"num","repeat":"","crontab":"","once":false,"onceDelay":0.1,"x":150,"y":240,"wires":[["ba5b1121.d1064"]]},{"id":"c352c46.dc73e38","type":"debug","z":"99a1edcb.6bb1","name":"Устанавливаем","active":true,"tosidebar":true,"console":false,"tostatus":false,"complete":"payload","x":1477,"y":460,"wires":[]},{"id":"e7d2a9ce.a39818","type":"inject","z":"99a1edcb.6bb1","name":"","topic":"","payload":"1000","payloadType":"num","repeat":"","crontab":"","once":false,"onceDelay":0.1,"x":110,"y":320,"wires":[["157afaf7.c32cd5"]]},{"id":"8f15e8f6.fb5fc8","type":"change","z":"99a1edcb.6bb1","name":"SetSpeed_Mid","rules":[{"t":"set","p":"payload","pt":"msg","to":"3","tot":"num"}],"action":"","property":"","from":"","to":"","reg":false,"x":980,"y":440,"wires":[["dbbb1086.d886c","8e0268e2.01da78"]]},{"id":"dbbb1086.d886c","type":"debug","z":"99a1edcb.6bb1","name":"Средняя","active":false,"tosidebar":true,"console":false,"tostatus":false,"complete":"payload","x":960,"y":480,"wires":[]}]

                1 Reply Last reply Reply Quote 0
                • A
                  andryp last edited by

                  Вот пример как определить расстояние от дома. Ставим адаптер Find my iphone, пишем такой скрипт в NR:

                  ! [{"id":"1c09c50c.74d60b","type":"function","z":"99a1edcb.6bb1","name":"GetLocation","func":"\nvar home_long = 11.11111;\nvar home_alt = 22.22222;\n\n//var values = flow.get(["latitude", "longitude"]);\n \nvar long_target = 0; \nvar alt_target = 0;\n\nlong_target = parseFloat(flow.get('LO'));// values[1];\nalt_target = parseFloat(flow.get('LA'));\n//node.log(long_target);\n//node.log(alt_target);\n\n\nmsg.payload = 63711000Math.acos(Math.sin(Math.PIhome_alt/180)Math.sin(Math.PIalt_target/180)+Math.cos(Math.PIhome_alt/180)Math.cos(Math.PIalt_target/180)Math.cos(Math.PI(home_long-long_target)/180));\n// вывод в лог расстояния в метрах\nreturn msg;","outputs":1,"noerr":0,"x":690,"y":260,"wires":[["6b23990b.f116c8"]]},{"id":"6b23990b.f116c8","type":"debug","z":"99a1edcb.6bb1","name":"Расстояние","active":true,"tosidebar":true,"console":false,"tostatus":false,"complete":"payload","x":870,"y":260,"wires":[]},{"id":"282f31cf.40579e","type":"change","z":"99a1edcb.6bb1","name":"Set LA.","rules":[{"t":"set","p":"LA","pt":"flow","to":"payload","tot":"msg"}],"action":"","property":"","from":"","to":"","reg":false,"x":500,"y":240,"wires":[["1c09c50c.74d60b","642dcb16.a76cb4"]]},{"id":"eed8108f.ea0d9","type":"change","z":"99a1edcb.6bb1","name":"SET LO","rules":[{"t":"set","p":"LO","pt":"flow","to":"payload","tot":"msg"}],"action":"","property":"","from":"","to":"","reg":false,"x":500,"y":280,"wires":[["1c09c50c.74d60b","c013725a.bbb22"]]},{"id":"642dcb16.a76cb4","type":"debug","z":"99a1edcb.6bb1","name":"LA","active":true,"tosidebar":true,"console":false,"tostatus":false,"complete":"payload","x":510,"y":200,"wires":[]},{"id":"c013725a.bbb22","type":"debug","z":"99a1edcb.6bb1","name":"LO","active":true,"tosidebar":true,"console":false,"tostatus":false,"complete":"payload","x":510,"y":320,"wires":[]},{"id":"e7628b0a.cbcc18","type":"ioBroker get","z":"99a1edcb.6bb1","name":"latitude","topic":"find-my-iphone.0.iPhone_(TELE).latitude","attrname":"payload","payloadType":"value","x":340,"y":240,"wires":[["282f31cf.40579e"]]},{"id":"452ba365.3c988c","type":"ioBroker get","z":"99a1edcb.6bb1","name":"longitude","topic":"find-my-iphone.0.iPhone_(TELE).longitude","attrname":"payload","payloadType":"value","x":340,"y":280,"wires":[["eed8108f.ea0d9"]]},{"id":"5e3ac9eb.238b68","type":"trigger","z":"99a1edcb.6bb1","op1":"60","op2":"1","op1type":"num","op2type":"str","duration":"-1","extend":false,"units":"min","reset":"","bytopic":"all","name":"","x":170,"y":240,"wires":[["e7628b0a.cbcc18","452ba365.3c988c"]]},{"id":"1bc2b34.ef3094d","type":"inject","z":"99a1edcb.6bb1","name":"","topic":"","payload":"1","payloadType":"num","repeat":"","crontab":"","once":true,"onceDelay":0.1,"x":150,"y":200,"wires":[["5e3ac9eb.238b68"]]}]
                  P.S. Спасибо telegram @cahek2202 за код расчета расстояния по координатам.

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

                    Собрал схему для управления точечными светильниками philips zhirui downlight

                    единственная проблема - слишком большая задержка (((

                    Нужно установить

                    php

                    php-miio-master

                    node-red-contrib-string

                    включить/выключить

                    php /home/pi/php-miio-master/miio-cli.php –ip 192.168.1.236 --token 57014f99f369ff772cad86955f44c17c --sendcmd '{"id":1,"method":"set_power","params":["on"]}'

                    php /home/pi/php-miio-master/miio-cli.php –ip 192.168.1.236 --token 57014f99f369ff772cad86955f44c17c --sendcmd '{"id":1,"method":"set_power","params":["off"]}'

                    переключить

                    php /home/pi/php-miio-master/miio-cli.php –ip 192.168.1.236 --token 57014f99f369ff772cad86955f44c17c --sendcmd '{"id":1,"method":"toggle",,"params":[]}'

                    яркость (от 1 до 100)

                    php /home/pi/php-miio-master/miio-cli.php --ip 192.168.1.236 --token 57014f99f369ff772cad86955f44c17c --sendcmd '{"id":1,"method":"set_bright","params":[1]}'

                    цветовая температура (1-желтый, 100 – белый)

                    php /home/pi/php-miio-master/miio-cli.php –ip 192.168.1.236 --token 57014f99f369ff772cad86955f44c17c --sendcmd '{"id":1,"method":"set_cct","params":[100]}'

                    сцены (от 1 до 4)

                    php /home/pi/php-miio-master/miio-cli.php –ip 192.168.1.236 --token 57014f99f369ff772cad86955f44c17c --sendcmd '{"id":1,"method":"apply_fixed_scene","params":[1]}'

                    статус (php miio-cli.php –ip ип лампы --token токен лампы --sendcmd '{"id":1,"method":"get_prop","params":["power","bright", ,"cct","snm","dv"]}')

                    php /home/pi/php-miio-master/miio-cli.php –ip 192.168.1.236 --token 57014f99f369ff772cad86955f44c17c --sendcmd '{"id":1,"method":"get_prop","params":["power","bright", ,"cct","snm","dv"]}'

                    ! [
                    ! {
                    ! "id": "8d7ab50b.086a48",
                    ! "type": "tab",
                    ! "label": "Flow 3",
                    ! "disabled": false,
                    ! "info": ""
                    ! },
                    ! {
                    ! "id": "1199f0d9.331b1f",
                    ! "type": "ioBroker in",
                    ! "z": "8d7ab50b.086a48",
                    ! "name": "First button pressed",
                    ! "topic": "mihome.0.devices.86sw2_158d000233827e.channel_0",
                    ! "payloadType": "value",
                    ! "onlyack": "",
                    ! "func": "all",
                    ! "gap": "",
                    ! "x": 170,
                    ! "y": 180,
                    ! "wires": [
                    ! [
                    ! "82596561.899ce8"
                    ! ]
                    ! ]
                    ! },
                    ! {
                    ! "id": "dc776a4c.fbd218",
                    ! "type": "inject",
                    ! "z": "8d7ab50b.086a48",
                    ! "name": "Button",
                    ! "topic": "",
                    ! "payload": "true",
                    ! "payloadType": "str",
                    ! "repeat": "",
                    ! "crontab": "",
                    ! "once": false,
                    ! "onceDelay": 0.1,
                    ! "x": 150,
                    ! "y": 400,
                    ! "wires": [
                    ! [
                    ! "345c5f57.38ca6"
                    ! ]
                    ! ]
                    ! },
                    ! {
                    ! "id": "345c5f57.38ca6",
                    ! "type": "switch",
                    ! "z": "8d7ab50b.086a48",
                    ! "name": "only true",
                    ! "property": "payload",
                    ! "propertyType": "msg",
                    ! "rules": [
                    ! {
                    ! "t": "eq",
                    ! "v": "true",
                    ! "vt": "str"
                    ! }
                    ! ],
                    ! "checkall": "true",
                    ! "repair": false,
                    ! "outputs": 1,
                    ! "x": 280,
                    ! "y": 320,
                    ! "wires": [
                    ! [
                    ! "b643cffa.5e1ac",
                    ! "b1c46b43.e444d8"
                    ! ]
                    ! ]
                    ! },
                    ! {
                    ! "id": "78dad649.35d498",
                    ! "type": "switch",
                    ! "z": "8d7ab50b.086a48",
                    ! "name": "Is Light On?",
                    ! "property": "STAT1",
                    ! "propertyType": "flow",
                    ! "rules": [
                    ! {
                    ! "t": "eq",
                    ! "v": "false",
                    ! "vt": "str"
                    ! },
                    ! {
                    ! "t": "eq",
                    ! "v": "true",
                    ! "vt": "str"
                    ! }
                    ! ],
                    ! "checkall": "true",
                    ! "repair": false,
                    ! "outputs": 2,
                    ! "x": 530,
                    ! "y": 320,
                    ! "wires": [
                    ! [
                    ! "66ee6bc9.126594"
                    ! ],
                    ! [
                    ! "10645dc0.7ac9e2"
                    ! ]
                    ! ]
                    ! },
                    ! {
                    ! "id": "66ee6bc9.126594",
                    ! "type": "change",
                    ! "z": "8d7ab50b.086a48",
                    ! "name": "PowerOn Lamp",
                    ! "rules": [
                    ! {
                    ! "t": "set",
                    ! "p": "payload",
                    ! "pt": "msg",
                    ! "to": "true",
                    ! "tot": "bool"
                    ! }
                    ! ],
                    ! "action": "",
                    ! "property": "",
                    ! "from": "",
                    ! "to": "",
                    ! "reg": false,
                    ! "x": 800,
                    ! "y": 280,
                    ! "wires": [
                    ! [
                    ! "64e1cf4e.ec14a"
                    ! ]
                    ! ]
                    ! },
                    ! {
                    ! "id": "10645dc0.7ac9e2",
                    ! "type": "change",
                    ! "z": "8d7ab50b.086a48",
                    ! "name": "PowerOff Lamp",
                    ! "rules": [
                    ! {
                    ! "t": "set",
                    ! "p": "payload",
                    ! "pt": "msg",
                    ! "to": "true",
                    ! "tot": "bool"
                    ! }
                    ! ],
                    ! "action": "",
                    ! "property": "",
                    ! "from": "",
                    ! "to": "",
                    ! "reg": false,
                    ! "x": 800,
                    ! "y": 340,
                    ! "wires": [
                    ! [
                    ! "f262cc14.faa8e"
                    ! ]
                    ! ]
                    ! },
                    ! {
                    ! "id": "9a8e714.224659",
                    ! "type": "exec",
                    ! "z": "8d7ab50b.086a48",
                    ! "command": "php /home/pi/php-miio-master/miio-cli.php –ip 192.168.1.236 --token 57014f99f369ff772cad86955f44c17c --sendcmd '{"id":1,"method":"set_power","params":["off"]}'",
                    ! "addpay": true,
                    ! "append": "",
                    ! "useSpawn": "false",
                    ! "timer": "",
                    ! "oldrc": false,
                    ! "name": "",
                    ! "x": 780,
                    ! "y": 1080,
                    ! "wires": [
                    ! [],
                    ! [],
                    ! []
                    ! ]
                    ! },
                    ! {
                    ! "id": "bec64fe2.71292",
                    ! "type": "exec",
                    ! "z": "8d7ab50b.086a48",
                    ! "command": "php /home/pi/php-miio-master/miio-cli.php –ip 192.168.1.236 --token 57014f99f369ff772cad86955f44c17c --sendcmd '{"id":1,"method":"set_power","params":["on"]}'",
                    ! "addpay": true,
                    ! "append": "",
                    ! "useSpawn": "false",
                    ! "timer": "",
                    ! "oldrc": false,
                    ! "name": "power on",
                    ! "x": 1060,
                    ! "y": 260,
                    ! "wires": [
                    ! [],
                    ! [],
                    ! []
                    ! ]
                    ! },
                    ! {
                    ! "id": "7c0af08b.0c659",
                    ! "type": "switch",
                    ! "z": "8d7ab50b.086a48",
                    ! "name": "STAT1",
                    ! "property": "payload",
                    ! "propertyType": "msg",
                    ! "rules": [
                    ! {
                    ! "t": "cont",
                    ! "v": "true",
                    ! "vt": "str"
                    ! },
                    ! {
                    ! "t": "cont",
                    ! "v": "false",
                    ! "vt": "str"
                    ! }
                    ! ],
                    ! "checkall": "false",
                    ! "repair": false,
                    ! "outputs": 2,
                    ! "x": 830,
                    ! "y": 160,
                    ! "wires": [
                    ! [
                    ! "8a2dac90.3ca8c"
                    ! ],
                    ! [
                    ! "ed111c41.dcf5"
                    ! ]
                    ! ]
                    ! },
                    ! {
                    ! "id": "8a2dac90.3ca8c",
                    ! "type": "change",
                    ! "z": "8d7ab50b.086a48",
                    ! "name": "Light On",
                    ! "rules": [
                    ! {
                    ! "t": "set",
                    ! "p": "STAT1",
                    ! "pt": "flow",
                    ! "to": "true",
                    ! "tot": "str"
                    ! }
                    ! ],
                    ! "action": "",
                    ! "property": "",
                    ! "from": "",
                    ! "to": "",
                    ! "reg": false,
                    ! "x": 1040,
                    ! "y": 140,
                    ! "wires": [
                    ! []
                    ! ]
                    ! },
                    ! {
                    ! "id": "ed111c41.dcf5",
                    ! "type": "change",
                    ! "z": "8d7ab50b.086a48",
                    ! "name": "Light Off",
                    ! "rules": [
                    ! {
                    ! "t": "set",
                    ! "p": "STAT1",
                    ! "pt": "flow",
                    ! "to": "false",
                    ! "tot": "str"
                    ! }
                    ! ],
                    ! "action": "",
                    ! "property": "",
                    ! "from": "",
                    ! "to": "",
                    ! "reg": false,
                    ! "x": 1040,
                    ! "y": 200,
                    ! "wires": [
                    ! []
                    ! ]
                    ! },
                    ! {
                    ! "id": "b643cffa.5e1ac",
                    ! "type": "exec",
                    ! "z": "8d7ab50b.086a48",
                    ! "command": "php /home/pi/php-miio-master/miio-cli.php –ip 192.168.1.236 --token 57014f99f369ff772cad86955f44c17c --sendcmd '{"id":1,"method":"get_prop","params":["power"]}'",
                    ! "addpay": false,
                    ! "append": "",
                    ! "useSpawn": "false",
                    ! "timer": "",
                    ! "oldrc": false,
                    ! "name": "Lamp status?",
                    ! "x": 480,
                    ! "y": 160,
                    ! "wires": [
                    ! [
                    ! "c1d9f7ec.d097c8"
                    ! ],
                    ! [],
                    ! []
                    ! ]
                    ! },
                    ! {
                    ! "id": "81a1c26a.2224b",
                    ! "type": "inject",
                    ! "z": "8d7ab50b.086a48",
                    ! "name": "Button",
                    ! "topic": "",
                    ! "payload": "true",
                    ! "payloadType": "str",
                    ! "repeat": "",
                    ! "crontab": "",
                    ! "once": false,
                    ! "onceDelay": 0.1,
                    ! "x": 150,
                    ! "y": 120,
                    ! "wires": [
                    ! [
                    ! "b643cffa.5e1ac"
                    ! ]
                    ! ]
                    ! },
                    ! {
                    ! "id": "c1d9f7ec.d097c8",
                    ! "type": "string",
                    ! "z": "8d7ab50b.086a48",
                    ! "name": "",
                    ! "methods": [
                    ! {
                    ! "name": "toString",
                    ! "params": []
                    ! },
                    ! {
                    ! "name": "between",
                    ! "params": [
                    ! {
                    ! "type": "str",
                    ! "value": "result":[""
                    ! },
                    ! {
                    ! "type": "str",
                    ! "value": ""],"id""
                    ! }
                    ! ]
                    ! },
                    ! {
                    ! "name": "toString",
                    ! "params": []
                    ! },
                    ! {
                    ! "name": "toBoolean",
                    ! "params": []
                    ! }
                    ! ],
                    ! "prop": "payload",
                    ! "propout": "payload",
                    ! "object": "msg",
                    ! "objectout": "msg",
                    ! "x": 690,
                    ! "y": 160,
                    ! "wires": [
                    ! [
                    ! "7c0af08b.0c659"
                    ! ]
                    ! ]
                    ! },
                    ! {
                    ! "id": "34ba9712.3e5b88",
                    ! "type": "exec",
                    ! "z": "8d7ab50b.086a48",
                    ! "command": "php /home/pi/php-miio-master/miio-cli.php –ip 192.168.1.236 --token 57014f99f369ff772cad86955f44c17c --sendcmd '{"id":1,"method":"set_power","params":["off"]}'",
                    ! "addpay": true,
                    ! "append": "",
                    ! "useSpawn": "false",
                    ! "timer": "",
                    ! "oldrc": false,
                    ! "name": "power off",
                    ! "x": 1060,
                    ! "y": 340,
                    ! "wires": [
                    ! [],
                    ! [],
                    ! []
                    ! ]
                    ! },
                    ! {
                    ! "id": "f262cc14.faa8e",
                    ! "type": "delay",
                    ! "z": "8d7ab50b.086a48",
                    ! "name": "",
                    ! "pauseType": "delay",
                    ! "timeout": "1400",
                    ! "timeoutUnits": "milliseconds",
                    ! "rate": "1",
                    ! "nbRateUnits": "1",
                    ! "rateUnits": "second",
                    ! "randomFirst": "1",
                    ! "randomLast": "5",
                    ! "randomUnits": "seconds",
                    ! "drop": false,
                    ! "x": 820,
                    ! "y": 400,
                    ! "wires": [
                    ! [
                    ! "34ba9712.3e5b88"
                    ! ]
                    ! ]
                    ! },
                    ! {
                    ! "id": "64e1cf4e.ec14a",
                    ! "type": "delay",
                    ! "z": "8d7ab50b.086a48",
                    ! "name": "",
                    ! "pauseType": "delay",
                    ! "timeout": "1400",
                    ! "timeoutUnits": "milliseconds",
                    ! "rate": "1",
                    ! "nbRateUnits": "1",
                    ! "rateUnits": "second",
                    ! "randomFirst": "1",
                    ! "randomLast": "5",
                    ! "randomUnits": "seconds",
                    ! "drop": false,
                    ! "x": 800,
                    ! "y": 220,
                    ! "wires": [
                    ! [
                    ! "bec64fe2.71292"
                    ! ]
                    ! ]
                    ! },
                    ! {
                    ! "id": "b1c46b43.e444d8",
                    ! "type": "delay",
                    ! "z": "8d7ab50b.086a48",
                    ! "name": "",
                    ! "pauseType": "delay",
                    ! "timeout": "1400",
                    ! "timeoutUnits": "milliseconds",
                    ! "rate": "1",
                    ! "nbRateUnits": "1",
                    ! "rateUnits": "second",
                    ! "randomFirst": "1",
                    ! "randomLast": "5",
                    ! "randomUnits": "seconds",
                    ! "drop": false,
                    ! "x": 540,
                    ! "y": 240,
                    ! "wires": [
                    ! [
                    ! "78dad649.35d498"
                    ! ]
                    ! ]
                    ! },
                    ! {
                    ! "id": "82596561.899ce8",
                    ! "type": "trigger",
                    ! "z": "8d7ab50b.086a48",
                    ! "op1": "true",
                    ! "op2": "",
                    ! "op1type": "str",
                    ! "op2type": "nul",
                    ! "duration": "5300",
                    ! "extend": false,
                    ! "units": "ms",
                    ! "reset": "",
                    ! "bytopic": "all",
                    ! "name": "",
                    ! "x": 240,
                    ! "y": 260,
                    ! "wires": [
                    ! [
                    ! "345c5f57.38ca6"
                    ! ]
                    ! ]
                    ! }
                    ! ]
                    10899__________2018-12-11_08.49.06.png

                    1 Reply Last reply Reply Quote 0
                    • O
                      OlegJktu last edited by

                      @Smitkas:

                      Собрал схему для управления точечными светильниками philips zhirui downlight `
                      А вот все равно спасибо. А то отсутствие вариантов с miio уже начинает напрягать.

                      Встречный вопрос. Пробовали кубики с miio (они должны быть на nodejs и быстрее и там есть general device)

                      1. https://flows.nodered.org/node/node-red-contrib-mi-miio

                      2. https://flows.nodered.org/node/node-red … iaomi-miio

                      3. https://flows.nodered.org/node/node-red ... io-wrapper

                      Я пробывал 2 и 3 в докер контейнере с iobroker и node-red и Node-red сдох, пришлось поднимать контейнер и бекапа. Так что перед экспериментами сохраняемся!

                      Очень хотел попробовать с отдельного хоста/контейнера, но в итоге руки так и не дошли.

                      UPD лампы еще должны затаскиваться в iobroker через драйвер HAM (там искать miio), но я HAM пока не победил.

                      1 Reply Last reply Reply Quote 0
                      • M
                        MihaNN52 last edited by

                        Кто нибудь подключал датчик холла к малине с нодом для подсчета импульсов. а-ля прерывания как организовать и можно ли вообще?

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

                          В Node-red есть блок function, в описании этого блока, в примерах, на сайте, есть счетчик, сколько раз функция была запущена. А как уж подключить датчик к малине и увидеть его в Node-RED - незнаю.

                          1 Reply Last reply Reply Quote 0
                          • M
                            MihaNN52 last edited by

                            Как запустить из нода что то понятно, а как сделать чтоб нод отреагировал не понимаю.

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

                              @MihaNN52:

                              Как запустить из нода что то понятно, а как сделать чтоб нод отреагировал не понимаю. `
                              Вы имеете в виду, как увидеть сигнал с пина малинки в Node-RED? Если Вы ставили образ iobroker, то в нем есть все необходимые плагины, в панели есть, вроде, эти элементы.

                              P.S.вот же:
                              5574_screenshot_20181228-085733_chrome.jpg

                              1 Reply Last reply Reply Quote 0
                              • M
                                MihaNN52 last edited by

                                ой…. и правда :lol:

                                1 Reply Last reply Reply Quote 0
                                • O
                                  OlegJktu last edited by

                                  Вот здесь решили проблему с записью символов в файл в win

                                  viewtopic.php?f=26&t=21288

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

                                    @OlegJktu:

                                    Вот здесь решили проблему с записью символов в файл в win

                                    viewtopic.php?f=26&t=21288 `

                                    Так не понятно, какую ноду дополнительно установили? Ссылку дадите, или полное название?

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

                                      Привет всем! Я столнулся со схожей проблемой, что в сообщении выше.

                                      Я тут приводил такой пример: viewtopic.php?f=48&t=11969#p152942 ,там всё работало, пока я не обновил iobroker.

                                      Суть в чём:

                                      Имею такую конструкцию
                                      5574_0001154796fuck.png

                                      ! [ { "id": "58ad33b2.fabb1c", "type": "http request", "z": "f9e33a52.dacda8", "name": "", "method": "POST", "ret": "txt", "url": "http://192.168.1.2:5000/webapi/entry.cgi?api=SYNO.Chat.External&method=incoming&version=2&token=\"QERFWrtrg4t5\"&payload={\"text\": \"кирилица\"}", "tls": "", "x": 490, "y": 1200, "wires": [ [ "27422c15.fd50d4" ] ] }, { "id": "27422c15.fd50d4", "type": "debug", "z": "f9e33a52.dacda8", "name": "Door Sensor Status", "active": true, "tosidebar": true, "console": false, "tostatus": true, "complete": "payload", "x": 720, "y": 1200, "wires": [] }, { "id": "626ece3b.a16df", "type": "inject", "z": "f9e33a52.dacda8", "name": "", "topic": "", "payload": "true", "payloadType": "str", "repeat": "", "crontab": "", "once": false, "onceDelay": 0.1, "x": 290, "y": 1200, "wires": [ [ "58ad33b2.fabb1c" ] ] } ] !
                                      Тут на сервер отправляется сообщение методом POST. Так вот, если в сообщении содержится кириллица, то вылетает ошибка, и ничего не отправляется.

                                      log:

                                      ! ````
                                      |node-red.0|2019-01-27 22:12:01.260|error|at processImmediate [as _immediateCallback] (timers.js:745:5)|
                                      |---|---|---|---|
                                      |node-red.0|2019-01-27 22:12:01.260|error|at tryOnImmediate (timers.js:768:5)|
                                      |node-red.0|2019-01-27 22:12:01.260|error|at runCallback (timers.js:810:20)|
                                      |node-red.0|2019-01-27 22:12:01.260|error|at Immediate. <anonymous>(/opt/iobroker/node_modules/request/request.js:578:7)|
                                      |node-red.0|2019-01-27 22:12:01.260|error|at end (/opt/iobroker/node_modules/request/request.js:549:18)|
                                      |node-red.0|2019-01-27 22:12:01.260|error|at Request.write (/opt/iobroker/node_modules/request/request.js:1497:10)|
                                      |node-red.0|2019-01-27 22:12:01.260|error|at Request.start (/opt/iobroker/node_modules/request/request.js:751:32)|
                                      |node-red.0|2019-01-27 22:12:01.260|error|at Object.request (http.js:39:10)|
                                      |node-red.0|2019-01-27 22:12:01.260|error|at new ClientRequest (_http_client.js:137:13)|
                                      |node-red.0|2019-01-27 22:12:01.260|error|27 Jan 22:12:01 - [error] [http request:TEST DOOR] TypeError: Request path contains unescaped characters|</anonymous>

                                      
                                      Debug messages
                                      
                                      >! ````
                                      msg : error
                                      "TypeError: Request path contains unescaped characters"
                                      msg.payload : string[247]
                                      "TypeError: Request path contains unescaped characters : http://192.168.1.2:5000/webapi/entry.cgi?api=SYNO.Chat.External&method=incoming&version=2&token="QERFWrtrg4t5"&payload={"text": "кирилица"}"
                                      >! ````
                                      Если писать латинскими символами, то всё работает.
                                      
                                      P.S. ioBroker стоит на малине, раньше ставил образ 2017 года, на нём всё работало. Но система посыпалась, поставил новый образ, и теперь не работает с кириллицей. Мне кажется, что не хватает каких-то кодировок в системе и Node-RED тут не при чём.
                                      
                                      Подкиньте идей, пожалуйста.
                                      
                                      ****<size size="150">******************************************************</size>****
                                      
                                      P.P.S.
                                      
                                      Нашёл решение - предварительно перекодируем сообщение функцией encodeURIComponent()
                                       ![5574_cyrillicmessage.png](/assets/uploads/files/5574_cyrillicmessage.png) 
                                      

                                      msg.CyrillicMessage = encodeURIComponent('Привет Мир');
                                      return msg;

                                      И "Привет Мир" превращается в "%D0%9F%D1%80%D0%B8%D0%B2%D0%B5%D1%82%20%D0%9C%D0%B8%D1%80", а это уже прокатывает, отправка сообщений кириллицей работает.
                                      
                                      Вот полный код, url до сервера, естественно, изменён, каждый вбивает свой собственный:
                                      
                                      >! ````
                                      [
                                          {
                                              "id": "20b1742.e00da8c",
                                              "type": "http request",
                                              "z": "64e8a21a.233f3c",
                                              "name": "",
                                              "method": "POST",
                                              "ret": "txt",
                                              "url": "http://192.168.1.2:5000/webapi/entry.cgi?api=SYNO.Chat.External&method=incoming&version=2&token=%22TvDtggrtGr%22&payload={\"text\": \"{{{CyrillicMessage}}}\"}",
                                              "tls": "",
                                              "x": 830,
                                              "y": 160,
                                              "wires": [
                                                  [
                                                      "9039465f.edbf18"
                                                  ]
                                              ]
                                          },
                                          {
                                              "id": "9039465f.edbf18",
                                              "type": "debug",
                                              "z": "64e8a21a.233f3c",
                                              "name": "Door Sensor Status",
                                              "active": true,
                                              "tosidebar": true,
                                              "console": false,
                                              "tostatus": true,
                                              "complete": "payload",
                                              "x": 1040,
                                              "y": 160,
                                              "wires": []
                                          },
                                          {
                                              "id": "ae787e2c.09a418",
                                              "type": "inject",
                                              "z": "64e8a21a.233f3c",
                                              "name": "",
                                              "topic": "",
                                              "payload": "true",
                                              "payloadType": "str",
                                              "repeat": "",
                                              "crontab": "",
                                              "once": false,
                                              "onceDelay": 0.1,
                                              "x": 450,
                                              "y": 160,
                                              "wires": [
                                                  [
                                                      "8ec1277c.0cdf2"
                                                  ]
                                              ]
                                          },
                                          {
                                              "id": "8ec1277c.0cdf2",
                                              "type": "function",
                                              "z": "64e8a21a.233f3c",
                                              "name": "Текст сообщения",
                                              "func": "msg.CyrillicMessage = encodeURIComponent('Привет Мир');\nreturn msg;",
                                              "outputs": 1,
                                              "noerr": 0,
                                              "x": 630,
                                              "y": 160,
                                              "wires": [
                                                  [
                                                      "c6325ef1.f616b",
                                                      "20b1742.e00da8c"
                                                  ]
                                              ]
                                          },
                                          {
                                              "id": "c6325ef1.f616b",
                                              "type": "debug",
                                              "z": "64e8a21a.233f3c",
                                              "name": "",
                                              "active": true,
                                              "tosidebar": true,
                                              "console": false,
                                              "tostatus": true,
                                              "complete": "CyrillicMessage",
                                              "x": 860,
                                              "y": 100,
                                              "wires": []
                                          }
                                      ]
                                      >! ````
                                      1 Reply Last reply Reply Quote 0
                                      • A
                                        Anrikigai last edited by

                                        Только начал осваивать Node-Red, и сразу вопросы:

                                        1. Можно ли в функции определить исходную команду, а не только источник?
                                          Скажем, при получении сигнала от кубика Rotate Left нужно некий параметр уменьшить, а по Rotate Right увеличить.
                                          Сейчас у меня после ioBroker in с событием Rotate right идет Change, в котором true меняется на 1, и анаогично Rotate left -> Change, меняющий true на -1.
                                          Оба этих события сходятся в одну функцию, которая соответственно меняет громкость, яркость, что угодно.
                                          Но по идее промежуточные Change не очень нужны. Можно сразу с Rotate Left и Rotate Right на эту функцию сигнал подать. Да, в обоих случаях будет true, но наверняка же в этой функции можно определить, было это вызвано поворотм влево или вправо?
                                          Собственно аналогично отделять одинарное нажатие кнопки от двойного и т.п....

                                        2. Нажатие кнопки у меня приводит к последовательному приходу событий от нее true и сразу false.
                                          Я придумал 2 способа очистки. Switch, который пропускает только true. И Delay, в котором при выборе Rate Limit | All messages появляется пункт drop intermediate messages.
                                          Результат одинаковый. Что эффективнее? Может еще получше вариант есть?

                                        3. Как использовать ioBroker get node? Расположена в группе function. Насколько я понимаю, в отличие от ioBroker in node, посылающей сообщение дальше, get позволяет узнать текущее состояние. Но как? Что подать ей на вход и что на выход?
                                          Скажем, сейчас я In node направляю на сохранение переменной во flow (скажем, параметр dimmer), и потом его использую. Но лучше же опрашивать статус, когда понадобится, а не подписываться на него?
                                          Ну или хотя бы в коде функции как опросить произвольный параметр...

                                        4. Можно ли из функции на Node-Red пройтись по всем датчикам (в моем случае подключены через Xiaomi Gateway 2) и, к примеру, проверить заряд их батрейки?
                                          Ну а дальше либо вывести "аварийные" датчики, либо записать 0/1 в дополнительное поле каждого сенсора (к примеру, BatteryStatus) и указывать его в Metro плитках (они автоматически перекрашиваются в зависимости от "ID статуса"

                                        1 Reply Last reply Reply Quote 0
                                        • O
                                          OlegJktu last edited by OlegJktu

                                          1. если в обьектах нет, то без вариантов. Можно еще конечно лог глянуть. Только дебаг нужно включить.
                                            1.1) возможно через usb-zigbee свиток драйвер отдает больше.

                                          2. Я думаю без разницы.

                                          3. На JS такое видел. На Node-red по моему только руками (ну или js засунуть в кубик). js пример есть на форуме, но он тоже не идеальный - там отдает id объекта - это не человеко читаемо.

                                          4. Нужно мне самому попробовать на выходных,
                                            ioBroker get node - точно будет красиво попробовать засунуть в Node-red dash реле-выключатель (но визуализаций на iobroker больше пяти, так что...)

                                          1 Reply Last reply Reply Quote 0
                                          • No Name
                                            No Name last edited by No Name

                                            Управление broadlink кнопкой xiaomi (драйвер zigbee). Исправил flow выше. Здесь нужен таймер и switch должен быть таким:
                                            photo_2019-07-06_19-46-48.jpg

                                            Снимок.PNG

                                            [
                                            {
                                            "id": "cf416abd.c92158",
                                            "type": "tab",
                                            "label": "Broadlink_STATUS",
                                            "disabled": false,
                                            "info": ""
                                            },
                                            {
                                            "id": "5dae1e2f.960c38",
                                            "type": "ioBroker out",
                                            "z": "cf416abd.c92158",
                                            "name": "Sonoff_POW_2",
                                            "topic": "sonoff.0.Sonoff_POW_2_A02EBD.POWER",
                                            "ack": "false",
                                            "autoCreate": "false",
                                            "x": 1700,
                                            "y": 880,
                                            "wires": []
                                            },
                                            {
                                            "id": "b8e33699.63a34",
                                            "type": "ioBroker in",
                                            "z": "cf416abd.c92158",
                                            "name": "Tap twice",
                                            "topic": "zigbee.0.00158d00029bbb6c.tap",
                                            "payloadType": "value",
                                            "onlyack": "",
                                            "func": "all",
                                            "gap": "",
                                            "x": 100,
                                            "y": 460,
                                            "wires": [
                                            [
                                            "864b8892.25f1a"
                                            ]
                                            ]
                                            },
                                            {
                                            "id": "80c6e025.1825e8",
                                            "type": "switch",
                                            "z": "cf416abd.c92158",
                                            "name": "Broadlink включен?",
                                            "property": "Broadlink_STATUS",
                                            "propertyType": "flow",
                                            "rules": [
                                            {
                                            "t": "eq",
                                            "v": "false",
                                            "vt": "str"
                                            },
                                            {
                                            "t": "eq",
                                            "v": "true",
                                            "vt": "str"
                                            }
                                            ],
                                            "checkall": "true",
                                            "repair": false,
                                            "outputs": 2,
                                            "x": 540,
                                            "y": 460,
                                            "wires": [
                                            [
                                            "aff64449.5b9498"
                                            ],
                                            [
                                            "3b2d8770.0222c8"
                                            ]
                                            ]
                                            },
                                            {
                                            "id": "aff64449.5b9498",
                                            "type": "change",
                                            "z": "cf416abd.c92158",
                                            "name": "Включаем Broadlink",
                                            "rules": [
                                            {
                                            "t": "set",
                                            "p": "payload",
                                            "pt": "msg",
                                            "to": "true",
                                            "tot": "bool"
                                            }
                                            ],
                                            "action": "",
                                            "property": "",
                                            "from": "",
                                            "to": "",
                                            "reg": false,
                                            "x": 860,
                                            "y": 400,
                                            "wires": [
                                            [
                                            "9ea4024f.45e7d",
                                            "b50086c9.ce0408"
                                            ]
                                            ]
                                            },
                                            {
                                            "id": "3b2d8770.0222c8",
                                            "type": "change",
                                            "z": "cf416abd.c92158",
                                            "name": "Отключаем Broadlink",
                                            "rules": [
                                            {
                                            "t": "set",
                                            "p": "payload",
                                            "pt": "msg",
                                            "to": "false",
                                            "tot": "bool"
                                            }
                                            ],
                                            "action": "",
                                            "property": "",
                                            "from": "",
                                            "to": "",
                                            "reg": false,
                                            "x": 820,
                                            "y": 520,
                                            "wires": [
                                            [
                                            "a4d8b0b.c5ed45",
                                            "58937c89.b8335c"
                                            ]
                                            ]
                                            },
                                            {
                                            "id": "9ea4024f.45e7d",
                                            "type": "SP2",
                                            "z": "cf416abd.c92158",
                                            "name": "Bathoom",
                                            "device": "6a792cc8.2a6eac",
                                            "action": "setState",
                                            "state": "true",
                                            "x": 1100,
                                            "y": 440,
                                            "wires": [
                                            []
                                            ]
                                            },
                                            {
                                            "id": "a4d8b0b.c5ed45",
                                            "type": "SP2",
                                            "z": "cf416abd.c92158",
                                            "name": "Bathoom",
                                            "device": "6a792cc8.2a6eac",
                                            "action": "setState",
                                            "state": "false",
                                            "x": 1100,
                                            "y": 520,
                                            "wires": [
                                            []
                                            ]
                                            },
                                            {
                                            "id": "864b8892.25f1a",
                                            "type": "switch",
                                            "z": "cf416abd.c92158",
                                            "name": "Берём только true",
                                            "property": "payload",
                                            "propertyType": "msg",
                                            "rules": [
                                            {
                                            "t": "eq",
                                            "v": "true",
                                            "vt": "str"
                                            }
                                            ],
                                            "checkall": "true",
                                            "repair": false,
                                            "outputs": 1,
                                            "x": 290,
                                            "y": 460,
                                            "wires": [
                                            [
                                            "80c6e025.1825e8"
                                            ]
                                            ]
                                            },
                                            {
                                            "id": "58937c89.b8335c",
                                            "type": "debug",
                                            "z": "cf416abd.c92158",
                                            "name": "Отключаем",
                                            "active": true,
                                            "tosidebar": true,
                                            "console": false,
                                            "tostatus": false,
                                            "complete": "payload",
                                            "x": 1110,
                                            "y": 600,
                                            "wires": []
                                            },
                                            {
                                            "id": "b50086c9.ce0408",
                                            "type": "debug",
                                            "z": "cf416abd.c92158",
                                            "name": "Включаем",
                                            "active": true,
                                            "tosidebar": true,
                                            "console": false,
                                            "tostatus": false,
                                            "complete": "payload",
                                            "x": 1190,
                                            "y": 380,
                                            "wires": []
                                            },
                                            {
                                            "id": "ba2cb790.e57ee",
                                            "type": "SP2",
                                            "z": "cf416abd.c92158",
                                            "name": "Bathoom",
                                            "device": "6a792cc8.2a6eac",
                                            "action": "getState",
                                            "state": "true",
                                            "x": 380,
                                            "y": 300,
                                            "wires": [
                                            [
                                            "60e40fa1.b78738"
                                            ]
                                            ]
                                            },
                                            {
                                            "id": "60e40fa1.b78738",
                                            "type": "switch",
                                            "z": "cf416abd.c92158",
                                            "name": "Передаём статус broadlink",
                                            "property": "payload.state",
                                            "propertyType": "msg",
                                            "rules": [
                                            {
                                            "t": "true"
                                            },
                                            {
                                            "t": "false"
                                            }
                                            ],
                                            "checkall": "false",
                                            "repair": false,
                                            "outputs": 2,
                                            "x": 600,
                                            "y": 300,
                                            "wires": [
                                            [
                                            "1be7b90d.421cf7"
                                            ],
                                            [
                                            "6bb3ee18.8728d8"
                                            ]
                                            ]
                                            },
                                            {
                                            "id": "1be7b90d.421cf7",
                                            "type": "change",
                                            "z": "cf416abd.c92158",
                                            "name": "Broadlink ON",
                                            "rules": [
                                            {
                                            "t": "set",
                                            "p": "Broadlink_STATUS",
                                            "pt": "flow",
                                            "to": "true",
                                            "tot": "str"
                                            }
                                            ],
                                            "action": "",
                                            "property": "",
                                            "from": "",
                                            "to": "",
                                            "reg": false,
                                            "x": 890,
                                            "y": 220,
                                            "wires": [
                                            []
                                            ]
                                            },
                                            {
                                            "id": "6bb3ee18.8728d8",
                                            "type": "change",
                                            "z": "cf416abd.c92158",
                                            "name": "Broadlink OFF",
                                            "rules": [
                                            {
                                            "t": "set",
                                            "p": "Broadlink_STATUS",
                                            "pt": "flow",
                                            "to": "false",
                                            "tot": "str"
                                            }
                                            ],
                                            "action": "",
                                            "property": "",
                                            "from": "",
                                            "to": "",
                                            "reg": false,
                                            "x": 960,
                                            "y": 340,
                                            "wires": [
                                            []
                                            ]
                                            },
                                            {
                                            "id": "12b779f5.16f1a6",
                                            "type": "comment",
                                            "z": "cf416abd.c92158",
                                            "name": "Тут логика работы",
                                            "info": "",
                                            "x": 450,
                                            "y": 380,
                                            "wires": []
                                            },
                                            {
                                            "id": "74adb82d.c4c64",
                                            "type": "comment",
                                            "z": "cf416abd.c92158",
                                            "name": "Тут определяем состояние реле Broadlink",
                                            "info": "",
                                            "x": 490,
                                            "y": 220,
                                            "wires": []
                                            },
                                            {
                                            "id": "eb30ea3d.afc17",
                                            "type": "inject",
                                            "z": "cf416abd.c92158",
                                            "name": "",
                                            "topic": "",
                                            "payload": "",
                                            "payloadType": "date",
                                            "repeat": "1",
                                            "crontab": "",
                                            "once": false,
                                            "onceDelay": 0.1,
                                            "x": 170,
                                            "y": 300,
                                            "wires": [
                                            [
                                            "ba2cb790.e57ee"
                                            ]
                                            ]
                                            },
                                            {
                                            "id": "743f811.46788",
                                            "type": "bigtimer",
                                            "z": "cf416abd.c92158",
                                            "outtopic": "",
                                            "outpayload1": "",
                                            "outpayload2": "",
                                            "name": "Big Timer",
                                            "comment": "",
                                            "lat": "",
                                            "lon": "",
                                            "starttime": 5001,
                                            "endtime": 1425,
                                            "starttime2": 0,
                                            "endtime2": 0,
                                            "startoff": 0,
                                            "endoff": 0,
                                            "startoff2": 0,
                                            "endoff2": 0,
                                            "offs": 0,
                                            "outtext1": "",
                                            "outtext2": "",
                                            "timeout": 1440,
                                            "sun": true,
                                            "mon": true,
                                            "tue": true,
                                            "wed": true,
                                            "thu": true,
                                            "fri": true,
                                            "sat": true,
                                            "jan": true,
                                            "feb": true,
                                            "mar": true,
                                            "apr": true,
                                            "may": true,
                                            "jun": true,
                                            "jul": true,
                                            "aug": true,
                                            "sep": true,
                                            "oct": true,
                                            "nov": true,
                                            "dec": true,
                                            "day1": 0,
                                            "month1": 0,
                                            "day2": 0,
                                            "month2": 0,
                                            "day3": 0,
                                            "month3": 0,
                                            "day4": 0,
                                            "month4": 0,
                                            "day5": 0,
                                            "month5": 0,
                                            "day6": 0,
                                            "month6": 0,
                                            "d1": 0,
                                            "w1": 0,
                                            "d2": 0,
                                            "w2": 0,
                                            "d3": 0,
                                            "w3": 0,
                                            "d4": 0,
                                            "w4": 0,
                                            "d5": 0,
                                            "w5": 0,
                                            "d6": 0,
                                            "w6": 0,
                                            "xday1": 0,
                                            "xmonth1": 0,
                                            "xday2": 0,
                                            "xmonth2": 0,
                                            "xday3": 0,
                                            "xmonth3": 0,
                                            "xday4": 0,
                                            "xmonth4": 0,
                                            "xday5": 0,
                                            "xmonth5": 0,
                                            "xday6": 0,
                                            "xmonth6": 0,
                                            "xd1": 0,
                                            "xw1": 0,
                                            "xd2": 0,
                                            "xw2": 0,
                                            "xd3": 0,
                                            "xw3": 0,
                                            "xd4": 0,
                                            "xw4": 0,
                                            "xd5": 0,
                                            "xw5": 0,
                                            "xd6": 0,
                                            "xw6": 0,
                                            "suspend": false,
                                            "random": false,
                                            "repeat": true,
                                            "atstart": true,
                                            "odd": false,
                                            "even": false,
                                            "x": 80,
                                            "y": 160,
                                            "wires": [
                                            [],
                                            [],
                                            []
                                            ]
                                            },
                                            {
                                            "id": "6a792cc8.2a6eac",
                                            "type": "sp2device",
                                            "z": "",
                                            "mac": "78-0F-77-17-8D-49",
                                            "host": "192.168.1.5"
                                            }
                                            ]

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

                                            Support us

                                            ioBroker
                                            Community Adapters
                                            Donate

                                            939
                                            Online

                                            31.7k
                                            Users

                                            79.9k
                                            Topics

                                            1.3m
                                            Posts

                                            16
                                            85
                                            70457
                                            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