NEWS
JSON Liste in Jarvis darstellen
-
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!
-
@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
-
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
}
] -
@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? -
@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? -
@nilsnutz
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"}]
-
@mcu sieht gut aus. Ich werde das mal so umsetzen und schauen. Vielen Dank für deine Unterstützung!
-
@nilsnutz Warte ich schicke es Dir.
Für die ShoppingListe musst du nur einen anderen Datenpunkt anlegen und für den Trigger, die Shopping Liste auswählen
Jarvis-jsontable Eintrag:
[{"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:
-
@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.
-
@nilsnutz Zeig mal das Endergebnis. Welche Version von alexa2 ist installiert?
-
@mcu Alexa Adapter hat die Verion 3.8.1
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.
-
@nilsnutz Was mir dazu einfällt, du kannst die Instanz auf debug setzen, musst sie aber hinterher zurücksetzen.
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? -
@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
-
@nilsnutz Dann bitte im ersten Post die Überschrift verändern auf [gelöst] .... Danke.