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.
    • Homoran
      Homoran Global Moderator Administrators @Crazy Com last edited by Homoran

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

      ich habe aber nichtmal eine Idee, mit welcher Funktion ich so eine Liste "parsen" kann.

      im Prinzip müsstest du aus allen Attribut xxx.total von JSON, wobei xxx von 0 bis 23 ist, das minimum finden und dann ist xxx die billigste Stunde

      EDIT: BLÖDSINN!
      ist doch bereits sortiert
      Screenshot_20230922-165811_Firefox.jpg

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

                            671
                            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