Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. Einsteigerfragen
    4. JSON-Liste - günstigste Tibber-Stunde herausfinden

    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

    JSON-Liste - günstigste Tibber-Stunde herausfinden

    This topic has been deleted. Only users with topic management privileges can see it.
    • paul53
      paul53 @Crazy Com last edited by paul53

      @crazy-com sagte: JSON-Liste, bereits sortiert nach Preis ... günstigste Stunde heute ab 14 Uhr war. Und da hört mein Wissen für mich auf. Ich möchte ein Script erstellen, was mir diesen Wert ausgibt

      Blockly_temp.JPG

      Oder lieber Javascript?

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

        Ich würde sowas mit JSONATA lösen.#

        $[total=$min($$.total)].startsAt
        

        d709d21b-5e60-4b66-93ce-417acc8bac96-image.png

        <xml xmlns="https://developers.google.com/blockly/xml">
         <block type="debug" id="c=0Ev,.Lf2VL/]$u@;:|" x="-613" y="-162">
           <field name="Severity">log</field>
           <value name="TEXT">
             <shadow type="text" id="^HBfRb,DeK,*xX.uG[4T">
               <field name="TEXT">test</field>
             </shadow>
             <block type="convert_jsonata" id="4Q?i99iF+3X?6j0Uh.mi">
               <value name="EXPRESSION">
                 <shadow type="text" id="`Al=UMroj;tMS~u=*cfJ">
                   <field name="TEXT">$[total=$min($$.total)].startsAt</field>
                 </shadow>
               </value>
               <value name="TARGET">
                 <block type="convert_json2object" id="kzz^-zfHR4IH44F.Q=nO">
                   <value name="VALUE">
                     <block type="text" id="])oGXSKIO5c~Q:JvFBz6">
                       <field name="TEXT">[{"total":0.274,"energy":0.0742,"tax":0.1998,"startsAt":"2023-09-22T14:00:00.000+02:00","currency":"EUR","level":"NORMAL"},{"total":0.2783,"energy":0.0778,"tax":0.2005,"startsAt":"2023-09-22T13:00:00.000+02:00","currency":"EUR","level":"NORMAL"},{"total":0.2798,"energy":0.079,"tax":0.2008,"startsAt":"2023-09-22T15:00:00.000+02:00","currency":"EUR","level":"NORMAL"},{"total":0.2877,"energy":0.0856,"tax":0.2021,"startsAt":"2023-09-22T12:00:00.000+02:00","currency":"EUR","level":"NORMAL"},{"total":0.2895,"energy":0.0872,"tax":0.2023,"startsAt":"2023-09-22T01:00:00.000+02:00","currency":"EUR","level":"NORMAL"},{"total":0.2905,"energy":0.088,"tax":0.2025,"startsAt":"2023-09-22T02:00:00.000+02:00","currency":"EUR","level":"NORMAL"},{"total":0.2908,"energy":0.0883,"tax":0.2025,"startsAt":"2023-09-22T00:00:00.000+02:00","currency":"EUR","level":"NORMAL"},{"total":0.2908,"energy":0.0882,"tax":0.2026,"startsAt":"2023-09-22T16:00:00.000+02:00","currency":"EUR","level":"NORMAL"},{"total":0.2914,"energy":0.0888,"tax":0.2026,"startsAt":"2023-09-22T03:00:00.000+02:00","currency":"EUR","level":"NORMAL"},{"total":0.294,"energy":0.091,"tax":0.203,"startsAt":"2023-09-22T04:00:00.000+02:00","currency":"EUR","level":"NORMAL"},{"total":0.294,"energy":0.0909,"tax":0.2031,"startsAt":"2023-09-22T11:00:00.000+02:00","currency":"EUR","level":"NORMAL"},{"total":0.2948,"energy":0.0917,"tax":0.2031,"startsAt":"2023-09-22T05:00:00.000+02:00","currency":"EUR","level":"NORMAL"},{"total":0.3043,"energy":0.0996,"tax":0.2047,"startsAt":"2023-09-22T10:00:00.000+02:00","currency":"EUR","level":"NORMAL"},{"total":0.3084,"energy":0.1031,"tax":0.2053,"startsAt":"2023-09-22T23:00:00.000+02:00","currency":"EUR","level":"NORMAL"},{"total":0.3118,"energy":0.1059,"tax":0.2059,"startsAt":"2023-09-22T22:00:00.000+02:00","currency":"EUR","level":"NORMAL"},{"total":0.3131,"energy":0.107,"tax":0.2061,"startsAt":"2023-09-22T17:00:00.000+02:00","currency":"EUR","level":"NORMAL"},{"total":0.3198,"energy":0.1126,"tax":0.2072,"startsAt":"2023-09-22T06:00:00.000+02:00","currency":"EUR","level":"EXPENSIVE"},{"total":0.3221,"energy":0.1146,"tax":0.2075,"startsAt":"2023-09-22T21:00:00.000+02:00","currency":"EUR","level":"NORMAL"},{"total":0.3265,"energy":0.1183,"tax":0.2082,"startsAt":"2023-09-22T09:00:00.000+02:00","currency":"EUR","level":"EXPENSIVE"},{"total":0.3446,"energy":0.1334,"tax":0.2112,"startsAt":"2023-09-22T20:00:00.000+02:00","currency":"EUR","level":"EXPENSIVE"},{"total":0.3473,"energy":0.1358,"tax":0.2115,"startsAt":"2023-09-22T08:00:00.000+02:00","currency":"EUR","level":"EXPENSIVE"},{"total":0.3481,"energy":0.1364,"tax":0.2117,"startsAt":"2023-09-22T18:00:00.000+02:00","currency":"EUR","level":"EXPENSIVE"},{"total":0.35,"energy":0.138,"tax":0.212,"startsAt":"2023-09-22T07:00:00.000+02:00","currency":"EUR","level":"EXPENSIVE"},{"total":0.376,"energy":0.1599,"tax":0.2161,"startsAt":"2023-09-22T19:00:00.000+02:00","currency":"EUR","level":"EXPENSIVE"}]</field>
                     </block>
                   </value>
                 </block>
               </value>
             </block>
           </value>
         </block>
        </xml>
        

        Mit NodeRed halt entsprechend.

        Wenn man will kann man dann ein eigenes Objekt erstellen (gelb markiert)

        $[total=$min($$.total)].{"Start":startsAt, "Wert":total}
        

        und dieses dann im Blockly nach Belieben weiter zu verarbeiten um die gleiche interpretierte Ausgabe wie @Homoran zu erhalten:

        a70113b5-475c-4fc2-acbb-b446982bd01e-image.png

        <xml xmlns="https://developers.google.com/blockly/xml">
         <variables>
           <variable id="k29Ksrg0bbjP1^[uaDHZ">Minimum</variable>
         </variables>
         <block type="variables_set" id="+ed2p;s6]-q!Kd%cN7V8" x="-662" y="-162">
           <field name="VAR" id="k29Ksrg0bbjP1^[uaDHZ">Minimum</field>
           <value name="VALUE">
             <block type="convert_jsonata" id="4Q?i99iF+3X?6j0Uh.mi">
               <value name="EXPRESSION">
                 <shadow type="text" id="`Al=UMroj;tMS~u=*cfJ">
                   <field name="TEXT">$[total=$min($$.total)].{"Start":startsAt, "Wert":total}</field>
                 </shadow>
               </value>
               <value name="TARGET">
                 <block type="convert_json2object" id="kzz^-zfHR4IH44F.Q=nO">
                   <value name="VALUE">
                     <block type="text" id="])oGXSKIO5c~Q:JvFBz6">
                       <field name="TEXT">[{"total":0.274,"energy":0.0742,"tax":0.1998,"startsAt":"2023-09-22T14:00:00.000+02:00","currency":"EUR","level":"NORMAL"},{"total":0.2783,"energy":0.0778,"tax":0.2005,"startsAt":"2023-09-22T13:00:00.000+02:00","currency":"EUR","level":"NORMAL"},{"total":0.2798,"energy":0.079,"tax":0.2008,"startsAt":"2023-09-22T15:00:00.000+02:00","currency":"EUR","level":"NORMAL"},{"total":0.2877,"energy":0.0856,"tax":0.2021,"startsAt":"2023-09-22T12:00:00.000+02:00","currency":"EUR","level":"NORMAL"},{"total":0.2895,"energy":0.0872,"tax":0.2023,"startsAt":"2023-09-22T01:00:00.000+02:00","currency":"EUR","level":"NORMAL"},{"total":0.2905,"energy":0.088,"tax":0.2025,"startsAt":"2023-09-22T02:00:00.000+02:00","currency":"EUR","level":"NORMAL"},{"total":0.2908,"energy":0.0883,"tax":0.2025,"startsAt":"2023-09-22T00:00:00.000+02:00","currency":"EUR","level":"NORMAL"},{"total":0.2908,"energy":0.0882,"tax":0.2026,"startsAt":"2023-09-22T16:00:00.000+02:00","currency":"EUR","level":"NORMAL"},{"total":0.2914,"energy":0.0888,"tax":0.2026,"startsAt":"2023-09-22T03:00:00.000+02:00","currency":"EUR","level":"NORMAL"},{"total":0.294,"energy":0.091,"tax":0.203,"startsAt":"2023-09-22T04:00:00.000+02:00","currency":"EUR","level":"NORMAL"},{"total":0.294,"energy":0.0909,"tax":0.2031,"startsAt":"2023-09-22T11:00:00.000+02:00","currency":"EUR","level":"NORMAL"},{"total":0.2948,"energy":0.0917,"tax":0.2031,"startsAt":"2023-09-22T05:00:00.000+02:00","currency":"EUR","level":"NORMAL"},{"total":0.3043,"energy":0.0996,"tax":0.2047,"startsAt":"2023-09-22T10:00:00.000+02:00","currency":"EUR","level":"NORMAL"},{"total":0.3084,"energy":0.1031,"tax":0.2053,"startsAt":"2023-09-22T23:00:00.000+02:00","currency":"EUR","level":"NORMAL"},{"total":0.3118,"energy":0.1059,"tax":0.2059,"startsAt":"2023-09-22T22:00:00.000+02:00","currency":"EUR","level":"NORMAL"},{"total":0.3131,"energy":0.107,"tax":0.2061,"startsAt":"2023-09-22T17:00:00.000+02:00","currency":"EUR","level":"NORMAL"},{"total":0.3198,"energy":0.1126,"tax":0.2072,"startsAt":"2023-09-22T06:00:00.000+02:00","currency":"EUR","level":"EXPENSIVE"},{"total":0.3221,"energy":0.1146,"tax":0.2075,"startsAt":"2023-09-22T21:00:00.000+02:00","currency":"EUR","level":"NORMAL"},{"total":0.3265,"energy":0.1183,"tax":0.2082,"startsAt":"2023-09-22T09:00:00.000+02:00","currency":"EUR","level":"EXPENSIVE"},{"total":0.3446,"energy":0.1334,"tax":0.2112,"startsAt":"2023-09-22T20:00:00.000+02:00","currency":"EUR","level":"EXPENSIVE"},{"total":0.3473,"energy":0.1358,"tax":0.2115,"startsAt":"2023-09-22T08:00:00.000+02:00","currency":"EUR","level":"EXPENSIVE"},{"total":0.3481,"energy":0.1364,"tax":0.2117,"startsAt":"2023-09-22T18:00:00.000+02:00","currency":"EUR","level":"EXPENSIVE"},{"total":0.35,"energy":0.138,"tax":0.212,"startsAt":"2023-09-22T07:00:00.000+02:00","currency":"EUR","level":"EXPENSIVE"},{"total":0.376,"energy":0.1599,"tax":0.2161,"startsAt":"2023-09-22T19:00:00.000+02:00","currency":"EUR","level":"EXPENSIVE"}]</field>
                     </block>
                   </value>
                 </block>
               </value>
             </block>
           </value>
           <next>
             <block type="debug" id="c=0Ev,.Lf2VL/]$u@;:|">
               <field name="Severity">log</field>
               <value name="TEXT">
                 <shadow type="text" id="^HBfRb,DeK,*xX.uG[4T">
                   <field name="TEXT">test</field>
                 </shadow>
                 <block type="variables_get" id="sp5ksx4nXb7y`qZRh;}6">
                   <field name="VAR" id="k29Ksrg0bbjP1^[uaDHZ">Minimum</field>
                 </block>
               </value>
               <next>
                 <block type="debug" id="QKZA(K`S7T(xd~/*2;yP">
                   <field name="Severity">log</field>
                   <value name="TEXT">
                     <shadow type="text" id="VPEE_H1;WnTjag1u2EK6">
                       <field name="TEXT">test</field>
                     </shadow>
                     <block type="text_join" id="eeCizGy~Yip(Bo@s~::c">
                       <mutation items="4"></mutation>
                       <value name="ADD0">
                         <block type="text" id="}12kw4*Z%{3dN7LX2/Ia">
                           <field name="TEXT">um: </field>
                         </block>
                       </value>
                       <value name="ADD1">
                         <block type="convert_from_date" id="6clf}@oVM~xII?,9C/!n">
                           <mutation xmlns="http://www.w3.org/1999/xhtml" format="false" language="false"></mutation>
                           <field name="OPTION">hh:mm</field>
                           <value name="VALUE">
                             <block type="get_attr" id="Sei-Lh#B[,#`^g.#UAiP">
                               <value name="PATH">
                                 <shadow type="text" id="GZa@0Dd~]a{qo3xuQGSL">
                                   <field name="TEXT">Start</field>
                                 </shadow>
                               </value>
                               <value name="OBJECT">
                                 <block type="variables_get" id="zD!=tW/S3.!1g*?=l/Bs">
                                   <field name="VAR" id="k29Ksrg0bbjP1^[uaDHZ">Minimum</field>
                                 </block>
                               </value>
                             </block>
                           </value>
                         </block>
                       </value>
                       <value name="ADD2">
                         <block type="text" id="}L;_GK5`POZ)+Y%D{9+4">
                           <field name="TEXT"> für: </field>
                         </block>
                       </value>
                       <value name="ADD3">
                         <block type="get_attr" id="e4*+TKkxrfL}i{=(L`mo">
                           <value name="PATH">
                             <shadow type="text" id="qVSAYyQjQotkKZ_W4@As">
                               <field name="TEXT">Wert</field>
                             </shadow>
                           </value>
                           <value name="OBJECT">
                             <block type="variables_get" id="Be_jowB61ndEPNngwyT;">
                               <field name="VAR" id="k29Ksrg0bbjP1^[uaDHZ">Minimum</field>
                             </block>
                           </value>
                         </block>
                       </value>
                     </block>
                   </value>
                 </block>
               </next>
             </block>
           </next>
         </block>
        </xml>
        

        M 1 Reply Last reply Reply Quote 1
        • L
          lemuba last edited by lemuba

          @Crazy-Com Ich habe das ganz anders gelöst und erledige das nun im IoBroker unter NodeRed nach dieser Anleitung:

          https://www.youtube.com/watch?v=dmmdUPjTopI

          Letzendlich schaut dann mein NodeRed Flow im Iobroker so aus:

          Tibber_NodeRed.jpg

          Der Flow erzeugt dann auch 10 Datenpunkte unter Objekte/nodered im Iobroker, welche je nach Anzahl der benötigten Stunden True oder False sind.
          Am Beispiel, siehe Debug gelb markiert für die günstigsten 2 Stunden morgen am 24.9. wäre dann der Datenpunkt "tibber_2std" morgen in der Zeit von 13:00 Uhr bis 15:00 Uhr auf "true".

          Passt dann auch mit der Tibber App Vorhersage für morgen:

          Tibber_24092023.png

          Hier mal mein Flow zum möglichen Import (ohne meinen Tibber Token) 😉 :

          [
             {
                 "id": "d25f6c3bea911417",
                 "type": "tab",
                 "label": "Tibber Günstigste Stunden Kopie",
                 "disabled": false,
                 "info": "",
                 "env": []
             },
             {
                 "id": "6eb7884cd0854d3a",
                 "type": "inject",
                 "z": "d25f6c3bea911417",
                 "name": "",
                 "props": [
                     {
                         "p": "payload"
                     },
                     {
                         "p": "topic",
                         "vt": "str"
                     }
                 ],
                 "repeat": "",
                 "crontab": "0 0-23 * * *",
                 "once": true,
                 "onceDelay": 0.1,
                 "topic": "",
                 "payload": "",
                 "payloadType": "date",
                 "x": 170,
                 "y": 260,
                 "wires": [
                     [
                         "e93148b7d43dae9c"
                     ]
                 ]
             },
             {
                 "id": "e93148b7d43dae9c",
                 "type": "template",
                 "z": "d25f6c3bea911417",
                 "name": "",
                 "field": "payload",
                 "fieldType": "msg",
                 "format": "handlebars",
                 "syntax": "mustache",
                 "template": "{\n  viewer {\n    homes {\n      currentSubscription {\n        priceInfo {\n          today {\n            total\n            startsAt\n          }\n          tomorrow {\n            total\n            startsAt\n          }\n        }\n      }\n    }\n  }\n}",
                 "output": "str",
                 "x": 340,
                 "y": 260,
                 "wires": [
                     [
                         "8af19a60b6e714a6"
                     ]
                 ]
             },
             {
                 "id": "8af19a60b6e714a6",
                 "type": "tibber-query",
                 "z": "d25f6c3bea911417",
                 "name": "Tibber Query",
                 "active": true,
                 "apiEndpointRef": "6c0ebed9c4db1a3b",
                 "x": 510,
                 "y": 260,
                 "wires": [
                     [
                         "d3c04fabfb4b5943"
                     ]
                 ]
             },
             {
                 "id": "d3c04fabfb4b5943",
                 "type": "ps-receive-price",
                 "z": "d25f6c3bea911417",
                 "name": "Price Receiver",
                 "x": 700,
                 "y": 260,
                 "wires": [
                     [
                         "88524f8c43c1c74c",
                         "e3e3c60f2b2285ab",
                         "7c973d32633ff880",
                         "e501e66b96b4c383",
                         "4ffa63e2198744a8",
                         "7057e070d21d978b",
                         "ae9b1d8156d58175",
                         "fd60e852ebfa0c67",
                         "5174e8931f5ebf18",
                         "51212c56b27874ae"
                     ]
                 ]
             },
             {
                 "id": "88524f8c43c1c74c",
                 "type": "ps-strategy-lowest-price",
                 "z": "d25f6c3bea911417",
                 "name": "Lowest Price 2hrs",
                 "fromTime": "00",
                 "toTime": "00",
                 "hoursOn": "2",
                 "maxPrice": "0.6",
                 "doNotSplit": false,
                 "sendCurrentValueWhenRescheduling": true,
                 "outputValueForOn": "true",
                 "outputValueForOff": "false",
                 "outputValueForOntype": "bool",
                 "outputValueForOfftype": "bool",
                 "outputIfNoSchedule": "false",
                 "outputOutsidePeriod": "false",
                 "contextStorage": "memory",
                 "x": 910,
                 "y": 320,
                 "wires": [
                     [
                         "7fcd3dec9c52f2f5"
                     ],
                     [
                         "7fcd3dec9c52f2f5"
                     ],
                     [
                         "c3adc592dc098b58"
                     ]
                 ]
             },
             {
                 "id": "7fcd3dec9c52f2f5",
                 "type": "ioBroker out",
                 "z": "d25f6c3bea911417",
                 "name": "tibber_2std",
                 "topic": "tibber_2std",
                 "ack": "false",
                 "autoCreate": "true",
                 "stateName": "tibber_2std",
                 "role": "",
                 "payloadType": "boolean",
                 "readonly": "",
                 "stateUnit": "",
                 "stateMin": "",
                 "stateMax": "",
                 "x": 1130,
                 "y": 320,
                 "wires": []
             },
             {
                 "id": "e3e3c60f2b2285ab",
                 "type": "ps-strategy-lowest-price",
                 "z": "d25f6c3bea911417",
                 "name": "Lowest Price 3hrs",
                 "fromTime": "00",
                 "toTime": "00",
                 "hoursOn": "3",
                 "maxPrice": "0.6",
                 "doNotSplit": false,
                 "sendCurrentValueWhenRescheduling": true,
                 "outputValueForOn": "true",
                 "outputValueForOff": "false",
                 "outputValueForOntype": "bool",
                 "outputValueForOfftype": "bool",
                 "outputIfNoSchedule": "false",
                 "outputOutsidePeriod": "false",
                 "contextStorage": "memory",
                 "x": 910,
                 "y": 380,
                 "wires": [
                     [
                         "3d45ecadf54c7a22"
                     ],
                     [
                         "3d45ecadf54c7a22"
                     ],
                     []
                 ]
             },
             {
                 "id": "3d45ecadf54c7a22",
                 "type": "ioBroker out",
                 "z": "d25f6c3bea911417",
                 "name": "tibber_3std",
                 "topic": "tibber_3std",
                 "ack": "false",
                 "autoCreate": "true",
                 "stateName": "tibber_3std",
                 "role": "",
                 "payloadType": "boolean",
                 "readonly": "",
                 "stateUnit": "",
                 "stateMin": "",
                 "stateMax": "",
                 "x": 1130,
                 "y": 380,
                 "wires": []
             },
             {
                 "id": "7c973d32633ff880",
                 "type": "ps-strategy-lowest-price",
                 "z": "d25f6c3bea911417",
                 "name": "Lowest Price 4hrs",
                 "fromTime": "00",
                 "toTime": "00",
                 "hoursOn": "4",
                 "maxPrice": "0.6",
                 "doNotSplit": false,
                 "sendCurrentValueWhenRescheduling": true,
                 "outputValueForOn": "true",
                 "outputValueForOff": "false",
                 "outputValueForOntype": "bool",
                 "outputValueForOfftype": "bool",
                 "outputIfNoSchedule": "false",
                 "outputOutsidePeriod": "false",
                 "contextStorage": "memory",
                 "x": 910,
                 "y": 440,
                 "wires": [
                     [
                         "2143aac22e4e3405"
                     ],
                     [
                         "2143aac22e4e3405"
                     ],
                     []
                 ]
             },
             {
                 "id": "2143aac22e4e3405",
                 "type": "ioBroker out",
                 "z": "d25f6c3bea911417",
                 "name": "tibber_4std",
                 "topic": "tibber_4std",
                 "ack": "false",
                 "autoCreate": "true",
                 "stateName": "tibber_4std",
                 "role": "",
                 "payloadType": "boolean",
                 "readonly": "",
                 "stateUnit": "",
                 "stateMin": "",
                 "stateMax": "",
                 "x": 1130,
                 "y": 440,
                 "wires": []
             },
             {
                 "id": "e501e66b96b4c383",
                 "type": "ps-strategy-lowest-price",
                 "z": "d25f6c3bea911417",
                 "name": "Lowest Price 5hrs",
                 "fromTime": "00",
                 "toTime": "00",
                 "hoursOn": "5",
                 "maxPrice": "0.6",
                 "doNotSplit": false,
                 "sendCurrentValueWhenRescheduling": true,
                 "outputValueForOn": "true",
                 "outputValueForOff": "false",
                 "outputValueForOntype": "bool",
                 "outputValueForOfftype": "bool",
                 "outputIfNoSchedule": "false",
                 "outputOutsidePeriod": "false",
                 "contextStorage": "memory",
                 "x": 910,
                 "y": 500,
                 "wires": [
                     [
                         "6cdc1d44e7ddb215"
                     ],
                     [
                         "6cdc1d44e7ddb215"
                     ],
                     []
                 ]
             },
             {
                 "id": "6cdc1d44e7ddb215",
                 "type": "ioBroker out",
                 "z": "d25f6c3bea911417",
                 "name": "tibber_5std",
                 "topic": "tibber_5std",
                 "ack": "false",
                 "autoCreate": "true",
                 "stateName": "tibber_5std",
                 "role": "",
                 "payloadType": "boolean",
                 "readonly": "",
                 "stateUnit": "",
                 "stateMin": "",
                 "stateMax": "",
                 "x": 1130,
                 "y": 500,
                 "wires": []
             },
             {
                 "id": "4ffa63e2198744a8",
                 "type": "ps-strategy-lowest-price",
                 "z": "d25f6c3bea911417",
                 "name": "Lowest Price 6hrs",
                 "fromTime": "00",
                 "toTime": "00",
                 "hoursOn": "6",
                 "maxPrice": "0.6",
                 "doNotSplit": false,
                 "sendCurrentValueWhenRescheduling": true,
                 "outputValueForOn": "true",
                 "outputValueForOff": "false",
                 "outputValueForOntype": "bool",
                 "outputValueForOfftype": "bool",
                 "outputIfNoSchedule": "false",
                 "outputOutsidePeriod": "false",
                 "contextStorage": "memory",
                 "x": 910,
                 "y": 560,
                 "wires": [
                     [
                         "26791eca7bf72bd0"
                     ],
                     [
                         "26791eca7bf72bd0"
                     ],
                     []
                 ]
             },
             {
                 "id": "26791eca7bf72bd0",
                 "type": "ioBroker out",
                 "z": "d25f6c3bea911417",
                 "name": "tibber_6std",
                 "topic": "tibber_6std",
                 "ack": "false",
                 "autoCreate": "true",
                 "stateName": "tibber_6std",
                 "role": "",
                 "payloadType": "boolean",
                 "readonly": "",
                 "stateUnit": "",
                 "stateMin": "",
                 "stateMax": "",
                 "x": 1130,
                 "y": 560,
                 "wires": []
             },
             {
                 "id": "5174e8931f5ebf18",
                 "type": "ps-strategy-lowest-price",
                 "z": "d25f6c3bea911417",
                 "name": "Lowest Price 7hrs",
                 "fromTime": "00",
                 "toTime": "00",
                 "hoursOn": "7",
                 "maxPrice": "0.6",
                 "doNotSplit": false,
                 "sendCurrentValueWhenRescheduling": true,
                 "outputValueForOn": "true",
                 "outputValueForOff": "false",
                 "outputValueForOntype": "bool",
                 "outputValueForOfftype": "bool",
                 "outputIfNoSchedule": "false",
                 "outputOutsidePeriod": "false",
                 "contextStorage": "memory",
                 "x": 910,
                 "y": 620,
                 "wires": [
                     [
                         "95a88f7a5a413f52"
                     ],
                     [
                         "95a88f7a5a413f52"
                     ],
                     []
                 ]
             },
             {
                 "id": "95a88f7a5a413f52",
                 "type": "ioBroker out",
                 "z": "d25f6c3bea911417",
                 "name": "tibber_7std",
                 "topic": "tibber_7std",
                 "ack": "false",
                 "autoCreate": "true",
                 "stateName": "tibber_7std",
                 "role": "",
                 "payloadType": "boolean",
                 "readonly": "",
                 "stateUnit": "",
                 "stateMin": "",
                 "stateMax": "",
                 "x": 1130,
                 "y": 620,
                 "wires": []
             },
             {
                 "id": "7057e070d21d978b",
                 "type": "ps-strategy-lowest-price",
                 "z": "d25f6c3bea911417",
                 "name": "Lowest Price 8hrs",
                 "fromTime": "00",
                 "toTime": "00",
                 "hoursOn": "8",
                 "maxPrice": "0.6",
                 "doNotSplit": false,
                 "sendCurrentValueWhenRescheduling": true,
                 "outputValueForOn": "true",
                 "outputValueForOff": "false",
                 "outputValueForOntype": "bool",
                 "outputValueForOfftype": "bool",
                 "outputIfNoSchedule": "false",
                 "outputOutsidePeriod": "false",
                 "contextStorage": "memory",
                 "x": 910,
                 "y": 680,
                 "wires": [
                     [
                         "c2b5176e76efc709"
                     ],
                     [
                         "c2b5176e76efc709"
                     ],
                     []
                 ]
             },
             {
                 "id": "c2b5176e76efc709",
                 "type": "ioBroker out",
                 "z": "d25f6c3bea911417",
                 "name": "tibber_8std",
                 "topic": "tibber_8std",
                 "ack": "false",
                 "autoCreate": "true",
                 "stateName": "tibber_8std",
                 "role": "",
                 "payloadType": "boolean",
                 "readonly": "",
                 "stateUnit": "",
                 "stateMin": "",
                 "stateMax": "",
                 "x": 1130,
                 "y": 680,
                 "wires": []
             },
             {
                 "id": "ae9b1d8156d58175",
                 "type": "ps-strategy-lowest-price",
                 "z": "d25f6c3bea911417",
                 "name": "Lowest Price 9hrs",
                 "fromTime": "00",
                 "toTime": "00",
                 "hoursOn": "9",
                 "maxPrice": "0.6",
                 "doNotSplit": false,
                 "sendCurrentValueWhenRescheduling": true,
                 "outputValueForOn": "true",
                 "outputValueForOff": "false",
                 "outputValueForOntype": "bool",
                 "outputValueForOfftype": "bool",
                 "outputIfNoSchedule": "false",
                 "outputOutsidePeriod": "false",
                 "contextStorage": "memory",
                 "x": 910,
                 "y": 740,
                 "wires": [
                     [
                         "efd1b98f800d52d1"
                     ],
                     [
                         "efd1b98f800d52d1"
                     ],
                     []
                 ]
             },
             {
                 "id": "efd1b98f800d52d1",
                 "type": "ioBroker out",
                 "z": "d25f6c3bea911417",
                 "name": "tibber_9std",
                 "topic": "tibber_9std",
                 "ack": "false",
                 "autoCreate": "true",
                 "stateName": "tibber_9std",
                 "role": "",
                 "payloadType": "boolean",
                 "readonly": "",
                 "stateUnit": "",
                 "stateMin": "",
                 "stateMax": "",
                 "x": 1130,
                 "y": 740,
                 "wires": []
             },
             {
                 "id": "fd60e852ebfa0c67",
                 "type": "ps-strategy-lowest-price",
                 "z": "d25f6c3bea911417",
                 "name": "Lowest Price 10hrs",
                 "fromTime": "00",
                 "toTime": "00",
                 "hoursOn": "10",
                 "maxPrice": "0.6",
                 "doNotSplit": false,
                 "sendCurrentValueWhenRescheduling": true,
                 "outputValueForOn": "true",
                 "outputValueForOff": "false",
                 "outputValueForOntype": "bool",
                 "outputValueForOfftype": "bool",
                 "outputIfNoSchedule": "false",
                 "outputOutsidePeriod": "false",
                 "contextStorage": "memory",
                 "x": 910,
                 "y": 800,
                 "wires": [
                     [
                         "40e9c40a991eee4b"
                     ],
                     [
                         "40e9c40a991eee4b"
                     ],
                     []
                 ]
             },
             {
                 "id": "40e9c40a991eee4b",
                 "type": "ioBroker out",
                 "z": "d25f6c3bea911417",
                 "name": "tibber_10std",
                 "topic": "tibber_10std",
                 "ack": "false",
                 "autoCreate": "true",
                 "stateName": "tibber_10std",
                 "role": "",
                 "payloadType": "boolean",
                 "readonly": "",
                 "stateUnit": "",
                 "stateMin": "",
                 "stateMax": "",
                 "x": 1130,
                 "y": 800,
                 "wires": []
             },
             {
                 "id": "51212c56b27874ae",
                 "type": "ps-strategy-lowest-price",
                 "z": "d25f6c3bea911417",
                 "name": "Lowest Price 1hrs",
                 "fromTime": "00",
                 "toTime": "00",
                 "hoursOn": "1",
                 "maxPrice": "0.6",
                 "doNotSplit": false,
                 "sendCurrentValueWhenRescheduling": true,
                 "outputValueForOn": "true",
                 "outputValueForOff": "false",
                 "outputValueForOntype": "bool",
                 "outputValueForOfftype": "bool",
                 "outputIfNoSchedule": "false",
                 "outputOutsidePeriod": "false",
                 "contextStorage": "memory",
                 "x": 910,
                 "y": 260,
                 "wires": [
                     [
                         "64256411a1ab22e5"
                     ],
                     [
                         "64256411a1ab22e5"
                     ],
                     []
                 ]
             },
             {
                 "id": "64256411a1ab22e5",
                 "type": "ioBroker out",
                 "z": "d25f6c3bea911417",
                 "name": "tibber_1std",
                 "topic": "tibber_1std",
                 "ack": "false",
                 "autoCreate": "true",
                 "stateName": "tibber_1std",
                 "role": "",
                 "payloadType": "boolean",
                 "readonly": "",
                 "stateUnit": "",
                 "stateMin": "",
                 "stateMax": "",
                 "x": 1130,
                 "y": 260,
                 "wires": []
             },
             {
                 "id": "c3adc592dc098b58",
                 "type": "debug",
                 "z": "d25f6c3bea911417",
                 "name": "debug 1",
                 "active": true,
                 "tosidebar": true,
                 "console": false,
                 "tostatus": false,
                 "complete": "false",
                 "statusVal": "",
                 "statusType": "auto",
                 "x": 1140,
                 "y": 180,
                 "wires": []
             },
             {
                 "id": "6c0ebed9c4db1a3b",
                 "type": "tibber-api-endpoint",
                 "queryUrl": "https://api.tibber.com/v1-beta/gql",
                 "feedConnectionTimeout": "30",
                 "feedTimeout": "60",
                 "queryRequestTimeout": "30",
                 "name": "Test",
                 "credentials": {}
             }
          ]
          

          Der eigene Tibber Token müsste dann noch hier eingefügt werden:

          Tibber Query Node.jpg

          Ggf. viel Spaß beim Testen...

          Ich starte jetzt auch erst damit zu testen, sobald unsere PV ab Ende Oktober u.a. nicht mehr genug PV-Überschuss produziert, um dann u.a. 1-2 2kW-Nachtspeicheröfen smart aufzuladen. Daher auch in meinem Flow bis zu 10 günstigste Stunden zur Auswahl.

          1 Reply Last reply Reply Quote 0
          • C
            Crazy Com last edited by

            Hallo zusammen,

            war nicht so clever, hier einen Thread zu öffnen und dann eine Woche in den Urlaub zu fahren und die Antworten nicht mitzubekommen. 🙂

            Erst einmal vielen Dank euch allen. Ich schaue mir das alles mal an und melde mich dann nochmal!

            L 1 Reply Last reply Reply Quote 0
            • L
              lemuba @Crazy Com last edited by lemuba

              @crazy-com

              Ausgehend von meinen NodeRed 10 günstigsten Std. Datenpunkten, hatte ich nun auch noch ein kleines Blockly geschrieben, welches mir auf meinem Ulanzi Matrix Display unter anderem den Std. aktuellen Strompreis in Cent ausgibt und dahinter die Einordnung welche der günstigsten Stunden das ist (1-10). Nicht schön aber funktioniert.

              IMG_2871.jpeg

              IMG_2872.jpeg

              Jetzt um 14:15 Uhr 33 Cent und eine der 2 günstigsten Tagesstunden.

              M 1 Reply Last reply Reply Quote 0
              • M
                mrzee @lemuba last edited by

                Ich hab mir jetzt auch sowas gebaut... aber ich habe ein Problem damit: Wie geht ihr damit um, wenn während einer GRID CHARGE Phase die Sonne doch rauskommt? Ich möchte ja dann nicht mehr weiter über das Netz laden

                1 Reply Last reply Reply Quote 0
                • vowill
                  vowill @Crazy Com last edited by vowill

                  @crazy-com
                  Vielleicht noch ein Ansatz: Um den Verlauf der Tibberpreise über die jeweils 24h von heute und morgen grafisch mit ECharts darzustellen, habe ich ein Skript verfasst (siehe im Forum hier). Dort sind die Werte (val) dann mit Zeitstempel (ts) in der Form "{"ts": 1701644400000, "val": 0.2566}" als JSON-String abgelegt, können also relativ leicht ausgewertet werden.
                  Nachtrag 25.12.2023: Hier ein Foto des zugehörigen Pop-up-Views in vis:

                  20231225 Tibber-Ansicht.jpg

                  1 Reply Last reply Reply Quote 1
                  • M
                    mic4rd @mickym last edited by

                    @mickym said in JSON-Liste - günstigste Tibber-Stunde herausfinden:

                    Ich würde sowas mit JSONATA lösen.#

                    $[total=$min($$.total)].startsAt
                    

                    d709d21b-5e60-4b66-93ce-417acc8bac96-image.png

                    <xml xmlns="https://developers.google.com/blockly/xml">
                     <block type="debug" id="c=0Ev,.Lf2VL/]$u@;:|" x="-613" y="-162">
                       <field name="Severity">log</field>
                       <value name="TEXT">
                         <shadow type="text" id="^HBfRb,DeK,*xX.uG[4T">
                           <field name="TEXT">test</field>
                         </shadow>
                         <block type="convert_jsonata" id="4Q?i99iF+3X?6j0Uh.mi">
                           <value name="EXPRESSION">
                             <shadow type="text" id="`Al=UMroj;tMS~u=*cfJ">
                               <field name="TEXT">$[total=$min($$.total)].startsAt</field>
                             </shadow>
                           </value>
                           <value name="TARGET">
                             <block type="convert_json2object" id="kzz^-zfHR4IH44F.Q=nO">
                               <value name="VALUE">
                                 <block type="text" id="])oGXSKIO5c~Q:JvFBz6">
                                   <field name="TEXT">[{"total":0.274,"energy":0.0742,"tax":0.1998,"startsAt":"2023-09-22T14:00:00.000+02:00","currency":"EUR","level":"NORMAL"},{"total":0.2783,"energy":0.0778,"tax":0.2005,"startsAt":"2023-09-22T13:00:00.000+02:00","currency":"EUR","level":"NORMAL"},{"total":0.2798,"energy":0.079,"tax":0.2008,"startsAt":"2023-09-22T15:00:00.000+02:00","currency":"EUR","level":"NORMAL"},{"total":0.2877,"energy":0.0856,"tax":0.2021,"startsAt":"2023-09-22T12:00:00.000+02:00","currency":"EUR","level":"NORMAL"},{"total":0.2895,"energy":0.0872,"tax":0.2023,"startsAt":"2023-09-22T01:00:00.000+02:00","currency":"EUR","level":"NORMAL"},{"total":0.2905,"energy":0.088,"tax":0.2025,"startsAt":"2023-09-22T02:00:00.000+02:00","currency":"EUR","level":"NORMAL"},{"total":0.2908,"energy":0.0883,"tax":0.2025,"startsAt":"2023-09-22T00:00:00.000+02:00","currency":"EUR","level":"NORMAL"},{"total":0.2908,"energy":0.0882,"tax":0.2026,"startsAt":"2023-09-22T16:00:00.000+02:00","currency":"EUR","level":"NORMAL"},{"total":0.2914,"energy":0.0888,"tax":0.2026,"startsAt":"2023-09-22T03:00:00.000+02:00","currency":"EUR","level":"NORMAL"},{"total":0.294,"energy":0.091,"tax":0.203,"startsAt":"2023-09-22T04:00:00.000+02:00","currency":"EUR","level":"NORMAL"},{"total":0.294,"energy":0.0909,"tax":0.2031,"startsAt":"2023-09-22T11:00:00.000+02:00","currency":"EUR","level":"NORMAL"},{"total":0.2948,"energy":0.0917,"tax":0.2031,"startsAt":"2023-09-22T05:00:00.000+02:00","currency":"EUR","level":"NORMAL"},{"total":0.3043,"energy":0.0996,"tax":0.2047,"startsAt":"2023-09-22T10:00:00.000+02:00","currency":"EUR","level":"NORMAL"},{"total":0.3084,"energy":0.1031,"tax":0.2053,"startsAt":"2023-09-22T23:00:00.000+02:00","currency":"EUR","level":"NORMAL"},{"total":0.3118,"energy":0.1059,"tax":0.2059,"startsAt":"2023-09-22T22:00:00.000+02:00","currency":"EUR","level":"NORMAL"},{"total":0.3131,"energy":0.107,"tax":0.2061,"startsAt":"2023-09-22T17:00:00.000+02:00","currency":"EUR","level":"NORMAL"},{"total":0.3198,"energy":0.1126,"tax":0.2072,"startsAt":"2023-09-22T06:00:00.000+02:00","currency":"EUR","level":"EXPENSIVE"},{"total":0.3221,"energy":0.1146,"tax":0.2075,"startsAt":"2023-09-22T21:00:00.000+02:00","currency":"EUR","level":"NORMAL"},{"total":0.3265,"energy":0.1183,"tax":0.2082,"startsAt":"2023-09-22T09:00:00.000+02:00","currency":"EUR","level":"EXPENSIVE"},{"total":0.3446,"energy":0.1334,"tax":0.2112,"startsAt":"2023-09-22T20:00:00.000+02:00","currency":"EUR","level":"EXPENSIVE"},{"total":0.3473,"energy":0.1358,"tax":0.2115,"startsAt":"2023-09-22T08:00:00.000+02:00","currency":"EUR","level":"EXPENSIVE"},{"total":0.3481,"energy":0.1364,"tax":0.2117,"startsAt":"2023-09-22T18:00:00.000+02:00","currency":"EUR","level":"EXPENSIVE"},{"total":0.35,"energy":0.138,"tax":0.212,"startsAt":"2023-09-22T07:00:00.000+02:00","currency":"EUR","level":"EXPENSIVE"},{"total":0.376,"energy":0.1599,"tax":0.2161,"startsAt":"2023-09-22T19:00:00.000+02:00","currency":"EUR","level":"EXPENSIVE"}]</field>
                                 </block>
                               </value>
                             </block>
                           </value>
                         </block>
                       </value>
                     </block>
                    </xml>
                    

                    Ich hänge an einem ähnlichen Problem und bin fasziniert von JSONata, komme aber echt schlecht damit zurecht. ;(

                    Wie würde man den JSONata-Ausdruck erweitern, um z.B. die 5 teuersten, in der Zukunft liegenden Stunden zu erhalten?

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

                      @mic4rd Du kannst immer den JSONATA Exerciser nehmen. Ich habe mal aus dem 1. Posting diese Quelle und sortiere wieder nach total diesesmal absteigend, um die teuersten zuerst zu haben. Anschliessend nehme ich nur die ersten 5 Objekte.

                      Hier kannst Du das selbst ausprobieren: https://try.jsonata.org/iupoLlhhu

                      $^(>total)#$i[$i<=4]
                      

                      Also alles nach total sortiert und dann die ersten 5 Elemente genommen ($i von 0 bis 4, also die ersten 5 Elemente).
                      Will man dann nur die Uhrzeiten haben, dann einfach selektieren:

                      $^(>total)#$i[$i<=4].startsAt
                      

                      Will man diese dann auch noch sortieren, dann einfach den order Operator verwenden

                      $^(>total)#$i[$i<=4].startsAt^($)
                      

                      cc1f258e-9e87-4930-8086-d4b1a8cc4fe7-image.png

                      Um zu zeigen, dass dies auch in Blockly funktioniert, hier der Beweis :

                      eedf9ff9-d664-4115-8441-d3ee9580a05f-image.png

                      Hier zum Import:

                      <xml xmlns="https://developers.google.com/blockly/xml">
                       <variables>
                         <variable id="EOJ4*0:|Gac4$sNJ6F}z">obj</variable>
                       </variables>
                       <block type="variables_set" id="{c.GD@;*Xg1KFL,@Ul2`" x="63" y="138">
                         <field name="VAR" id="EOJ4*0:|Gac4$sNJ6F}z">obj</field>
                         <value name="VALUE">
                           <block type="convert_json2object" id="4|VOw$XSSXKL6zfI;WEJ">
                             <value name="VALUE">
                               <block type="text" id="Eb(AvJLhHnCv2d-|4ZTJ">
                                 <field name="TEXT">[{"total":0.274,"energy":0.0742,"tax":0.1998,"startsAt":"2023-09-22T14:00:00.000+02:00","currency":"EUR","level":"NORMAL"},{"total":0.2783,"energy":0.0778,"tax":0.2005,"startsAt":"2023-09-22T13:00:00.000+02:00","currency":"EUR","level":"NORMAL"},{"total":0.2798,"energy":0.079,"tax":0.2008,"startsAt":"2023-09-22T15:00:00.000+02:00","currency":"EUR","level":"NORMAL"},{"total":0.2877,"energy":0.0856,"tax":0.2021,"startsAt":"2023-09-22T12:00:00.000+02:00","currency":"EUR","level":"NORMAL"},{"total":0.2895,"energy":0.0872,"tax":0.2023,"startsAt":"2023-09-22T01:00:00.000+02:00","currency":"EUR","level":"NORMAL"},{"total":0.2905,"energy":0.088,"tax":0.2025,"startsAt":"2023-09-22T02:00:00.000+02:00","currency":"EUR","level":"NORMAL"},{"total":0.2908,"energy":0.0883,"tax":0.2025,"startsAt":"2023-09-22T00:00:00.000+02:00","currency":"EUR","level":"NORMAL"},{"total":0.2908,"energy":0.0882,"tax":0.2026,"startsAt":"2023-09-22T16:00:00.000+02:00","currency":"EUR","level":"NORMAL"},{"total":0.2914,"energy":0.0888,"tax":0.2026,"startsAt":"2023-09-22T03:00:00.000+02:00","currency":"EUR","level":"NORMAL"},{"total":0.294,"energy":0.091,"tax":0.203,"startsAt":"2023-09-22T04:00:00.000+02:00","currency":"EUR","level":"NORMAL"},{"total":0.294,"energy":0.0909,"tax":0.2031,"startsAt":"2023-09-22T11:00:00.000+02:00","currency":"EUR","level":"NORMAL"},{"total":0.2948,"energy":0.0917,"tax":0.2031,"startsAt":"2023-09-22T05:00:00.000+02:00","currency":"EUR","level":"NORMAL"},{"total":0.3043,"energy":0.0996,"tax":0.2047,"startsAt":"2023-09-22T10:00:00.000+02:00","currency":"EUR","level":"NORMAL"},{"total":0.3084,"energy":0.1031,"tax":0.2053,"startsAt":"2023-09-22T23:00:00.000+02:00","currency":"EUR","level":"NORMAL"},{"total":0.3118,"energy":0.1059,"tax":0.2059,"startsAt":"2023-09-22T22:00:00.000+02:00","currency":"EUR","level":"NORMAL"},{"total":0.3131,"energy":0.107,"tax":0.2061,"startsAt":"2023-09-22T17:00:00.000+02:00","currency":"EUR","level":"NORMAL"},{"total":0.3198,"energy":0.1126,"tax":0.2072,"startsAt":"2023-09-22T06:00:00.000+02:00","currency":"EUR","level":"EXPENSIVE"},{"total":0.3221,"energy":0.1146,"tax":0.2075,"startsAt":"2023-09-22T21:00:00.000+02:00","currency":"EUR","level":"NORMAL"},{"total":0.3265,"energy":0.1183,"tax":0.2082,"startsAt":"2023-09-22T09:00:00.000+02:00","currency":"EUR","level":"EXPENSIVE"},{"total":0.3446,"energy":0.1334,"tax":0.2112,"startsAt":"2023-09-22T20:00:00.000+02:00","currency":"EUR","level":"EXPENSIVE"},{"total":0.3473,"energy":0.1358,"tax":0.2115,"startsAt":"2023-09-22T08:00:00.000+02:00","currency":"EUR","level":"EXPENSIVE"},{"total":0.3481,"energy":0.1364,"tax":0.2117,"startsAt":"2023-09-22T18:00:00.000+02:00","currency":"EUR","level":"EXPENSIVE"},{"total":0.35,"energy":0.138,"tax":0.212,"startsAt":"2023-09-22T07:00:00.000+02:00","currency":"EUR","level":"EXPENSIVE"},{"total":0.376,"energy":0.1599,"tax":0.2161,"startsAt":"2023-09-22T19:00:00.000+02:00","currency":"EUR","level":"EXPENSIVE"}]</field>
                               </block>
                             </value>
                           </block>
                         </value>
                         <next>
                           <block type="comment" id="+j10:AzTj,${aq@Hg%+V">
                             <field name="COMMENT">unsortierte Liste</field>
                             <next>
                               <block type="debug" id="2ptRFlCYIJ|DzcK7)5`S">
                                 <field name="Severity">info</field>
                                 <value name="TEXT">
                                   <shadow type="text" id="LDl/3!S6+ucYjHHQQ#s1">
                                     <field name="TEXT">test</field>
                                   </shadow>
                                   <block type="variables_get" id="ZRH=pb?,N%+N`DUbp-L%">
                                     <field name="VAR" id="EOJ4*0:|Gac4$sNJ6F}z">obj</field>
                                   </block>
                                 </value>
                                 <next>
                                   <block type="debug" id="[xZ@b#8D:N2rm=K5n^sy">
                                     <field name="Severity">info</field>
                                     <value name="TEXT">
                                       <shadow type="text" id="43@*K5pW258a^X6LYa~/">
                                         <field name="TEXT">test</field>
                                       </shadow>
                                       <block type="convert_jsonata" id="PIP7}Nr-b^ptWp@BpLw)">
                                         <value name="EXPRESSION">
                                           <shadow type="text" id="*ck`*6zg8[wjRyJ`8^y(">
                                             <field name="TEXT">$^(&gt;total)#$i[$i&lt;=4].startsAt^($)</field>
                                           </shadow>
                                         </value>
                                         <value name="TARGET">
                                           <block type="variables_get" id="xjb9LXDEdnor26?:zL?T">
                                             <field name="VAR" id="EOJ4*0:|Gac4$sNJ6F}z">obj</field>
                                           </block>
                                         </value>
                                       </block>
                                     </value>
                                   </block>
                                 </next>
                               </block>
                             </next>
                           </block>
                         </next>
                       </block>
                      </xml>
                      

                      Das sequence: true kommt irgendwie vom Blockly. Dann muss man halt die Liste ohne das letzte element nehmen. Das ist wohl eine Blockly Eigenart.

                      M 1 Reply Last reply Reply Quote 1
                      • M
                        mic4rd @mickym last edited by

                        @mickym Wow vielen Dank, das ist ja der Oberhammer wie einfach das funktioniert!

                        Muss mich glaub einfach noch ein bisschen mehr in JSONata einlesen, das muss man unbedingt können. Hast mir eine großartige Starthilfe gegeben!

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

                          @mic4rd sagte in JSON-Liste - günstigste Tibber-Stunde herausfinden:

                          @mickym Wow vielen Dank, das ist ja der Oberhammer wie einfach das funktioniert!

                          Muss mich glaub einfach noch ein bisschen mehr in JSONata einlesen, das muss man unbedingt können. Hast mir eine großartige Starthilfe gegeben!

                          Der Vorteil von dem Exerciser ist, dass Du siehst, wie man Schritt für Schritt das Ganze entwickelt. Ausserdem kannst Du halt sofort ausprobieren und siehst das Ergebnis. Also ich schreib das auch nicht einfach immer so hin, sondern verwende den Exerciser zum Entwickeln der Ausdrücke. Damit kontrolliere ich dann halt auch immer, ob sich das auch so umsetzen läßt, wie ich es mir denke.

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

                          Support us

                          ioBroker
                          Community Adapters
                          Donate

                          751
                          Online

                          31.9k
                          Users

                          80.1k
                          Topics

                          1.3m
                          Posts

                          8
                          13
                          1606
                          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