Automatyzacja do radia

Witam postanowiłem zrobić sobie automatyzację do radia z panelu HA z zakładki media, ale coś mi to nie wychodzi. Automatyzacja polegać ma na tym, że jak fizycznie włączę radio i między czasie włączy się jakieś powiadomienie to po wygłoszeniu powiadomienia chciałbym żeby radio znowu grało do momentu aż sam ręcznie nie wyłączę je. Zobaczcie gdzie jest błąd

alias: "VLC: Zapowiedź po włączeniu Złotych Przebojów"
description: Uruchamia zapowiedź i radio Złote Przeboje bez polegania na stanie encji
triggers:
  - entity_id: input_boolean.radio_zlote_przeboje
    to: "on"
    trigger: state
conditions: []
actions:
  - action: media_player.media_stop
    target:
      entity_id: media_player.vlc_telnet
  - action: media_player.volume_set
    target:
      entity_id: media_player.vlc_telnet
    data:
      volume_level: 0.5
  - action: tts.google_translate_say
    target:
      entity_id: media_player.vlc_telnet
    data:
      message: Uruchamiam radio Złote Przeboje Poznań. Miłego słuchania!
  - delay: "00:00:06"
  - action: media_player.play_media
    target:
      entity_id: media_player.vlc_telnet
    data:
      media:
        media_content_id: http://zloteprzeboje.pl
        media_content_type: music
        metadata: {}
  - action: media_player.volume_set
    target:
      entity_id: media_player.vlc_telnet
    data:
      volume_level: 0.6
  - action: input_boolean.turn_off
    target:
      entity_id: input_boolean.radio_zlote_przeboje
mode: single

Ten url prowadzi do strony www radia, a nie do strumienia audio, więc na bank nie może działać.

Powinien być prawidłowy url np https://radiostream.pl/tuba8940-1.mp3

poprawiłem

http://mainstream.radioagora.pl/tuba9-1.mp3

i nadal nic czyli jak włączę radio i jest jakiś komunikat to radio się wykańcza na czas komunikatu ale później nie wraca do grania

alias: "VLC: Zapowiedź po włączeniu Złotych Przebojów"
description: Uruchamia zapowiedź i radio Złote Przeboje bez polegania na stanie encji
triggers: []
conditions: []
actions:
  - action: media_player.media_stop
    target:
      entity_id: media_player.glosnik_salon
    data: {}
  - action: media_player.volume_set
    target:
      entity_id: media_player.glosnik_salon
    data:
      volume_level: 0.15
  - action: tts.google_translate_say
    data:
      cache: false
      entity_id: media_player.glosnik_salon
      message: Uruchamiam radio Złote Przeboje Poznań. Miłego słuchania!
      language: pl
  - delay: "00:00:06"
  - action: media_player.play_media
    target:
      entity_id: media_player.glosnik_salon
    data:
      media:
        media_content_id: http://mainstream.radioagora.pl/tuba9-1.mp3
        media_content_type: music
        metadata: {}
  - action: media_player.volume_set
    target:
      entity_id: media_player.glosnik_salon
    data:
      volume_level: 0.25
mode: single

Zmieniłem na swoje encje i u mnie działa prawidłowo

a odtwarzacz

to jest VLC-telnet?

Bo mam wrażenie, że porównujecie jabłka z pomarańczami…

Tak, porównywałem to samo

1 Like

Wydaje mi się że szopen ma racja. Co innego głośnik a co innego vlc_telnet to nie zmienia faktu że u mnie to nie działa … może tutaj jest problem. Sprawdziłęm logi vlc i takie coś mam

[00007fe952173c00] main input error: VLC is unable to open the MRL 'http://homeassistant:8123/media/test.mp3?authSig=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpc3MiOiIzMzhmNGEzOTQyYzA0NzczODc3MGI4MDQ4N2E1OWZhZSIsInBhdGgiOiIvbWVkaWEvdGVzdC5tcDMiLCJwYXJhbXMiOltdLCJpYXQiOjE3ODU3NTI1NjIsImV4cCI6MTc4NTgzODk2Mn0.AL-Uo0J2-0KtE5cbJMNWGBPJr329x3xw5u8qPTYyNns'. Check the log for details.
[00007fe95212ac30] access stream error: HTTP connection failure
[00007fe95212ac30] http stream error: cannot connect to 46.105.101:80

