NEWS
Alexa Einkaufsliste [gelöst]
-
Keiner eine Idee?
mal probieren
adapter stoppen - die datenpunkte bzw den ordner lists löschen -. adapter neustarten
-
mal probieren
adapter stoppen - die datenpunkte bzw den ordner lists löschen -. adapter neustarten
@liv-in-sky
Danke für die Hilfe...
Leider das gleiche... -
Hallo,
ich sehe in meiner JSON Tabelle von der Alexa Einkaufsliste nur folgende Einträge:

Keine echten Einträge...
Wo habe ich den Denkfehler?
Danke euch...mach mal bitte einen größeren ausschnitt vom bild
-
@liv-in-sky
Danke für die Hilfe...
Leider das gleiche...und erzeug emal eine neue liste mit ein zwei einträgen - ist da das selbe problem
-
mach mal bitte einen größeren ausschnitt vom bild
Reicht?
-
Reicht?
-
was genau ist das problem
- unter items sind die einzelnen einträge
- unter json ist ein json-string mit allen einträgen
poste mal den inhalt des json dp-tes
-
was genau ist das problem
- unter items sind die einzelnen einträge
- unter json ist ein json-string mit allen einträgen
poste mal den inhalt des json dp-tes
so stehts im Datenpunkt...
-
so stehts im Datenpunkt...
-
so stehts im Datenpunkt...
lösch mal dein json wieder aus dem post - zur sicherheit - da sind viele id's zu sehen
-
@liv-in-sky
Genau, de wird aber in der JSON Tabelle in VIS nicht angezeigt... -
so stehts im Datenpunkt...
Also, das was du da gepostet hast ist aus dem Datenpunkt
alexa2.0.Lists.SHOPPING_LIST.jsonnehme ich an.
Der hat aus meiner Sicht den Nachteil das dort alles drin steht, sowohl die "aktiven" Einträge als auch die schon erledigten.
Und das lässt sich nicht so einfach als JSON Tabelle ausgeben.Ich habe ein Skript welches den Datenpunkt überwacht und mir daraus 3 neue Datenpunkte baut
- Alle
- nur unerledigte
- nur erledigte
// #################################################################################################################################################### // Setup var s_target_JSON = "javascript.0.echos.Alexa_Einkaufsliste."; var s_source_JSON = "alexa2.0.Lists.SHOPPING_LIST.json"; // #################################################################################################################################################### // Zielpunkte anlegen falls noch nicht vorhanden // JSON_uncompleted createState(s_target_JSON + "JSON_uncompleted", false, { read: true, write: true, name: 'Only uncompleted entries', type: 'string', def: "empty" }); createState(s_target_JSON + "JSON_completed", false, { read: true, write: true, name: 'Only completed entries', type: 'string', def: "empty" }); createState(s_target_JSON + "JSON_all", false, { read: true, write: true, name: 'completed and uncompleted entries', type: 'string', def: "empty" }); createState(s_target_JSON + "Telegram", false, { read: true, write: true, name: 'Message for Telegram', type: 'string', def: "empty" }); // #################################################################################################################################################### // Hilfsvariablen var s_JSON_uncompleted; var s_JSON_completed; var s_JSON_all; var s_Telegram; // #################################################################################################################################################### // Funktionen function ReWorkAlexaJSON(json) { s_JSON_uncompleted = '['; s_JSON_completed = '['; s_JSON_all = '['; s_Telegram = '*Einkaufsliste* \n'; try { // JSON einlesen var obj = JSON.parse(json); //nur die wichtigen Felder holen for (var item in obj) { let b_completed = obj[item].completed; let s_ItemName = obj[item].value; // Anfangsbuchstaben in Großbuchstaben umwandeln s_ItemName = s_ItemName.replace(/(^|\s)\S/g, l => l.toUpperCase()); // Änderungsdatum auslesen und als normales Datum und als "ist Stunden Minuten Sekunden her" speichern let s_updatedDateTime = obj[item].updatedDateTime; let s_CreatedTime = (new Date()).getTime(); var yy = (Math.round((new Date()).getTime() / 1000)) - Math.round(s_updatedDateTime/1000); s_updatedDateTime=formatDate(getDateObject(s_updatedDateTime), "TT.MM(SS:mm)"); s_CreatedTime=(Math.floor( ((yy)/60/60/24) )+"d "+ Math.floor(((yy)/60/60) % 24) +"h "+ Math.floor( ((yy)/60) % 60 )+"m"); s_CreatedTime = s_CreatedTime.replace("0d ", ""); s_CreatedTime = s_CreatedTime.replace("0h ", ""); // Die 3 JSON befüllen s_JSON_all = s_JSON_all + '{"Artikel":"' + s_ItemName + '","Erstellt vor":"' + s_CreatedTime + '"},'; if ( b_completed == false ) { s_JSON_uncompleted = s_JSON_uncompleted + '{"Artikel":"' + s_ItemName + '","Erstellt vor":"' + s_CreatedTime + '"},'; s_Telegram = s_Telegram + s_ItemName + "\n"; } else { s_JSON_completed = s_JSON_completed + '{"Artikel":"' + s_ItemName + '","Erstellt vor":"' + s_CreatedTime + '"},'; } } // letztes Komma wieder abschneiden s_JSON_all = s_JSON_all.slice(0, -1); s_JSON_uncompleted = s_JSON_uncompleted.slice(0, -1); s_JSON_completed = s_JSON_completed.slice(0, -1); // Und JSON abschließen s_JSON_all = s_JSON_all + ']'; s_JSON_uncompleted = s_JSON_uncompleted + ']'; s_JSON_completed = s_JSON_completed + ']'; //und wegschreiben setState(s_target_JSON + "JSON_all", s_JSON_all); setState(s_target_JSON + "JSON_uncompleted", s_JSON_uncompleted); setState(s_target_JSON + "JSON_completed", s_JSON_completed); setState(s_target_JSON + "Telegram", s_Telegram); } catch (e) { return; } } // #################################################################################################################################################### // Beim Start einmal abarbeiten ReWorkAlexaJSON(getState(s_source_JSON)); // Und an die Liste dranhängen und auf Änderungen warten on(s_source_JSON, function(dp) { ReWorkAlexaJSON(dp.state.val); });Ich vermute das dieses Skript nicht zu 100% auf meinem Mist gewachsen ist, habe mir aber nicht notiert wo aus dem Forum ich das wohl her habe.
Es erzeugt sogar 4 Datenpunkte:

