Ich habe mir einen kleinen Testsprachassistenten gebaut und eine Automation, welche auf die Sprachbefehle reagiert. Funktioniert soweit ganz gut.
In der Zukunft möchte ich allerdings verschiedene Automationen für verschiedene Räume nutzen.
Wenn ich im Wohnzimmer „Stehlampe an“ sage, dann möchte ich dass im Wohnzimmer die Stehlampe eingeschaltet wird. Im Schlafzimmer soll der gleiche Befehl die Schlafzimmerstehlampe schalten.
Wie macht man das? Kann ich dem Trigger irgendwie mit der Quelle verknüpfen?
Rein von der Logik her: Wenn es mehrere Stehlampen gibt, woher soll HA dann wissen welche dieser Stehlampen mit dem Befehl “Stehlampe an” gemeint ist?
Das würde nur funktionieren wenn HA auswerten würde über welches Gerät der Sprachbefehl empfangen wurde. Also nach dem Motto. Wenn das Gerät A (z.B. Nest Lautsprecher/Hub 1) im Schlafzimmer den Befehl “Stehlampe an” empfangen hat dann schalte die Stehlampe im Schlafzimmer an. Wenn das Gerät B (z.B. Nest Lautsprecher/Hub 2) im Wohnzimmer den Befehl “Stehlampe an” empfangen hat dann schalte die Stehlampe im Wohnzimmer an.
Mit Google Home und z.B. Nest Lautsprecher oder Hub, wäre das z.B. nicht möglich, eben weil diese nicht an HA melden über welchen Nest Lautsprecher oder Hub ein Befehl empfangen wurde. Zumindest kenne ich dazu/dafür keine Möglichkeit. Wie das dann mit anderen Geräten zur Sprachsteuerung aussieht: Keine Ahnung.
Weiß nicht, was Du da genau als Sprachassistenten am Start hast.
Bei dem Home Assistant Voice, hast Du eine Assist Entität (assist_satellite.xyz), die angibt ob dieser gerade aktiv ist oder nicht.
zu funktionieren (hab noch keine wirkliche zweite Station). Aktionen werden jetzt nur noch ausgeführt, wenn dieser Satellite den Trigger ausgelöst hat.
Wenn Du jetzt möchtest das die Stehlampe im Schlafzimmer eingeschaltet wird, wenn der Satellit im Schlafzimmer verwendet wird und die Stehlampe im Wohnzimmer eingeschaltet wird, wenn der Satellit im Wohnzimmer verwendet wird, musst Du nur wissen, welcher Satellit aktuell mit der Verarbeitung beschäftigt ist.
Das heisst Du fragst ab sich der betroffenen Satellit gerade im Zustand Verarbeiten befindet und je nach dem welcher gerade eine Anfrage bearbeitet, dementsprechend wird die zughörige Aktion ausgeführt.
Dann sollte die Aktion so aussehen.
Ok, ist auch eine Lösungsmöglichkeit. Wenn ich wirklich die zweite Station fertig habe, werde ich sehen, ob ich doch auf deinen Weg umschwenken muss.
Mit meiner Filter-Condition kann ich unterschiedliche Automationen für unterschiedliche Räume schreiben (bzw. die gleiche Automation für unterschiedliche Räume nur andere Ziel-Entitäten). Ich frage mich allerdings, wie das System das verkraftet, wenn große Listen mit den gleichen Triggern mehrmals in unterschiedlichen Automationen auftreten und was das für die Ausführungsgeschwindigkeit/Reaktionszeit bedeutet.