adres się nie zgadza powinien być 46.105.12.101:80

A co mówi ślad w przebiegu automatyzacji?

nic ciekawego

Jak masz zintegrowany HA z VLC? Masz to jako aplikację/AddOn?

tak z integracją z HA

dodam, że powiadomienia mi działają

Opisałem kontekst i wyrzuciłem do Perplexity logi które podałeś z VLC. Ten LLM bazuje na przeszukiwaniu Internetu aby znaleźć podobne przypadki. Jego wnioski poniżej:


Co to oznacza dla Twojego problemu

W tej architekturze HA buduje URL do pliku i przekazuje go do add-onu, więc jeśli HA nie ma poprawnie ustawionego Internal URL / External URL, VLC może próbować pobrać media z błędnym adresem hosta. To dokładnie pasuje do komunikatu typu „Unable to determine Home Assistant URL” albo do błędnych hostów w logach.github+2

Jak to działa technicznie

  • Add-on VLC działa w osobnym kontenerze.
  • Integracja vlc_telnet steruje nim przez telnet.
  • Do odtwarzania lokalnych plików HA podaje add-onowi URL do zasobu media-source://... albo /media/..., ale ten URL musi być osiągalny z perspektywy add-onu.github+2

Co bym sprawdził u Ciebie

  1. Ustawienia systemowe HA → Sieć: czy Internal URL wskazuje poprawny adres, np. http://46.105.12.101:8123 albo lokalny adres LAN.
  2. Czy z kontenera/add-onu ten adres jest osiągalny.
  3. Czy w automatyzacji używasz poprawnego media_content_id, najlepiej w formie media-source://media_source/local/... dla plików z /media.

Brzmią logicznie, skoro masz VLC jako kontener, to prawdopodobnie problem powstaje na styku mapowania ścieżek do zasobów HA → kontener VLC.

Dodatkowo widzę w dokumentacji dla VLC media player via Telnet:

1 adres poprawny

2 jak to sporawdzić?

3 w automatyzacji mam tak

 media_content_type: music
    media_content_id: http://mainstream.radioagora.pl/tuba9-1.mp3

LLM odpowiada tak:


Tak, w Twoim przypadku ten zapis jest niepoprawny dla media_player.play_media w HA. Zamiast Markdownowego linku musisz podać surowy URL albo media-source URI. media_content_type: music jest poprawne, ale media_content_id w obecnej formie nie jest.

Co jest źle

Masz teraz:

text

