Skip to content
  • Home
  • Aktuell
  • Tags
  • 0 Ungelesen 0
  • Kategorien
  • Unreplied
  • Beliebt
  • GitHub
  • Docu
  • Hilfe
Skins
  • Light
  • Brite
  • Cerulean
  • Cosmo
  • Flatly
  • Journal
  • Litera
  • Lumen
  • Lux
  • Materia
  • Minty
  • Morph
  • Pulse
  • Sandstone
  • Simplex
  • Sketchy
  • Spacelab
  • United
  • Yeti
  • Zephyr
  • Dark
  • Cyborg
  • Darkly
  • Quartz
  • Slate
  • Solar
  • Superhero
  • Vapor

  • Standard: (Kein Skin)
  • Kein Skin
Einklappen
ioBroker Logo

Community Forum

donate donate
  1. ioBroker Community Home
  2. Deutsch
  3. Skripten / Logik
  4. Node-Red
  5. Probleme mit Zeitsteuerung und AND Logik

NEWS

  • UPDATE 31.10.: Amazon Alexa - ioBroker Skill läuft aus ?
    apollon77A
    apollon77
    48
    3
    8.8k

  • Monatsrückblick – September 2025
    BluefoxB
    Bluefox
    13
    1
    2.2k

  • Neues Video "KI im Smart Home" - ioBroker plus n8n
    BluefoxB
    Bluefox
    16
    1
    3.3k

Probleme mit Zeitsteuerung und AND Logik

Geplant Angeheftet Gesperrt Verschoben Node-Red
8 Beiträge 2 Kommentatoren 616 Aufrufe 2 Watching
  • Älteste zuerst
  • Neuste zuerst
  • Meiste Stimmen
Antworten
  • In einem neuen Thema antworten
