Cast local media to Google Nest Mini

Hi!

I’m using Home Assistant Core for a few days. I tried a lot now getting a doorbell function to work: Zigbee button results in a local mp3 being played on a Google Nest Mini. But I’m stuck at this error:

2022-02-05 22:06:25 ERROR (Thread-13) [homeassistant.components.cast.media_player] Failed to cast media http://10.23.40.23:8123/media/media/Halloween-theme-doorbell-sound.mp3?authSig=eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJpc3MiOiI1YTg1NDQ0ZjlhYjc0NmZlODFjOGY2ZDZlNjQzYjRlMyIsInBhdGgiOiIvbWVkaWEvbWVkaWEvSGFsbG93ZWVuLXRoZW1lLWRvb3JiZWxsLXNvdW5kLm1wMyIsImlhdCI6MTY0NDA5NTE4NSwiZXhwIjoxNjQ0MTgxNTg1fQ.DJlIuzaWDeVS-bCSAIVkzy8lpO_BMpFhCRQtJ0VqhIw from internal_url (http://10.23.40.23:8123). Please make sure the URL is: Reachable from the cast device and either a publicly resolvable hostname or an IP address

I can curl this URL, so it is reachable. My YAML for the action is:

service: media_player.play_media
data:
  media_content_id: media-source://media_source/media/Halloween-theme-doorbell-sound.mp3
  media_content_type: audio/mp3
target:
  device_id: df5ce97cb857c836d0774a1f781f47f8

My configuration.yaml contains these:

homeassistant:
  name: FG3H Control
  latitude: <redacted>
  longitude: <redacted>
  elevation: 430
  unit_system: metric
  currency: EUR
  time_zone: "Europe/Berlin"
#  internal_url: "https://<redacted>:8123"
  internal_url: "http://10.23.40.23:8123"
  allowlist_external_dirs:
    - "/srv/pub"
  allowlist_external_urls:
    - "http://<redacted>/"
    - "https://<redacted>/"
    - "http://10.23.40.23/"
  media_dirs:
    media: "/srv/pub/media"
    recordings: "/srv/pub/recordings"
  legacy_templates: false

http:
  ssl_certificate: /etc/letsencrypt/live/<redacted>/fullchain.pem
  ssl_key: /etc/letsencrypt/live/<redacted>/privkey.pem

I changed the URL from my internal domain to IP address and back but the error stayed the same. FWIW: When activating the media player service my Nest Mini reacts by bleeping to signal a connection. I have to stop streaming for any further attempts.

Any ideas?

Okay, after some hesitation I forwarded a port to my Home Assistant installation (and switched back to domain URLs for internal and external). Now, the integration works but I’m not happy opening a port.