Auf Google nest antworten der das HA Script gestartet hat

Hallo Zusammen,

ich habe ein Automatisierungs Script das per Sprachbefehl vom Google Nest getriggert wird.

Wie kann ich in meinem Script rausfinden welcher von meinen Google Nest mein Script getriggert hat um meine Antwort dort wieder auszugeben?

Ist ansonsten blöd wenn ich Google Nest im Erdgeschoß befrage und die Antwort im Dachgeschoß ausgegeben wird.

Gruß, André

Hi,

m.W. leider gar nicht weil Google per Chromecast HA nicht mitteilt welches Nest Gerät der Auslöser war.

Wie hatten vor einige Tagen ein ähnliche Thema und da der User @metallmanu geschrieben das es funktionieren/helfen soll die Nest Geräte unter HA den Räumen zuzuordnen:

BTW: Obwohl ich diese HA Raumzuordnung noch gar nicht gemacht habe, habe ich bei mir in letzter Zeit (so seit ca. 2 - 4 Wochen) festgestellt das - im Gegensatz zu früher - jetzt nur noch die Antwort bei dem Gerät erfolgt bei dem auch die Frage gestellt und somit das Script bei HA ausgelöst wurde. Ob sich das ggf. durch ein Update bei Google Home irgendwie geändert hat, oder warum auch immer, weiß ich nicht. Auf jeden Fall hat früher jeder meiner Nest Hub die Antwort abgespielt und das scheint sich jetzt irgendwie geändert zu haben. Endgültig und zu 100% kann ich das aber jetzt noch nicht beurteilen. :slightly_smiling_face:

Edit und ups: :slightly_smiling_face: Korrektur ich habe - wann auch immer - die HA Raumzuordnung doch schon gemacht. :rofl:

VG Jim

Okay, ich hatte schon geahnt das es nicht so ohne weiteres geht.

Die Google Lautsprecher hatte ich schon den jeweiligen Räumen zugeordnet.
Nur muss ich ja in meiner Automatisierung/Script angeben auf welchem Mediaplayer er antworten soll.

Wenn ich “all” Eintrage kommt die Antwort auf allen Google Lautsprechern.

Gruß, André

Wie sieht der yaml-Code bei einem entsprechenden Script bei Dir denn genau aus? Kannst Du hier mal ein Beispiel davon posten. Also z.B. so:

data:
  entity_id:
    - media_player.nest_hub_wohnzimmer
    - media_player.nest_hub_kuche
    - media_player.nest_hub_arbeitszimmer
  message: >-
    Die Anzahl der Brennerbetriebsstunden beträgt aktuell {{
    states('sensor.wolf_cgb2_0x03_180035_brennerbetriebsstunden') }}
action: tts.cloud_say

VG Jim

Mein Script sieht so aus:

action: tts.speak
metadata: {}
data:
  cache: true
  message: >
    {% for fenster in states.binary_sensor |
    selectattr('attributes.device_class', 'in', ['window', 'door']) |
    selectattr('state', 'eq', 'on') -%} {% if loop.first and loop.length > 1
    %}Die {% endif -%} {% if loop.first and loop.length == 1 %}Das {% endif -%}
    {% if loop.last and loop.length > 1 %} und {% endif -%} {{ fenster.name -}}
    {% if not loop.last and loop.length - loop.index > 1 %}, {% endif -%} {% if
    loop.last and loop.length == 1 %} ist offen!{% endif -%} {% if loop.last and
    loop.length > 1 %} sind offen!{% endif -%} {% else %}
      Alle Fenster sind geschlossen!
    {% endfor %}
  language: de
  media_player_entity_id: media_player.arbeitszimmer_nest
target:
  entity_id: tts.google_en_com

Gruß, André

Moin,

ich meinte eigentlich eher das/ein Beispiel-Script mit dem “all”, weil bei dem was Du jetzt gepostet hast erfolgt die Sprachausgabe dann ja eh nur bei dem media_player.arbeitszimmer_nest. :slightly_smiling_face:

VG Jim

Ich hatte probehalber im Script:

