--- layout: page title: "Sonos say script to speak with text-to-speech" description: "Sonos say script to use text-to-speech with Sonos" date: 2017-01-18 00:00 sidebar: true comments: false sharing: true footer: true ha_category: Automation Examples --- #### {% linkable_title Sonos say script to speak with text-to-speech %} This script allows you to use [TTS](/components/#text-to-speech) on Sonos. ```yaml script: sonos_say: alias: "Sonos TTS script" sequence: - service: media_player.sonos_snapshot data_template: entity_id: {% raw %}"{{ sonos_entity }}"{% endraw %} - service: media_player.sonos_unjoin data_template: entity_id: {% raw %}"{{ sonos_entity }}"{% endraw %} - service: media_player.volume_set data_template: entity_id: {% raw %}"{{ sonos_entity }}"{% endraw %} volume_level: {% raw %}"{{ volume }}"{% endraw %} - service: tts.voicerss_say data_template: entity_id: {% raw %}"{{ sonos_entity }}"{% endraw %} message: {% raw %}"{{ message }}"{% endraw %} - delay: {% raw %}"{{ delay }}"{% endraw %} - service: media_player.sonos_restore data_template: entity_id: {% raw %}"{{ sonos_entity }}"{% endraw %} ``` We call this now with: ```yaml automation: - alias: 'test' trigger: - platform: state entity_id: input_boolean.mytest action: - service: script.sonos_say data: sonos_entity: media_player.office volume: 0.5 message: 'Your husband coming home!' delay: '00:00:05' ``` Note that this example uses the `voicerss` text-to-speech platform. There are many platforms that can be used. The one installed by default with Home Assistant is Google TTS. This appears in your `configuration.yaml` file as: ``` tts: - platform: google ``` If you want to use this TTS engine, change the line in the example provided to: ``` - service: tts.google_say ```