Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. Skripten / Logik
    4. Alexa Shopping List mit Bring synchronisieren

    NEWS

    • ioBroker@Smart Living Forum Solingen, 14.06. - Agenda added

    • ioBroker goes Matter ... Matter Adapter in Stable

    • Monatsrückblick - April 2025

    Alexa Shopping List mit Bring synchronisieren

    This topic has been deleted. Only users with topic management privileges can see it.
    • R
      Rushmed Most Active last edited by

      Ich bin bin hier auch an einer Lösung interessiert.

      1 Reply Last reply Reply Quote 0
      • Ro75
        Ro75 last edited by

        Wenn hier die "normale" Einkaufsliste genutzt wird, dann verwendet doch den Alexa-Adapter. Ich habe mir ein Skript gebaut, mit dem ich eine JSON bekomme und kann damit dann alles in der VIS darstellen. Bei jeder Änderung via APP oder Sprache wird die Liste aktualisiert. Geht auch mit der ToDo-Liste.

        Ro75.

        R 1 Reply Last reply Reply Quote 0
        • R
          Rushmed Most Active @Ro75 last edited by

          @ro75 Ich stelle mal die Vermtung an dass auch der Alexa Adapter die Listen ab dem ersten Juli nichtmehr lesen kann.

          Dicken 1 Reply Last reply Reply Quote 1
          • Dicken
            Dicken @Rushmed last edited by

            @rushmed sagte in Alexa Shopping List mit Bring synchronisieren:

            @ro75 Ich stelle mal die Vermtung an dass auch der Alexa Adapter die Listen ab dem ersten Juli nichtmehr lesen kann.

            Genau das denke ich auch, leider...

            1 Reply Last reply Reply Quote 0
            • Ro75
              Ro75 last edited by

              @Rushmed @Dicken . Also mit den Vermutungen habe ich es nicht so. Mit dem Alexa-Adapter funktioniert alles so wie immer.

              Hier mal meine JSON mit einem Auszug von heute (früh und eben).

              [
                {
                  "completed": false,
                  "createdDateTime": 1719844870288,
                  "customerId": "A2MXXXXXXXXXXX2ED",
                  "id": "eddf3bbe-CCCC-XXXX-YYYY-00000079fb37",
                  "listId": "A2MXXXXXXXXXXX2ED-SHOP",
                  "shoppingListItem": true,
                  "updatedDateTime": 1719844870288,
                  "value": "semmeln",
                  "version": 1
                },
                {
                  "completed": false,
                  "createdDateTime": 1719807991615,
                  "customerId": "A2MXXXXXXXXXXX2ED",
                  "id": "85b357a7-CCCC-XXXX-YYYY-00000000c9fa",
                  "listId": "A2MXXXXXXXXXXX2ED-SHOP",
                  "shoppingListItem": true,
                  "updatedDateTime": 1719807991615,
                  "value": "rasiergel",
                  "version": 1
                },
                {
              

              Ro75.

              Dicken 1 Reply Last reply Reply Quote 0
              • Dicken
                Dicken @Ro75 last edited by

                @ro75 grade getestet, bei mir funktionieren komischerweise auch nach wie vor die Anylist und Todoist integrationen.

                Juergen Sußner 1 Reply Last reply Reply Quote 0
                • Juergen Sußner
                  Juergen Sußner @Dicken last edited by

                  @dicken

                  Zumindest einen oneWay Sync mit todoist konnte ich bauen,

                  const axios = require('axios');
                  
                  // Überwachen der Änderung des JSON-Arrays
                  on({id: 'alexa2.0.Lists.SHOPPING_LIST.json', change: 'any'}, function (obj) {
                      try {
                          const jsonArray = JSON.parse(obj.state.val);
                          if (jsonArray && jsonArray.length > 0) {
                              const currentTime = Date.now();
                              const timeLimit = 30 * 60 * 1000; // 30 Minuten in Millisekunden
                  
                              // Überprüfen, ob das erste Element innerhalb der letzten 30 Minuten erstellt wurde
                              const createdDateTime = jsonArray[0].createdDateTime;
                              const completed=jsonArray[0].completed;
                              console.log(jsonArray[0]);
                              if (currentTime - createdDateTime < timeLimit && !completed ) {
                                  const item = jsonArray[0].value;
                  
                                  const data = {
                                      content: item,
                                      project_id: '12345678'
                                  };
                  
                                  axios.post('https://api.todoist.com/rest/v2/tasks', data, {
                                      headers: {
                                          'Content-Type': 'application/json',
                                          'X-Request-Id': '598cee9a-cec2-44c0-9cc6-e3eae1608c53',
                                          'Authorization': 'Bearer $token'
                                      }
                                  })
                                  .then(response => {
                                      console.log('Task created successfully:', response.data);
                                  })
                                  .catch(error => {
                                      console.error('Error creating task:', error);
                                  });
                              } else {
                                  console.log('The item is older than 30 minutes, no task created.');
                              }
                          }
                      } catch (e) {
                          console.error('Error parsing JSON:', e);
                      }
                  });
                  
                  
                  1 Reply Last reply Reply Quote 0
                  • Dicken
                    Dicken last edited by

                    @juergen-sußner das klappt aber auch nur solange der alexa Adapter auch noch Zugriff auf die amazon api hat.

                    Hab grad nochmal getestet, also die Synchronisierung mit todoist und anylist funktionieren heute leider nicht mehr direkt.

                    Hoffen wir mal das der Alexa Adapter für iobroker weiterhin funktioniert.

                    Ro75 1 Reply Last reply Reply Quote 0
                    • Ro75
                      Ro75 @Dicken last edited by

                      @dicken beim mir funktioniert der Alexa-Adapter wunderbar und die Shopping-Liste wird auch sofort aktualisiert.

                      Ro75.

                      Dicken 1 Reply Last reply Reply Quote 0
                      • Dicken
                        Dicken @Ro75 last edited by

                        @ro75 perfekt, danke für den Hinweis. Dann werd ich mir die Brücke über den alexa2 Adapter bauen 🙂

                        Ro75 1 Reply Last reply Reply Quote 0
                        • Ro75
                          Ro75 @Dicken last edited by Ro75

                          @dicken Warum Brücke? Kannst den Code gerne von mir nutzen.

                          const JSONEinkaufsliste = '0_userdata.0.Alexa.Einkaufsliste';
                          const JSONEToDoListe    = '0_userdata.0.Alexa.ToDoListe';
                          
                          createState(JSONEinkaufsliste, '[]', {read: true, write: true, desc: 'JSON String for Widget', type: 'string', def: '[]'});
                          createState(JSONEToDoListe, '[]', {read: true, write: true, desc: 'JSON String for Widget', type: 'string', def: '[]'});
                          
                          function ListCleaner(Eintrag='') {
                              const arr = Eintrag.split(' ');
                              for (let i = 0; i < arr.length; i++) {
                                  arr[i] = arr[i].charAt(0).toUpperCase() + arr[i].slice(1);
                              }
                              return arr.join(' ');
                          }
                          
                          function ListenGenerator(sQuelle='', sDP=''){
                              var ListeLeer = 1;
                              let Liste = [];
                              $(sQuelle).each(function(id, i){
                                  if(getState(id.replace("value","completed")).val === false) {
                                      ListeLeer = 0; //dient einfach nur als merkmal, das die Liste nicht leer ist
                                      Liste.push({
                                          Eintrag: ListCleaner(getState(id).val)
                                      })
                                  }
                              });
                              if(ListeLeer == 1) {
                                  Liste.push({
                                      Eintrag: "kein Eintrag"
                                  })
                              }
                              setState(sDP, JSON.stringify(Liste), true);
                              Liste = [];
                          }
                          
                          function Einkaufsliste(){
                              setTimeout(function(){
                                  ListenGenerator('alexa2.0.Lists.SHOPPING_LIST.items.*.value',JSONEinkaufsliste)
                              },500);
                          }
                          
                          function TODO() {
                              setTimeout(function(){
                                  ListenGenerator('alexa2.0.Lists.TO_DO.items.*.value',JSONEToDoListe)
                              },500);
                          }
                          
                          on({id: 'alexa2.0.Lists.SHOPPING_LIST.json', change: 'any'}, Einkaufsliste);
                          on({id: 'alexa2.0.Lists.TO_DO.json', change: 'any'}, TODO);
                          

                          JSON-Liste (Einkauf, ToDo) für z.B. VIS wird bei jeder Änderung (Sprache, APP) aktualisiert.

                          Ro75.

                          Dicken 1 Reply Last reply Reply Quote 0
                          • Dicken
                            Dicken @Ro75 last edited by Dicken

                            @ro75 ich möchte das auch meine Todoist Liste mit aktualisiert wird.

                            Hintergrund: ich habe ein Todoist Widget als Seitenpanel auf meinem Android Handy.

                            PS: nich wundern über den scheiß der da drauf steht, meine Frau nutzt die Liste auch mit 😄

                            Screenshot_20240704_164950_Firefox.jpg

                            Ro75 1 Reply Last reply Reply Quote 0
                            • Ro75
                              Ro75 @Dicken last edited by

                              @dicken ja ist auch mit drin. Ist dann ebenfalls ein JSON.

                              Ro75.

                              Dicken 1 Reply Last reply Reply Quote 0
                              • Dicken
                                Dicken @Ro75 last edited by

                                @ro75 Ich glaub wir reden aneinander vorbei 😄 Todoist ist eine App.

                                Ro75 1 Reply Last reply Reply Quote 0
                                • Ro75
                                  Ro75 @Dicken last edited by

                                  @dicken naja, so wie ich es verstanden habe, geht das nur mit so vielen Umwegen, dass es nicht wirklich Sinn macht. Was stört dich denn am direkten Weg? Oder was ist denn der Vorteil mit ToDoIst? Ich hatte für mich bei dem keinen Vorteil (als ich ToDoIst mal nutzte) gefunden.

                                  Ro75.

                                  Dicken 1 Reply Last reply Reply Quote 0
                                  • Dicken
                                    Dicken @Ro75 last edited by

                                    @ro75 @ro75 na das Widget in Seitenpanel auf dem Handy ist mein Vorteil den ich gerne nutzen möchte 🙂

                                    Ro75 1 Reply Last reply Reply Quote 0
                                    • Ro75
                                      Ro75 @Dicken last edited by

                                      @dicken also so was z.B.

                                      05f79b79-eeff-4b49-b786-5a66c184a56f-image.png

                                      Ro75.

                                      Dicken 2 Replies Last reply Reply Quote 0
                                      • Dicken
                                        Dicken @Ro75 last edited by

                                        @ro75 Au man, da hätt ich ja auch mal selber drauf kommen können nachzusehen. Wusste nicht das Alexa mittlerweile auch Widgets anbietet 😅. Danke für die Info 🙂

                                        1 Reply Last reply Reply Quote 0
                                        • mcBirne
                                          mcBirne last edited by

                                          Hallo zusammen,

                                          Hat schon jemand ein Skript zur Synchronisation der Alexa-Einkaufsliste und Bring geschrieben?

                                          I 1 Reply Last reply Reply Quote 1
                                          • Dicken
                                            Dicken @Ro75 last edited by

                                            @ro75 @ro75 Jetzt weiß ich auch wieder warum ich die Alexa App nicht verwendet hab.... Es gibt keine Möglichkeit die Liste von Hand zu sortieren. Das ist Extrem bescheiden.... Da wir vor dem Einkaufen es immer in die Reihenfolge geschoben haben, wie es auch im Laden zu finden ist.

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

                                            Support us

                                            ioBroker
                                            Community Adapters
                                            Donate

                                            698
                                            Online

                                            31.7k
                                            Users

                                            79.7k
                                            Topics

                                            1.3m
                                            Posts

                                            25
                                            144
                                            14641
                                            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