Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. Visualisierung
    4. JSON Liste in Jarvis darstellen

    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 in Jarvis darstellen

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

      Hallo zusammen,

      ich versuche aktuell meine Alexa Liste die im JSON Format vorliegt in Jarvis darzustellen. Kann ich hier über die JSON Formatierungsoptionen direkt was machen und einzelne Eigenschaften ausblenden? Oder muss ich über einen anderen Weg erst ein HTML generieren lassen, und dass dann in Jarvis rendern lassen? Ich hab leider nichts hilfreiches gefunden, sondern immer nur beispiele für die Darstellung von einzelnen Werten und nicht komplexeren "Objekten" gefunden.

      Vielen Dank für die Hilfe!

      M 1 Reply Last reply Reply Quote 0
      • M
        MCU @Nilsnutz last edited by

        @nilsnutz Zeig mal Deine Alexa Liste im json Format.
        Thema wäre jsontable (2.2.0).

        https://forum.iobroker.net/topic/30668/jarvis-v2-2-0-just-another-remarkable-vis/3878

        Nilsnutz 1 Reply Last reply Reply Quote 1
        • Nilsnutz
          Nilsnutz @MCU last edited by Nilsnutz

          @mcu

          edit: ah du schreibst ja sogar 2.2.0 ich update 🙂
          danke für die Info. Das klingt vielverprechend, ich habe allerdings das JSONTable Modul zur Darstellung nicht. Fehlt hier noch irgendein Addon? Jarvis ist in Version 2.1.0 benötige ich hier die 2.2.0? Die Alexa Liste sieht wie folgt aus:
          [
          {
          "completed":false,
          "createdDateTime":1555674897681,
          "customerId":null,
          "id":"GUID",
          "listId":"ListID",
          "shoppingListItem":true,
          "updatedDateTime":1614429051659,
          "value":"Eintrag1",
          "version":3
          },
          {
          "completed":true,
          "createdDateTime":1592491658973,
          "customerId":null,
          "id":"GUID",
          "listId":"ListID",
          "shoppingListItem":true,
          "updatedDateTime":1592496214589,
          "value":"Geschlosseneer Eintrag",
          "version":3
          }
          ]

          M 1 Reply Last reply Reply Quote 0
          • M
            MCU @Nilsnutz last edited by

            @nilsnutz
            Also mit den Einträgen kommt das Modul jsontable von jarvis nicht zurecht.
            Boolean wird nicht erkannt und null auch nicht.
            Welche von den Werten benötigst du denn in der Tabelle?
            Man muss die Einträge einmal umwandeln. Dazu wird ein weiterer Datenpunkt benötigt. Wo erstellst du die normalerweise: javascript.0 oder 0_userdata.0?

            Nilsnutz 1 Reply Last reply Reply Quote 0
            • Nilsnutz
              Nilsnutz @MCU last edited by

              @mcu
              Ok von der Basis her klappt es zumindest wenn ich nur den Wert des Elements rausrendern möchte. Ich würde die Liste aber jetzt noch filtern müssen damit alle erldigten Elemente da rausgefiltert werden. Die Liste kommt direkt aus dem Alexa 2 Adapter und wird bereits so als Datenpunkt erstellt. Wie bzw. mit welchem Adapter kann man die Daten am charmantesten umwandeln? Ich würde gerne eien Filterung und Transformierung durchführen. Könnte man in dem JSON Table Modul auch interaktionsmöglichkeiten für jedes Element durchführen und z.B. eine Funktion aufrufen die das entsprechende Element als "Erledigt" kennzeichnet?

              M 1 Reply Last reply Reply Quote 0
              • M
                MCU @Nilsnutz last edited by MCU

                @nilsnutz
                7988e6e0-9ccf-4dcf-b59d-da060778a4dd-image.png
                Reichen die drei Werte?
                Also die erledigten sollen auch mit in die Liste?

                [{"completed":"false","createdDateTime":"2021.03.21 09:11:22.035","value":"i. o. broker"},{"completed":"false","createdDateTime":"2021.03.21 09:09:33.423","value":"programmieren"}]
                

                So?

                [{"completed":"Offen","createdDateTime":"2021.03.21 09:11:22.035","value":"i. o. broker"},{"completed":"Erledigt","createdDateTime":"2021.03.21 09:09:33.423","value":"programmieren"}]
                

                859a2796-7ed6-4de5-ad09-c8a2b44beed8-image.png

                Nilsnutz 1 Reply Last reply Reply Quote 1
                • Nilsnutz
                  Nilsnutz @MCU last edited by

                  @mcu sieht gut aus. Ich werde das mal so umsetzen und schauen. Vielen Dank für deine Unterstützung!

                  M 1 Reply Last reply Reply Quote 0
                  • M
                    MCU @Nilsnutz last edited by MCU

                    @nilsnutz Warte ich schicke es Dir.

                    <xml xmlns="https://developers.google.com/blockly/xml">
                     <variables>
                       <variable id="BW%9v~G}+|6BPI-mC^U~">X_completed</variable>
                       <variable id="8SK,{_!3h?;v%0+=ZeUU">X_createdDateTime</variable>
                       <variable id="rO9asU5s{Y2G@3IkL@g~">X_value</variable>
                       <variable id="-gF.AQ8**.mG;]}U}aCI">NEW_JSON</variable>
                       <variable id="MpCcK~ur_i5(;GNB}F?^">jsonitems</variable>
                       <variable id="W@MiB696qRDvf-aB*Cb1">i</variable>
                     </variables>
                     <block type="procedures_defcustomreturn" id="mxG_{B!Y/t/PJQkf4_^S" x="238" y="-663">
                       <mutation statements="false">
                         <arg name="X_completed" varid="BW%9v~G}+|6BPI-mC^U~"></arg>
                         <arg name="X_createdDateTime" varid="8SK,{_!3h?;v%0+=ZeUU"></arg>
                         <arg name="X_value" varid="rO9asU5s{Y2G@3IkL@g~"></arg>
                       </mutation>
                       <field name="NAME">JSON_ELEMENT</field>
                       <field name="SCRIPT">dmFyIHggPXt9Ow0KLy9jb25zb2xlLmxvZyhYX2NvbXBsZXRlZCArICcgJytYX2NyZWF0ZWREYXRlVGltZSArJyAnKyBYX3ZhbHVlKTsNCg0KaWYgKFhfY29tcGxldGVkID09IGZhbHNlKSB7DQogICAgeC5jb21wbGV0ZWQgPSAiT2ZmZW4iOyAvL1N0cmluZyhYX2NvbXBsZXRlZCk7ICAgIA0KfQ0KZWxzZSB7DQogICAgeC5jb21wbGV0ZWQgPSAiRXJsZWRpZ3QiOw0KfQ0KDQp4LmNyZWF0ZWREYXRlVGltZT0gWF9jcmVhdGVkRGF0ZVRpbWU7DQp4LnZhbHVlID0gWF92YWx1ZTsNCngucHVzaDsNCnJldHVybiB4Ow==</field>
                       <comment pinned="false" h="80" w="160">Beschreibe diese Funktion …</comment>
                     </block>
                     <block type="create" id="G]R]no),5~HQ]rMcDMT(" x="237" y="-612">
                       <field name="NAME">0_userdata.0.alexa.todo_json_jarvis</field>
                       <next>
                         <block type="variables_set" id="]g$swJ*{2zi#DDIxG_*9">
                           <field name="VAR" id="-gF.AQ8**.mG;]}U}aCI">NEW_JSON</field>
                           <value name="VALUE">
                             <block type="lists_create_with" id="s=b/i.]d.{lIVezRf3G]">
                               <mutation items="0"></mutation>
                             </block>
                           </value>
                           <next>
                             <block type="on_ext" id="ZM4rstIXoN#mZ-2b2%iG">
                               <mutation xmlns="http://www.w3.org/1999/xhtml" items="1"></mutation>
                               <field name="CONDITION">any</field>
                               <field name="ACK_CONDITION"></field>
                               <value name="OID0">
                                 <shadow type="field_oid" id="!^G4~u8j[W6crS2yG6P`">
                                   <field name="oid">alexa2.0.Lists.TO_DO.json</field>
                                 </shadow>
                               </value>
                               <statement name="STATEMENT">
                                 <block type="variables_set" id="B`W:^0^1rmhAz{G;3(=}">
                                   <field name="VAR" id="MpCcK~ur_i5(;GNB}F?^">jsonitems</field>
                                   <value name="VALUE">
                                     <block type="convert_json2object" id="|Na{Lsyc[M~de-(U@Lo*">
                                       <value name="VALUE">
                                         <block type="on_source" id="GPu15/v(q=9@Xbc$bSq%">
                                           <field name="ATTR">state.val</field>
                                         </block>
                                       </value>
                                     </block>
                                   </value>
                                   <next>
                                     <block type="debug" id=")#p1xctd[CKaOi}fUfW)" disabled="true">
                                       <field name="Severity">log</field>
                                       <value name="TEXT">
                                         <shadow type="text" id="t-2b_e#0STem%wB/vwMS">
                                           <field name="TEXT">test</field>
                                         </shadow>
                                         <block type="lists_length" id=",i3lq_xaI{+yv~D@jys]">
                                           <value name="VALUE">
                                             <block type="variables_get" id="q%U/3q~`p=5uyPE-eaAk">
                                               <field name="VAR" id="MpCcK~ur_i5(;GNB}F?^">jsonitems</field>
                                             </block>
                                           </value>
                                         </block>
                                       </value>
                                       <next>
                                         <block type="controls_forEach" id="Jr]rCwGV4+ZJW|.JDFoh">
                                           <field name="VAR" id="W@MiB696qRDvf-aB*Cb1">i</field>
                                           <value name="LIST">
                                             <block type="variables_get" id=",~mWGy{FpQD5@ncHG9uq">
                                               <field name="VAR" id="MpCcK~ur_i5(;GNB}F?^">jsonitems</field>
                                             </block>
                                           </value>
                                           <statement name="DO">
                                             <block type="debug" id="|}P0#g}U6HB({/,$])lw">
                                               <field name="Severity">log</field>
                                               <value name="TEXT">
                                                 <shadow type="text" id="+?}@}ZxJAsZN5TtPs{av">
                                                   <field name="TEXT">test</field>
                                                 </shadow>
                                                 <block type="convert_jsonata" id="*8%E3s_lo)vJX{xu(5MF">
                                                   <value name="EXPRESSION">
                                                     <shadow type="text" id="(m+8t{gx1Kk@3Hzq8,jB">
                                                       <field name="TEXT">completed</field>
                                                     </shadow>
                                                   </value>
                                                   <value name="TARGET">
                                                     <block type="variables_get" id="IDyoQxR)dt9M*[n3ShUo">
                                                       <field name="VAR" id="W@MiB696qRDvf-aB*Cb1">i</field>
                                                     </block>
                                                   </value>
                                                 </block>
                                               </value>
                                               <next>
                                                 <block type="lists_setIndex" id="@:3ZNJZ:55#tL}E7vu^T">
                                                   <mutation at="false"></mutation>
                                                   <field name="MODE">INSERT</field>
                                                   <field name="WHERE">LAST</field>
                                                   <value name="LIST">
                                                     <block type="variables_get" id="af%%PgQ7fWx!_GIzW-u;">
                                                       <field name="VAR" id="-gF.AQ8**.mG;]}U}aCI">NEW_JSON</field>
                                                     </block>
                                                   </value>
                                                   <value name="TO">
                                                     <block type="procedures_callcustomreturn" id="DK/42*f_58--ovA;lXv)">
                                                       <mutation name="JSON_ELEMENT">
                                                         <arg name="X_completed"></arg>
                                                         <arg name="X_createdDateTime"></arg>
                                                         <arg name="X_value"></arg>
                                                       </mutation>
                                                       <value name="ARG0">
                                                         <block type="convert_jsonata" id="p~t%WLYkQmU]]h8l+Cs7">
                                                           <value name="EXPRESSION">
                                                             <shadow type="text" id=";b2/pyI3v@1,eX5G?8PQ">
                                                               <field name="TEXT">completed</field>
                                                             </shadow>
                                                           </value>
                                                           <value name="TARGET">
                                                             <block type="variables_get" id="!PMW.%,?n$]kNTW~!p8J">
                                                               <field name="VAR" id="W@MiB696qRDvf-aB*Cb1">i</field>
                                                             </block>
                                                           </value>
                                                         </block>
                                                       </value>
                                                       <value name="ARG1">
                                                         <block type="convert_from_date" id="zZ%~t]{DcMF2oM,p{Hup">
                                                           <mutation xmlns="http://www.w3.org/1999/xhtml" format="true" language="false"></mutation>
                                                           <field name="OPTION">custom</field>
                                                           <field name="FORMAT">JJJJ.MM.TT SS:mm:ss.sss</field>
                                                           <value name="VALUE">
                                                             <block type="convert_jsonata" id="C$2e~IAW]hx`*V~X[)D#">
                                                               <value name="EXPRESSION">
                                                                 <shadow type="text" id="[e:fFe+C8.d5_Q-Jzmwe">
                                                                   <field name="TEXT">createdDateTime</field>
                                                                 </shadow>
                                                               </value>
                                                               <value name="TARGET">
                                                                 <block type="variables_get" id="`-z1(J9v}MJR?I=(_K[v">
                                                                   <field name="VAR" id="W@MiB696qRDvf-aB*Cb1">i</field>
                                                                 </block>
                                                               </value>
                                                             </block>
                                                           </value>
                                                         </block>
                                                       </value>
                                                       <value name="ARG2">
                                                         <block type="convert_jsonata" id="OnDoF_MTz~7s^|kTVg$B">
                                                           <value name="EXPRESSION">
                                                             <shadow type="text" id="Be.Qa)$#T7.Qy[SAl+fw">
                                                               <field name="TEXT">value</field>
                                                             </shadow>
                                                           </value>
                                                           <value name="TARGET">
                                                             <block type="variables_get" id="ZdrDTX/aEU]9Q!=Cey5,">
                                                               <field name="VAR" id="W@MiB696qRDvf-aB*Cb1">i</field>
                                                             </block>
                                                           </value>
                                                         </block>
                                                       </value>
                                                     </block>
                                                   </value>
                                                 </block>
                                               </next>
                                             </block>
                                           </statement>
                                           <next>
                                             <block type="control" id="{W3|J:c#[2b{b:Xu]A{n">
                                               <mutation xmlns="http://www.w3.org/1999/xhtml" delay_input="false"></mutation>
                                               <field name="OID">0_userdata.0.alexa.todo_json_jarvis</field>
                                               <field name="WITH_DELAY">FALSE</field>
                                               <value name="VALUE">
                                                 <block type="convert_object2json" id="168#s}4?dNMkYXfgV!R:">
                                                   <field name="PRETTIFY">FALSE</field>
                                                   <value name="VALUE">
                                                     <block type="variables_get" id="pMM{?xO2~8WGxNgT$-UI">
                                                       <field name="VAR" id="-gF.AQ8**.mG;]}U}aCI">NEW_JSON</field>
                                                     </block>
                                                   </value>
                                                 </block>
                                               </value>
                                             </block>
                                           </next>
                                         </block>
                                       </next>
                                     </block>
                                   </next>
                                 </block>
                               </statement>
                             </block>
                           </next>
                         </block>
                       </next>
                     </block>
                    </xml>
                    

                    Für die ShoppingListe musst du nur einen anderen Datenpunkt anlegen und für den Trigger, die Shopping Liste auswählen

                    Jarvis-jsontable Eintrag:
                    1478c74d-c0f0-44dd-8665-a7b82926c8c3-image.png

                    [{"label":"completed","align":"left"},{"label":"value","align":"left"},{"label":"createdDateTime","align":"left"}]
                    

                    Sortierung nach createdDateTime ist nicht möglich, das ist noch ein Bug in jarvis 2.2.0.

                    Ist die DatumZeit zu lang kannst du sie hier einstellen:
                    e6f22f6f-3109-4b8b-b6c4-abdbe46c9f66-image.png

                    Nilsnutz 1 Reply Last reply Reply Quote 2
                    • Nilsnutz
                      Nilsnutz @MCU last edited by

                      @mcu Nochmal Danke 🙂 Wenn jetzt Alexa noch meine Einkaufslisten auch aktualisieren würde wäre ich auch sehr happy.... Aktuell werden nur die Objekte unter History aktualisiert. Da schaue ich im Laufe des Tages mal nach.

                      M 1 Reply Last reply Reply Quote 0
                      • M
                        MCU @Nilsnutz last edited by MCU

                        @nilsnutz Zeig mal das Endergebnis. Welche Version von alexa2 ist installiert?

                        Nilsnutz 1 Reply Last reply Reply Quote 0
                        • Nilsnutz
                          Nilsnutz @MCU last edited by Nilsnutz

                          @mcu Alexa Adapter hat die Verion 3.8.1
                          alexa-Update.png

                          Ich hatte heute die Liste bearbeitet und neue Elemente sowohl über die Alexa App als auch per Sprachbefehl abgesendet. Die werden nicht im Alexa Adapter aktualisiert. Fehler im Log finde ich auch nicht. Adapter neustart etc. hab ich schon gemacht.

                          M 1 Reply Last reply Reply Quote 0
                          • M
                            MCU @Nilsnutz last edited by

                            @nilsnutz Was mir dazu einfällt, du kannst die Instanz auf debug setzen, musst sie aber hinterher zurücksetzen.
                            6958a3b4-7089-4275-bd2f-443aaafb24c3-image.png
                            Und dann einmal neustarten, dann bekommst du jede Menge zusätzlicher Einträge im LOG. Vielleicht kann man da etwas erkennen. Sonst kann @apollon77 evtl. helfen?

                            Nilsnutz 1 Reply Last reply Reply Quote 0
                            • Nilsnutz
                              Nilsnutz @MCU last edited by

                              @mcu sooo. Es läuft alles. Scheinbar wird einfach das Update Datum nicht korrekt gesetzt. Ich hatte noch 120 erledigte elemente deswegen ist es mir nicht aufgefallen dass die Liste korrekt aktualisiert wurde. In den Objekten wird der JSON Text nicht wirklich sichtbar eingetragen deswegen dachte ich da wäre noch ein Fehler in dem Script drin. Ich hatte dann eine neue Version mit sehr vielen Debug Meldungen gemacht und dort dann auch alle erledigten elemente rausgefiltert. Jetzt läufts und ich bin happy! Danke 🙂

                              M 1 Reply Last reply Reply Quote 0
                              • M
                                MCU @Nilsnutz last edited by

                                @nilsnutz Dann bitte im ersten Post die Überschrift verändern auf [gelöst] .... Danke.

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

                                Support us

                                ioBroker
                                Community Adapters
                                Donate

                                392
                                Online

                                31.8k
                                Users

                                80.0k
                                Topics

                                1.3m
                                Posts

                                2
                                14
                                2758
                                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