Weiter zum Inhalt
  • Home
  • Aktuell
  • Tags
  • 0 Ungelesen 0
  • Kategorien
  • Unreplied
  • Beliebt
  • GitHub
  • Docu
  • Hilfe
Skins
  • Hell
  • Brite
  • Cerulean
  • Cosmo
  • Flatly
  • Journal
  • Litera
  • Lumen
  • Lux
  • Materia
  • Minty
  • Morph
  • Pulse
  • Sandstone
  • Simplex
  • Sketchy
  • Spacelab
  • United
  • Yeti
  • Zephyr
  • Dunkel
  • Cyborg
  • Darkly
  • Quartz
  • Slate
  • Solar
  • Superhero
  • Vapor

  • Standard: (Kein Skin)
  • Kein Skin
Einklappen
ioBroker Logo

Community Forum

donate donate
  1. ioBroker Community Home
  2. Deutsch
  3. ioBroker Allgemein
  4. Alexa Einkaufsliste [gelöst]

NEWS

  • Neues YouTube-Video: Visualisierung im Devices-Adapter
    BluefoxB
    Bluefox
    13
    1
    683

  • Neuer ioBroker-Blog online: Monatsrückblick März/April 2026
    BluefoxB
    Bluefox
    8
    1
    2.0k

  • Verwendung von KI bitte immer deutlich kennzeichnen
    HomoranH
    Homoran
    11
    1
    901

Alexa Einkaufsliste [gelöst]

Geplant Angeheftet Gesperrt Verschoben ioBroker Allgemein
17 Beiträge 3 Kommentatoren 968 Aufrufe 3 Beobachtet
  • Älteste zuerst
  • Neuste zuerst
  • Meiste Stimmen
Antworten
  • In einem neuen Thema antworten