Den Telegram nutze ich mit einem anderen Skript um mir die Liste auf das Handy zu senden.
Die 3 anderen Datenpunkte kannst du für die JSON Tabellen nutzen.
-
@liv-in-sky
Genau, de wird aber in der JSON Tabelle in VIS nicht angezeigt...das liegt an den eistellungen
installiere dir die inventwo widget und versuch es mal mit dem inventwo json widget - dort kannst du alles relativ einfach einstellen - welche spalten du sehen wilsst
-
Also, das was du da gepostet hast ist aus dem Datenpunkt
alexa2.0.Lists.SHOPPING_LIST.jsonnehme ich an.
Der hat aus meiner Sicht den Nachteil das dort alles drin steht, sowohl die "aktiven" Einträge als auch die schon erledigten.
Und das lässt sich nicht so einfach als JSON Tabelle ausgeben.Ich habe ein Skript welches den Datenpunkt überwacht und mir daraus 3 neue Datenpunkte baut
- Alle
- nur unerledigte
- nur erledigte
// #################################################################################################################################################### // Setup var s_target_JSON = "javascript.0.echos.Alexa_Einkaufsliste."; var s_source_JSON = "alexa2.0.Lists.SHOPPING_LIST.json"; // #################################################################################################################################################### // Zielpunkte anlegen falls noch nicht vorhanden // JSON_uncompleted createState(s_target_JSON + "JSON_uncompleted", false, { read: true, write: true, name: 'Only uncompleted entries', type: 'string', def: "empty" }); createState(s_target_JSON + "JSON_completed", false, { read: true, write: true, name: 'Only completed entries', type: 'string', def: "empty" }); createState(s_target_JSON + "JSON_all", false, { read: true, write: true, name: 'completed and uncompleted entries', type: 'string', def: "empty" }); createState(s_target_JSON + "Telegram", false, { read: true, write: true, name: 'Message for Telegram', type: 'string', def: "empty" }); // #################################################################################################################################################### // Hilfsvariablen var s_JSON_uncompleted; var s_JSON_completed; var s_JSON_all; var s_Telegram; // #################################################################################################################################################### // Funktionen function ReWorkAlexaJSON(json) { s_JSON_uncompleted = '['; s_JSON_completed = '['; s_JSON_all = '['; s_Telegram = '*Einkaufsliste* \n'; try { // JSON einlesen var obj = JSON.parse(json); //nur die wichtigen Felder holen for (var item in obj) { let b_completed = obj[item].completed; let s_ItemName = obj[item].value; // Anfangsbuchstaben in Großbuchstaben umwandeln s_ItemName = s_ItemName.replace(/(^|\s)\S/g, l => l.toUpperCase()); // Änderungsdatum auslesen und als normales Datum und als "ist Stunden Minuten Sekunden her" speichern let s_updatedDateTime = obj[item].updatedDateTime; let s_CreatedTime = (new Date()).getTime(); var yy = (Math.round((new Date()).getTime() / 1000)) - Math.round(s_updatedDateTime/1000); s_updatedDateTime=formatDate(getDateObject(s_updatedDateTime), "TT.MM(SS:mm)"); s_CreatedTime=(Math.floor( ((yy)/60/60/24) )+"d "+ Math.floor(((yy)/60/60) % 24) +"h "+ Math.floor( ((yy)/60) % 60 )+"m"); s_CreatedTime = s_CreatedTime.replace("0d ", ""); s_CreatedTime = s_CreatedTime.replace("0h ", ""); // Die 3 JSON befüllen s_JSON_all = s_JSON_all + '{"Artikel":"' + s_ItemName + '","Erstellt vor":"' + s_CreatedTime + '"},'; if ( b_completed == false ) { s_JSON_uncompleted = s_JSON_uncompleted + '{"Artikel":"' + s_ItemName + '","Erstellt vor":"' + s_CreatedTime + '"},'; s_Telegram = s_Telegram + s_ItemName + "\n"; } else { s_JSON_completed = s_JSON_completed + '{"Artikel":"' + s_ItemName + '","Erstellt vor":"' + s_CreatedTime + '"},'; } } // letztes Komma wieder abschneiden s_JSON_all = s_JSON_all.slice(0, -1); s_JSON_uncompleted = s_JSON_uncompleted.slice(0, -1); s_JSON_completed = s_JSON_completed.slice(0, -1); // Und JSON abschließen s_JSON_all = s_JSON_all + ']'; s_JSON_uncompleted = s_JSON_uncompleted + ']'; s_JSON_completed = s_JSON_completed + ']'; //und wegschreiben setState(s_target_JSON + "JSON_all", s_JSON_all); setState(s_target_JSON + "JSON_uncompleted", s_JSON_uncompleted); setState(s_target_JSON + "JSON_completed", s_JSON_completed); setState(s_target_JSON + "Telegram", s_Telegram); } catch (e) { return; } } // #################################################################################################################################################### // Beim Start einmal abarbeiten ReWorkAlexaJSON(getState(s_source_JSON)); // Und an die Liste dranhängen und auf Änderungen warten on(s_source_JSON, function(dp) { ReWorkAlexaJSON(dp.state.val); });Ich vermute das dieses Skript nicht zu 100% auf meinem Mist gewachsen ist, habe mir aber nicht notiert wo aus dem Forum ich das wohl her habe.
Es erzeugt sogar 4 Datenpunkte:

Den Telegram nutze ich mit einem anderen Skript um mir die Liste auf das Handy zu senden.
Die 3 anderen Datenpunkte kannst du für die JSON Tabellen nutzen.
Danke euch!
Funktioniert!
Das Problem war ich...
Der Eintrag war von einer anderen spalte überdeckt...
Hab jetzt alle rausgeholt und nach und nach die Spalten hinzugefügt.
Und siehe da: Salbe...Danke nochmal!
-
Danke euch!
Funktioniert!
Das Problem war ich...
Der Eintrag war von einer anderen spalte überdeckt...
Hab jetzt alle rausgeholt und nach und nach die Spalten hinzugefügt.
Und siehe da: Salbe...Danke nochmal!
geh doch bitte in den ersten post und füge [gelöst] in die überschrift dazu
Hey! Du scheinst an dieser Unterhaltung interessiert zu sein, hast aber noch kein Konto.
Hast du es satt, bei jedem Besuch durch die gleichen Beiträge zu scrollen? Wenn du dich für ein Konto anmeldest, kommst du immer genau dorthin zurück, wo du zuvor warst, und kannst dich über neue Antworten benachrichtigen lassen (entweder per E-Mail oder Push-Benachrichtigung). Du kannst auch Lesezeichen speichern und Beiträge positiv bewerten, um anderen Community-Mitgliedern deine Wertschätzung zu zeigen.
Mit deinem Input könnte dieser Beitrag noch besser werden 💗
Registrieren Anmelden
