Sonos `announce` feature doesn't play

Hello,

I am trying to configure announcements on Sonos speakers - specifically a Sonos Ray.

I am using the following service call:

service: media_player.play_media
target:
  entity_id: media_player.bedroom
data:
  media_content_id: >
    http://172.30.100.1:8123/local/audio/front-door.flac
  media_content_type: "music"
  announce: true
  extra:
    volume: 20

And nothing happens. However when I remove announce: true, the file plays back fine.

The speaker has S2 firmware, and is on the same network as HA with no firewall that would interfere.

I know that I can instead snapshot, play media, and restore but I would rather get the overlaid audio working. It seems from reading around that others have had success but I canā€™t see where I am going wrong.

Has anyone had experience with this?

Core: 2024.5.3
Supervisor: 2024.05.1
OS: 12.0
Frontend: 20240501.1

Thanks

This works for me:

  - service: media_player.play_media
    target:
      entity_id: media_player.kitchen
    data:
      announce: true
      media_content_type: music
      media_content_id: http://homeassistant.local:8123/local/sounds/bathroom_window.mp3
      extra:
        volume: 50
    enabled: true

Take a look at this post. The user experienced a problem with using announce in the recent release and has a work around. Check to see if you have the same issue.

What version are you running and which Sonos devices?

I donā€™t seem to get any response unless I remove announce: true. Otherwise the audio plays fine.

Thanks, unfortunately, that doesnā€™t fix anything for me.

  • Core 2024.4.4
  • Supervisor 2024.05.1
  • Operating System 12.3
  • Frontend 20240404.2

The speakers are all Sonos Play:1 - quite old now.

You tried changing it to something like this?

/media/local/Large%20Waterfall%20deep.mp3

I have tried playing from ā€˜mediaā€™ but an using a file served over basic HTTP. Neither is working unless I disable ā€˜announceā€™.

Which firmware version? The latest one is 16.2.

Thatā€™s the one that was released for use with the latest version of the Sonos app (version 80, the half-baked one thatā€™s laggy and missing features and downvoted into oblivion in both app stores).

1 Like

Honestly, not sure how to check in the app, I cannot see anything in the system pages in the new or old app.

Iā€™d presume the latest as it arrived on the launch day of the new app and an update was required as part of the setup.

A little upset with my choice to re-buy into Sonos at the moment. It doesnā€™t work with Qobuz very well, so Iā€™ve sideloaded the old app onto my phone - until that stops working anyway.

In Home Assistant, go to Settings ā†’ Devices, pick one of your Sonos speakers and its firmware version will be displayed in the Device Info section at the top of the page.

" Playing audio using the announce option or TTS requires TCP port 1443 on each Sonos device to be reachable from the Home Assistant host."

Perhaps a firewall problem.

I believe I have tried all proposed solutions regarding this issue I have found online. I have tried with different certificates (Letsencrypt and Google certified), tried different tts (piper and google), edited firewall rules to allow HA to speak to my sonos and my sonos to speak to HA over 1400 and 1443. All with no success.

I had TTS as a large feature to my smart home, but since something happened I just canā€™t get it to workā€¦ Whatever I try I get the same response in the Sonos app: "Cannot play xxxxxxxxxxx.mp3 - lost connection to redacted.duckdns.org

Does anyone have any pointers, Iā€™m desperate, spent too many hours on this