Anmelden zum Antworten
Dieses Thema wurde gelöscht. Nur Nutzer mit entsprechenden Rechten können es sehen.
  • L lucajordi

    @liv-in-sky

    Reicht?

    L Offline
    L Offline
    lucajordi
    schrieb am zuletzt editiert von
    #8

    neue Liste habe ich schon erstellt...

    liv-in-skyL 1 Antwort Letzte Antwort
    0
    • L lucajordi

      neue Liste habe ich schon erstellt...

      liv-in-skyL Offline
      liv-in-skyL Offline
      liv-in-sky
      schrieb am zuletzt editiert von liv-in-sky
      #9

      @lucajordi

      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

      nach einem gelösten Thread wäre es sinnvoll dies in der Überschrift des ersten Posts einzutragen [gelöst]-... Bitte benutzt das Voting rechts unten im Beitrag wenn er euch geholfen hat. Forum-Tools: PicPick https://picpick.app/en/download/ und ScreenToGif https://www.screentogif.com/downloads.html

      L 1 Antwort Letzte Antwort
      0
      • liv-in-skyL liv-in-sky

        @lucajordi

        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

        L Offline
        L Offline
        lucajordi
        schrieb am zuletzt editiert von lucajordi
        #10

        @liv-in-sky

        so stehts im Datenpunkt...

        liv-in-skyL BananaJoeB 3 Antworten Letzte Antwort
        0
        • L lucajordi

          @liv-in-sky

          so stehts im Datenpunkt...

          liv-in-skyL Offline
          liv-in-skyL Offline
          liv-in-sky
          schrieb am zuletzt editiert von liv-in-sky
          #11

          @lucajordi sagte in Alexa Einkaufsliste:

          du hast einen eintrag: salbe

          Image 1.png

          nach einem gelösten Thread wäre es sinnvoll dies in der Überschrift des ersten Posts einzutragen [gelöst]-... Bitte benutzt das Voting rechts unten im Beitrag wenn er euch geholfen hat. Forum-Tools: PicPick https://picpick.app/en/download/ und ScreenToGif https://www.screentogif.com/downloads.html

          L 1 Antwort Letzte Antwort
          0
          • L lucajordi

            @liv-in-sky

            so stehts im Datenpunkt...

            liv-in-skyL Offline
            liv-in-skyL Offline
            liv-in-sky
            schrieb am zuletzt editiert von
            #12

            @lucajordi

            lösch mal dein json wieder aus dem post - zur sicherheit - da sind viele id's zu sehen

            nach einem gelösten Thread wäre es sinnvoll dies in der Überschrift des ersten Posts einzutragen [gelöst]-... Bitte benutzt das Voting rechts unten im Beitrag wenn er euch geholfen hat. Forum-Tools: PicPick https://picpick.app/en/download/ und ScreenToGif https://www.screentogif.com/downloads.html

            1 Antwort Letzte Antwort
            0
            • liv-in-skyL liv-in-sky

              @lucajordi sagte in Alexa Einkaufsliste:

              du hast einen eintrag: salbe

              Image 1.png

              L Offline
              L Offline
              lucajordi
              schrieb am zuletzt editiert von
              #13

              @liv-in-sky
              Genau, de wird aber in der JSON Tabelle in VIS nicht angezeigt...

              liv-in-skyL 1 Antwort Letzte Antwort
              0
              • L lucajordi

                @liv-in-sky

                so stehts im Datenpunkt...

                BananaJoeB Online
                BananaJoeB Online
                BananaJoe
                Most Active
                schrieb am zuletzt editiert von BananaJoe
                #14

                @lucajordi

                Also, das was du da gepostet hast ist aus dem Datenpunkt

                alexa2.0.Lists.SHOPPING_LIST.json
                

                nehme 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:
                65a3a21e-a947-4446-aff0-8df98174e4f0-image.png

                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.

                ioBroker@Ubuntu 24.04 LTS (VMware) für: >260 Geräte, 5 Switche, 7 AP, 10 IP-Cam, 1 NAS 42TB, 1 ESXi 15TB, 4 Proxmox 1TB, 1 Hyper-V 48TB, 14 x Echo, 5x FireTV, 5 x Tablett/Handy VIS || >=160 Tasmota/Shelly || >=95 ZigBee || PV 8.1kW / Akku 14kWh || 2x USV APC 750W kaskadiert || Creality CR-10 SE 3D-Drucker

                L 1 Antwort Letzte Antwort
                0
                • L lucajordi

                  @liv-in-sky
                  Genau, de wird aber in der JSON Tabelle in VIS nicht angezeigt...

                  liv-in-skyL Offline
                  liv-in-skyL Offline
                  liv-in-sky
                  schrieb am zuletzt editiert von liv-in-sky
                  #15

                  @lucajordi

                  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

                  nach einem gelösten Thread wäre es sinnvoll dies in der Überschrift des ersten Posts einzutragen [gelöst]-... Bitte benutzt das Voting rechts unten im Beitrag wenn er euch geholfen hat. Forum-Tools: PicPick https://picpick.app/en/download/ und ScreenToGif https://www.screentogif.com/downloads.html

                  1 Antwort Letzte Antwort
                  0
                  • BananaJoeB BananaJoe

                    @lucajordi

                    Also, das was du da gepostet hast ist aus dem Datenpunkt

                    alexa2.0.Lists.SHOPPING_LIST.json
                    

                    nehme 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:
                    65a3a21e-a947-4446-aff0-8df98174e4f0-image.png

                    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.

                    L Offline
                    L Offline
                    lucajordi
                    schrieb am zuletzt editiert von
                    #16

                    @bananajoe
                    @liv-in-sky

                    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!

                    liv-in-skyL 1 Antwort Letzte Antwort
                    0
                    • L lucajordi

                      @bananajoe
                      @liv-in-sky

                      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!

                      liv-in-skyL Offline
                      liv-in-skyL Offline
                      liv-in-sky
                      schrieb am zuletzt editiert von
                      #17

                      @lucajordi

                      geh doch bitte in den ersten post und füge [gelöst] in die überschrift dazu

                      nach einem gelösten Thread wäre es sinnvoll dies in der Überschrift des ersten Posts einzutragen [gelöst]-... Bitte benutzt das Voting rechts unten im Beitrag wenn er euch geholfen hat. Forum-Tools: PicPick https://picpick.app/en/download/ und ScreenToGif https://www.screentogif.com/downloads.html

                      1 Antwort Letzte Antwort
                      -1

                      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
                      Antworten
                      • In einem neuen Thema antworten
                      Anmelden zum Antworten
                      • Älteste zuerst
                      • Neuste zuerst
                      • Meiste Stimmen


                      Support us

                      ioBroker
                      Community Adapters
                      Donate
                      FAQ Cloud / IOT
                      HowTo: Node.js-Update
                      HowTo: Backup/Restore
                      Downloads
                      BLOG

                      344

                      Online

                      32.9k

                      Benutzer

                      83.1k

                      Themen

                      1.3m

                      Beiträge
                      Community
                      Impressum | Datenschutz-Bestimmungen | Nutzungsbedingungen | Einwilligungseinstellungen
                      ioBroker Community 2014-2025
                      logo
                      • Anmelden

                      • Du hast noch kein Konto? Registrieren

                      • Anmelden oder registrieren, um zu suchen
                      • Erster Beitrag
                        Letzter Beitrag
                      0
                      • Home
                      • Aktuell
                      • Tags
                      • Ungelesen 0
                      • Kategorien
                      • Unreplied
                      • Beliebt
                      • GitHub
                      • Docu
                      • Hilfe