Sprachbefehl per openHAB an Chromecast übermitteln
-
- Beiträge: 3
- Registriert: 11. Jan 2019 21:22
Sprachbefehl per openHAB an Chromecast übermitteln
Hallo,
ich möchte gern folgenden Usecase Umsetzen:
openHab sendet an den Google Chromcast einen Befehl, den ich sonst nur per Spracheingabe ausführen kann.
z.B.
"OK Google - wie wird das Wetter heute" oder noch wichtiger
"OK Google - spiel Radio PSR in der Küche"
Das soll dann per Sonoff Tastendruck los gehen - das bekomme ich aber hin.
lösst sich das irgendwie umsetzen?
ich möchte gern folgenden Usecase Umsetzen:
openHab sendet an den Google Chromcast einen Befehl, den ich sonst nur per Spracheingabe ausführen kann.
z.B.
"OK Google - wie wird das Wetter heute" oder noch wichtiger
"OK Google - spiel Radio PSR in der Küche"
Das soll dann per Sonoff Tastendruck los gehen - das bekomme ich aber hin.
lösst sich das irgendwie umsetzen?
-
- Beiträge: 226
- Registriert: 11. Aug 2019 06:39
Re: Sprachbefehl per openHAB an Chromecast übermitteln
Irgendwie verstehe ich das Problem nicht ganz
Ich fasse mal zusammen was ich aus deinen Text interpretiere ....
Google Home nimmt die Sprachbefehle entgegen und soll das Musik zum Chromecast schicken?
Was hat der Sonoff Schalter damit zutun?
Google Home in openhab eingebunden?
https://www.openhab.org/docs/ecosystem/ ... assistant/
Chromcast Binding installiert?
https://www.openhab.org/addons/bindings ... st-binding
Schon eine Rule oder Items dafür erstellt?
Edit: Wo ich jetzt noch mal gelesen habe... Die Sprachbefehle funktionieren und du willst das auch über einen Sonoff Taster ausführen ... ohne Spracheingabe?
Wenn dem so ist muss du nur das Chromecast Binding installieren und dann kannst du über eine Rule alles steuern....
Ich fasse mal zusammen was ich aus deinen Text interpretiere ....
Google Home nimmt die Sprachbefehle entgegen und soll das Musik zum Chromecast schicken?
Was hat der Sonoff Schalter damit zutun?
Google Home in openhab eingebunden?
https://www.openhab.org/docs/ecosystem/ ... assistant/
Chromcast Binding installiert?
https://www.openhab.org/addons/bindings ... st-binding
Schon eine Rule oder Items dafür erstellt?
Edit: Wo ich jetzt noch mal gelesen habe... Die Sprachbefehle funktionieren und du willst das auch über einen Sonoff Taster ausführen ... ohne Spracheingabe?
Wenn dem so ist muss du nur das Chromecast Binding installieren und dann kannst du über eine Rule alles steuern....
-
- Beiträge: 3
- Registriert: 11. Jan 2019 21:22
Re: Sprachbefehl per openHAB an Chromecast übermitteln
Hallo eiGelbGeek,
das mit dem Sonoff ist tatsächlich nur Infozugabe.
Ich habe den ChromeCast (=Google Home) schon eingebunden und kann den auch ansprechen
Chromecast Binding ist installiert
chromecast.things
So bekomme ich eine Sprachausgabe über eine Rule zum Chromecast
Nun möchte ich das was ich sonst über einen Sprachbefehl an den ChromeCast sende als "openHAB Befehl" absetzen.
Anwendungsbeispiel ist der Besagte Befehl "OK Google - spiel Radio PSR in der Küche".
(Küche ist übrigens ein Audiocast)
hier finde ich keine Möglichkeit eine Anweisung zu senden
https://www.openhab.org/addons/bindings/chromecast/
das mit dem Sonoff ist tatsächlich nur Infozugabe.
Ich habe den ChromeCast (=Google Home) schon eingebunden und kann den auch ansprechen
Chromecast Binding ist installiert
chromecast.things
Code: Alles auswählen
chromecast:audio:GEWohnzimmer [ ipAddress="192.168.xx.xx" ]
Code: Alles auswählen
playSound("chromecast:audio:GEWohnzimmer", "doorbell.mp3")
Anwendungsbeispiel ist der Besagte Befehl "OK Google - spiel Radio PSR in der Küche".
(Küche ist übrigens ein Audiocast)
hier finde ich keine Möglichkeit eine Anweisung zu senden
https://www.openhab.org/addons/bindings/chromecast/
-
- Beiträge: 226
- Registriert: 11. Aug 2019 06:39
Re: Sprachbefehl per openHAB an Chromecast übermitteln
Ja dann must du doch nur eine Rule schreiben die mit dem Chromecast Binding spricht oder täusche ich mich da jetzt?
Beispielhaft mal hier eine extreme vereinfachte Rule
Beispielhaft mal hier eine extreme vereinfachte Rule
Code: Alles auswählen
rule"Chromecast - Play Radiostream"
when
Item Play_Radio_Switch changed from OFF to ON
then
playStream("chromecast:audio:GEWohnzimmer","http://URL_FÜR_DEINEN/stream.mp3")
end
-
- Beiträge: 226
- Registriert: 11. Aug 2019 06:39
Re: Sprachbefehl per openHAB an Chromecast übermitteln
Was natürlich auch geht und sicherlich sinnvoller ist.....
playuri ein Item (String) zuweisen und dann dem Item die URL übergeben.
Das ganze kannst du natürlich mit einen Switch Case versehen ... dann haste gleich mehrere Sender
playuri ein Item (String) zuweisen und dann dem Item die URL übergeben.
Code: Alles auswählen
rule"Chromecast - Play Radiostream"
when
Item Play_Radio_Switch changed from OFF to ON
then
PLAYURI_ITEM.sendCommand("http://URL_FÜR_DEINEN/stream.mp3")
end
Code: Alles auswählen
rule "Radiostream umschalten"
when
Item Play_Radio_NUMBER_ITEM changed
then
switch (Play_Radio_NUMBER_ITEM.state){
case 1: {
PLAYURI_ITEM.sendCommand("http://URL_FÜR_DEINEN/stream1.mp3")
Play_Radio_NUMBER_ITEM.postUpdate(0)
}
case 2: {
PLAYURI_ITEM.sendCommand("http://URL_FÜR_DEINEN/stream2.mp3")
Play_Radio_NUMBER_ITEM.postUpdate(0)
}
case 3: {
PLAYURI_ITEM.sendCommand("http://URL_FÜR_DEINEN/stream3.mp3")
Play_Radio_NUMBER_ITEM.postUpdate(0)
}
case 4: {
PLAYURI_ITEM.sendCommand("http://URL_FÜR_DEINEN/stream4.mp3")
Play_Radio_NUMBER_ITEM.postUpdate(0)
}
}
end
Du hast keine ausreichende Berechtigung, um die Dateianhänge dieses Beitrags anzusehen.
-
- Beiträge: 3
- Registriert: 11. Jan 2019 21:22
Re: Sprachbefehl per openHAB an Chromecast übermitteln
OK. Das mit dem Radio geht auf diesem Weg. Das habe ich hin bekommen und damit schon mal ein Thema erschlagen.
Ich hatte aber eben im Sinn einen beliebigen Sprachbefehl an den Chromecast zu senden. Von daher ist das Radio Beispiel sicher nicht das Beste gewesen.
Als anderes Beispiel für diese Problemstellung:
Der Sprachbefehl "Brauche ich morgen einen Regenschirm?" - soll per openHAB an den Chromecast gesendet werden und der soll antworten.
Ich hatte aber eben im Sinn einen beliebigen Sprachbefehl an den Chromecast zu senden. Von daher ist das Radio Beispiel sicher nicht das Beste gewesen.
Als anderes Beispiel für diese Problemstellung:
Der Sprachbefehl "Brauche ich morgen einen Regenschirm?" - soll per openHAB an den Chromecast gesendet werden und der soll antworten.
- Steinspiel
- Beiträge: 394
- Registriert: 28. Dez 2019 08:49
Re: Sprachbefehl per openHAB an Chromecast übermitteln
Moin,
Der Thread ist zwar schon etwas älter, aber es ist genau das wobei ich im Moment nicht weiterkomme...
Mein Ziel ist auch:
- einen Sprachbefehl an "GoogleHome mini" schicken (ok googel, wie spät ist es) und "GoogleHome mini" antwortet darauf
- zu einem bestimmten Zeitpunkt per Rules einen Radiostream auf "GoogleHome mini" abspielen.
-openHAB Cloud ist installiert, konfiguriert und funkioniert -> kann mit der GoogleHome App oder per Sprache openHAB Items steuern.
-Chromecast Binding ist installiert und hat alle meine Chromecast Geräte erkannt.Soweit so gut...
Zum testen habe ich erstmal nur einen "GogleHome mini" in PAPER UI als Things eingefügt und von dort nur die Channels "Fernbedienung" (Player) und "Lautstärke" (Dimmer) als Items in PAPER UI übernommen.
Der "GogleHome mini" hat übrigends in der Fritz!Box eine feste IP Adresse und ist in PAPER UI/Inbox/System als Audioausgang angegeben
Mit "VS Code" habe ich dann eine extra Item Datei für diese Geräte erstellt
Aber das war es dann auch schon! In PAPER UI ist kein Thing "Chromecast" o.ä. zu sehen. Ich weiß nicht wo ich die Daten für ein "Chromecast Thing" herbekommen soll (lt. Chromecast Doku brauche ich auch ne Port Adresse) um es in einer Regel wie diese hier zu benutzen!
Habe ich da völlig was übersehen oder missverstanden, geht das überhaupt?
Ach ja, weil ich so gar nicht weiter gekommen bin habe ich "Mary Text-to-Speech" installiert ("Google Cloud Text-to-Speech" schien mir zu kompliziert zu ein), damit kann ich Sound und Sprache (TTS) auf den "GoogleHome mini" ausgeben, aber das hat ja wohl nichts mit Chromecast zu tun, oder?
Der Thread ist zwar schon etwas älter, aber es ist genau das wobei ich im Moment nicht weiterkomme...
Mein Ziel ist auch:
- einen Sprachbefehl an "GoogleHome mini" schicken (ok googel, wie spät ist es) und "GoogleHome mini" antwortet darauf
- zu einem bestimmten Zeitpunkt per Rules einen Radiostream auf "GoogleHome mini" abspielen.
-openHAB Cloud ist installiert, konfiguriert und funkioniert -> kann mit der GoogleHome App oder per Sprache openHAB Items steuern.
-Chromecast Binding ist installiert und hat alle meine Chromecast Geräte erkannt.Soweit so gut...
Zum testen habe ich erstmal nur einen "GogleHome mini" in PAPER UI als Things eingefügt und von dort nur die Channels "Fernbedienung" (Player) und "Lautstärke" (Dimmer) als Items in PAPER UI übernommen.
Der "GogleHome mini" hat übrigends in der Fritz!Box eine feste IP Adresse und ist in PAPER UI/Inbox/System als Audioausgang angegeben
Mit "VS Code" habe ich dann eine extra Item Datei für diese Geräte erstellt
Code: Alles auswählen
Dimmer Mini_LautstRke "mini_laut_leise" {channel="chromecast:chromecast:ed035dda9f43c54d5666655f69931c54:volume"}
Player Mini_Fernbedienung "mini_player" {channel="chromecast:chromecast:ed035dda9f43c54d5666655f69931c54:control"}
Code: Alles auswählen
rule "GHmini_test"
when
Time cron "* * 6 ? * * *"
then
CHROMECAST ??? -> "ok googel, wie spät ist es"
end
Ach ja, weil ich so gar nicht weiter gekommen bin habe ich "Mary Text-to-Speech" installiert ("Google Cloud Text-to-Speech" schien mir zu kompliziert zu ein), damit kann ich Sound und Sprache (TTS) auf den "GoogleHome mini" ausgeben, aber das hat ja wohl nichts mit Chromecast zu tun, oder?
Code: Alles auswählen
rule "tts_test"
when Time cron "* * 6 ? * * *"
then
say("es ist sechs uhr")
playSound("doorbell.mp3")
end
bis dann, Steinspiel
-
- Beiträge: 40
- Registriert: 20. Jan 2020 15:51
Re: Sprachbefehl per openHAB an Chromecast übermitteln
Hallo,
ich habe keinen Chromecast und kann mich daher auch irren, aber vom reinen Durchlesen des Chromecast Bindings sieht es nicht so aus, als könnte man dem Chromecast direkt Textbefehle zuschicken. Es scheint generell nicht der Fall zu sein, dass man dem Google Assistant Sprachbefehle in Textform füttern kann. Das einzige, was tatsächlich zu gehen scheint, ist die Wiedergabe einer beliebigen URL, aber das ist nichts, was dir hier helfen würde.
Alles, was dir da bleibt, ist deine Befehle, ob du heute einen Regenschirm brauchst, selbst zu implementieren. Ich beispielsweise bekomme jeden Morgen vor der Arbeit eine Nachricht auf alle Handies (ich habe keine Smart Speaker, über die ich es vorlesen lassen könnte), wie hoch die Regenwahrscheinlichkeit ist und ob ich also einen Schirm einpacken sollte. Dafür kannst du diverse Wetter-Bindings verwenden, wie bspw. dieses:
https://www.openhab.org/addons/bindings/weather1/
Das ganze direkt von Google abwickeln zu lassen scheint mir bislang unmöglich. Hat vermutlich auch etwas mit Absicherung zutun. Es braucht eine gewisse Weile, bis ein Mensch einen Sprachbefehl formuliert und ausgesprochen hat, ein Computer könnte den Chromecast aber mit Millionen Anfragen pro Sekunde beschießen. Nicht das es dafür keine Lösungen gäbe, aber ich vermute, Google sah so eine Funktionalität einfach als unnötig an und bietet daher am Chromecast gar keine API dafür.
MfG.
Timtam
ich habe keinen Chromecast und kann mich daher auch irren, aber vom reinen Durchlesen des Chromecast Bindings sieht es nicht so aus, als könnte man dem Chromecast direkt Textbefehle zuschicken. Es scheint generell nicht der Fall zu sein, dass man dem Google Assistant Sprachbefehle in Textform füttern kann. Das einzige, was tatsächlich zu gehen scheint, ist die Wiedergabe einer beliebigen URL, aber das ist nichts, was dir hier helfen würde.
Alles, was dir da bleibt, ist deine Befehle, ob du heute einen Regenschirm brauchst, selbst zu implementieren. Ich beispielsweise bekomme jeden Morgen vor der Arbeit eine Nachricht auf alle Handies (ich habe keine Smart Speaker, über die ich es vorlesen lassen könnte), wie hoch die Regenwahrscheinlichkeit ist und ob ich also einen Schirm einpacken sollte. Dafür kannst du diverse Wetter-Bindings verwenden, wie bspw. dieses:
https://www.openhab.org/addons/bindings/weather1/
Das ganze direkt von Google abwickeln zu lassen scheint mir bislang unmöglich. Hat vermutlich auch etwas mit Absicherung zutun. Es braucht eine gewisse Weile, bis ein Mensch einen Sprachbefehl formuliert und ausgesprochen hat, ein Computer könnte den Chromecast aber mit Millionen Anfragen pro Sekunde beschießen. Nicht das es dafür keine Lösungen gäbe, aber ich vermute, Google sah so eine Funktionalität einfach als unnötig an und bietet daher am Chromecast gar keine API dafür.
MfG.
Timtam
- Steinspiel
- Beiträge: 394
- Registriert: 28. Dez 2019 08:49
Re: Sprachbefehl per openHAB an Chromecast übermitteln
Moin,
Bleibt mein Chromecast Problem: durch das Chromecast Binding sehe ich ja alle meine Chromecast Geräte. Wie gestalte ich die Regel das ein Sound oder eine URL auf ein bestimmtes Gerät ausgegeben wird, wie z.B. den Mini wo ich die Geräte ID ja habe aber auch zig Channels und ich weiß nicht welchen ich wie nehmen soll und die die ich probiert habe funktionieren nicht.
Ich konnte bisher nichts dazu finden deshalb würde mir ein kleines Beispiel reichen...
Jut, das verstehe ich! Wenn man es sich noch mal genau durchliest dann hat "andohb" es auch nicht geschafft einen dieser Sprachbefehle in Textform von einer Regel aus an GooglHome Assistent zu schicken. Vielleicht hast Du ja Recht mit Deiner Vermutung das es ein Sicherheitsding ist das das nicht funktioniert.
Bleibt mein Chromecast Problem: durch das Chromecast Binding sehe ich ja alle meine Chromecast Geräte. Wie gestalte ich die Regel das ein Sound oder eine URL auf ein bestimmtes Gerät ausgegeben wird, wie z.B. den Mini wo ich die Geräte ID ja habe aber auch zig Channels und ich weiß nicht welchen ich wie nehmen soll und die die ich probiert habe funktionieren nicht.
Ich konnte bisher nichts dazu finden deshalb würde mir ein kleines Beispiel reichen...
bis dann, Steinspiel
-
- Beiträge: 40
- Registriert: 20. Jan 2020 15:51
Re: Sprachbefehl per openHAB an Chromecast übermitteln
Das scheint tatsächlich recht einfach zu sein. Ich habe es kurz gegooglet und das hier gefunden:
https://community.openhab.org/t/chromec ... room/39994
Kurz zusammengefasst:
1. Ein Thing mit deinem Google Home anlegen. Das dürfte dann ja ein chromecast:audio Thing sein.
2. Wiedergabe einer beliebigen URL funktioniert dann in einer Rule simpel wie folgt:
als ersten Parameter einfach den Namen deines Google Home eintragen. Angeblich solls das schon gewesen sein... .
https://community.openhab.org/t/chromec ... room/39994
Kurz zusammengefasst:
1. Ein Thing mit deinem Google Home anlegen. Das dürfte dann ja ein chromecast:audio Thing sein.
2. Wiedergabe einer beliebigen URL funktioniert dann in einer Rule simpel wie folgt:
Code: Alles auswählen
playStream("chromecast:audio:hier_beliebigen_namen_des_things_einfuegen","http://st01.dlf.de/dlf/01/128/mp3/stream.mp3") // spielt scheinbar Deutschlandfunk ab, es kann aber natuerlich auch jede andere URL eingetragen werden