media_player_entity_id: all

Dann kommt die Ausgabe gleichzeitig auf allen Google Lautsprechern.

Gruß, André

Ähm - ja wenn explizit gesagt wird das die Sprachausgabe auf allen Media-Playern erfolgen soll wäre es ja auch schlecht wenn das dann nicht gemacht wird. :slightly_smiling_face:

Probier einfach mal was passiert wenn Du - so wie ich - die Media Player einzeln mit aufnimmst, also:

  entity_id:
    - media_player.nest_hub_wohnzimmer
    - media_player.nest_hub_kuche
    - media_player.nest_hub_arbeitszimmer

Wie gesagt kann ich nicht garantieren das das dann besser/richtig funktioniert und die Antwort dann nur bei dem Nest erfolgt bei dem auch die Spracheingabe erfolgt ist, aber bei mir hat sich - warum auch immer - da in letzter Zeit auf jeden Fall irgendetwas geändert und verbessert und bei mir quatschen dann nicht alle alle Nest Geräte los. :laughing: Was früher immer der Fall war.

VG Jim

Ich habe jetzt mal dein Beispiel von oben genommen und meine Google Nest als Medienplayer hinzugefügt. Klappt leider nicht wie gewünscht. Es quatschen dann auch alle los, egal über welchen Google Nest ich mein Script triggere.

Ich geb’s auf :neutral_face:

Gruß, André

Das ist natürlich schade das das bei Dir nichts bringt, aber wenn möglich lass das Script mit den einzeln gelisteten Nest mal weiterhin so laufen. Ich habe zwar keine Ahnung von der genauen Funktionsweise der Nest Geräte in Verbindung mit Google Home und der Cloud, aber irgendeine KI wird da vermutlich ja auch hinterstecken. D.h. theoretisch wäre es ja auch denkbar das die KI auch erst eine Weile braucht bis sie gerafft hat das es ggf. Sinn macht eine Antwort auch nur bei dem Nest Gerät abzuspielen wo auch die Frage per HA Script ausgelöst wurde. Keine Ahnung. :laughing:

Wie schon gesagt nutzt ich meine HA Scripte für die Google Sprachsteuerung hier bestimmt schon seit zwei oder drei Jahren so, ohne daran jemals etwas verändert zu haben. Früher war es bei mir hier auch so das dann quasi grundsätzlich alle Nest losgequatscht haben, aber das ist seit ein paar Wochen bei mir halt anders. Auch wenn ich nicht zu 100 % sagen und beurteilen kann ob das jetzt auch immer und durchgehend so ist. Aber auch der User @metallmanu hat ja geschrieben das es bei ihm über die Raumzuordnung funktioniert.

Da man bei Google Home oder Google Assistant da ja eigentlich auch nichts großartig zuordnen und einstellen kann und auch hier nicht,
HA_Google_Assi_Einstellungen
bleiben ja eigentlich nicht mehr wirklich viele Optionen warum es bei dem einen User (überwiegend) klappt und bei einem anderen User wieder (gar) nicht. Aber irgendeine Idee was Du noch ggf. ändern oder probieren könntest habe ich leider auch nicht mehr.

VG Jim

Nachdem ich in den letzten Tagen darauf mal mehr geachtet habe muss ich diese Aussage ein wenig revidieren. :slightly_smiling_face: Auch bei mir macht Google das weiterhin eher nach Lust und Laune, :rofl: d.h. manchmal erfolgt die Antwort per Sprachausgabe nur an dem Nest Hub an dem auch die Frage gestellt und somit das HA Script gestartet wurde, manchmal erfolgt die Antwort dann an zwei der drei Nest Hub und manchmal auch bei allen dreien. Somit macht es auch keinen Unterschied wenn man die Entität ID der Nest Hubs irgendwo einzeln eingetragen hat.

Wobei ich das hier

eigentlich immer noch so empfinde, sprich früher haben bei mir eigentlich immer alle drei Nest Hubs “losgequatsch”, was jetzt halt m.M.n. etwas seltener vorkommt.

VG Jim