Set a volume for tts.cloud_say?

Is it possible to set a volume for tts.cloud_say?

I would first like to play an effect and then output a notification via tts.cloud_say in a defined language.
I have set a volume but surprisingly the effect is played back in the same way but not the notification via tts.cloud_say

I have not yet found a way to play tts.cloud_say in a defined volume.

action:
  - service: sonos.snapshot
    metadata: {}
    data:
      with_group: true
      entity_id: media_player.soundbar
  - service: media_player.volume_set
    metadata: {}
    data:
      volume_level: 0.14
    target:
      device_id: 034dd1cf36cdb33b99f10563c6661fa3
  - service: media_player.play_media
    metadata:
      title: effect-for-logo-intro-186595.mp3
      thumbnail: null
      media_class: music
      children_media_class: null
      navigateIds:
        - {}
        - media_content_type: app
          media_content_id: media-source://media_source
    data:
      media_content_id: media-source://media_source/local/effect-for-logo-intro-186595.mp3
      media_content_type: audio/mpeg
    target:
      entity_id: media_player.soundbar
    enabled: true
  - delay:
      hours: 0
      minutes: 0
      seconds: 4
      milliseconds: 0
  - service: tts.cloud_say
    metadata: {}
    data:
      entity_id: media_player.soundbar
      message: 早晨,今日將係美好嘅一日。
      language: zh-HK
    enabled: true
  - service: sonos.restore
    metadata: {}
    data:
      with_group: true
      entity_id: media_player.soundbar

There’s a simpler way to do this using the announce option.

- id: al announce queue
  alias: al announce queue
  mode: queued
  max: 10  
  trigger:
    - platform: state
      entity_id: input_text.al_announce_queue
  action:
    - condition: "{{trigger.to_state.state != 'announced' }}"
    - service: media_player.play_media
      data:
        entity_id: media_player.kitchen
        media_content_id: >
           media-source://tts/google_translate?message="{{ trigger.to_state.state }}"
        media_content_type: music
        announce: true
        extra:
          volume: 40          
1 Like

Thanks a lot, i just want use a special announce melody but i got it working now, i had two issues, first i did not know how i get the media_content_id and second how i set up a volume for tts.cloud_say, your example helps me, i appreciate.

Here is my code what works great:

action:
  - service: media_player.play_media
    data:
      media_content_id: media-source://media_source/local/effect-for-logo-intro-186595.mp3
      media_content_type: audio/mpeg
      announce: true
      extra:
        volume: 40
    target:
      device_id: 034dd1cf36cdb33b99f10563c6661fa3
  - delay:
      hours: 0
      minutes: 0
      seconds: 4
      milliseconds: 0
  - service: media_player.play_media
    data:
      media_content_id: >-
        media-source://tts/cloud?message=%E7%94%9F%E7%97%85%E7%9C%9F%E4%BF%82%E5%A5%BD%E5%B7%AE&language=zh-HK&voice=HiuMaanNeural
      media_content_type: music
      announce: true
      extra:
        volume: 40
    target:
      device_id: 034dd1cf36cdb33b99f10563c6661fa3