Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. Skripten / Logik
    4. JavaScript
    5. Alexa Wecker beenden

    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

    Alexa Wecker beenden

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

      @firestone sagte in Alexa Wecker beenden:

      Kann man das irgendwie ändern, sodass nur der gerade klingelnde Wecker ausgeschaltet wird und nur wieder aktiviert wird, wenn er auf "wiederholen" konfiguriert ist?

      woran erkenne ich welcher Wecker gerade klingelt? am triggert Datenpunkt?
      Und Wiederholung am recurringPattern ?

      F 2 Replies Last reply Reply Quote 0
      • F
        firestone @BananaJoe last edited by

        @bananajoe
        Habe es jetzt so gemacht.

        d3d7947b-5d24-47c8-8b9b-71eb6e430084-image.png

        So richtig blicke ich das nicht woran ich erkenne, dass ein Wecker klingelt.
        Hab mal ein paar Screenshots gemacht:

        1. Wecker ist gestellt:
          0bf6e7fd-ada6-4840-a6db-cd0896059060-image.png

        2. Wecker klingelt:
          6812ae1e-bd75-45f4-bf70-478624a66cd6-image.png

        3. Wecker ausgeschaltet/bestätigt mit Toggle:
          51b25488-e692-42a2-a280-5914e328d502-image.png

        4. 15 Sekunden nachdem der Wecker ausgeschaltet/bestätigt wurde:
          92373eea-6480-4f35-b607-c0646926f19a-image.png

        BananaJoe 1 Reply Last reply Reply Quote 0
        • BananaJoe
          BananaJoe Most Active @firestone last edited by BananaJoe

          @firestone tja, ich habe auch gerade mal rumgespielt. .triggert ist bei mir dann angesprungen und auf True gesprungen solange der Alarm ertönte.

          Ich habe angepasst das das True/False Spielchen nur bei dem Alarm gemacht wird der auch gerade ein Triggert auf True hat. Und das enabled wieder auf True gesetzt wird passiert nur wenn in recurringPattern etwas anderes als "0" steht

          Folgendes Skript funktioniert bei mir, deine beiden ZigBee Buttons sind schon drin:

          48b546fc-079b-4a20-9f5d-7dace2c1c05d-image.png

          <xml xmlns="https://developers.google.com/blockly/xml">
            <variables>
              <variable id="-KSsS+Enr$TE4Vsg%mpm">Schaltsperre</variable>
              <variable id="@wv?o#qCZSC)i1|y#eS(">AlexaAlarm</variable>
            </variables>
            <block type="variables_set" id="EA0/SES,9C$OHR)n)M]Z" x="97" y="-123">
              <field name="VAR" id="-KSsS+Enr$TE4Vsg%mpm">Schaltsperre</field>
              <value name="VALUE">
                <block type="logic_boolean" id="!lB;{X]I-OxBOwKw%xOX">
                  <field name="BOOL">FALSE</field>
                </block>
              </value>
              <next>
                <block type="on_ext" id="),q%i*F%aq.axS{N:O#6">
                  <mutation xmlns="http://www.w3.org/1999/xhtml" items="2"></mutation>
                  <field name="CONDITION">true</field>
                  <field name="ACK_CONDITION"></field>
                  <value name="OID0">
                    <shadow type="field_oid" id="eLX@`QsbV0](h7m1]^/)">
                      <field name="oid">ID auswählen</field>
                    </shadow>
                    <block type="text" id="8$CUWKe}[x.OUI58hQK$">
                      <field name="TEXT">zigbee.0.680ae2fffea15963.toggle</field>
                    </block>
                  </value>
                  <value name="OID1">
                    <shadow type="field_oid" id="?7AsWVzXdodgdZND-D+[">
                      <field name="oid">ID auswählen</field>
                    </shadow>
                    <block type="text" id="yElw{W/7o^j^g4F|^0l~">
                      <field name="TEXT">zigbee.0.680ae2fffea4ad58.toggle</field>
                    </block>
                  </value>
                  <statement name="STATEMENT">
                    <block type="controls_if" id="Jb9;M|7M}AH5B#=NMJD[">
                      <value name="IF0">
                        <block type="logic_negate" id="L)t=zs9!wIo$A:fIg}D]">
                          <value name="BOOL">
                            <block type="variables_get" id="e8MJ(!(q|.H+;H[eGYj=">
                              <field name="VAR" id="-KSsS+Enr$TE4Vsg%mpm">Schaltsperre</field>
                            </block>
                          </value>
                        </block>
                      </value>
                      <statement name="DO0">
                        <block type="variables_set" id="[X1IDVIAgh_g-,LwraU$">
                          <field name="VAR" id="-KSsS+Enr$TE4Vsg%mpm">Schaltsperre</field>
                          <value name="VALUE">
                            <block type="logic_boolean" id="cHdXB%B2Ha7BF983`EqF">
                              <field name="BOOL">TRUE</field>
                            </block>
                          </value>
                          <next>
                            <block type="controls_forEach" id="mSJFB?X4b:8/fv^uGD.=">
                              <field name="VAR" id="@wv?o#qCZSC)i1|y#eS(">AlexaAlarm</field>
                              <value name="LIST">
                                <block type="selector" id="jybuA+.Q1]CwA1D|tYWz">
                                  <field name="TEXT">channel[state.id=alexa2.0.Echo-Devices.*.Alarm.*.enabled]</field>
                                </block>
                              </value>
                              <statement name="DO">
                                <block type="controls_if" id="P5$OCuEx:,mh}--WppK5">
                                  <value name="IF0">
                                    <block type="get_value_var" id="d.48DbBgtz-Ag@Q^mg5V">
                                      <field name="ATTR">val</field>
                                      <value name="OID">
                                        <shadow type="field_oid" id="Y#0,3(2{{cI=E3~+J?=y">
                                          <field name="oid">ID auswählen</field>
                                        </shadow>
                                        <block type="variables_get" id="TrNrvP=^X+jfgsfTpx[4">
                                          <field name="VAR" id="@wv?o#qCZSC)i1|y#eS(">AlexaAlarm</field>
                                        </block>
                                      </value>
                                    </block>
                                  </value>
                                  <statement name="DO0">
                                    <block type="controls_if" id="eZ2k9_4Omk(?F`+s^v_e">
                                      <value name="IF0">
                                        <block type="get_value_var" id="L$NF9umhP}8W`_:o{o*;">
                                          <field name="ATTR">val</field>
                                          <value name="OID">
                                            <shadow type="field_oid" id="36M_(!;QIcNdW0.Mx(6`">
                                              <field name="oid">ID auswählen</field>
                                            </shadow>
                                            <block type="text_replace" id="AioU@C^C9/tm`_C;,R18">
                                              <value name="FROM">
                                                <shadow type="text" id="E[B+SQ-SvFMw#;v3n:s%">
                                                  <field name="TEXT">enabled</field>
                                                </shadow>
                                              </value>
                                              <value name="TO">
                                                <shadow type="text" id="W/Uq%XoBVq[:$Sr_YCuF">
                                                  <field name="TEXT">triggered</field>
                                                </shadow>
                                              </value>
                                              <value name="TEXT">
                                                <shadow type="text" id="n^`h;Qc~Wu,H`=u)-3,H">
                                                  <field name="TEXT">text</field>
                                                </shadow>
                                                <block type="variables_get" id="=[0A/}fffC?Sj:2EpX/3">
                                                  <field name="VAR" id="@wv?o#qCZSC)i1|y#eS(">AlexaAlarm</field>
                                                </block>
                                              </value>
                                            </block>
                                          </value>
                                        </block>
                                      </value>
                                      <statement name="DO0">
                                        <block type="debug" id="[Tr:Yb(4|}/nNw@C^-d!">
                                          <field name="Severity">info</field>
                                          <value name="TEXT">
                                            <shadow type="text" id="w6,PMT}I{a(D+9HLIY}i">
                                              <field name="TEXT">test</field>
                                            </shadow>
                                            <block type="variables_get" id="nm=HS1gRfJ23$qc$W2rn">
                                              <field name="VAR" id="@wv?o#qCZSC)i1|y#eS(">AlexaAlarm</field>
                                            </block>
                                          </value>
                                          <next>
                                            <block type="control_ex" id="BC;gyw3VrLSN7+Eilo(n">
                                              <field name="TYPE">false</field>
                                              <field name="CLEAR_RUNNING">FALSE</field>
                                              <value name="OID">
                                                <shadow type="field_oid" id="lRvhf`jKCNK1L!V+iWi7">
                                                  <field name="oid">ID auswählen</field>
                                                </shadow>
                                                <block type="variables_get" id="D15EBYj,vot[1i{Kll1q">
                                                  <field name="VAR" id="@wv?o#qCZSC)i1|y#eS(">AlexaAlarm</field>
                                                </block>
                                              </value>
                                              <value name="VALUE">
                                                <shadow type="logic_boolean" id="I`gYn)1uQ|^BXR-cs?l-">
                                                  <field name="BOOL">FALSE</field>
                                                </shadow>
                                              </value>
                                              <value name="DELAY_MS">
                                                <shadow type="math_number" id="TE-zk%-:ixJ8*rJ2CD)I">
                                                  <field name="NUM">0</field>
                                                </shadow>
                                              </value>
                                              <value name="EXPIRE">
                                                <shadow type="math_number" id="Af^CUq4O%S.F1-_1i%O;">
                                                  <field name="NUM">0</field>
                                                </shadow>
                                              </value>
                                              <next>
                                                <block type="controls_if" id=".2m6G`D91ZE(ngDT9KiU">
                                                  <value name="IF0">
                                                    <block type="logic_compare" id="H1YIny(Yh]96[k1yeyr/" inline="false">
                                                      <field name="OP">NEQ</field>
                                                      <value name="A">
                                                        <block type="get_value_var" id="+?g1PG,9`qC2h8o7-2Io">
                                                          <field name="ATTR">val</field>
                                                          <value name="OID">
                                                            <shadow type="field_oid" id="36M_(!;QIcNdW0.Mx(6`">
                                                              <field name="oid">ID auswählen</field>
                                                            </shadow>
                                                            <block type="text_replace" id="NIljLW?{6-H?RC$QkNx.">
                                                              <value name="FROM">
                                                                <shadow type="text" id="|5=$IBa#;4:#@0=,1Qnv">
                                                                  <field name="TEXT">enabled</field>
                                                                </shadow>
                                                              </value>
                                                              <value name="TO">
                                                                <shadow type="text" id="r7;q=F;RSwsLY#3NRh$C">
                                                                  <field name="TEXT">recurringPattern</field>
                                                                </shadow>
                                                              </value>
                                                              <value name="TEXT">
                                                                <shadow type="text" id="n^`h;Qc~Wu,H`=u)-3,H">
                                                                  <field name="TEXT">text</field>
                                                                </shadow>
                                                                <block type="variables_get" id=";vn`5`glL2a+Qtf=Yk2c">
                                                                  <field name="VAR" id="@wv?o#qCZSC)i1|y#eS(">AlexaAlarm</field>
                                                                </block>
                                                              </value>
                                                            </block>
                                                          </value>
                                                        </block>
                                                      </value>
                                                      <value name="B">
                                                        <block type="text" id=":QErGNkh|4KFiq%9yVe[">
                                                          <field name="TEXT">0</field>
                                                        </block>
                                                      </value>
                                                    </block>
                                                  </value>
                                                  <statement name="DO0">
                                                    <block type="control_ex" id="j+w9rO5qa1SDg8Kd`!ui">
                                                      <field name="TYPE">false</field>
                                                      <field name="CLEAR_RUNNING">FALSE</field>
                                                      <value name="OID">
                                                        <shadow type="field_oid" id="lRvhf`jKCNK1L!V+iWi7">
                                                          <field name="oid">ID auswählen</field>
                                                        </shadow>
                                                        <block type="variables_get" id="y8hxnG]Y*7TqEQD[T_vE">
                                                          <field name="VAR" id="@wv?o#qCZSC)i1|y#eS(">AlexaAlarm</field>
                                                        </block>
                                                      </value>
                                                      <value name="VALUE">
                                                        <shadow type="logic_boolean" id=":kLgXA9.YC8(Jrqw^t!o">
                                                          <field name="BOOL">TRUE</field>
                                                        </shadow>
                                                      </value>
                                                      <value name="DELAY_MS">
                                                        <shadow type="math_number" id="bc-hC}QQ.EZ2=45D}w)=">
                                                          <field name="NUM">15000</field>
                                                        </shadow>
                                                      </value>
                                                      <value name="EXPIRE">
                                                        <shadow type="math_number" id="S~}x.|oNx#`_xj%i`#^6">
                                                          <field name="NUM">0</field>
                                                        </shadow>
                                                      </value>
                                                    </block>
                                                  </statement>
                                                </block>
                                              </next>
                                            </block>
                                          </next>
                                        </block>
                                      </statement>
                                    </block>
                                  </statement>
                                </block>
                              </statement>
                              <next>
                                <block type="timeouts_wait" id="QU|C4Q7K^(E~/!%t1x9Z">
                                  <field name="DELAY">15</field>
                                  <field name="UNIT">sec</field>
                                  <next>
                                    <block type="variables_set" id="b#z7HZRmx_yi97^;VrN{">
                                      <field name="VAR" id="-KSsS+Enr$TE4Vsg%mpm">Schaltsperre</field>
                                      <value name="VALUE">
                                        <block type="logic_boolean" id="_+LCCe`y*RRXP]b^_:0n">
                                          <field name="BOOL">FALSE</field>
                                        </block>
                                      </value>
                                    </block>
                                  </next>
                                </block>
                              </next>
                            </block>
                          </next>
                        </block>
                      </statement>
                    </block>
                  </statement>
                </block>
              </next>
            </block>
          </xml>
          
          1 Reply Last reply Reply Quote 0
          • F
            firestone @BananaJoe last edited by

            @bananajoe
            Habe glaube den Fehler gefunden, aber weiß nicht wie ich ihn beheben kann und woran es liegt.
            Nach dem ich, dank deiner Hilfe, deine Blocklys jetzt etwas verstanden habe, habe ich auch die Blocklys auf meinem Raspi verstanden.

            3e4afce9-bf97-4c1e-b716-1f677b699a38-image.png

            1. das Array wird geleert
            2. das Array wird wie bei dir mit sämtlichen Alarmen befüllt
            3. die DeviceIDs werden in die Variable geschrieben
            4. der hintere Teil des Strings ("enabled") wird abgeschnitten und
            5. durch das Wort "triggered" ersetzt.

            Dann wird geprüft, ob das Event "triggered" auf True geht und ich habe mal beim Raspi geschaut, dort geht es wirklich auf True, wenn der Wecker klingelt und das tut er bei meinem anderen neuen ioBroker nicht.
            Das wird das Problem sein.

            Muss ich also nur noch herausfinden, warum dieses Ereignis "triggered" in einem ioB als auf True geht wenn der Wecker klingelt und warum beim anderen ioB nicht.

            Hast du eine Ahnung was das sein könnte?

            BananaJoe 2 Replies Last reply Reply Quote 0
            • BananaJoe
              BananaJoe Most Active @firestone last edited by

              @firestone verschiedene Amazon Accounts? oder 2 der gleiche? das ginge nicht

              F 1 Reply Last reply Reply Quote 0
              • BananaJoe
                BananaJoe Most Active @firestone last edited by

                @firestone Ich habe meinen Post oben noch einmal überarbeitet, jetzt passt es, hatte vorher noch einen Fehler im Skript

                1 Reply Last reply Reply Quote 0
                • F
                  firestone @BananaJoe last edited by

                  @bananajoe
                  ich habe nur einen Amazon Account und den benutze ich auf beiden ioBs. Hab ja nur das Backup vom Raspi im neuen ioB eingespielt.
                  der Raspi hat auch die gleiche IP wie der neue ioB im Unraid Docker, aber ich schalte nie beide zu gleich an.
                  Musste aber die gleiche IP benutzen, sonst hätte ich bei unendlich vielen Devices die MQTT Server Adresse ändern müssen, das wollte ich nicht.
                  Hat auch alles funktioniert, bis eben auf die Wecker Geschichte.

                  Was kann ich denn da machen? Ich würde auch auf das Wecken auf dem Raspi verzichten, wenn ich es nur auf dem neuen ioB hinbrächte, der wird dann eh abgeschaltet.

                  BananaJoe 1 Reply Last reply Reply Quote 0
                  • BananaJoe
                    BananaJoe Most Active @firestone last edited by

                    @firestone Ich kann dir die Frage nicht beantworten.
                    Hast du denn den vollständigen Start des Adapters abgewartet? der braucht ja eine Weile bis der ready ist.

                    Was ist bei neuen Alarmen, als welche du nach der Umschaltung erstellst? tauchen die auf? und reagieren wie gewünscht?
                    Sonst müsstest du im Thread das Alexa-Adapters das mal nachfragen

                    F 1 Reply Last reply Reply Quote 0
                    • F
                      firestone @BananaJoe last edited by

                      @bananajoe
                      hab gerade einen neuen Wecker angelegt, wird sofort hinzugefügt, aber der geht auch nicht auf true.
                      Okay, dann poste ich das einmal dort und würde mich dann hier wieder melden.

                      Dein angepasstes Script würde ich dann statt meines alten Scriptes benutzen, weil deins wesentlich cleverer aufgebaut ist.

                      vielen herzlichen Dank noch mal für deine super Hilfe, bin jetzt schon mal sehr erleichtert, das wir wissen wo der Fehler liegt und ich melde mich.

                      BananaJoe 1 Reply Last reply Reply Quote 0
                      • BananaJoe
                        BananaJoe Most Active @firestone last edited by

                        @firestone sagte in Alexa Wecker beenden:

                        Dein angepasstes Script würde ich dann statt meines alten Scriptes benutzen, weil deins wesentlich cleverer aufgebaut ist.

                        Ach, das ist bei mir auch "Evolution", mit der Zeit schaut man sich vieles ab. Andere Skripte sehen nicht immer so elegant aus, und es gibt immer viele Wege nach Rom.
                        Aber als jemand der schon seit 30 Jahren mal mehr, mal weniger Programmiert, finde ich Blockly einfach Klasse für die schnelle Nummer zwischendurch. Und es mit Blockly zu lösen hatte mich an deinem Problem gereizt (und ob ich das mit dem Selektor noch gebacken bekomme).

                        Man könnte das Skript auch umdrehen - Den IDs vom Selektor auf alexa.2.0.Echo-Devices.*.Alarm.*.triggert loslassen anstatt alle Alarme abzugrasen. Da müsste es dann nur einen Treffer geben. Diese Erkenntnis hat sich aber ja erst hier im Thread entwickelt (und kam mir gestern Abend beim Einschlafen).

                        Vielleicht magst du das entsprechend umbauen und hier posten

                        F 2 Replies Last reply Reply Quote 0
                        • F
                          firestone @BananaJoe last edited by

                          @bananajoe
                          hört sich auch clever an.
                          Leider sitze ich schon seit zwei Tagen an dem Problem mit dem triggered event und kann es nicht lösen.
                          Bin total verzweifelt gerade, denn ohne irgend etwas was mir zeigt, das gerade dieser eine Wecker klingelt geht es wohl nicht.
                          Ich hoffe jetzt, dass mir Apollom77 auf GitHub antwortet.

                          1 Reply Last reply Reply Quote 0
                          • F
                            firestone @BananaJoe last edited by

                            @bananajoe
                            so, Fehler gefunden.
                            Die Uhrzeit/Datum/Zeitzone im ioBroker Docker selbst stimmte nicht. Alle anderen Zeiten (Unraid selbst, im ioBrocker, usw.) haben gestimmt, aber eben nur die des ioB Dockers nicht.
                            Keine Ahnung wieso genau das entscheidend ist, aber ich habe den Docker jetzt mit dem Unraid Host synchronisiert indem ich in der ioB Docker Konfiguration einen "neuen Pfad" angelegt habe und "Container Pfad" und "Host Pfad" auf "/etc/localtime" und "Access Mode" auf "Nur Lesen" konfiguriert habe. In der Konsole des Containers war dann mittels "Date" Kommandos sofort die korrekte Zeit eingestellt und sofort reagierte auch das "triggered" Event des Alexa Adapters wieder mit "true" sobald der Wecker klingelt.

                            Und dein Script funktioniert auch hervorragend 🙂

                            Ich Danke dir noch einmal von ganzem Herzen für deine Unterstützung und Geduld 🙂

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

                            Support us

                            ioBroker
                            Community Adapters
                            Donate

                            720
                            Online

                            31.8k
                            Users

                            80.0k
                            Topics

                            1.3m
                            Posts

                            2
                            18
                            693
                            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