Now I can control some features from my Yamaha Musiccast Speakers through Google Chat (formerly known as Hangouts)
First the Hangouts integration should be enabled:
https://www.home-assistant.io/integrations/hangouts/
Next, some intents can be created in configuration.yaml:
hangouts:
intents:
Zachter:
sentences:
- zachter
- alles zachter
Harder:
sentences:
- harder
- alles harder
Radio2:
sentences:
- luister naar radio twee
- luister naar radio2
- luister naar radio 2
- radio2
- radio 2
- radio twee
With the intents, there shoud be Intent Scripts:
intent_script:
Radio2:
speech:
text: De speakers worden aangezet op radio 2
action:
- service: media_player.turn_on
target:
entity_id:
- media_player.keuken
- media_player.study
- service: media_player.media_play
target:
entity_id:
- media_player.keuken
- media_player.study
- service: rest_command.radio2
Radio10:
speech:
text: De speakers worden aangezet op radio 10
action:
- service: media_player.turn_on
target:
entity_id:
- media_player.keuken
- media_player.study
- service: media_player.media_play
target:
entity_id:
- media_player.keuken
- media_player.study
- service: rest_command.radio10
Zachter:
speech:
text: Alles wordt zachter gezet
action:
- service: rest_command.zachterstudy
- service: rest_command.zachterkeuken
Harder:
speech:
text: Alles wordt harder gezet
action:
- service: rest_command.harderstudy
- service: rest_command.harderkeuken
And some rest commands are required to really send the commands to the speakers:
(mind that the radio stations should be bookmarked from the Musiccast App first)
rest_command:
radio2:
url: http://192.168.1.171/YamahaExtendedControl/v1/netusb/recallPreset?zone=main&num=1
method: get
radio10:
url: http://192.168.1.171/YamahaExtendedControl/v1/netusb/recallPreset?zone=main&num=2
method: get
zachterstudy:
url: http://192.168.1.171/YamahaExtendedControl/v1/main/setVolume?volume=down&step=5
method: get
zachterkeuken:
url: http://192.168.1.172/YamahaExtendedControl/v1/main/setVolume?volume=down&step=5
method: get
harderstudy:
url: http://192.168.1.171/YamahaExtendedControl/v1/main/setVolume?volume=up&step=5
method: get
harderkeuken:
url: http://192.168.1.172/YamahaExtendedControl/v1/main/setVolume?volume=up&step=5
method: get
Now, Just send a message like ‘Radio 2’ to the configured Google Hangouts account and see what happens.
Off course, you should configure Hangouts so it only accepts messages from known accounts.