Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. Skripten / Logik
    4. Node-Red
    5. Werte aus einem Schedule ausgeben

    NEWS

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

    • ioBroker goes Matter ... Matter Adapter in Stable

    • Monatsrückblick - April 2025

    Werte aus einem Schedule ausgeben

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

      Ich habe den Powersaver (https://powersaver.no/) und möchte mir eine Benachrichtigung zu den günstigen Zeiten senden lassen.

      Ich bekomme diese Liste ausgeworfen. Aus dieser möchte ich immer den Folgetag (rot markiert) extrahieren und in einen Datenpunkt schreiben.

      {"schedule":[{"time":"2023-10-19T00:00:00.000+02:00","value":true,"countHours":6},{"time":"2023-10-19T06:00:00.000+02:00","value":false,"countHours":19},%(#ff0000)[{"time":"2023-10-20T01:00:00.000+02:00","value":true,"countHours":6}],{"time":"2023-10-20T07:00:00.000+02:00","value":false,"countHours":17},{"time":"2023-10-21T00:00:00.000+02:00","value":true,"countHours":null}],"hours":[{"start":"2023-10-19T00:00:00.000+02:00","price":0.195,"onOff":true,"saving":null},{"start":"2023-10-19T01:00:00.000+02:00","price":0.1826,"onOff":true,"saving":null},{"start":"2023-10-19T02:00:00.000+02:00","price":0.1762,"onOff":true,"saving":null},{"start":"2023-10-19T03:00:00.000+02:00","price":0.1739,"onOff":true,"saving":null},{"start":"2023-10-19T04:00:00.000+02:00","price":0.1844,"onOff":true,"saving":null},{"start":"2023-10-19T05:00:00.000+02:00","price":0.2152,"onOff":true,"saving":null},{"start":"2023-10-19T06:00:00.000+02:00","price":0.269,"onOff":false,"saving":null},{"start":"2023-10-19T07:00:00.000+02:0...
      
      mickym 1 Reply Last reply Reply Quote 0
      • mickym
        mickym Most Active @Janne16 last edited by mickym

        @janne16 Das ist einmal 0 Uhr, manchmal 1 Uhr am nächsten Tag. Soll es einfach der ERSTE Eintrag des nächsten Tages sein?

        Hier wird einfach das erste Objekt des Folgetages extrahiert:

        46e0b3cd-7ed7-4c28-89f8-08333e2e8d7c-image.png

        [
            {
                "id": "5c0173390b8f692a",
                "type": "inject",
                "z": "7e6af0015415146d",
                "name": "",
                "props": [
                    {
                        "p": "payload"
                    },
                    {
                        "p": "topic",
                        "vt": "str"
                    }
                ],
                "repeat": "",
                "crontab": "",
                "once": false,
                "onceDelay": 0.1,
                "topic": "",
                "payload": "{\"schedule\":[{\"time\":\"2023-10-19T00:00:00.000+02:00\",\"value\":true,\"countHours\":6},{\"time\":\"2023-10-19T06:00:00.000+02:00\",\"value\":false,\"countHours\":19},{\"time\":\"2023-10-20T01:00:00.000+02:00\",\"value\":true,\"countHours\":6},{\"time\":\"2023-10-20T07:00:00.000+02:00\",\"value\":false,\"countHours\":17},{\"time\":\"2023-10-21T00:00:00.000+02:00\",\"value\":true,\"countHours\":null}],\"hours\":[{\"start\":\"2023-10-19T00:00:00.000+02:00\",\"price\":0.195,\"onOff\":true,\"saving\":null},{\"start\":\"2023-10-19T01:00:00.000+02:00\",\"price\":0.1826,\"onOff\":true,\"saving\":null},{\"start\":\"2023-10-19T02:00:00.000+02:00\",\"price\":0.1762,\"onOff\":true,\"saving\":null},{\"start\":\"2023-10-19T03:00:00.000+02:00\",\"price\":0.1739,\"onOff\":true,\"saving\":null},{\"start\":\"2023-10-19T04:00:00.000+02:00\",\"price\":0.1844,\"onOff\":true,\"saving\":null},{\"start\":\"2023-10-19T05:00:00.000+02:00\",\"price\":0.2152,\"onOff\":true,\"saving\":null},{\"start\":\"2023-10-19T06:00:00.000+02:00\",\"price\":0.269,\"onOff\":false,\"saving\":null}]}",
                "payloadType": "json",
                "x": 290,
                "y": 4180,
                "wires": [
                    [
                        "b298320564400cba",
                        "28145d711b5a8245"
                    ]
                ]
            },
            {
                "id": "b298320564400cba",
                "type": "debug",
                "z": "7e6af0015415146d",
                "name": "Input",
                "active": true,
                "tosidebar": true,
                "console": false,
                "tostatus": false,
                "complete": "payload",
                "targetType": "msg",
                "statusVal": "",
                "statusType": "auto",
                "x": 490,
                "y": 4120,
                "wires": []
            },
            {
                "id": "28145d711b5a8245",
                "type": "change",
                "z": "7e6af0015415146d",
                "name": "",
                "rules": [
                    {
                        "t": "set",
                        "p": "payload",
                        "pt": "msg",
                        "to": "payload.schedule[time ~> $contains(($moment().add(1, 'd').format(\"YYYY-MM-DD\")))][0]",
                        "tot": "jsonata"
                    }
                ],
                "action": "",
                "property": "",
                "from": "",
                "to": "",
                "reg": false,
                "x": 510,
                "y": 4180,
                "wires": [
                    [
                        "a0f64ac7ca1f89c8"
                    ]
                ]
            },
            {
                "id": "a0f64ac7ca1f89c8",
                "type": "debug",
                "z": "7e6af0015415146d",
                "name": "objekt",
                "active": true,
                "tosidebar": true,
                "console": false,
                "tostatus": false,
                "complete": "payload",
                "targetType": "msg",
                "statusVal": "",
                "statusType": "auto",
                "x": 690,
                "y": 4180,
                "wires": []
            }
        ]
        

        payload.schedule[time ~> $contains(($moment().add(1, 'd').format("YYYY-MM-DD")))][0]
        
        J 1 Reply Last reply Reply Quote 0
        • J
          Janne16 @mickym last edited by

          @mickym said in Werte aus einem Schedule ausgeben:

          payload.schedule[time ~> $contains(($moment().add(1, 'd').format("YYYY-MM-DD")))][0]

          Ich schaue es mir einmal an.

          1 Reply Last reply Reply Quote 0
          • J
            Janne16 last edited by

            @janne16 Funktioniert, aber muss ich nicht noch das zweite Kriterium "True" abfragen?

            mickym 1 Reply Last reply Reply Quote 0
            • mickym
              mickym Most Active @Janne16 last edited by mickym

              Ändere die Abfrage wie folgt:

              payload.schedule[time ~> $contains(($moment().add(1, 'd').format("YYYY-MM-DD")))][value]
              

              Dann kommen zu dem Tag alle Objekte deren Wert true ist.

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

              Support us

              ioBroker
              Community Adapters
              Donate

              964
              Online

              31.7k
              Users

              79.7k
              Topics

              1.3m
              Posts

              2
              5
              291
              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