Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. Einsteigerfragen
    4. [gelöst]Alexa Weckzeit bearbeiten

    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

    [gelöst]Alexa Weckzeit bearbeiten

    This topic has been deleted. Only users with topic management privileges can see it.
    • N
      Nick.The.Bird.92 last edited by Nick.The.Bird.92

      Hallo Zusammen,
      ich habe alle Themen zu diesem Bereich bereits einmal gelesen, leider aber nichts eindeutiges für mich gefunden.

      Folgendes habe ich schon umgesetzt.

      1. Alexa Musikwecker wird Abends per Sprachbefehl gestellt (mache ich jeden Abend - gehört irgendwie zu meiner Gute Nacht Routine)
      2. Alexa Wecker ertönt auf Lautstärke 0
      3. Lampen gehen langsam an
      4. Nach 15 min wird nun die Lautstärke vom Wecker auch langsam erhöht

      Funktioniert soweit. Wenn ich aber um z.B. 6h aufstehen will muss ich den Wecker auf 5:30h stellen. So ganz smart ist das noch nicht.

      Ich habe mir also folgendes überlegt um dieses Problem zu lösen:

      1. Triggere den Ordner "alexa2.0.Echo-Devices.G091EV12202406HS.MusicAlarm.*.enabled" (um auch neue Wecker zu triggern)
      2. Auslesen der entsprechenden Weckzeit
      3. Abziehen von 30min der Weckzeit
      4. Überschreiben der Weckzeit

      Meine Probleme:
      Kann ich überhaupt durch den Trigger die richtige dazugehörige Weckzeit auswählen und wenn ja wie?
      Wie kann ich eine Weckzeit auslesen und dazu 30min abziehen?

      Vielen Dank im Voraus für eure Hilfe, falls ihr das Problem irgendwie anders gelöst habt, bin ich für alles Offen.

      LG
      Nick.The.Bird.92

      Asgothian 1 Reply Last reply Reply Quote 0
      • Asgothian
        Asgothian Developer @Nick.The.Bird.92 last edited by

        @nick-the-bird-92 sagte in Alexa Weckzeit bearbeiten:

        1. Triggere den Ordner "alexa2.0.Echo-Devices.G091EV12202406HS.MusicAlarm.*.enabled" (um auch neue Wecker zu triggern)
        2. Auslesen der entsprechenden Weckzeit
        3. Abziehen von 30min der Weckzeit
        4. Überschreiben der Weckzeit

        Meine Probleme:
        Kann ich überhaupt durch den Trigger die richtige dazugehörige Weckzeit auswählen und wenn ja wie?
        Wie kann ich eine Weckzeit auslesen und dazu 30min abziehen?

        Ja. Im Trigger hast du über das dem Trigger übergebene Objekt Zugriff auf die ID des Objektes welches den Trigger ausgelöst hat. Unter der Annahme das alexa2.0.Echo-Devices.G091EV12202406HS.MusicAlarm.Alarm1.enabled der Datenpunkt für Alarm an/aus und
        alexa2.0.Echo-Devices.G091EV12202406HS.MusicAlarm.Alarm1.time der für die Zeit ist kannst du einfach die Folgende Methode nutzen:

        • in der ID im String das .enabled durch .time ersetzen.
        • mit dieser ID die aktuelle Zeit lesen und schreiben

        Vielen Dank im Voraus für eure Hilfe, falls ihr das Problem irgendwie anders gelöst habt, bin ich für alles Offen.

        LG
        Nick.The.Bird.92

        N 1 Reply Last reply Reply Quote 0
        • N
          Nick.The.Bird.92 @Asgothian last edited by Nick.The.Bird.92

          @asgothian
          Erst einmal vielen Dank für die schnelle Rückmeldung.

          Das klappt leider nicht. Alexa erstellt ja immer wieder neue Wecker (für unterschiedliche Zeiten).

          Hiermit kann ich ja triggern ob ein Wecker aktiviert wird (deswegen das "*")
          alexa2.0.Echo-Devices.G091EV12202406HS.MusicAlarm. * .enabled

          Ich will jetzt, dass die dazugehörige Zeit ausgelesen wird.

          Das kann zwar Alarm1 sein, aber auch Alarm 2 oder 3 oder 4.

          Mit deinem Vorschlag hab ich ja immer nur Alarm1 als trigger.

          FredF Asgothian 2 Replies Last reply Reply Quote 0
          • FredF
            FredF Most Active Forum Testing @Nick.The.Bird.92 last edited by

            @nick-the-bird-92
            Ich nutze RegExp um auf jede aktive Weckzeit zu triggern
            f9ad7a04-5d1c-4798-ae85-a1074f2bc1fd-grafik.png

            In deinem Fall würde darin stehen:

            alexa2\.0\.Echo-Devices\.G091EV12202406HS\.MusicAlarm\..*\.triggered
            

            Wie damit 30 Minuten vorher gewckt werden kann weis ich nicht

            N 1 Reply Last reply Reply Quote 1
            • Asgothian
              Asgothian Developer @Nick.The.Bird.92 last edited by

              @nick-the-bird-92 sagte in Alexa Weckzeit bearbeiten:

              @asgothian
              Erst einmal vielen Dank für die schnelle Rückmeldung.

              Das klappt leider nicht. Alexa erstellt ja immer wieder neue Wecker (für unterschiedliche Zeiten).

              Hiermit kann ich ja triggern ob ein Wecker aktiviert wird (deswegen das "*")
              alexa2.0.Echo-Devices.G091EV12202406HS.MusicAlarm. * .enabled

              Ich will jetzt, dass die dazugehörige Zeit ausgelesen wird.

              Das kann zwar Alarm1 sein, aber auch Alarm 2 oder 3 oder 4.

              Mit deinem Vorschlag hab ich ja immer nur Alarm1 als trigger.

              Wie @FredF schon geschrieben hat - der Trigger sollte auf Regex Basis auf alle möglicherweise durch Alexa angelegten Trigger laufen. Im Trigger selber hast du dann das entsprechende Objekt in dem du die ID genau des Datenpunktes hast der den Trigger ausgelöst hat.

              A.

              N 1 Reply Last reply Reply Quote 1
              • N
                Nick.The.Bird.92 @FredF last edited by Nick.The.Bird.92

                @fredf
                RegExp nutze ich auch genau so, allerdings ist das ja gerade der begrenzende Faktor.

                1 Reply Last reply Reply Quote 0
                • N
                  Nick.The.Bird.92 @Asgothian last edited by

                  @asgothian

                  Ich glaube wir reden etwas aneinander vorbei.
                  Wie bekomme ich denn dann den Datenpunkt? Wenn ich nach .enabled trigger und dann die entsprechende Weckzeit (.time)ausgeben will?

                  1 Reply Last reply Reply Quote 0
                  • N
                    Nick.The.Bird.92 last edited by

                    @nick-the-bird-92 Screenshot 2022-03-29 121249.png

                    So hab ich es momentan gelöst. RegExt überwacht .trigger

                    Allerdings ist der Datenpunkt relativ unnütz, wenn man eine Routine vor dem aktivieren starten will.

                    Deswegen kam ich auf die Idee .enabled zu triggern und daraufhin die Weckzeit auf 30 Minuten vorher abzuändern.

                    Eine andere Lösung wäre auch okay. Z.B. beim Aktivieren des Weckers, auslesen der Weckzeit, 30min abziehen und abspeichern als neuen Datenpunkt. Diesen Datenpunkt dann als auslöser für den "Sonnenwecker" zu nehmen. Allerdings hab ich mit Datenpunkte erstellen komplett keine Erfahrung.

                    Habe auch wirklich schon sehr viel ausprobiert und würde gerne mal etwas weiter kommen 😭

                    LG
                    Nick

                    Asgothian 1 Reply Last reply Reply Quote 0
                    • Asgothian
                      Asgothian Developer @Nick.The.Bird.92 last edited by Asgothian

                      @nick-the-bird-92

                      Es gibt im "Trigger" Bereich einen Baustein "Objekt ID". Mit diesem greifst Du direkt auf die Objekteide des Datenpunktes zu der den Trigger ausgelöst hat.

                      Screenshot 2022-03-29 at 12.27.00.png

                      Wenn du also einen Regex Trigger auf alexa2.0.Echo-Devices.G091EV12202406HS.MusicAlarm.*.enabled hast, und der Datenpunkt alexa2.0.Echo-Devices.G091EV12202406HS.MusicAlarm.Alarm1.enabled den Trigger auslöst, dann beinhaltet dieser Baustein die ID des auslösenden Datenpunktes

                      Du kannst also z.Bsp. so auf die anderen Datenpunkte zugreifen. (Hinweis: ich weiss nicht wie die Datenpunkte bei Alexa heissen - ich bin einfach davon ausgegangen das zu einen "...enabled" Datenpunkt auch ein "...time" Datenpunkt existiert. Das müsstest du ggf. anpassen.
                      Screenshot 2022-03-29 at 12.34.33.png

                      Ich hoffe jetzt wird klarer wie das funktionieren kann.

                      A.

                      p.s. Dein Skript teil kann theoretisch funktionieren (ohne die Zeitanpassung) wenn du Screenshot 2022-03-29 at 12.36.10.png durch den besagten Baustein mit Objekt ID ersetzt und dieses auf Wert umstellst. dann beinhaltet es den Wert des Datenpunktes der den Trigger ausgelöst hat.

                      N 2 Replies Last reply Reply Quote 1
                      • N
                        Nick.The.Bird.92 @Asgothian last edited by

                        p.s. Dein Skript teil kann theoretisch funktionieren (ohne die Zeitanpassung) wenn du Screenshot 2022-03-29 at 12.36.10.png durch den besagten Baustein mit Objekt ID ersetzt und dieses auf Wert umstellst. dann beinhaltet es den Wert des Datenpunktes der den Trigger ausgelöst hat.

                        Wieso theoretisch? Funktioniert doch :S

                        Asgothian 1 Reply Last reply Reply Quote 0
                        • N
                          Nick.The.Bird.92 @Asgothian last edited by Nick.The.Bird.92

                          @asgothian sagte in Alexa Weckzeit bearbeiten:

                          @nick-the-bird-92

                          Es gibt im "Trigger" Bereich einen Baustein "Objekt ID". Mit diesem greifst Du direkt auf die Objekteide des Datenpunktes zu der den Trigger ausgelöst hat.

                          Screenshot 2022-03-29 at 12.27.00.png

                          Wenn du also einen Regex Trigger auf alexa2.0.Echo-Devices.G091EV12202406HS.MusicAlarm.*.enabled hast, und der Datenpunkt alexa2.0.Echo-Devices.G091EV12202406HS.MusicAlarm.Alarm1.enabled den Trigger auslöst, dann beinhaltet dieser Baustein die ID des auslösenden Datenpunktes

                          Okay, das verstehe ich inhaltlich. Das ja schonmal nicht schlecht 🙂

                          Du kannst also z.Bsp. so auf die anderen Datenpunkte zugreifen. (Hinweis: ich weiss nicht wie die Datenpunkte bei Alexa heissen - ich bin einfach davon ausgegangen das zu einen "...enabled" Datenpunkt auch ein "...time" Datenpunkt existiert. Das müsstest du ggf. anpassen.
                          Screenshot 2022-03-29 at 12.34.33.png

                          Erst einmal, war richtig mit dem .time Datenpunkt 🙂
                          Pu, das mit den Listen ist komplett neu für mich.
                          Also FallsObjekt ist ja klar.
                          Dann hast du eine Variable geschaffen. Diese wird mit einer Liste beschrieben, aus dem Text von meinem Trigger (also alexa2.0.Echo-Devices.G091EV12202406HS.MusicAlarm.*.enabled)
                          ->Was muss denn da bei Objekt ID rein? Ist das einfach nur die Variable in der Liste ID_als_Liste gespeichert wird?

                          Da wird dann enabled weggenommen und dafür time eingesetzt.

                          Nun füttere ich eine 2. Variable mit dem Text aus der Liste (sprich alexa2.0.Echo-Devices.G091EV12202406HS.MusicAlarm.*.time)

                          Dann die 3. Variable die den Wert von der 2. Variable ausliest (also meine Weckzeit)

                          Ich hoffe jetzt wird klarer wie das funktionieren kann.

                          Nochmal vielen Dank für das erklären und die Hilfe. Langsam komme dahinter wie das mit den Listen laufen könnte. Hoffe ich hab das soweit alles richtig verstanden 😄

                          Asgothian 1 Reply Last reply Reply Quote 0
                          • Asgothian
                            Asgothian Developer @Nick.The.Bird.92 last edited by

                            @nick-the-bird-92 sagte in Alexa Weckzeit bearbeiten:

                            p.s. Dein Skript teil kann theoretisch funktionieren (ohne die Zeitanpassung) wenn du Screenshot 2022-03-29 at 12.36.10.png durch den besagten Baustein mit Objekt ID ersetzt und dieses auf Wert umstellst. dann beinhaltet es den Wert des Datenpunktes der den Trigger ausgelöst hat.

                            Wieso theoretisch? Funktioniert doch :S

                            Bedingt. Ich gehe davon aus das Screenshot 2022-03-29 at 12.36.10.png immer dann wahr ist wenn mindestens einer der in der Regex vorhandenen Datenpunkte wahr ist.

                            A.

                            1 Reply Last reply Reply Quote 0
                            • Asgothian
                              Asgothian Developer @Nick.The.Bird.92 last edited by

                              @nick-the-bird-92 sagte in Alexa Weckzeit bearbeiten:

                              @asgothian sagte in Alexa Weckzeit bearbeiten:

                              @nick-the-bird-92

                              Es gibt im "Trigger" Bereich einen Baustein "Objekt ID". Mit diesem greifst Du direkt auf die Objekteide des Datenpunktes zu der den Trigger ausgelöst hat.

                              Screenshot 2022-03-29 at 12.27.00.png

                              Wenn du also einen Regex Trigger auf alexa2.0.Echo-Devices.G091EV12202406HS.MusicAlarm.*.enabled hast, und der Datenpunkt alexa2.0.Echo-Devices.G091EV12202406HS.MusicAlarm.Alarm1.enabled den Trigger auslöst, dann beinhaltet dieser Baustein die ID des auslösenden Datenpunktes

                              Okay, das verstehe ich inhaltlich. Das ja schonmal nicht schlecht 🙂

                              Du kannst also z.Bsp. so auf die anderen Datenpunkte zugreifen. (Hinweis: ich weiss nicht wie die Datenpunkte bei Alexa heissen - ich bin einfach davon ausgegangen das zu einen "...enabled" Datenpunkt auch ein "...time" Datenpunkt existiert. Das müsstest du ggf. anpassen.
                              Screenshot 2022-03-29 at 12.34.33.png

                              Erst einmal, war richtig mit dem .time Datenpunkt 🙂
                              Pu, das mit den Listen ist komplett neu für mich.
                              Also FallsObjekt ist ja klar.
                              Dann hast du eine Variable geschaffen. Diese wird mit einer Liste beschrieben, aus dem Text von meinem Trigger (also alexa2.0.Echo-Devices.G091EV12202406HS.MusicAlarm.*.enabled)
                              ->Was muss denn da bei Objekt ID rein? Ist das einfach nur die Variable in der Liste ID_als_Liste gespeichert wird?

                              Der Baustein Objekt ID liefert schon genau das was du benötigst - die ID des Bausteins der den Trigger ausgelöst hat. Also wenn

                              • die Regex 'alexa2.0.Echo-Devices.G091EV12202406HS.MusicAlarm.*.time' ist.
                              • die Kanäle Devices.G091EV12202406HS.MusicAlarm.Alarm_1, Devices.G091EV12202406HS.MusicAlarm.Alarm_2 und Devices.G091EV12202406HS.MusicAlarm.Alarm_3 existieren
                              • Der Datenpunkt Devices.G091EV12202406HS.MusicAlarm.Alarm_2.enabled auf Wahr aktualisiert wird

                              dann steht in dem Baustein Objekt ID der text 'Devices.G091EV12202406HS.MusicAlarm.Alarm_2.enabled'

                              Da wird dann enabled weggenommen und dafür time eingesetzt.

                              Nun füttere ich eine 2. Variable mit dem Text aus der Liste (sprich alexa2.0.Echo-Devices.G091EV12202406HS.MusicAlarm.*.time)

                              In dem oben stehenden Beispiel steht da also 'Devices.G091EV12202406HS.MusicAlarm.Alarm_2.time' drin

                              Dann die 3. Variable die den Wert von der 2. Variable ausliest (also meine Weckzeit)

                              Ich hoffe jetzt wird klarer wie das funktionieren kann.

                              Nochmal vielen Dank für das erklären und die Hilfe. Langsam komme dahinter wie das mit den Listen laufen könnte. Hoffe ich hab das soweit alles richtig verstanden 😄

                              N 1 Reply Last reply Reply Quote 0
                              • N
                                Nick.The.Bird.92 @Asgothian last edited by

                                @asgothian

                                müsste debug output nicht jetzt die Weckzeit anzeigen?

                                1dea21dc-245b-4156-8532-ed453c00a7d6-grafik.png

                                Asgothian 1 Reply Last reply Reply Quote 0
                                • Asgothian
                                  Asgothian Developer @Nick.The.Bird.92 last edited by

                                  @nick-the-bird-92 fast.. du hast bei dem Baustein "text aus liste" und "liste aus Text" das falsche Trennzeichen (Komma) statt dem korrekten (Punkt) eingetragen.

                                  A.

                                  N 1 Reply Last reply Reply Quote 1
                                  • N
                                    Nick.The.Bird.92 @Asgothian last edited by

                                    @asgothian

                                    und ich dachte es wäre Staub aufm Monitor, ich brauche wohl ne neue brille ^^

                                    Geil funktioniert :D. Hab es noch ein wenig veredelt, damit er nur auslöst wenn der Wecker eingeschaltet wird.

                                    febfc0f4-a1c6-46b0-9e79-b4085f044790-grafik.png

                                    Es wäre noch ein traum wenn mir noch sagen könntest mit was für einem Baustein oder Bausteingruppe ich die Weckzeit im Format hh:mm:ss weiterverabeiten kann, Tipp reicht, will ja auch ein wenig nachdenken 🙂

                                    1 Reply Last reply Reply Quote 0
                                    • N
                                      Nick.The.Bird.92 last edited by

                                      @asgothian
                                      Kann man Object ID irgendwie auf falsch setzen?
                                      Also Trigger wird aktiviert, weil Wecker gestellt wird - nach 10 Minuten soll dieser Wecker wieder deaktiviert werden.
                                      (frag mich am Besten nicht nach dem tieferem Sinn - zeig euch am Ende dann mal meinen Wecker :))

                                      Vielen Dank im Voraus

                                      Asgothian 1 Reply Last reply Reply Quote 0
                                      • Asgothian
                                        Asgothian Developer @Nick.The.Bird.92 last edited by

                                        @nick-the-bird-92

                                        Screen Shot 2022-04-05 at 15.02.17 .png

                                        N 1 Reply Last reply Reply Quote 1
                                        • N
                                          Nick.The.Bird.92 @Asgothian last edited by

                                          @asgothian
                                          geil, danke.

                                          hat mich auf jeden Fall wieder um einiges weiter gebracht 🙂

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

                                          Support us

                                          ioBroker
                                          Community Adapters
                                          Donate

                                          847
                                          Online

                                          31.9k
                                          Users

                                          80.3k
                                          Topics

                                          1.3m
                                          Posts

                                          3
                                          19
                                          416
                                          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