media_content_type: music
media_content_id: [http://mainstream.radioagora.pl/tuba9-1.mp3](http://mainstream.radioagora.pl/tuba9-1.mp3)

To wygląda jak link z Markdowna, a HA oczekuje zwykłego stringa.

Jak to zapisać poprawnie

Jeśli chcesz odtwarzać stream internetowy, użyj po prostu:

action: media_player.play_media
target:
  entity_id: media_player.vlc_telnet
data:
  media_content_id: "http://mainstream.radioagora.pl/tuba9-1.mp3"
  media_content_type: music

AI proponuje również użyć narzędzi deweloperskich i upewnić się, że masz poprawne entity_id


Jak to sprawdzić

Wejdź w:

  • Narzędzia deweloperskie → Stany
  • wyszukaj vlc

Tam zobaczysz dokładny entity_id. To jest właściwy identyfikator do target.entity_id.


Ja bym również sprawdził w tych narzędziach czy możesz wywołać ten URL przez wywołanie w nich tej akcji.

@andrzej04
1.

aby taki adres (jak zgaduję to adres WAN routera edit nie zgadłem) był osiągalny z sieci lokalnej router musi wspierać tzw. hairpining (funkcja ma też inne nazwy, chodzi o zawrócenie ruchu lokalnego do wewnątrz sieci na interfejsie WAN, większość routerów to wspiera, ale nie każdy).

  1. można, ale to jednak za dużo kombinacji by sprawdzić w Aplikacji (Dodatku) VLC, ale możesz sprawdzić używając oficjalnego Dodatku ssh (konkretni tego o nazwie Terminal & SSH)
traceroute 46.105.12.101

BTW skoro ten adres jest ucięty (w którymś poście wyżej to widziałem) to zdecydowanie masz jakieś błędy w konfiguracji sieci (najprawdopodobniej w samym HA).

Z jeszcze innej beczki - kierowanie nieszyfrowanego ruchu przez publiczny IP to raczej kiepski pomysł (szczególnie że wywołujesz go na sztywno, a możesz dostać od operatora jakiś inny), i tu “bis do bisa” - przecież ten HA ma jakiś lokalny IP, więc jeśli coś wywołujesz lokalnie, to raczej jego powinieneś użyć… (choć zupełnie nie wnikam w to czy może istotnie do tego co chcesz uzyskać jest konieczny dostęp ze świata?).


PS dopiero sprawdzenie co to za adres nieco otwarło mi oczy
całkiem poza konkurencją (a może wręcz przeciwnie) publiczny adres IP

jest nieosiągalny z żadnej z 4 sieci do których w tym momencie mam dostęp (tj. co najmniej nie odpowiada na ping)
swoją drogą to publiczny adres należący do OVH, więc to już w ogóle wygląda ślisko

może wyjaśnij dlaczego tak twierdzisz (tj. czemu chcąc odtwarzać lokalny plik odwołujesz się do jakiegoś adresu w internecie)

szukałem adresu do bezpośredniego strimingu tego radia i żeby wykluczyć problemy z dns to szukałem sztywnego adresu i AI podało mi taki więc go wpisałem do automatyzacji, zastanawiam się nad jednym. zauważyłem, że jak włączam radio i wywołam jakąś zapowiedz to radio nie włąńcza się z powrotem i nie startuje automatyzacja nie wiedzą czasu

Może za krótki czas pomiędzy zapowiedzią a ponownym włączenem strumienia?
Uswaiłeś na sztywno 6 sekund

- delay: "00:00:06"

lepiej było by tam poczekać aż zapowiedź się skończy

- wait_for_trigger:
      - trigger: state
        entity_id: media_player.glosnik_salon
        from: playing
        to:
          - idle
          - "off"
    timeout: "00:00:10"
1 Like

ale umieściłeś to w kontekście tego loga

[00007fe952173c00] main input error: VLC is unable to open the MRL 'http://homeassistant:8123/media/test.mp3?authSig=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpc3MiOiIzMzhmNGEzOTQyYzA0NzczODc3MGI4MDQ4N2E1OWZhZSIsInBhdGgiOiIvbWVkaWEvdGVzdC5tcDMiLCJwYXJhbXMiOltdLCJpYXQiOjE3ODU3NTI1NjIsImV4cCI6MTc4NTgzODk2Mn0.AL-Uo0J2-0KtE5cbJMNWGBPJr329x3xw5u8qPTYyNns'. Check the log for details.
[00007fe95212ac30] access stream error: HTTP connection failure
[00007fe95212ac30] http stream error: cannot connect to 46.105.101:80

a tam usiłujesz odtwarzać lokalny plik http://homeassistant:8123/media/test.mp3
z czego wynika moje podejrzenie co do wadliwej konfiguracji sieci, skoro adres lokalny homeassistant jest rozwiązywany na jakimś twoim DNSie na wadliwy publiczny IP 46.105.101 (:80 wynika z protokołu http)

przy czym wywoływanie lokalnego Media Resource Locator nie wydaje się błędem,
bo gdybyś chciał odtwarzać stream z internetu, a nie lokalny plik, to umieścisz w nim właściwe odwołanie do czegoś w internecie, a nie na dysku w HA

nic to nie da bo automatyzacja nie startuje automatycznie. Usunołem ten adres i niby jest ok

[09:22:18] INFO: Successfully send discovery information to Home Assistant.
2026/08/06 09:22:19 [notice] 178#178: using the "epoll" event method
2026/08/06 09:22:19 [notice] 178#178: nginx/1.30.3
2026/08/06 09:22:19 [notice] 178#178: built by gcc 15.2.0 (Alpine 15.2.0) 
2026/08/06 09:22:19 [notice] 178#178: OS: Linux 6.1.0-51-amd64
2026/08/06 09:22:19 [notice] 178#178: getrlimit(RLIMIT_NOFILE): 1024:524288
2026/08/06 09:22:19 [notice] 178#178: start worker processes
2026/08/06 09:22:19 [notice] 178#178: start worker process 183

ale zastanawia mnie jedna liniki w logu od vlc

[00007f45924c09b0] main libvlc error: interface "globalhotkeys,none" initialization failed

i tego dotyczył mój post

1 Like