Alexa triggert zu langsam

  • Wie ich HIER beschrieben habe, habe ich zwei billige Funktürklingeln via mqttthing ins Homekit gebracht. Nun bin ich bei Homebridge-Alexa am verzweifeln.


    Wenn ich in der Alexa-App direkt auf den in mqttthing angelegten Motion-Sensor triggere, dann liest Alexa quasi sofort den hinterlegten Text vor, meistens jedenfalls.


    Da ich allerdings noch eine Zusatzbedingung brauche, um nicht aus dem Schlaf geweckt zu werden, habe ich in HB-Delay-Switch einen Schalter mit 1ms Verzögerung eingerichtet und in Home+ eine Automation angelegt, wenn mqtt-motion und Zusatzbedingung erfüllt, dann löse Delay-Switch aus. Und Nein, es reicht mir nicht in der Alexa-App den Zeitrahmen einzugrenzen, da ich im Schichtdienst inkl. Nachtdienste arbeite und somit auch schon mal tagsüber schlafen muss.


    Auf der Homebridge UI habe ich den mqtt-motion und den delay-motion nebeneinander angeordnet. Wenn ich jetzt die Klingel drücke, lösen beide Motion-Sensoren wie erwartet fast zeitgleich aus, weniger als eine Viertelsekunde Abstand, würde ich schätzen. Doch bei dem Motion Sensor vom DelaySwitch lässt sich Alexa immer um die 10 Sekunden Zeit, bevor sie mir was erzählt. Doch diese 10 Sekunden können darüber entscheiden, ob der Paketbote noch vor der Tür steht oder mit samt meinem Paket wieder weggefahren ist :(


    Wo kann ich hier ansetzen?

  • Hi ApplePrime


    Hat es bei dir schon mal besser funktioniert?


    Wenn ja, auf welcher Version des Alexa-Plugins bist du aktuell?


    Mit den neusten Versionen des Plugins hatte ich auch Verzögerungen einzelner Schalter…..


    Aktuell bin ich auf der beta und habe in der config refresh auf 10 min. gesetzt.


    Seitdem reagieren wieder alle Geräte sofort und ohne Verzögerung.


    https://github.com/NorthernMan54/homebridge-alexa/issues/459

  • Das machts irgendwie nicht besser. Zum einen wüsste ich nicht, was ein refresh der Geräteliste alle 10 Minuten bringen soll - aber gut, ich habs drin.


    Ich hatte HB-Alexa erstmalig installiert, bis eben war installiert die v0.5.42-latest


    Jetzt getestet mit v0.5.46 und v0.5.47-beta, leider wurde es zunächst schlimmer. Im ersten Versuch 18 Sekunden, danach dann wieder 10 Sekunden. Ich hatte zwischenzeitlich auf alexa.amazon.de die Geräte neu eingelesen.


    Was ich vorhin nicht erwähnte: in der Home+ Automation lasse ich nicht nur den Delayswitch drücken, sondern auch einen Button in HB-Messenger, der eine Pushover schickt, diese kommt kam immer deutlich unter 2 Sekunden nach Drücken der Türklingel an. Tut vermutlich nichts zur Sache


    Ich habe sogar gerade über die DeviceList die Geräte, die an Alexa übermittelt werden, von 30+ reduziert auf die 2 Sensoren von mqtt (die beiden unteren) und die 2 DelaySwitches (Ax Prime...). Auch hier keine schnellere Reaktion.

    Kohle_81, wenn du Beta meinst, dann sprichst du schon von Installation über die UI von Homebridge oder gibt es noch was neueres, dass ich mir direkt bei github ziehen müsste? Wie?

  • Die beta kann mit dem Befehl:


    sudo npm install -g homebridge-alexa@beta


    installiert werden.


    Wobei die 0.5.47 die beta ist.


    Ich habe zumindest seit dem Update keinerlei Probleme mehr. Was ich noch gemacht habe ist kurz den homebridge-Skill in Alexa abgemeldet und neu angemeldet, die beta installiert, refresh in der config mitaufgenommen und homebridge neu gestartet…..


    Wie gesagt, seitdem sind meine Verzögerungen nicht mehr da……


    Außer deine Ursache liegt nicht beim Plugin 🤷🏻

  • Guter Tipp aber leider ohne Erfolg. Geräte bei Alexa abgemeldet, Skill deativiert, HB neu gestartet, Skill neu verbunden und Geräte neu suchen lassen.


    Die Verzögerung ist jetzt bei mitgezählten 8 1/2 Sekunden, liegt also im Bereich der "Messtolleranz" von den zuvor gezählten 10 Sekunden.


    Wenn du in der UI im Plugin-Menü den Schraubenschllüssel an einem Plugin klickst, kannst du dort eine "vorherige Version" installieren. Ist aber eine Fehler im Menü, man kann auch spätere Versionen oder eben Betas installieren .

    Code
    15.9.2021, 16:08:05] [Hoftor Klingel] Received MQTT: rtl_433/sensors/0/11/Hoftor_Klingel/motion = true
    [15.9.2021, 16:08:05] [Messenger] Msg Push Hoftor : Message sent to 123123123123123
    [15.9.2021, 16:08:05] [Ax Prime Hoftor] Starting the Timer
    [15.9.2021, 16:08:05] [Ax Prime Hoftor] Time is Up!
    [15.9.2021, 16:08:05] [Ax Prime Hoftor] Triggering Motion Sensor

    Einmal editiert, zuletzt von ApplePrime ()

  • Es scheint irgendwie an der Masse der Befehle zu liegen. Ich habs jetzt mal ganz quer versucht. Da Alexa ja auf den mqtt sensor sofort reagiert, habe ich einen switch in mqtt gesetzt der ein neues Topic sendet und einen weiteren Motion Sensor der dieses Topic als Auslöser hat. Wieder 10 Sekunden Wartezeit.


    Wenn ich jedoch dieses neue Topic direkt auf der SSH-Konsole an mosquitto sende, schreit Alexa wieder sofort.


    Wenn ich nun den neuen Switch aus der Autmation rausnehme, die Klingel drücke und dann kurz danach auf der Konsole den Switch auslöse habe ich wieder die Verzögerung. Ursache ist also offensichtlich, dass mehr als ein Event gleichzeitig an Alexa gemeldet wird auch wenn der erste nichts auslöst. Dann habe ich den ursprünglichen mqtt Motion Sensor aus Alexa rausgenommen und nur den von DelaySwitch drin gelassen. Pustekuchen, geht auch nicht.


    Für heute muss ich schluss machen. Laut Debug wird die Nachricht wohl tatsächlich erst 10sec nach dem Eingang des Auslösers abgeschickt. Liegt also am Plugin oder an HB.

  • Jetzt bin och leider raus 🤷🏻 drück dir die Daumen, dass du es noch hinbekommst.

  • Ich hab hier und da noch ein wenig recherchiert und bin zu dem Schluss gekommen, dass das Alexa-Plugin nicht nur die für Alexa freigegebenen Sensoren überträgt, sondern auch alle anderen Motion-Sensoren in Homebridge. Und das obwohl Alexa diese Sensoren gar nicht kennt.


    Da Alexa/Amazon aber die Nachrichten auf eine pro 10 Sekunden reglementiert, ergibt sich hier die Verzögerung.


    Ich hab beim Plugin-Autor eine Fehlermeldung eingereicht...

  • Wäre ja schon schön gewesen - aber man soll ja immer pragmatisch bleiben. Wenn ich in dem Raum (Schlafzimmer) mit der Ziel-Alexa bin, habe ich zu 99,5% mein iPhone dabei. Also bleibt es jetzt bei Pushover und zusätzlich lasse ich noch eine farbige Lampe blinken.


    Mal schaun ob der Plugin-Autor noch was fixen kann, dann probier ichs halt nochmal.


    Oder kennt jemand einen günstigen Gong/Summer/Klingeltongenerator, den ich per Homekit oder Homebridge ansteuern kann? Sehr gerne mit Auswahl der Meldodie und Lautstärke um den für mehrere Zwecke einsetzen zu können. Notfalls auch etwas noch einfacheres, dass ich über eine vorhandene Homekit-Steckdose via Strom-ein auslösen kann. Das müsste also einmalig was abspielen, wenn es Strom bekommt.

  • Wenn du das Alexa-Skript verwendest? Dann bist du nicht abhängig, wie schnell ein Sensor reagiert?


    https://blog.loetzimmer.de/201…f-die-shell-echo.html?m=1


    Du magst ja „nur“ eine bestimmte Melodie per Alexa abspielen lassen, oder?


    Dann könntest du das Skript auch mittels Kurzbefehle aufrufen lassen oder das homebridge-cmdtrigger Plugin verwenden.