Anmelden zum Antworten
Dieses Thema wurde gelöscht. Nur Nutzer mit entsprechenden Rechten können es sehen.
  • S Offline
    S Offline
    Saranger
    schrieb am zuletzt editiert von
    #1

    Guten Morgen zusammen, ich scheitere mal wieder an den Zeitbausteinen in Kombination mit einem AND. Vielleicht kann mir da einer auf die Sprünge helfen.

    Ich habe bei mir im BAd zwei Lampen welche über einen P geschaltet werden, ich möchte das Nachts aber nur eine angeht und jetzt habe ich die KNX GA und zwei Uhrzeiten und ein AND und trotzdem gehen immer beide an. Ich hab es auch mit dem Bigtimer schon probiert aber die AND Logik gibt immer ein true raus auch wenn die Zeit nicht aktiv ist.

    Lampe.JPG

    [
        {
            "id": "6dcd33f86c41b022",
            "type": "knxUltimate",
            "z": "415f0fe36e308bdb",
            "server": "6fc013af.98132c",
            "topic": "1/1/70",
            "outputtopic": "",
            "dpt": "1.001",
            "initialread": "1",
            "notifyreadrequest": false,
            "notifyresponse": true,
            "notifywrite": true,
            "notifyreadrequestalsorespondtobus": false,
            "notifyreadrequestalsorespondtobusdefaultvalueifnotinitialized": "0",
            "listenallga": false,
            "name": "O5 - L2.2 80cm",
            "outputtype": "write",
            "outputRBE": false,
            "inputRBE": false,
            "formatmultiplyvalue": 1,
            "formatnegativevalue": "leave",
            "formatdecimalsvalue": 999,
            "passthrough": "no",
            "x": 780,
            "y": 2120,
            "wires": [
                []
            ]
        },
        {
            "id": "40f01663243f3135",
            "type": "inject",
            "z": "415f0fe36e308bdb",
            "name": "06:00",
            "props": [
                {
                    "p": "payload"
                },
                {
                    "p": "topic",
                    "vt": "str"
                }
            ],
            "repeat": "",
            "crontab": "00 07 * * *",
            "once": false,
            "onceDelay": 0.1,
            "topic": "1",
            "payload": "on",
            "payloadType": "str",
            "x": 90,
            "y": 2180,
            "wires": [
                [
                    "bdb25d3bedb3d1a1"
                ]
            ]
        },
        {
            "id": "b2aac529d0d241b1",
            "type": "inject",
            "z": "415f0fe36e308bdb",
            "name": "22:00",
            "props": [
                {
                    "p": "payload"
                },
                {
                    "p": "topic",
                    "vt": "str"
                }
            ],
            "repeat": "",
            "crontab": "00 22 * * *",
            "once": false,
            "onceDelay": 0.1,
            "topic": "1",
            "payload": "off",
            "payloadType": "str",
            "x": 90,
            "y": 2220,
            "wires": [
                [
                    "bdb25d3bedb3d1a1"
                ]
            ]
        },
        {
            "id": "fa43646eebd9962e",
            "type": "group",
            "z": "415f0fe36e308bdb",
            "name": "2 Boolean Logic",
            "style": {
                "label": true,
                "fill": "#ff7f7f",
                "color": "#000000"
            },
            "nodes": [
                "bdb25d3bedb3d1a1",
                "b62ff4888f8291c0"
            ],
            "x": 334,
            "y": 2079,
            "w": 292,
            "h": 82
        },
        {
            "id": "bdb25d3bedb3d1a1",
            "type": "join",
            "z": "415f0fe36e308bdb",
            "g": "fa43646eebd9962e",
            "name": "",
            "mode": "custom",
            "build": "object",
            "property": "payload",
            "propertyType": "msg",
            "key": "topic",
            "joiner": "\\n",
            "joinerType": "str",
            "accumulate": true,
            "timeout": "",
            "count": "2",
            "reduceRight": false,
            "reduceExp": "",
            "reduceInit": "",
            "reduceInitType": "",
            "reduceFixup": "",
            "x": 410,
            "y": 2120,
            "wires": [
                [
                    "b62ff4888f8291c0"
                ]
            ]
        },
        {
            "id": "b62ff4888f8291c0",
            "type": "change",
            "z": "415f0fe36e308bdb",
            "g": "fa43646eebd9962e",
            "name": "AND ?",
            "rules": [
                {
                    "t": "set",
                    "p": "payload",
                    "pt": "msg",
                    "to": "$reduce(payload.*,function($i, $j){$i and $j})",
                    "tot": "jsonata"
                }
            ],
            "action": "",
            "property": "",
            "from": "",
            "to": "",
            "reg": false,
            "x": 550,
            "y": 2120,
            "wires": [
                [
                    "6dcd33f86c41b022",
                    "47bb59ef955c0f04"
                ]
            ],
            "info": "# All Property of an object must be true.\n\nAll properties of an object must be true.\n\n`{\n    \"Office\": true,\n    \"Bedroom\": true,\n    \"Living Room Balcony\": true,\n    \"Living Room Right Window\": true,\n    \"Living Room Left Window\": true\n}`\n\nis true,\n\n`{\n    \"Office\": true,\n    \"Bedroom\": false,\n    \"Living Room Balcony\": true,\n    \"Living Room Right Window\": true,\n    \"Living Room Left Window\": true\n}`\n\nis false.\n\n# Alle Eigenschaften eines Objektes müssen wahr sein\n\nAlle Eigenschaften eines Objektes müssen wahr sein.\n\n`{\n    \"Büro Balkon\": true,\n    \"Schlafzimmer Balkon\": true,\n    \"Wohnzimmer Balkon\": true,\n    \"Wohnzimmer rechtes Fenster\": true,\n    \"Wohnzimmer linkes Fenster\": true\n}`\n\nergibt true,\n\n`{\n    \"Büro Balkon\": true,\n    \"Schlafzimmer Balkon\": true,\n    \"Wohnzimmer Balkon\": true,\n    \"Wohnzimmer rechtes Fenster\": false,\n    \"Wohnzimmer linkes Fenster\": true\n}`\n\nergibt false."
        },
        {
            "id": "6fc013af.98132c",
            "type": "knxUltimate-config",
            "host": "192.168.2.89",
            "port": "3671",
            "physAddr": "15.15.22",
            "hostProtocol": "TunnelUDP",
            "suppressACKRequest": true,
            "csv": "",
            "KNXEthInterface": "Auto",
            "KNXEthInterfaceManuallyInput": "",
            "statusDisplayLastUpdate": true,
            "statusDisplayDeviceNameWhenALL": true,
            "statusDisplayDataPoint": false,
            "stopETSImportIfNoDatapoint": "stop",
            "loglevel": "error",
            "name": "Martins KNX",
            "localEchoInTunneling": true,
            "delaybetweentelegrams": "40",
            "delaybetweentelegramsfurtherdelayREAD": "1",
            "ignoreTelegramsWithRepeatedFlag": false,
            "keyringFileXML": ""
        }
    ]!
    

    Danke euch

    mickymM 1 Antwort Letzte Antwort
    0
    • S Saranger

      Guten Morgen zusammen, ich scheitere mal wieder an den Zeitbausteinen in Kombination mit einem AND. Vielleicht kann mir da einer auf die Sprünge helfen.

      Ich habe bei mir im BAd zwei Lampen welche über einen P geschaltet werden, ich möchte das Nachts aber nur eine angeht und jetzt habe ich die KNX GA und zwei Uhrzeiten und ein AND und trotzdem gehen immer beide an. Ich hab es auch mit dem Bigtimer schon probiert aber die AND Logik gibt immer ein true raus auch wenn die Zeit nicht aktiv ist.

      Lampe.JPG

      [
          {
              "id": "6dcd33f86c41b022",
              "type": "knxUltimate",
              "z": "415f0fe36e308bdb",
              "server": "6fc013af.98132c",
              "topic": "1/1/70",
              "outputtopic": "",
              "dpt": "1.001",
              "initialread": "1",
              "notifyreadrequest": false,
              "notifyresponse": true,
              "notifywrite": true,
              "notifyreadrequestalsorespondtobus": false,
              "notifyreadrequestalsorespondtobusdefaultvalueifnotinitialized": "0",
              "listenallga": false,
              "name": "O5 - L2.2 80cm",
              "outputtype": "write",
              "outputRBE": false,
              "inputRBE": false,
              "formatmultiplyvalue": 1,
              "formatnegativevalue": "leave",
              "formatdecimalsvalue": 999,
              "passthrough": "no",
              "x": 780,
              "y": 2120,
              "wires": [
                  []
              ]
          },
          {
              "id": "40f01663243f3135",
              "type": "inject",
              "z": "415f0fe36e308bdb",
              "name": "06:00",
              "props": [
                  {
                      "p": "payload"
                  },
                  {
                      "p": "topic",
                      "vt": "str"
                  }
              ],
              "repeat": "",
              "crontab": "00 07 * * *",
              "once": false,
              "onceDelay": 0.1,
              "topic": "1",
              "payload": "on",
              "payloadType": "str",
              "x": 90,
              "y": 2180,
              "wires": [
                  [
                      "bdb25d3bedb3d1a1"
                  ]
              ]
          },
          {
              "id": "b2aac529d0d241b1",
              "type": "inject",
              "z": "415f0fe36e308bdb",
              "name": "22:00",
              "props": [
                  {
                      "p": "payload"
                  },
                  {
                      "p": "topic",
                      "vt": "str"
                  }
              ],
              "repeat": "",
              "crontab": "00 22 * * *",
              "once": false,
              "onceDelay": 0.1,
              "topic": "1",
              "payload": "off",
              "payloadType": "str",
              "x": 90,
              "y": 2220,
              "wires": [
                  [
                      "bdb25d3bedb3d1a1"
                  ]
              ]
          },
          {
              "id": "fa43646eebd9962e",
              "type": "group",
              "z": "415f0fe36e308bdb",
              "name": "2 Boolean Logic",
              "style": {
                  "label": true,
                  "fill": "#ff7f7f",
                  "color": "#000000"
              },
              "nodes": [
                  "bdb25d3bedb3d1a1",
                  "b62ff4888f8291c0"
              ],
              "x": 334,
              "y": 2079,
              "w": 292,
              "h": 82
          },
          {
              "id": "bdb25d3bedb3d1a1",
              "type": "join",
              "z": "415f0fe36e308bdb",
              "g": "fa43646eebd9962e",
              "name": "",
              "mode": "custom",
              "build": "object",
              "property": "payload",
              "propertyType": "msg",
              "key": "topic",
              "joiner": "\\n",
              "joinerType": "str",
              "accumulate": true,
              "timeout": "",
              "count": "2",
              "reduceRight": false,
              "reduceExp": "",
              "reduceInit": "",
              "reduceInitType": "",
              "reduceFixup": "",
              "x": 410,
              "y": 2120,
              "wires": [
                  [
                      "b62ff4888f8291c0"
                  ]
              ]
          },
          {
              "id": "b62ff4888f8291c0",
              "type": "change",
              "z": "415f0fe36e308bdb",
              "g": "fa43646eebd9962e",
              "name": "AND ?",
              "rules": [
                  {
                      "t": "set",
                      "p": "payload",
                      "pt": "msg",
                      "to": "$reduce(payload.*,function($i, $j){$i and $j})",
                      "tot": "jsonata"
                  }
              ],
              "action": "",
              "property": "",
              "from": "",
              "to": "",
              "reg": false,
              "x": 550,
              "y": 2120,
              "wires": [
                  [
                      "6dcd33f86c41b022",
                      "47bb59ef955c0f04"
                  ]
              ],
              "info": "# All Property of an object must be true.\n\nAll properties of an object must be true.\n\n`{\n    \"Office\": true,\n    \"Bedroom\": true,\n    \"Living Room Balcony\": true,\n    \"Living Room Right Window\": true,\n    \"Living Room Left Window\": true\n}`\n\nis true,\n\n`{\n    \"Office\": true,\n    \"Bedroom\": false,\n    \"Living Room Balcony\": true,\n    \"Living Room Right Window\": true,\n    \"Living Room Left Window\": true\n}`\n\nis false.\n\n# Alle Eigenschaften eines Objektes müssen wahr sein\n\nAlle Eigenschaften eines Objektes müssen wahr sein.\n\n`{\n    \"Büro Balkon\": true,\n    \"Schlafzimmer Balkon\": true,\n    \"Wohnzimmer Balkon\": true,\n    \"Wohnzimmer rechtes Fenster\": true,\n    \"Wohnzimmer linkes Fenster\": true\n}`\n\nergibt true,\n\n`{\n    \"Büro Balkon\": true,\n    \"Schlafzimmer Balkon\": true,\n    \"Wohnzimmer Balkon\": true,\n    \"Wohnzimmer rechtes Fenster\": false,\n    \"Wohnzimmer linkes Fenster\": true\n}`\n\nergibt false."
          },
          {
              "id": "6fc013af.98132c",
              "type": "knxUltimate-config",
              "host": "192.168.2.89",
              "port": "3671",
              "physAddr": "15.15.22",
              "hostProtocol": "TunnelUDP",
              "suppressACKRequest": true,
              "csv": "",
              "KNXEthInterface": "Auto",
              "KNXEthInterfaceManuallyInput": "",
              "statusDisplayLastUpdate": true,
              "statusDisplayDeviceNameWhenALL": true,
              "statusDisplayDataPoint": false,
              "stopETSImportIfNoDatapoint": "stop",
              "loglevel": "error",
              "name": "Martins KNX",
              "localEchoInTunneling": true,
              "delaybetweentelegrams": "40",
              "delaybetweentelegramsfurtherdelayREAD": "1",
              "ignoreTelegramsWithRepeatedFlag": false,
              "keyringFileXML": ""
          }
      ]!
      

      Danke euch

      mickymM Online
      mickymM Online
      mickym
      Most Active
      schrieb am zuletzt editiert von mickym
      #2

      @saranger na ich muss das erst mal generell verstehen.

      Die linke Lampe geht immer an ? - und die rechte Lampe soll nur angehen, wenn es nicht nachts ist? Das Problem ist aber schon erkannt. Grundsätzlich musst Du mit true und false arbeiten. Zeichenketten sind immer true

      adbcdd72-42c6-4349-9c18-9367ac3e61ba-image.png

      [
         {
             "id": "40f01663243f3135",
             "type": "inject",
             "z": "85ae8ec646aa7f1a",
             "name": "06:00",
             "props": [
                 {
                     "p": "payload"
                 },
                 {
                     "p": "topic",
                     "vt": "str"
                 }
             ],
             "repeat": "",
             "crontab": "00 07 * * *",
             "once": false,
             "onceDelay": 0.1,
             "topic": "1",
             "payload": "true",
             "payloadType": "bool",
             "x": 210,
             "y": 360,
             "wires": [
                 [
                     "bdb25d3bedb3d1a1"
                 ]
             ]
         },
         {
             "id": "b2aac529d0d241b1",
             "type": "inject",
             "z": "85ae8ec646aa7f1a",
             "name": "22:00",
             "props": [
                 {
                     "p": "payload"
                 },
                 {
                     "p": "topic",
                     "vt": "str"
                 }
             ],
             "repeat": "",
             "crontab": "00 22 * * *",
             "once": false,
             "onceDelay": 0.1,
             "topic": "1",
             "payload": "false",
             "payloadType": "bool",
             "x": 210,
             "y": 400,
             "wires": [
                 [
                     "bdb25d3bedb3d1a1"
                 ]
             ]
         },
         {
             "id": "77b9693b34d6f33b",
             "type": "inject",
             "z": "85ae8ec646aa7f1a",
             "name": "",
             "props": [
                 {
                     "p": "payload"
                 },
                 {
                     "p": "topic",
                     "vt": "str"
                 }
             ],
             "repeat": "",
             "crontab": "",
             "once": false,
             "onceDelay": 0.1,
             "topic": "L2.1",
             "payload": "true",
             "payloadType": "bool",
             "x": 260,
             "y": 280,
             "wires": [
                 [
                     "bdb25d3bedb3d1a1"
                 ]
             ]
         },
         {
             "id": "4ba5db35935bee8b",
             "type": "debug",
             "z": "85ae8ec646aa7f1a",
             "name": "debug 2",
             "active": true,
             "tosidebar": true,
             "console": false,
             "tostatus": false,
             "complete": "false",
             "statusVal": "",
             "statusType": "auto",
             "x": 840,
             "y": 300,
             "wires": []
         },
         {
             "id": "fa43646eebd9962e",
             "type": "group",
             "z": "85ae8ec646aa7f1a",
             "name": "2 Boolean Logic",
             "style": {
                 "label": true,
                 "fill": "#ff7f7f",
                 "color": "#000000"
             },
             "nodes": [
                 "bdb25d3bedb3d1a1",
                 "b62ff4888f8291c0"
             ],
             "x": 454,
             "y": 259,
             "w": 292,
             "h": 82
         },
         {
             "id": "bdb25d3bedb3d1a1",
             "type": "join",
             "z": "85ae8ec646aa7f1a",
             "g": "fa43646eebd9962e",
             "name": "",
             "mode": "custom",
             "build": "object",
             "property": "payload",
             "propertyType": "msg",
             "key": "topic",
             "joiner": "\\n",
             "joinerType": "str",
             "accumulate": true,
             "timeout": "",
             "count": "2",
             "reduceRight": false,
             "reduceExp": "",
             "reduceInit": "",
             "reduceInitType": "",
             "reduceFixup": "",
             "x": 530,
             "y": 300,
             "wires": [
                 [
                     "b62ff4888f8291c0"
                 ]
             ]
         },
         {
             "id": "b62ff4888f8291c0",
             "type": "change",
             "z": "85ae8ec646aa7f1a",
             "g": "fa43646eebd9962e",
             "name": "AND ?",
             "rules": [
                 {
                     "t": "set",
                     "p": "payload",
                     "pt": "msg",
                     "to": "$reduce(payload.*,function($i, $j){$i and $j})",
                     "tot": "jsonata"
                 }
             ],
             "action": "",
             "property": "",
             "from": "",
             "to": "",
             "reg": false,
             "x": 670,
             "y": 300,
             "wires": [
                 [
                     "4ba5db35935bee8b"
                 ]
             ],
             "info": "# All Property of an object must be true.\n\nAll properties of an object must be true.\n\n`{\n    \"Office\": true,\n    \"Bedroom\": true,\n    \"Living Room Balcony\": true,\n    \"Living Room Right Window\": true,\n    \"Living Room Left Window\": true\n}`\n\nis true,\n\n`{\n    \"Office\": true,\n    \"Bedroom\": false,\n    \"Living Room Balcony\": true,\n    \"Living Room Right Window\": true,\n    \"Living Room Left Window\": true\n}`\n\nis false.\n\n# Alle Eigenschaften eines Objektes müssen wahr sein\n\nAlle Eigenschaften eines Objektes müssen wahr sein.\n\n`{\n    \"Büro Balkon\": true,\n    \"Schlafzimmer Balkon\": true,\n    \"Wohnzimmer Balkon\": true,\n    \"Wohnzimmer rechtes Fenster\": true,\n    \"Wohnzimmer linkes Fenster\": true\n}`\n\nergibt true,\n\n`{\n    \"Büro Balkon\": true,\n    \"Schlafzimmer Balkon\": true,\n    \"Wohnzimmer Balkon\": true,\n    \"Wohnzimmer rechtes Fenster\": false,\n    \"Wohnzimmer linkes Fenster\": true\n}`\n\nergibt false."
         }
      ]
      

      Man kann das aber auch einfacher - mit der Moments Bibliothek und der Datum- und Zeitverarbeitung in Node Red lösen.

      Hier mal eine Change und eine Switch Node. ;)
      d060ec59-1f3b-434a-b189-22e114411bea-image.png

      [
         {
             "id": "922b0da53b5fc75b",
             "type": "switch",
             "z": "85ae8ec646aa7f1a",
             "name": "zwischen 6 und 22 Uhr ?",
             "property": "$moment().isBetween($moment(\"06\", \"hh\"),$moment(\"22\", \"hh\"),'minute','[)')",
             "propertyType": "jsonata",
             "rules": [
                 {
                     "t": "true"
                 },
                 {
                     "t": "false"
                 }
             ],
             "checkall": "true",
             "repair": false,
             "outputs": 2,
             "x": 610,
             "y": 100,
             "wires": [
                 [],
                 []
             ]
         },
         {
             "id": "8e35e390facce767",
             "type": "change",
             "z": "85ae8ec646aa7f1a",
             "name": "zwischen 6 und 22 Uhr?",
             "rules": [
                 {
                     "t": "set",
                     "p": "payload",
                     "pt": "msg",
                     "to": "$moment().isBetween($moment(\"06\", \"hh\"),$moment(\"22\", \"hh\"),'minute','[)')",
                     "tot": "jsonata"
                 }
             ],
             "action": "",
             "property": "",
             "from": "",
             "to": "",
             "reg": false,
             "x": 610,
             "y": 140,
             "wires": [
                 []
             ]
         }
      ]
      

      Schau Dir mal meinen Thread zur Datum und Uhrzeit in Node-Red an: https://forum.iobroker.net/topic/50086/datum-und-zeitverarbeitung-mit-nodered

      Jeder Flow bzw. jedes Script, das ich hier poste implementiert jeder auf eigene Gefahr. Flows und Scripts können Fehler aufweisen und weder der Seitenbetreiber noch ich persönlich können hierfür haftbar gemacht werden. Das gleiche gilt für Empfehlungen aller Art.

      S 1 Antwort Letzte Antwort
      0
      • mickymM mickym

        @saranger na ich muss das erst mal generell verstehen.

        Die linke Lampe geht immer an ? - und die rechte Lampe soll nur angehen, wenn es nicht nachts ist? Das Problem ist aber schon erkannt. Grundsätzlich musst Du mit true und false arbeiten. Zeichenketten sind immer true

        adbcdd72-42c6-4349-9c18-9367ac3e61ba-image.png

        [
           {
               "id": "40f01663243f3135",
               "type": "inject",
               "z": "85ae8ec646aa7f1a",
               "name": "06:00",
               "props": [
                   {
                       "p": "payload"
                   },
                   {
                       "p": "topic",
                       "vt": "str"
                   }
               ],
               "repeat": "",
               "crontab": "00 07 * * *",
               "once": false,
               "onceDelay": 0.1,
               "topic": "1",
               "payload": "true",
               "payloadType": "bool",
               "x": 210,
               "y": 360,
               "wires": [
                   [
                       "bdb25d3bedb3d1a1"
                   ]
               ]
           },
           {
               "id": "b2aac529d0d241b1",
               "type": "inject",
               "z": "85ae8ec646aa7f1a",
               "name": "22:00",
               "props": [
                   {
                       "p": "payload"
                   },
                   {
                       "p": "topic",
                       "vt": "str"
                   }
               ],
               "repeat": "",
               "crontab": "00 22 * * *",
               "once": false,
               "onceDelay": 0.1,
               "topic": "1",
               "payload": "false",
               "payloadType": "bool",
               "x": 210,
               "y": 400,
               "wires": [
                   [
                       "bdb25d3bedb3d1a1"
                   ]
               ]
           },
           {
               "id": "77b9693b34d6f33b",
               "type": "inject",
               "z": "85ae8ec646aa7f1a",
               "name": "",
               "props": [
                   {
                       "p": "payload"
                   },
                   {
                       "p": "topic",
                       "vt": "str"
                   }
               ],
               "repeat": "",
               "crontab": "",
               "once": false,
               "onceDelay": 0.1,
               "topic": "L2.1",
               "payload": "true",
               "payloadType": "bool",
               "x": 260,
               "y": 280,
               "wires": [
                   [
                       "bdb25d3bedb3d1a1"
                   ]
               ]
           },
           {
               "id": "4ba5db35935bee8b",
               "type": "debug",
               "z": "85ae8ec646aa7f1a",
               "name": "debug 2",
               "active": true,
               "tosidebar": true,
               "console": false,
               "tostatus": false,
               "complete": "false",
               "statusVal": "",
               "statusType": "auto",
               "x": 840,
               "y": 300,
               "wires": []
           },
           {
               "id": "fa43646eebd9962e",
               "type": "group",
               "z": "85ae8ec646aa7f1a",
               "name": "2 Boolean Logic",
               "style": {
                   "label": true,
                   "fill": "#ff7f7f",
                   "color": "#000000"
               },
               "nodes": [
                   "bdb25d3bedb3d1a1",
                   "b62ff4888f8291c0"
               ],
               "x": 454,
               "y": 259,
               "w": 292,
               "h": 82
           },
           {
               "id": "bdb25d3bedb3d1a1",
               "type": "join",
               "z": "85ae8ec646aa7f1a",
               "g": "fa43646eebd9962e",
               "name": "",
               "mode": "custom",
               "build": "object",
               "property": "payload",
               "propertyType": "msg",
               "key": "topic",
               "joiner": "\\n",
               "joinerType": "str",
               "accumulate": true,
               "timeout": "",
               "count": "2",
               "reduceRight": false,
               "reduceExp": "",
               "reduceInit": "",
               "reduceInitType": "",
               "reduceFixup": "",
               "x": 530,
               "y": 300,
               "wires": [
                   [
                       "b62ff4888f8291c0"
                   ]
               ]
           },
           {
               "id": "b62ff4888f8291c0",
               "type": "change",
               "z": "85ae8ec646aa7f1a",
               "g": "fa43646eebd9962e",
               "name": "AND ?",
               "rules": [
                   {
                       "t": "set",
                       "p": "payload",
                       "pt": "msg",
                       "to": "$reduce(payload.*,function($i, $j){$i and $j})",
                       "tot": "jsonata"
                   }
               ],
               "action": "",
               "property": "",
               "from": "",
               "to": "",
               "reg": false,
               "x": 670,
               "y": 300,
               "wires": [
                   [
                       "4ba5db35935bee8b"
                   ]
               ],
               "info": "# All Property of an object must be true.\n\nAll properties of an object must be true.\n\n`{\n    \"Office\": true,\n    \"Bedroom\": true,\n    \"Living Room Balcony\": true,\n    \"Living Room Right Window\": true,\n    \"Living Room Left Window\": true\n}`\n\nis true,\n\n`{\n    \"Office\": true,\n    \"Bedroom\": false,\n    \"Living Room Balcony\": true,\n    \"Living Room Right Window\": true,\n    \"Living Room Left Window\": true\n}`\n\nis false.\n\n# Alle Eigenschaften eines Objektes müssen wahr sein\n\nAlle Eigenschaften eines Objektes müssen wahr sein.\n\n`{\n    \"Büro Balkon\": true,\n    \"Schlafzimmer Balkon\": true,\n    \"Wohnzimmer Balkon\": true,\n    \"Wohnzimmer rechtes Fenster\": true,\n    \"Wohnzimmer linkes Fenster\": true\n}`\n\nergibt true,\n\n`{\n    \"Büro Balkon\": true,\n    \"Schlafzimmer Balkon\": true,\n    \"Wohnzimmer Balkon\": true,\n    \"Wohnzimmer rechtes Fenster\": false,\n    \"Wohnzimmer linkes Fenster\": true\n}`\n\nergibt false."
           }
        ]
        

        Man kann das aber auch einfacher - mit der Moments Bibliothek und der Datum- und Zeitverarbeitung in Node Red lösen.

        Hier mal eine Change und eine Switch Node. ;)
        d060ec59-1f3b-434a-b189-22e114411bea-image.png

        [
           {
               "id": "922b0da53b5fc75b",
               "type": "switch",
               "z": "85ae8ec646aa7f1a",
               "name": "zwischen 6 und 22 Uhr ?",
               "property": "$moment().isBetween($moment(\"06\", \"hh\"),$moment(\"22\", \"hh\"),'minute','[)')",
               "propertyType": "jsonata",
               "rules": [
                   {
                       "t": "true"
                   },
                   {
                       "t": "false"
                   }
               ],
               "checkall": "true",
               "repair": false,
               "outputs": 2,
               "x": 610,
               "y": 100,
               "wires": [
                   [],
                   []
               ]
           },
           {
               "id": "8e35e390facce767",
               "type": "change",
               "z": "85ae8ec646aa7f1a",
               "name": "zwischen 6 und 22 Uhr?",
               "rules": [
                   {
                       "t": "set",
                       "p": "payload",
                       "pt": "msg",
                       "to": "$moment().isBetween($moment(\"06\", \"hh\"),$moment(\"22\", \"hh\"),'minute','[)')",
                       "tot": "jsonata"
                   }
               ],
               "action": "",
               "property": "",
               "from": "",
               "to": "",
               "reg": false,
               "x": 610,
               "y": 140,
               "wires": [
                   []
               ]
           }
        ]
        

        Schau Dir mal meinen Thread zur Datum und Uhrzeit in Node-Red an: https://forum.iobroker.net/topic/50086/datum-und-zeitverarbeitung-mit-nodered

        S Offline
        S Offline
        Saranger
        schrieb am zuletzt editiert von
        #3

        @mickym cool danke, schaue ich mir an und teste das gleich mal, das könnte meine Probleme in meinen anderen Flows auch gleich beheben :-)

        1 Antwort Letzte Antwort
        0
        • S Offline
          S Offline
          Saranger
          schrieb am zuletzt editiert von
          #4

          @mickym das hat schon mal gut funktioniert, macht viele Flows einfacher. Wo aber die Uhrzeit als einziger Trigger ist muss ich es weiterhin über die inject node oder den Bigtimer machen oder?

          mickymM 1 Antwort Letzte Antwort
          0
          • S Saranger

            @mickym das hat schon mal gut funktioniert, macht viele Flows einfacher. Wo aber die Uhrzeit als einziger Trigger ist muss ich es weiterhin über die inject node oder den Bigtimer machen oder?

            mickymM Online
            mickymM Online
            mickym
            Most Active
            schrieb am zuletzt editiert von mickym
            #5

            @saranger sagte in Probleme mit Zeitsteuerung und AND Logik:

            @mickym das hat schon mal gut funktioniert, macht viele Flows einfacher. Wo aber die Uhrzeit als einziger Trigger ist muss ich es weiterhin über die inject node oder den Bigtimer machen oder?

            Ja. Gibt ja neben der inject node noch die Trigger node bei den Standard-Nodes. Bei den nachinstallierten Nodes bevorzuge ich inzwischen andere nodes anstelle des Bigtimers. Für wöchentlich wiederkehrende Zeitfenster den Lightscheduler mit grafischer Bedienung und für anspruchsvolle Zeitaufgaben die cronplus-Node. Der Bigtimer ist noch 1. Wahl wenn man bestimmte zyklische Tage im Jahr braucht, die nicht über cron zu erstellen sind.

            Jeder Flow bzw. jedes Script, das ich hier poste implementiert jeder auf eigene Gefahr. Flows und Scripts können Fehler aufweisen und weder der Seitenbetreiber noch ich persönlich können hierfür haftbar gemacht werden. Das gleiche gilt für Empfehlungen aller Art.

            S 1 Antwort Letzte Antwort
            0
            • mickymM mickym

              @saranger sagte in Probleme mit Zeitsteuerung und AND Logik:

              @mickym das hat schon mal gut funktioniert, macht viele Flows einfacher. Wo aber die Uhrzeit als einziger Trigger ist muss ich es weiterhin über die inject node oder den Bigtimer machen oder?

              Ja. Gibt ja neben der inject node noch die Trigger node bei den Standard-Nodes. Bei den nachinstallierten Nodes bevorzuge ich inzwischen andere nodes anstelle des Bigtimers. Für wöchentlich wiederkehrende Zeitfenster den Lightscheduler mit grafischer Bedienung und für anspruchsvolle Zeitaufgaben die cronplus-Node. Der Bigtimer ist noch 1. Wahl wenn man bestimmte zyklische Tage im Jahr braucht, die nicht über cron zu erstellen sind.

              S Offline
              S Offline
              Saranger
              schrieb am zuletzt editiert von
              #6

              @mickym danke Dir, den Ligth schau ich mir mal an. Die Triggernode hab ich auch schon in Benutzung, da weis ich aber auch nicht ob das nicht zu kompliziert ist was ich da gebaut habe.

              S 1 Antwort Letzte Antwort
              0
              • S Saranger

                @mickym danke Dir, den Ligth schau ich mir mal an. Die Triggernode hab ich auch schon in Benutzung, da weis ich aber auch nicht ob das nicht zu kompliziert ist was ich da gebaut habe.

                S Offline
                S Offline
                Saranger
                schrieb am zuletzt editiert von
                #7

                Wie sollte man es eigentlich schreiben wenn die timerange über 00 Uhr hinaus in den neuen Tag geht?

                Sollte man da eher 01:00 - 06:00 und das dann invertieren? 06:00 - 01:00 geht ja irgendwie nicht.

                Ich hab jetzt bei einem Kumpel gesehen das es noch die node timerange gibt kennt das jemand?

                mickymM 1 Antwort Letzte Antwort
                0
                • S Saranger

                  Wie sollte man es eigentlich schreiben wenn die timerange über 00 Uhr hinaus in den neuen Tag geht?

                  Sollte man da eher 01:00 - 06:00 und das dann invertieren? 06:00 - 01:00 geht ja irgendwie nicht.

                  Ich hab jetzt bei einem Kumpel gesehen das es noch die node timerange gibt kennt das jemand?

                  mickymM Online
                  mickymM Online
                  mickym
                  Most Active
                  schrieb am zuletzt editiert von
                  #8

                  @saranger sagte in Probleme mit Zeitsteuerung und AND Logik:

                  Sollte man da eher 01:00 - 06:00 und das dann invertieren?

                  Genau mit $not() invertieren.

                  Jeder Flow bzw. jedes Script, das ich hier poste implementiert jeder auf eigene Gefahr. Flows und Scripts können Fehler aufweisen und weder der Seitenbetreiber noch ich persönlich können hierfür haftbar gemacht werden. Das gleiche gilt für Empfehlungen aller Art.

                  1 Antwort Letzte Antwort
                  0
                  Antworten
                  • In einem neuen Thema antworten
                  Anmelden zum Antworten
                  • Älteste zuerst
                  • Neuste zuerst
                  • Meiste Stimmen


                  Support us

                  ioBroker
                  Community Adapters
                  Donate

                  464

                  Online

                  32.4k

                  Benutzer

                  81.5k

                  Themen

                  1.3m

                  Beiträge
                  Community
                  Impressum | Datenschutz-Bestimmungen | Nutzungsbedingungen | Einwilligungseinstellungen
                  ioBroker Community 2014-2025
                  logo
                  • Anmelden

                  • Du hast noch kein Konto? Registrieren

                  • Anmelden oder registrieren, um zu suchen
                  • Erster Beitrag
                    Letzter Beitrag
                  0
                  • Home
                  • Aktuell
                  • Tags
                  • Ungelesen 0
                  • Kategorien
                  • Unreplied
                  • Beliebt
                  • GitHub
                  • Docu
                  • Hilfe