Using purely the haaska or NabuCasa smart home skill, can I say something like “Alexa, play [Spotify Playlist] on [Sonos speaker name]” or “Alexa, play [Spotify Playlist] in [Room Name]” (which should play on the Sonos speaker and not Alexa itself)?
I just integrated Alexa into my HA setup using haaska. Before, I had the Sonos skill enabled on Alexa. With my new integration, I removed the Sonos skill thinking that I can replace it completely with the haaska Smart Home skill. After playing around with the new setup, I learned that the Smart Home skill is limited in the ways you can ask Alexa do things. There are two main features I am missing right now: to tell Alexa which song/playlist etc. to play and on which speaker. Is this truly a limitation or am I missing a step in my configuration (see below)?
My workaround so far has been to use scenes (scripts), but that means I have to hard code every combination I want to trigger and calling these scenes are awkward (“turn on…” rather than “play…”).
Here is the configuration I am currently using:
configuration.yaml (note that I set up the Sonos devices as SPEAKER, not TV - correct?)
sonos:
media_player:
hosts:
- 192.168.1.xx
- 192.168.1.yy
alexa:
smart_home:
filter:
include_entities:
- group.speakers
- group.all_lights
- script.alexa_morning_radio
- script.alexa_kitchen_radio
- script.alexa_workout
- script.watch_atv
- script.watch_tv
- script.turnoff_tv
include_domains:
- light
- media_player
entity_config:
light.schlafzimmer:
name: Schlafzimmerlicht
description: all bedroom lights
light.buro:
name: Bürolicht
description: Alle Lichter im Büro
media_player.schlafzimmer_sonos:
name: Sonos Schlafzimmer
description: Sonos speaker in bedroom
display_categories: SPEAKER
media_player.bad_sonos:
name: Sonos Bad
description: Sonos speaker in bathroom
display_categories: SPEAKER
media_player.buro_sonos:
name: Sonos Büro
description: Sonos speaker in office
display_categories: SPEAKER
media_player.wohnzimmer_sonos:
name: Sonos Wohnzimmer
description: Sonos speaker in livingroom
display_categories: SPEAKER
scripts.yaml (I consider these workarounds since I have to create one scene for each playlist I want to play through Alexa)
alexa_morning_radio:
alias: "Morgenradio"
sequence:
- service: media_player.select_source
data:
entity_id: media_player.schlafzimmer_sonos
source: 'SRF 4 News'
- service: media_player.volume_set
data:
entity_id: media_player.schlafzimmer_sonos
volume_level: 0.1
alexa_kitchen_radio:
alias: "Küchenradio"
sequence:
- service: media_player.select_source
data:
entity_id: media_player.wohnzimmer_sonos
source: 'SRF 4 News'
- service: media_player.volume_set
data:
entity_id: media_player.wohnzimmer_sonos
volume_level: 0.3
I have not set up any groups inside Alexa.
Thanks for any suggestions that might improve my current setup.