HomeKit und Sprachsteuerung für Android gesucht

  • Also ich habe jetzt unterschiedliche Sensoren: Temperatur, Kontakt und Bewegung.

    Alle Endgeräte habe ich in Alexa aus der Liste gelöscht und anschließend via "Gerät hinzufügen" wieder hinzugefügt sowie eingerichtet.


    Wenn ich nun eine Routine durch einen entsprechenden Sensor auslösen möchte, würde ich wie folgt vorgehen:

    - Routinen -> Routine erstellen -> -> Routinennamen eingeben -> "Wenn folgendes passiert": Smart Home auswählen.


    Dann bekomme ich die Mitteilung: "Keine Geräte gefunden. Damit Sie eine Routine für ein Smart Home-Gerät starten können, müssen Sie es in der Alexa App unter "Gerät hinzufügen" einrichten".

    Habe ich ja gemacht. Wird auch alles angezeigt. Kann alles außerhalb sowie innerhalb der Routine (als Aktion) auswählen bzw. ansteuern. Nur in der "Wenn"-Abfrage geht es eben nicht. Und eigentlich auch komisch das dort blos Bewegungssensoren auswählbar sein sollen. Könnte mir auch etwas anderes simples vorstellen: "Wenn": Licht 1 an, "Dann": Licht 2 an.

  • Bei den Routinen mit Alexa geht Herr Bezos und sein Team davon aus, dass man die nette Dame in dem kleinen runden Kästchen einfach anspricht.

    Dass man eine Steuerung ohne Sprache macht ist für die 34.743.588 Programmierer bei Amazon etwas ganz neues und unerwartetes, deshalb funzt es nicht.

  • Aus 3m Entfernung erhoffe ich mir vom Dot, dass dieser reagiert, ohne das ich meine Stimme erheben muss. Dann bin ich gespannt wie er sich schlägt, wenn die allgemeine Lautstärke im Raum etwas gehoben ist (beispielsweise Musik läuft).

    Bei mir steht er im Wohnzimmer. Wenn ich im Badezimmer bin, das wirklich nicht gleich nebenan ist, reicht ein normales sprechen, um von dort aus den Dot im Wohnzimmer zu triggern. Mein Stimme schallt dann durch das Badezimmer hinein ins Schlafzimmer, von dort durch den Flur zur Wohnzimmertür und durch den ganzen Raum bis zum Dot.


    Ich wohne nicht sonderlich riesig, sondern auf etwa 75qm, und dafür reicht ein Dot locker. Für alles.

  • Bei den Routinen mit Alexa geht Herr Bezos und sein Team davon aus, dass man die nette Dame in dem kleinen runden Kästchen einfach anspricht.

    Dass man eine Steuerung ohne Sprache macht ist für die 34.743.588 Programmierer bei Amazon etwas ganz neues und unerwartetes, deshalb funzt es nicht.

    Laut amazon sollte es aber funktionieren: https://www.amazon.de/gp/help/…00080&tag=hktips-forum-21


    sschuste: Klingt sehr gut, bin gespannt wie es dann morgen funktioniert!

  • hyxamp


    du hast da wohl was missverstanden...

    Die Routinen klappen schon, aber nur wenn du als "Wenn" einen Sprachbefehl definierst -> Stimme wählen, oder einen ZeitPLAN oder den Wecker...

    Dann kannst du unter "Aktionen hinzufügen" -> Smart Home -> Alle Geräte -> etwas steuern lassen, oder per IFTTT etwas anderes antriggern... usw.


    Aber die reine Umsetzung einer Routine, ohne Ansprache zu Alexa (also wie die Automationen in Homekit) klappen nicht, zumindest auch bei mir nicht. Ist genau wie bei dir: "Keine Geräte gefunden"... und bei mir sind etliche Geräte vorhanden 8)

  • Da muss ich ein Veto einlegen.


    Ich kann sowohl meine Hue motions und auch die Türkontakte von Aqara als Auslöser für Routinen verwenden.....:


    Welche Sensoren habt ihr denn? Vermutlich sind nicht unbedingt alle Sensoren hier zugelassen oder noch nicht integriert.....


  • Doch ich verstehe es schon, aber wie gesagt: laut der Beschreibung auf Amazon sollte es doch möglich sein!


    Zitat
    3. Wählen Sie Wenn dies passiert aus und legen Sie dann fest, wie die Routine ausgelöst werden soll. Wählen Sie für Sensorroutinen den installierten Bewegungs- oder Kontaktsensor aus.
    Zitat
    4. Wählen Sie Aktion hinzufügen und die gewünschte Aktion aus. Wählen Sie Benachrichtigung senden aus, um eine Push-Benachrichtigung zu erhalten, wenn der Bewegungs- oder Kontaktsensor ausgelöst wird..


    Punkt 3 spricht das "WENN" an. Hier könnte ein Bewegungs- oder Kontaktsensor die in Punkt 4 erwähnte Benachrichtigung ("DANN") senden. Genau so habe ich es auch Home realisiert und es klappt ja auch. Kann es ja dabei belassen.. Es ist auch blos rein interesse halber. Wäre aber auch schön wenn besagter Kontaktsensor beim Auslösen einen Signalton auf dem Echo wiedergibt. Muss doch möglich sein.



    Nachtrag:

    Da war Kohle_81 wohl schneller. Habe die Sensoren aus dem People-Plugin sowie einen Belegungssensor (ESP8266) für unsere Haustürklingel. Also alles nix zertifiziertes. Wird allerdings trotzdem in der alexa app angezeigt und löst auch aus, wenn ein Event eintritt.

  • Da wird dir nichts anderes übrig bleiben, als über das Skript die Routine zu starten....

  • Komisch... bei mir nicht.

    Selbst die Kontaktsensoren von Homematic kommen nicht. Kann ich zwar alles sehen unter "Geräte" und zeigt mir auch den Zustand an, aber in Routinen ist auch nix wählbar. Dachte es geht halt nicht ohne "Sprache"!

  • Ist allerdings nix natives (Skill) für Alexa, sondern alles per homebridge-alexa bzw. ioBroker-Adapter gemappt.

    Vielleicht liegt's ja daran.

    Einmal editiert, zuletzt von z-smoker ()

  • Ja ist bei mir genauso. Aber wie würde sich denn dann so eine Automation realisieren lassen, wenn ich den Sensor nicht bei Alexa abfragen kann:


    "Sensor an Klingel registriert ein Event" --> "Soundausgabe auf Amazon Echo"


    Muss ja jetzt nicht unbedingt die Klingel sein, ein Bewegungsmelder wäre auch denkbar. Beides kann ich aber nicht als "WENN" in der alexa app definieren. Bleibt also blos die Automation über Home. Nur wie bekomme ich dort wieder den Echo dazu, einen Ton auszuspucken?

  • Nur wie bekomme ich dort wieder den Echo dazu, einen Ton auszuspucken?


    Alexa per Shell fernsteuern - Alexa Sprachausgabe Text-to-Speech über Homebridge in HomeKit


    Lies mal hier rund um den Beitrag.

  • Zum Thema "Sensor in Alexa Routinen":


    Nachdem ich heute meinen zweiten Raspberry zu Testzwecken neu aufgesetzt und das Alexa - Plugin installiert habe, ist mir folgende Definition aufgefallen: "routines": true


    Ich weis nicht ob es sie erst seit dem neuen Update gibt oder ob sie schon vorher existierte (jedenfalls hatte ich ich die Definition in meiner vorherigen Konfiguration gar nicht eingebunden).. Damit lassen sich dann auch die Sensoren als Trigger für Routinen einbinden, welche bei mir vorher nicht angezeigt wurden (siehe Post #21).

  • Nun habe ich doch nochmal eine Frage zu sschuste seiner Herangehensweise in Bezug auf die Szenen.


    Ich habe mit dem Plugin homebridge-dummy einen virtuellen Schalter erzeugt, der wiederum mit einer entsprechender Automation ein paar Lampen schalten soll. Ganz einfaches Beispiel:


    Virtueller Schalter: an --> Deckenlicht Küche: an

    Virtueller Schalter: aus --> Deckenlicht Küche: aus, Deckenlicht Wohnzimmer: aus, Deckenlicht Schreibtisch: aus


    Hintergrund ist eben, dass ich Alexa das Ganze als Szene verkaufen will, die ich sowohl mit Siri als auch mit Alexa starten kann. Nun passiert aber folgendes: Ich sage: "virtueller Schalter aus", die Lampen gehen alle aus.. Dann drücke ich innerhalb der App den Button für das Deckenlicht in der Küche und sage danach nochmal: "virtueller Schalter aus". Nix passiert, denn er ist ja bereits aus. Natürlich könnte ich 3 Automationen mehr erstellen, die dann auch jedes Mal den virtuellen Schalter triggern.. will ich aber nicht. Ich hatte eigentlich gedacht, dass ich den virtuellen Schalter auch dann ausschalten kann, wenn er bereits aus ist. So ist es jedenfalls mit sämtlichen Schaltern anderer Plugins (webhooks, http-switch, http-dimmer). Nur eben mit dem Dummy funktioniert es nicht. Wo macht denn da Homebridge nun wieder unterschiede? Liegt es am Plugin, welches das doppelte schalten untersagt?


    Nachtrag:

    Hab jetzt "Fake Schalter" mit Webhooks gebaut, da geht das "doppelte Ausschalten". Trotzdem frage ich mich, warum es mit dem dummy-plugin nicht funktioniert. Ein Schalter in Homekit ist doch letztendlich auch blos ein Schalter, egal über welches Plugin oder irre ich mich?

    Einmal editiert, zuletzt von hyxamp ()

  • Nix passiert, denn er ist ja bereits aus. Natürlich könnte ich 3 Automationen mehr erstellen, die dann auch jedes Mal den virtuellen Schalter triggern.. will ich aber nicht. Ich hatte eigentlich gedacht, dass ich den virtuellen Schalter auch dann ausschalten kann, wenn er bereits aus ist.

    Du kannst den virtuellen Schalter ja auch ausschalten, wenn er schon aus ist. Das hilft dir bloß nix, weil deine Automationen nicht auf den aktuellen Status reagieren, sondern nur auf eine Veränderung des Status. Also passiert nix mehr: wenn man einen ausen Schalter noch mal aus macht, dann ändert sich ja kein Status.


    Ich verwende daher homebridge-delay-switch als virtuellen Schalter Der ist so konfiguriert, dass er den virtuellen Schalter nach einer Sekunde wieder ausschaltet, wenn ich ihn eingeschaltet habe. Er wird damit sozusagen einem Reset unterzogen.

  • Hmm stimmt, die Automation reagiert nicht. Das "aus" Signal des Schalters wird erneut gesendet, wenn er bereits auf "aus" steht. Daran liegt es nicht.


    Aber ich möchte ja jetzt nicht für jeden Zustand extra einen Schalter anlegen müssen. Bei dem Beispiel mit dem Licht, wie würde dann bei dir der Befehl via Spracheingabe lauten? "Licht an an" und "Licht aus an"? Im Moment habe ich die Automation direkt in meiner json.config hinterlegt (automationen mit ios 13.3 klappen bei mir derzeit sowieso nicht wie sie sollen), aber glücklich bin ich damit auch irgendwie nicht zu 100%.


    Nachtrag: Ich hatte mir jetzt überlegt, meine Automationen in eine bash zu packen und dann über ein cmd plugin ausführen zu lassen. Sollte im Falle vom doppelten Ausschalten auch funktionieren und ich bin nicht so Abhängig von den IOS - Macken. Jetzt habe ich aber auch ein paar relativ lange Automationen mit einigen Delays drin. Das führt dazu, dass Siri oder Alexa mir beim Ausführen ein "Gerät antwortet nicht" entgegenbringt. Ausgeführt werden die Skripte aber trotzdem bis zum Schluss, nur geduldig sind beide Damen nicht unbedingt. Mit Plugins wie cmdtrigger geht es, aber ich würde gern die "an" sowie "aus" - Stellung des Schalters nutzen. Hast du irgendeine Idee, wie ich die Skripte ausführen kann, ohne das die Home App bzw. Siri/Alexa ewig auf eine Rückmeldung warten?


    Ich hatte es bereits so probiert:

    pi@raspberrypi:~ $ bash /home/homebridge/automation.sh &


    Klappt via Terminal und SSH ganz ausgezeichnet. Wenn ich das Kommando in mein Plugin übernehme, wird allerdings wieder wie üblich auf eine Antwort gewartet.


    Code
    "accessories": [
        {
            "accessory": "CMD",
            "name": "Test",
            "on_cmd": "bash /home/homebridge/automation.sh &",
            "off_cmd": "bash /home/homebridge/automation2.sh &"
        }
    ]


    Hast du eine Idee?


    Viele Grüße

    2 Mal editiert, zuletzt von hyxamp ()

  • Hast du eine Idee?

    Darf ich mal die Skripte sehen?

  • Klar. Also das gesamte Skript ist vielleicht ein bisschen viel, bin auch noch am basteln, ich kürze es mal ein wenig ab (ist blos noch ein Skript für alle Automationen..):



    Ist mein erstes Skript.. bisher funktioniert es. Der Zugriff auf python3 dauert relativ lange und später sind noch ein paar längere delays dabei, die den Programmablauf verzögern. Ich hatte gehofft das es irgendeine Möglichkeit gibt, das Skript zu starten und im Hintergrund laufen zu lassen, sodass Siri/Alexa nicht schimpfen. Ich meine es funktioniert ja.. aber mich stört es dann trotzdem. Das es eine Weile dauert eh dann die komplette Automation durchgelaufen ist, weis ich ja. Nur müssen mir die Damen dann nicht noch zusätzlich in den Ohren liegen.


    Mit cmdtrigger funktioniert es ja wie gesagt und sollte ähnlich ablaufen wie mit homebridge-delay-switch. Ich weis nur nicht wie ich die Schalter dann Sinnvoll benennen soll, wenn für jeden Zustand schon ein einzelner her muss. Den Schalter "Licht an" zu nennen führt nicht zum Ziel, da ich ihn dann beim Sprachassi meiner Wahl mit "Licht an an" aufrufen muss.

    4 Mal editiert, zuletzt von hyxamp ()

  • Ich hatte eben noch probiert das & direkt hinter dem Python3 Befehl zu schreiben und dann das Skript entsprechend auszuführen.. Klappt im Terminal sehr gut, ich lande direkt wieder in der Konsole und muss nicht warten, bis python3 dann tatsächlich fertig ist. Der Schalter in Homebridge lässt sich allerdings nicht lumpen und wartet trotzdem nach meinem Geschmack zu lange.