Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. Skripten / Logik
    4. Skriptsammlung für den neuen ALEXA2.0 Adapter

    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

    Skriptsammlung für den neuen ALEXA2.0 Adapter

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

      Das hatte ich auch, geholfen hat, den iobroker Skill in der Alexa App zu deaktivieren, und dann wieder zu aktivieren.

      Danach geht's…

      1 Reply Last reply Reply Quote 0
      • S
        Sprite01 last edited by

        Problem gelöst.

        Bei mir war in der App die Routine für die Abfrage Alexa antwortet Lichtabfrage nicht mehr gesetzt,

        nur noch Moment, ich schaue nach stand noch drin.

        Warum auch immer der 2. Teil verschwunden ist… :shock:

        1 Reply Last reply Reply Quote 0
        • dslraser
          dslraser Forum Testing Most Active last edited by

          das passiert eigentlich nur wenn man in der App Geräte verwirft und neu sucht.

          1 Reply Last reply Reply Quote 0
          • S
            Sprite01 last edited by

            @dslraser:

            das passiert eigentlich nur wenn man in der App Geräte verwirft und neu sucht. `

            OK, Danke. Dann weiß ich jetzt warum. 🙂

            1 Reply Last reply Reply Quote 0
            • E
              einbeins last edited by

              @dslraser:

              Alexa, sind noch irgendwo Fenster auf…

              Ich habe meine Ansage/Abfrage über das Gewerk Fenster verändert und lasse mir nun Raumnamen mit geöffneten Fenstern ansagen.

              Das Gewerk für dieses Script heißt Fenster

              Wenn bei Euch das Gewerk für Fensterkontakte anders heißt muss das im Script angepasst werden.

              (mit der Ansage einzelner Fenster wurde bei mir das 250 Zeichen Limit von Alexa speak gesprengt.)

              Bei mehreren Echos/Alexas wird die Anfrage an dem Gerät beantwortet wo sie gestellt wurde. Ich habe hier mehrere Echos in mehreren Räumen im Blockly, zu sehen an den gelben Kommentaren.

              Script 1 zum Gewerk Fenster:

              Script 2 unter global (doppelte Raumnamen entfernen)

              Script 3 Fensterabfrage Blockly Export `

              Hi,

              ich würde mir das Script gerne "nachbauen" und auf meine Bedürfnisse anpassen. Leider bin ich noch blutiger Anfänger und hab daher ein paar Fragen:

              1. was meinst du mit "Gewerk Fenster" oder "Gewerk Licht"? Ist das eine interne Gruppierung oder so?

              2. Wo muss ich die ersten beiden Scripte einfügen damit es funktioniert? Blockly kriege ich hin, wo die ersten beiden hinkommen ist mir nicht klar.

              Vielen Dank erstmal für die Hilfe!

              1 Reply Last reply Reply Quote 0
              • dslraser
                dslraser Forum Testing Most Active last edited by

                Mit Gewerken (der Begriff kommt von Homematic CCU) meine ich Funktionen. Also unter Aufzählungen / Funktionen.

                Das Fensterscript an sich kannst Du einfach ein neues leeres Script erstellen und den Inhalt dort einfügen.

                Das 2.Script kommt in den vorhandenen Ordner global.![](</s><URL url=)<link_text text="https://uploads.tapatalk-cdn.com/201809 ... 8e9ce9.jpg">https://uploads.tapatalk-cdn.com/20180904/5ecb55f201f45b7b22b12573fa8e9ce9.jpg</link_text>" />![](</s><URL url=)<link_text text="https://uploads.tapatalk-cdn.com/201809 ... 7f5ef1.jpg">https://uploads.tapatalk-cdn.com/20180904/373eed531332b65f67a804facc7f5ef1.jpg</link_text>" />~~~~

                1 Reply Last reply Reply Quote 0
                • M
                  Mr.X last edited by

                  Hallo zusammen,

                  ich möchte meinen Briefkasten dazu bringen mir eine Nachricht an Alexa zu schicken mittels HM Fensterkontakt.

                  Ich möchte aber nicht, dass die Nachricht sofort ausgegeben wird, das habe ich schon hinbekommen, sondern dass

                  der Echo leuchtet und mir signalisiert, dass eine Nachricht zum abrufen bereit ist.

                  Ähnlich, wie es der Abfallkalender Skill macht.

                  Mit "Alexa, welche Benachrichtigung habe ich" wird dann erst die Ausgabe gemacht.

                  Geht das mit dem Alexa 2 Adapter?

                  1 Reply Last reply Reply Quote 0
                  • haselchen
                    haselchen Most Active last edited by

                    Hi dslraser

                    Ich krieg das Fensterscript auch nicht zum Laufen.

                    Mein Gewerk heisst Verschluss. An welchen Stellen im Script muss ich das eintragen?

                    Da ich nur 1 Echo habe habe ich das Blockly schrumpfen müssen.

                    Objekte werden angelegt, komischerweise steht bei Ansage : Alle Fenster sind geschlossen. Aber unten zählt der die Offenen auf.
                    3723_unbenannt8.png

                    Und so sieht mein Blockly aus.
                    3723_unbenannt9.png

                    bei speak und device name habe ich die entsprechenden Datenpunkte ausgewählt.

                    Du hast noch ein Script das sich Alexa antwortet Fensterabfrage nennt…..

                    Fehlt das bei deinen Auflistungen hier?

                    1 Reply Last reply Reply Quote 0
                    • dslraser
                      dslraser Forum Testing Most Active last edited by

                      @haselchen:

                      Hi dslraser

                      Ich krieg das Fensterscript auch nicht zum Laufen.

                      Mein Gewerk heisst Verschluss. An welchen Stellen im Script muss ich das eintragen?

                      Da ich nur 1 Echo habe habe ich das Blockly schrumpfen müssen.

                      Objekte werden angelegt, komischerweise steht bei Ansage : Alle Fenster sind geschlossen. Aber unten zählt der die Offenen auf.

                      Unbenannt8.PNG

                      Und so sieht mein Blockly aus.

                      Unbenannt9.PNG

                      bei speak und device name habe ich die entsprechenden Datenpunkte ausgewählt.

                      Du hast noch ein Script das sich Alexa antwortet Fensterabfrage nennt…..

                      Fehlt das bei deinen Auflistungen hier? `

                      Ich habe den Fehler bei mir auch erst gestern bemerkt, ich habe das Script nochmal etwas abgeändert.

                      //  Status Fenster. Das Script zählt alle Fenster im Gewerk Fenster (Aufzählungen-Funktion)
                      //  Telegramnachricht bei Abwesenheit wenn sich der Fensterstatus ändert. Bei Anwesenheit in der Homezone keine Nachricht senden.
                      //  Anwesenheit Datenpunkte separat erstellt und durch die Adapter google-sharedlocation und Places geschaltet
                      
                          var logging = true;
                      
                          var
                          idAnzahlAuf = 'javascript.0.Status.Fenster.Anzahl_auf',
                          idAnzahl = 'javascript.0.Status.Fenster.Anzahl',
                          idText = 'javascript.0.Status.Fenster.Text',
                          idRaum = 'javascript.0.Status.Fenster.Raum',
                          idAnsage = 'javascript.0.Status.Fenster.Ansage';
                      
                      //  Ab hier nix mehr ändern
                          createState(idAnzahl, { // wenn benötigt: Anzahl der vorhandenen Fenster
                          type: 'number',
                          name: 'Anzahl aller Fenster',
                          min: 0,
                          def: 0,
                          role: 'value'
                      });
                          createState(idAnzahlAuf, { // Anzahl der Fenster, die auf sind als Variable unter Javascript.0 anlegen
                          type: 'number',
                          name: 'Anzahl der geoeffneten Fenster',
                          min: 0,
                          def: 0,
                          role: 'value'
                      });
                          createState(idText, { // Anzahl der geoeffneten Fenster und deren Namen als Variable unter Javascript.0 anlegen
                          type: 'string',
                          name: 'geoeffnete Fenster',
                          desc: 'Namen der geoeffneten Fenster',
                          def: ' ',
                          role: 'value'
                      });
                          createState(idAnsage, {
                          type: 'string',
                          name: 'geoeffnete Fenster (Ansage)',
                          desc: 'Namen der geoeffneten Fenster (für Ansage aufbereitet)',
                          def: ' ',
                          role: 'value'
                      });
                          createState(idRaum, { // Räume, in denen Fenster geoeffnet sind
                          type: 'string',
                          name: 'Räume mit geoeffneten Fenster',
                          desc: 'Namen der Räume, in denen Fenster geoeffnet sind',
                          def: ' ',
                          role: 'value'
                      });
                      
                          var cacheSelectorState = $('channel[state.id=*.STATE](functions="Fenster")'); // Gewerk Fenster
                      
                          function checkDevices(obj) {
                          // Setzt die Zähler vor dem Durchlauf aller Elemente *.STATE im Gewerk Fenster auf 0
                          var anzahlFensterAuf = 0;
                          var anzahlFenster = 0;
                          var textFensterAuf = [];
                          var textRaum = [];
                          if (logging) {
                          log('++++++ Fenster Anzahl ++++ ');
                          log('#### SCHALTER ##### ');
                      }
                          cacheSelectorState.each(function(id, i) { // Schleife für jedes gefundenen Element *.STATE im Gewerk Fenster
                          var obj = getObject(id);
                          var name = getObject(id).common.name;
                          var status = getState(id).val; // Zustand *.STATE abfragen (jedes Element)
                          var devicename = name.substring(0, name.indexOf(".STATE")); //.state aus Text entfernen
                          var raumname = getObject(id, "rooms");
                      
                          if (logging) {
                          log('-------');
                          log('Kanal: ' + name);
                          log('Status: ' + status);
                      }
                          if (status) { // wenn Zustand = true, dann wird die Anzahl der Fenster hochgezählt
                          ++anzahlFensterAuf;
                          textFensterAuf.push(devicename); // Zu Array hinzufügen
                          textRaum.push(raumname.enumNames); //
                      }
                          ++anzahlFenster; // Zählt die Anzahl der vorhandenen Fenster unabhängig vom Status
                      });
                      
                          textRaum = deleteDuplicates(textRaum); 
                      
                          // Array mit Fensternamen sortieren
                          textFensterAuf.sort();
                          textRaum.sort();
                          // Schleife ist durchlaufen. Im Log wird der aktuelle Status (Anzahl, davon auf) ausgegeben
                          if (logging) log("Text: " + textFensterAuf);
                          if (logging) log("Anzahl Fenster: " + anzahlFenster + " # davon Fenster auf: " + anzahlFensterAuf);
                          // die ermittelten Werte werden als javascript.0\. Variable in ioBroker gespeichert (z.B. für die Verarbeitung in VIS)
                          setState(idText, textFensterAuf.join(',\nund\n')); // Schreibt die aktuelle Namen der geoeffneten Fenster
                          setState(idAnzahlAuf, textFensterAuf.length); // Schreibt die aktuelle Anzahl der geoeffneten Fenster
                          setState(idAnzahl, anzahlFenster); // Schreibt die aktuelle Anzahl der vorhandene Elemente im Gewerk Fenster
                          // setState(idRaum, textRaum.join(',
                      ')); // Räume, in denen Fenster geoeffnet sind
                          setState(idRaum, textRaum.join(',\nund\n')); // Räume, in denen Fenster geoeffnet sind
                      }
                      
                      //  Trigger
                          cacheSelectorState.on(function(obj) { // bei Zustandänderung *.STATE im Gewerk Fenster
                          if (logging) log('Auslösender Schalter: ' + obj.id + ': ' + obj.state.val); // Info im Log, welcher Zustand sich geändert hat
                          checkDevices();
                      });
                      
                          function main() {
                          setTimeout(function() {
                          if (logging) log('Auslöser Skriptstart');
                          checkDevices();
                          }, 2000);
                      }
                      
                          main(); // Skriptstart-Auslöser
                      
                      //  Aufbereitung für Ansage
                          function strip_tags(data) {
                          var rueckgabe = data.replace(/( |<([^>]+)>)/ig, " ");
                          return (rueckgabe);
                      }
                      
                      on(idText, function(obj) {
                          var text = obj.state.val;
                          text = (text.length > 1) ? ' ' + strip_tags(text) : 'Alle Fenster geschlossen';
                          setState(idAnsage, text);
                      });
                      
                      //  Bei Anwesenheit zu Hause keine Telegramnachricht---Bei Abwesenheit sendet Telegram eine Nachricht
                      //    on({id: 'javascript.0.Status.Fenster.Ansage', change: "ne"}, function (obj) {
                      //    var value = obj.state.val;
                      //    var oldValue = obj.oldState.val;
                      //    if (getState("javascript.0.Anwesenheit.Heiko.Home.Heiko_Home").val === false) {
                      //    sendTo("telegram", "send", {
                      //    text: getState("javascript.0.Status.Fenster.Ansage").val,
                      //    disable_notification:   true // ohne Ton am Handy
                      //});
                      //}
                      //});
                      

                      So passt es bei mir.
                      3822_fenster.jpg

                      Anpassen für Verschluss ist diese Zeile (bei mir steht da Fenster, Zeile 51)

                      var cacheSelectorState = $('channel[state.id=*.STATE](functions="Verschluss")'); // Gewerk Verschluss
                      

                      und eventuell mußt Du schauen ob bei Dir .STATE groß oder klein geschrieben werden muss, oder da sogar was anderes hin muss. (steht in den Objekten–-in der RAW Ansicht)

                      Zum entfernen doppelter Raumnamen habe ich dieses Script unter global

                      // Funktion: Doppelte Einträge aus Array entfernen (für Räume) www.okco.de (c) codemaster
                      function deleteDuplicates(arr) { 
                          var temp = {}; 
                          for (var i = 0; i < arr.length; i++) temp[arr[i]] = true; 
                          var r = []; 
                          for (var k in temp) r.push(k); 
                          return r;
                      }
                      

                      Alexa antwortet ist das Blockly.

                      Wenn die Änderungen nicht laufen, dann starte mal den JS Adapter neu…

                      Sage mal Bescheid ob das so bei Dir funktioniert. In Deinem Screenshot werden doch in den Datenpunkten schon Fenster angezeigt ? (oder hast Du zwei Gewerke, Fenster und Verschluss ?)

                      1 Reply Last reply Reply Quote 0
                      • haselchen
                        haselchen Most Active last edited by

                        Danke für deine Antwort.

                        Die Ansage hat sich jetzt aktualisiert.
                        3723_unbenannt7.png

                        Aber nach Moment ich schaue mal nach kommt nix mehr.

                        Ist denn das Blockly richtig was ich abgebildet habe?

                        1 Reply Last reply Reply Quote 0
                        • dslraser
                          dslraser Forum Testing Most Active last edited by

                          Dein Blockly sieht richtig aus, wie sieht Deine Routine in der App aus ?

                          Welche Alexa2 Version hast Du installiert ?

                          da liegt bei mir das Blockly (Alexa antwortet)
                          3822_js.jpg
                          3822_blockly.jpg

                          und das dann in den Cloudadapter
                          3822_cloud.jpg

                          Dann neue Geräte bei Alexa suchen und das Gerät (Script) zur Routine hinzufügen.

                          ![](</s><URL url=)<link_text text="https://uploads.tapatalk-cdn.com/201809 ... 5080c2.jpg">https://uploads.tapatalk-cdn.com/20180907/d0595679b09d8d69bab509a0415080c2.jpg</link_text>" />

                          1 Reply Last reply Reply Quote 0
                          • haselchen
                            haselchen Most Active last edited by

                            Hab es durch Zufall jetzt gepackt.

                            Und zwar habe ich beim Blocky den Punkt Räume mit geöffneten Fenstern genommen aus den Objekten.

                            Voreingestellt war geöffnete Fenster (Ansage).

                            3723_unbenannt3.png

                            Mag sein, dass das doppelt gemoppelt oder mega umständlich ist, aber so sagt sie mir alle offenen Fenster an.

                            1 Reply Last reply Reply Quote 0
                            • dslraser
                              dslraser Forum Testing Most Active last edited by

                              @haselchen:

                              Hab es durch Zufall jetzt gepackt.

                              Und zwar habe ich beim Blocky den Punkt Räume mit geöffneten Fenstern genommen aus den Objekten.

                              Voreingestellt war geöffnete Fenster (Ansage).

                              filename="Unbenannt3.PNG" index="0">~~

                              Mag sein, dass das doppelt gemoppelt oder mega umständlich ist, aber so sagt sie mir alle offenen Fenster an. ` In dem Script formatiere ich gleich den Text für mich, weil ich es auch für Telegram nutze. Da ist dann das und mit Zeilenumbruch \n für Telegram drinn.

                              Deshalb habe ich nach Deiner Alexa2 Adapter Version gefragt…(aber keine Antwort bekommen) Vielleicht liegt es an Deiner Version ?

                              In der aktuellen Version hat Apollon77 da noch was gefixt, das Speak auch damit klar kommt.

                              Ich lasse mir auch nur Raumnamen ansagen, weil, wenn zu viele Fenster auf sind wurde bei mir das 250 Zeichen Limit gesprengt, aber auch da gäbe es jetzt eine Möglichkeit im aktuellen Alexa2 Adapter.

                              Telegram sieht dann so aus wie im Anhang und die Ansage von Alexa hat mir so besser gefallen...

                              ![](</s><URL url=)<link_text text="https://uploads.tapatalk-cdn.com/201809 ... bb62a8.jpg">https://uploads.tapatalk-cdn.com/20180907/630d3a17cb348963f148ae966fbb62a8.jpg</link_text>" />

                              1 Reply Last reply Reply Quote 0
                              • haselchen
                                haselchen Most Active last edited by

                                Hab auf die Version 1.0.0 upgedatet vorhin.

                                Mag sein , dass es deswegen jetzt funktioniert 😄

                                Was sind denn so Gründe , warum Alexa einfach so mal die offenen Fenster ansagt, ohne gefragt zu werden?

                                1 Reply Last reply Reply Quote 0
                                • dslraser
                                  dslraser Forum Testing Most Active last edited by

                                  @haselchen:

                                  Hab auf die Version 1.0.0 upgedatet vorhin.

                                  Mag sein , dass es deswegen jetzt funktioniert 😄

                                  Was sind denn so Gründe , warum Alexa einfach so mal die offenen Fenster ansagt, ohne gefragt zu werden? `

                                  Hat sie bei mir noch nie gemacht…..........

                                  PS: vielleicht beim Neustart vom JS Adapter oder wenn Du das Script aktualiesierst...

                                  1 Reply Last reply Reply Quote 0
                                  • haselchen
                                    haselchen Most Active last edited by

                                    Tatsächlich hat Iobroker manchmal Probleme mit der Alexa Einkaufsliste.

                                    Dann kommt sowas:

                                    javascript.0	2018-09-07 20:00:01.542	error	uncaught exception: Unexpected token I in JSON at position 0
                                    

                                    Das war dann auch der Grund für den Adapter Neustart.

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

                                      @haselchen:

                                      Hab auf die Version 1.0.0 upgedatet vorhin.

                                      Mag sein , dass es deswegen jetzt funktioniert 😄

                                      Was sind denn so Gründe , warum Alexa einfach so mal die offenen Fenster ansagt, ohne gefragt zu werden? `

                                      Hallo,

                                      ich habe das auch. Die einzige Variante (die ich gefunden habe) das zu umgehen ist eine Variable dazwischen zu schalten.

                                      D.h. Alexa setzt die Variable Trigger… auf an und das Skript lauscht auf Änderungen an der Variablen.

                                      Ansonsten erzählt die andauern etwas und wenn du wirklich etwas damit steuerst wird es doof.

                                      Ich meine jedes Skript starte beim Neustart des Adapters und beim Speichern neu.

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

                                        @haselchen:

                                        Tatsächlich hat Iobroker manchmal Probleme mit der Alexa Einkaufsliste.

                                        Dann kommt sowas:

                                        javascript.0	2018-09-07 20:00:01.542	error	uncaught exception: Unexpected token I in JSON at position 0
                                        

                                        Das war dann auch der Grund für den Adapter Neustart. `
                                        Vollständige Fehlermeldung bitte … auf Basis der 1.0.0!

                                        Gesendet vom Handy ...

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

                                          Hallo,

                                          anbei ein Skript der die letzten Anrufe vorliest inkl. Uhrzeit. Es werden nur Anrufe vom aktuellen Datum berücksichtigt.

                                           <xml xmlns="http://www.w3.org/1999/xhtml"><block type="on_ext" id=";azz=uCTGBXNyd/0SAEt" x="-688" y="-87"><mutation items="1"></mutation>
                                              <field name="CONDITION">any</field>
                                          
                                              <value name="OID0"><shadow type="field_oid" id="sW!}aU3Gi9+ka~_!Wa99"><field name="oid">javascript.0.vAlexaSagAnrufListe</field></shadow></value> 
                                              <statement name="STATEMENT"><block type="variables_set" id="H^Wy%qAv/BmW;sE/nZ;k"><field name="VAR">alexatext</field>
                                                  <value name="VALUE"></value> 
                                                  <next><block type="variables_set" id="Gx/mw:m_izOpYx{@Lk)p"><field name="VAR">anz</field>
                                                      <value name="VALUE"><block type="math_number" id="}+UH7L;^VthYU]z=g0*F"><field name="NUM">0</field></block></value> 
                                                      <next><block type="controls_forEach" id="xR/0#,CUOGLHQK=!Q-w4"><field name="VAR">i</field>
                                                          <value name="LIST"><block type="convert_json2object" id="@C6w/;8o)*%oxJ@UT,8_"><value name="VALUE"><block type="get_value" id="/qU/gkpQm,.]-YY_L1(X"><field name="ATTR">val</field>
                                                                  <field name="OID">tr-064.0.calllists.all.json</field></block></value></block></value> 
                                                          <statement name="DO"><block type="variables_set" id="Otd~Mlm|z]3g8Q0p^`=s"><field name="VAR">pos</field>
                                                              <value name="VALUE"><block type="math_number" id="*FRuMmk(T8;v+VQc3DM~"><field name="NUM">0</field></block></value> 
                                                              <next><block type="variables_set" id="%]9yo5qM?m^}^74-D/oY"><field name="VAR">anrufer</field>
                                                                  <value name="VALUE"><block type="text" id=")-o_KuQG)qLQ_:,)m_OG"><field name="TEXT">unbekannt</field></block></value> 
                                                                  <next><block type="variables_set" id="fAU|Ej;;bY3%?[4T%.yR"><field name="VAR">anrufdatum</field>
                                                                      <value name="VALUE"></value> 
                                                                      <next><block type="controls_forEach" id="orz4mSV=gNl%mayt{k=}"><field name="VAR">j</field>
                                                                          <value name="LIST"><block type="variables_get" id="-@5CcHPA:B{WFGD?9}QI"><field name="VAR">i</field></block></value> 
                                                                          <statement name="DO"><block type="controls_if" id="[=SFT;CG~Z!}Qv_6!%~e"><value name="IF0"><block type="logic_operation" id="nE-NMM;w9-939EBoh[^/"><field name="OP">AND</field>
                                                                                  <value name="A"><block type="logic_compare" id="EXHXJkT)K*3D%y[V8/Ax"><field name="OP">EQ</field>
                                                                                      <value name="A"><block type="variables_get" id="3J;!g!2(]ul{N2+L{CU;"><field name="VAR">pos</field></block></value> 
                                                                                      <value name="B"><block type="math_number" id=",^J=^x]oT1BuIuccep(u"><field name="NUM">1</field></block></value></block></value> 
                                                                                  <value name="B"><block type="logic_compare" id="5ffi|wi3RT^.P{H`@L@/"><field name="OP">NEQ</field>
                                                                                      <value name="A"><block type="variables_get" id=":%j4u:bAtqB{.d=-/d.r"><field name="VAR">j</field></block></value> 
                                                                                      <value name="B"></value></block></value></block></value> 
                                                                              <statement name="DO0"><block type="variables_set" id="j1HH[{w}==ujX:swZf=K"><field name="VAR">typ</field>
                                                                                  <value name="VALUE"><block type="variables_get" id="iZm34~7lg:`~-|Qj+XL7"><field name="VAR">j</field></block></value></block></statement> 
                                                                              <next><block type="controls_if" id="yU_?RKy~M]Byp+z20m;1"><value name="IF0"><block type="logic_operation" id="w1CkK4,G=~U2PSI5};L0"><field name="OP">AND</field>
                                                                                      <value name="A"><block type="logic_compare" id="}Ic~-io[2ya;!`#Dt-XB"><field name="OP">EQ</field>
                                                                                          <value name="A"><block type="variables_get" id="mT}DaeA?j-]w@jqhR;yp"><field name="VAR">pos</field></block></value> 
                                                                                          <value name="B"><block type="math_number" id="g9=0@+{xcO#s-zQp0nHe"><field name="NUM">2</field></block></value></block></value> 
                                                                                      <value name="B"><block type="logic_compare" id="Ok)G~.gN_S@?4Z{-VP+P"><field name="OP">NEQ</field>
                                                                                          <value name="A"><block type="variables_get" id="pgmkX`^RjBM;Vss.ka;9"><field name="VAR">j</field></block></value> 
                                                                                          <value name="B"></value></block></value></block></value> 
                                                                                  <statement name="DO0"><block type="variables_set" id="D-(}L)F;.KF!P4.6XKcK"><field name="VAR">anrufer</field>
                                                                                      <value name="VALUE"><block type="variables_get" id=",[sZ/c2H:,)#VSe9-OgI"><field name="VAR">j</field></block></value></block></statement> 
                                                                                  <next><block type="controls_if" id="SS`Ca]=@Q!%UKD%=SQHm"><value name="IF0"><block type="logic_operation" id="S9LFfiQG/g/-J(~uA!/e"><field name="OP">AND</field>
                                                                                          <value name="A"><block type="logic_compare" id="DCfM=V|@1#9pRWH779nh"><field name="OP">EQ</field>
                                                                                              <value name="A"><block type="variables_get" id="E/c3a1-%;H{hy9If!HL%"><field name="VAR">pos</field></block></value> 
                                                                                              <value name="B"><block type="math_number" id="H@+MR5PLO_STRYHR/(B+"><field name="NUM">5</field></block></value></block></value> 
                                                                                          <value name="B"><block type="logic_compare" id="w*s!SSWTdc-svcQ)MsGy"><field name="OP">NEQ</field>
                                                                                              <value name="A"><block type="variables_get" id="DJ~z`c`lBy4A5(}3)i_*"><field name="VAR">j</field></block></value> 
                                                                                              <value name="B"></value></block></value></block></value> 
                                                                                      <statement name="DO0"><block type="variables_set" id="FqA%[#fq/LyMm+;I*RRP"><field name="VAR">anrufer</field>
                                                                                          <value name="VALUE"><block type="variables_get" id="jKU-Ur+A(gzJH=Xx:JXe"><field name="VAR">j</field></block></value></block></statement> 
                                                                                      <next><block type="controls_if" id="_w?7*llOp[6)e)o5jO,w"><value name="IF0"><block type="logic_compare" id=":hBS5;Nx4%_14RC:eGx3"><field name="OP">EQ</field>
                                                                                              <value name="A"><block type="variables_get" id="0Gy{gheR5u}iF!6)cMxz"><field name="VAR">pos</field></block></value> 
                                                                                              <value name="B"><block type="math_number" id="eVEtOt#W=Qs?L?j?p(i#"><field name="NUM">9</field></block></value></block></value> 
                                                                                          <statement name="DO0"><block type="variables_set" id="+V98jJzLkcjdwxve][aa"><field name="VAR">anrufdatum</field>
                                                                                              <value name="VALUE"><block type="variables_get" id="u6S]DGC|xjW,5;;IAR%."><field name="VAR">j</field></block></value> 
                                                                                              <next><block type="controls_flow_statements" id="eJd]I^WE;L3x`;N1=svx"><field name="FLOW">BREAK</field></block></next></block></statement> 
                                                                                          <next><block type="math_change" id="SOSx!Tp,ww0F=Ipoxq84"><field name="VAR">pos</field>
                                                                                              <value name="DELTA"><shadow type="math_number" id=",`a^zzH0LZcBY@M8;uJC"><field name="NUM">1</field></shadow></value></block></next></block></next></block></next></block></next></block></statement> 
                                                                          <next><block type="comment" id="mI7wi{z/b;#{OB.TkXq+"><field name="COMMENT">Typ 1 = angenommen, Typ 2 = missed (Typ 1 auch AB!)</field>
                                                                              <next><block type="controls_if" id="HnqX;*3~~sS;v[o8*Zb5"><value name="IF0"><block type="logic_compare" id=")uo92MC7.#C9_=1@Pd+2"><field name="OP">LTE</field>
                                                                                      <value name="A"><block type="variables_get" id="_Cv6!Q9ZD8`VVr0g#]0L"><field name="VAR">typ</field></block></value> 
                                                                                      <value name="B"><block type="math_number" id="}aCLu#a2rc=|kgv|+{sI"><field name="NUM">2</field></block></value></block></value> 
                                                                                  <statement name="DO0"><block type="controls_if" id="k|!G/Xj?oA`b(/Kc-|1R"><value name="IF0"><block type="logic_compare" id="uHRur!#y`^X?vc3mNKW*"><field name="OP">EQ</field>
                                                                                          <value name="A"><block type="convert_tostring" id="psi^4GjR6xXmU9rLPUAy"><value name="VALUE"><block type="time_get" id="NYBw`pidAU~K#eutu?zY"><mutation format="false" language="false"></mutation>
                                                                                                  <field name="OPTION">DD.MM.YY</field></block></value></block></value> 
                                                                                          <value name="B"><block type="text_getSubstring" id="!|(mm1/Xp?y3`k2=W+@."><mutation at1="true" at2="true"></mutation>
                                                                                              <field name="WHERE1">FROM_START</field>
                                                                                              <field name="WHERE2">FROM_START</field>
                                                                                              <value name="STRING"><block type="variables_get" id=";-^a@}aIM5mKBWNjtX:m"><field name="VAR">anrufdatum</field></block></value> 
                                                                                              <value name="AT1"><block type="math_number" id="=I;t4NntB/E_jilatK*{"><field name="NUM">1</field></block></value> 
                                                                                              <value name="AT2"><block type="math_number" id="z#ll|XhXTWf*X2st=hK+"><field name="NUM">8</field></block></value></block></value></block></value> 
                                                                                      <statement name="DO0"><block type="variables_set" id="4MqQA#su!5x*fg`QEaR2"><field name="VAR">tmp</field>
                                                                                          <value name="VALUE"><block type="text_join" id="_{fO%DcZHDv(YjqN|+.U"><mutation items="6"></mutation>
                                                                                              <value name="ADD0"><block type="variables_get" id="~|0|%^ZzX~%[oOm5;!%J"><field name="VAR">anrufer</field></block></value> 
                                                                                              <value name="ADD1"><block type="text" id="?YhfYv}KVbo|5CRZywXf"><field name="TEXT">hat um</field></block></value> 
                                                                                              <value name="ADD2"><block type="text_getSubstring" id="{L:3[y{3D}ibA]mMtGc="><mutation at1="true" at2="true"></mutation>
                                                                                                  <field name="WHERE1">FROM_START</field>
                                                                                                  <field name="WHERE2">FROM_START</field>
                                                                                                  <value name="STRING"><block type="variables_get" id="5|yY+vuWW}:_0i%xYqQ#"><field name="VAR">anrufdatum</field></block></value> 
                                                                                                  <value name="AT1"><block type="math_number" id="]v/aOee-W1K_lHC[wD:o"><field name="NUM">10</field></block></value> 
                                                                                                  <value name="AT2"><block type="math_number" id="Cv?R*(FV#bD6s,bQXAR;"><field name="NUM">11</field></block></value></block></value> 
                                                                                              <value name="ADD3"><block type="text" id="u5fZHU#/xM|I/zXzT.W_"><field name="TEXT">Uhr und</field></block></value> 
                                                                                              <value name="ADD4"><block type="text_getSubstring" id="csz?P)@/[_=osgekZdNE"><mutation at1="true" at2="true"></mutation>
                                                                                                  <field name="WHERE1">FROM_START</field>
                                                                                                  <field name="WHERE2">FROM_START</field>
                                                                                                  <value name="STRING"><block type="variables_get" id="8Qr2nQ]7V1.D/B5rKFFj"><field name="VAR">anrufdatum</field></block></value> 
                                                                                                  <value name="AT1"><block type="math_number" id="`kMkBT[35quqk~N3H}A}"><field name="NUM">13</field></block></value> 
                                                                                                  <value name="AT2"><block type="math_number" id="3gRaKyCY^^O,j9LaaatH"><field name="NUM">14</field></block></value></block></value> 
                                                                                              <value name="ADD5"><block type="text" id="RvwRh)|Wf*z|odx6hXqT"><field name="TEXT"> Minuten angerufen</field></block></value></block></value> 
                                                                                          <next><block type="variables_set" id="Re~~rNq{gaD7SF0MM]-T"><field name="VAR">alexatext</field>
                                                                                              <value name="VALUE"><block type="logic_ternary" id="1!5a5vst3!y`Wl{IFTt-"><value name="IF"><block type="logic_compare" id="myxaS.9u5t`8ZwV;3pK2"><field name="OP">EQ</field>
                                                                                                      <value name="A"><block type="variables_get" id="R8GYMX}F`g!ZBo{D+k]_"><field name="VAR">anz</field></block></value> 
                                                                                                      <value name="B"><block type="math_number" id="tSW1iA{d5EVQHN[Z+-tV"><field name="NUM">0</field></block></value></block></value> 
                                                                                                  <value name="THEN"><block type="variables_get" id=":t%z[.];H-|t/WU%FE^)"><field name="VAR">tmp</field></block></value> 
                                                                                                  <value name="ELSE"><block type="text_join" id="`1mJO@vgR)fU#CsbTy-m"><mutation items="3"></mutation>
                                                                                                      <value name="ADD0"><block type="variables_get" id="!k^RkI_Tp+tQLrJb~clx"><field name="VAR">alexatext</field></block></value> 
                                                                                                      <value name="ADD1"><block type="text" id="9FXixkB1O.uj=W!zWhUc"><field name="TEXT">;</field></block></value> 
                                                                                                      <value name="ADD2"><block type="variables_get" id="O7*;5,?x_]UOIEkj7OV0"><field name="VAR">tmp</field></block></value></block></value></block></value> 
                                                                                              <next><block type="math_change" id="BXCqiU7*0-%cE]@0M]!q"><field name="VAR">anz</field>
                                                                                                  <value name="DELTA"><shadow type="math_number" id="[kq,k~/SLxO,g_:DMu}r"><field name="NUM">1</field></shadow></value> 
                                                                                                  <next><block type="controls_if" id="~Yq8]Xgt4y+k+(7IUKd!"><value name="IF0"><block type="logic_compare" id="42859)|d|Y6bHZG2}o?7"><field name="OP">EQ</field>
                                                                                                          <value name="A"><block type="variables_get" id="a7~!mlyA)h1A6ODLFLDJ"><field name="VAR">anz</field></block></value> 
                                                                                                          <value name="B"><block type="math_number" id="08yPn#v84mn0=0q)[r]R"><field name="NUM">5</field></block></value></block></value> 
                                                                                                      <statement name="DO0"><block type="controls_flow_statements" id="tBE}?*}^gMtd;1q`ApNS"><field name="FLOW">BREAK</field></block></statement></block></next></block></next></block></next></block></statement></block></statement></block></next></block></next></block></next></block></next></block></next></block></statement> 
                                                          <next><block type="control" id="`Qg!CDbvO0.dV/`|!D3d"><mutation delay_input="false"></mutation>
                                                              <field name="OID">alexa2.0.Echo-Devices.G090LF1174832X09.Commands.speak</field>
                                                              <field name="WITH_DELAY">FALSE</field>
                                                              <value name="VALUE"><block type="variables_get" id="mjJFF5P]=q46l?dg`Tj~"><field name="VAR">alexatext</field></block></value> 
                                                              <next><block type="debug" id="Ns0b*WC0f!TpiS%JQ^[d"><field name="Severity">log</field>
                                                                  <value name="TEXT"><shadow type="text" id="2JciUzD(4a1E=jF@1vyY"><field name="TEXT">test</field></shadow> 
                                                                    <block type="variables_get" id="#6H6rD3{_zs~oG}dO4S^"><field name="VAR">alexatext</field></block></value></block></next></block></next></block></next></block></next></block></statement></block></xml> 
                                          

                                          609_bildschirmfoto_2018-09-08_um_00.31.01.png

                                          M 1 Reply Last reply Reply Quote 0
                                          • haselchen
                                            haselchen Most Active last edited by

                                            @sissiwup

                                            Wie sieht Dein Tipp praktisch aus?

                                            Ich weiss nämlich nicht wo ich ansetzen soll.

                                            Ganz unterschiedlich bekomme ich diesen Error , der vermutlich von der Alexa Einkaufsliste stammt. Jedenfalls startet der Adapter dann neu und Alexa fängt jetzt an dann die Fenster aufzuzählen.

                                            Kann leider kein Log schicken, weil der letzte Fehler-Neustart von heute morgen ist und der steht nicht mehr im Log.

                                            Alle 4minuten startet das Einkaufslisten Skript.

                                            Und irgendwann im Laufe des Tages kommt mal ein Fehler bei der Ausführung und dann ist es wieder auf unbestimmte Zeit gut.

                                            So sieht es aus, wenn alles gut ist:
                                            3723_unbenannt2.png

                                            In einem der Einkaufsskripts habe ich 1 gelbes Warndreieck. Eventuell ist das der Fehler? :?:

                                            Was müsste ich da korrigieren in der Zeile?

                                            3723_unbenannt3.png

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

                                            Support us

                                            ioBroker
                                            Community Adapters
                                            Donate

                                            543
                                            Online

                                            31.7k
                                            Users

                                            79.8k
                                            Topics

                                            1.3m
                                            Posts

                                            45
                                            184
                                            40595
                                            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