Home of the Squeezebox™ & Transporter® network music players.
Page 1 of 2 12 LastLast
Results 1 to 10 of 12
  1. #1
    Junior Member
    Join Date
    Nov 2013
    Posts
    9

    Help with Radio URL

    Hi guys - my fav radio station does not play anymore on LMS on a Raspberry Pi Worked until a few days ago....

    The stream is here
    https://iheart.4zzz.org.au/4zzz

    Icecast info is here
    http://iheart.4zzz.org.au:8000/

    I get
    [22-06-17 08:44:09.7811] Slim::Player::Song:pen (491) Warning: stream failed to open [https://iheart.4zzz.org.au/4zzz].
    [22-06-17 08:45:14.5173] Slim::Utils::Scanner::Remote::__ANON__ (236) Error: Can't connect to remote server to retrieve playlist for, https://iheart.4zzz.org.au/4zzz: Error reading headers: Server closed connection without sending any data back at /usr/share/squeezeboxserver/CPAN/Net/HTTP/Methods.pm line 391.
    ...propagated at /usr/share/squeezeboxserver/CPAN/Net/HTTPS/NB.pm line 264.

    Any pointers? Thanks heaps!
    Simon

  2. #2
    Senior Member
    Join Date
    Apr 2005
    Location
    UK/London
    Posts
    5,817
    From their hidden page at https://4zzz.org.au/listen-online
    it looks like they have switched to https
    They list:
    Code:
    Streaming
    4ZZZ and Zed Digital are available on the internet for streaming on your own devices.
    
    https://iheart.4zzz.org.au/4zzz
    
    https://iheart.4zzz.org.au/zed-digital
    
    The 4ZZZ stream is also available in AAC format:
    
    https://iheart.4zzz.org.au/live
    However, while it plays for me in their browser interface (and seems to be using the URLs above) it does not work for me in LMS.
    I suspect a SSL/TLS interop problem.
    Perhaps related to schannel/ALPN - but I might be wrong.

    Perhaps contact them and see if they can help as well.

    Also - with iheart in the name - you might also find it listed in bpa's iHeart plugin
    ...
    just checked and it is there and has the https url and does not play via my LMS 8.2.1
    Last edited by Paul Webster; 2022-06-16 at 21:52.
    Paul Webster
    Author of "Now Playing" plugins covering Radio France (FIP etc), PlanetRadio (Bauer - Kiss, Absolute, Scala, JazzFM etc), KCRW, ABC Australia and CBC/Radio-Canada
    and, via the extra "Radio Now Playing" plugin lots more - see https://forums.slimdevices.com/showt...Playing-plugin

  3. #3
    Senior Member
    Join Date
    Oct 2005
    Location
    Ireland
    Posts
    21,776
    I tried with wget and I get an error . SSL/TLS look OK but then Something is not blocking the call maybe a geolock
    Code:
    --2022-06-17 08:05:13--  (try: 5)  https://iheart.4zzz.org.au/live
    Found iheart.4zzz.org.au in host_name_addresses_map (0x55beae223ab0)
    Connecting to iheart.4zzz.org.au (iheart.4zzz.org.au)|110.232.114.240|:443... connected.
    Created socket 3.
    Releasing 0x000055beae223ab0 (new refcount 1).
    Initiating SSL handshake.
    Handshake successful; connected socket 3 to SSL handle 0x000055beae223be0
    certificate:
      subject: CN=iheart.4zzz.org.au
      issuer:  CN=R3,O=Let's Encrypt,C=US
    X509 certificate successfully verified and matches host iheart.4zzz.org.au
    
    ---request begin---
    GET /live HTTP/1.1
    User-Agent: Wget/1.20.3 (linux-gnu)
    Accept: */*
    Accept-Encoding: identity
    Host: iheart.4zzz.org.au
    Connection: Keep-Alive
    
    ---request end---
    HTTP request sent, awaiting response... No data received.
    Closed 3/SSL 0x000055beae223be0
    Retrying.

  4. #4
    Senior Member
    Join Date
    Apr 2005
    Location
    UK/London
    Posts
    5,817
    I played it in a browser - so I don't think it is a geolock.
    I also tried with curl but with the same headers as the browser and that failed as well.
    Paul Webster
    Author of "Now Playing" plugins covering Radio France (FIP etc), PlanetRadio (Bauer - Kiss, Absolute, Scala, JazzFM etc), KCRW, ABC Australia and CBC/Radio-Canada
    and, via the extra "Radio Now Playing" plugin lots more - see https://forums.slimdevices.com/showt...Playing-plugin

  5. #5
    Senior Member
    Join Date
    Oct 2005
    Location
    Ireland
    Posts
    21,776
    The Iheart plugin supplied URL does not seem to work at all (ends with /live)

    The url https://iheart.4zzz.org.au/4zzz does not work with LMS 8.3.0 (not latest) or wget but works with curl with all the same headers as the browser supplies.

    So probably need to check what header is critical. However if it requires an LMS change that may take time.

    Code:
     curl 'https://iheart.4zzz.org.au/4zzz' -H 'User-Agent: Mozilla/5.0 (X11; Ubuntu; Linux x86_64; rv:100.0) Gecko/20100101 Firefox/100.0' -H 'Accept: audio/webm,audio/ogg,audio/wav,audio/*;q=0.9,application/ogg;q=0.7,video/*;q=0.6,*/*;q=0.5' -H 'Accept-Language: en-GB,en;q=0.5' -H 'Range: bytes=0-' -H 'DNT: 1' -H 'Connection: keep-alive' -H 'Referer: https://4zzz.org.au/' -H 'Sec-Fetch-Dest: audio' -H 'Sec-Fetch-Mode: no-cors' -H 'Sec-Fetch-Site: same-site' -H 'Pragma: no-cache' -H 'Cache-Control: no-cache' --output 4zzz.aac
    edit:
    It plays with curl with no header. So it looks like headers are not the key issue but when using curl the stream is using TLS 1.3 so maybe it need very latest TLS (my wget does not support TLS 1.,3)
    Last edited by bpa; 2022-06-17 at 01:01.

  6. #6
    Senior Member
    Join Date
    Apr 2005
    Location
    UK/London
    Posts
    5,817
    I suspect it is this header
    -H "sec-ch-ua: ^\^" Not A;Brand^\^";v=^\^"99^\^", ^\^"Chromium^\^";v=^\^"102^\^", ^\^"Google Chrome^\^";v=^\^"102^\^"" ^

    I say that because it that header failed in Windows ... I should have looked harder.
    I need to work out the right combination of escapes etc.

    Edit:
    although you do not have that header in yours ... so I am off to try again.
    Paul Webster
    Author of "Now Playing" plugins covering Radio France (FIP etc), PlanetRadio (Bauer - Kiss, Absolute, Scala, JazzFM etc), KCRW, ABC Australia and CBC/Radio-Canada
    and, via the extra "Radio Now Playing" plugin lots more - see https://forums.slimdevices.com/showt...Playing-plugin

  7. #7
    Senior Member
    Join Date
    Oct 2005
    Location
    Ireland
    Posts
    21,776
    Quote Originally Posted by Paul Webster View Post
    I suspect it is this header
    -H "sec-ch-ua: ^\^" Not A;Brand^\^";v=^\^"99^\^", ^\^"Chromium^\^";v=^\^"102^\^", ^\^"Google Chrome^\^";v=^\^"102^\^"" ^

    I say that because it that header failed in Windows ... I should have looked harder.
    I need to work out the right combination of escapes etc.

    Edit:
    although you do not have that header in yours ... so I am off to try again.
    I think it may be TLS 1.3 related but I can't find out what versions of TLS LMS support - the Net::HTTPS module was last updated 2 years ago and is at 6.19 but metacpan seems to be offline to me !

  8. #8
    Senior Member
    Join Date
    Oct 2005
    Location
    Ireland
    Posts
    21,776
    Prettyr sure it is TLS 1.3 related.

    WORKS curl --tls-max 1.3 --verbose 'https://iheart.4zzz.org.au/4zzz' --output 4zzz.aac
    FAILS curl --tls-max 1.2 --verbose 'https://iheart.4zzz.org.au/4zzz' --output 4zzz.aac

    Fail log.
    Code:
    /tmp$ curl --tls-max 1.2 --verbose 'https://iheart.4zzz.org.au/4zzz'   --output 4zzz.aac
      % Total    % Received % Xferd  Average Speed   Time    Time     Time  Current
                                     Dload  Upload   Total   Spent    Left  Speed
      0     0    0     0    0     0      0      0 --:--:-- --:--:-- --:--:--     0*   Trying 110.232.114.240:443...
    * TCP_NODELAY set
    * Connected to iheart.4zzz.org.au (110.232.114.240) port 443 (#0)
    * ALPN, offering h2
    * ALPN, offering http/1.1
    * successfully set certificate verify locations:
    *   CAfile: /etc/ssl/certs/ca-certificates.crt
      CApath: /etc/ssl/certs
    } [5 bytes data]
    * TLSv1.2 (OUT), TLS handshake, Client hello (1):
    } [228 bytes data]
    * TLSv1.2 (IN), TLS handshake, Server hello (2):
    { [93 bytes data]
    * TLSv1.2 (IN), TLS handshake, Certificate (11):
    { [4030 bytes data]
    * TLSv1.2 (IN), TLS handshake, Server key exchange (12):
    { [300 bytes data]
    * TLSv1.2 (IN), TLS handshake, Server finished (14):
    { [4 bytes data]
    * TLSv1.2 (OUT), TLS handshake, Client key exchange (16):
    } [37 bytes data]
    * TLSv1.2 (OUT), TLS change cipher, Change cipher spec (1):
    } [1 bytes data]
    * TLSv1.2 (OUT), TLS handshake, Finished (20):
    } [16 bytes data]
    * TLSv1.2 (IN), TLS handshake, Finished (20):
    { [16 bytes data]
    * SSL connection using TLSv1.2 / ECDHE-RSA-AES256-GCM-SHA384
    * ALPN, server did not agree to a protocol
    * Server certificate:
    *  subject: CN=iheart.4zzz.org.au
    *  start date: Apr 30 21:34:10 2022 GMT
    *  expire date: Jul 29 21:34:09 2022 GMT
    *  subjectAltName: host "iheart.4zzz.org.au" matched cert's "iheart.4zzz.org.au"
    *  issuer: C=US; O=Let's Encrypt; CN=R3
    *  SSL certificate verify ok.
      0     0    0     0    0     0      0      0 --:--:--  0:00:01 --:--:--     0} [5 bytes data]
    > GET /4zzz HTTP/1.1
    > Host: iheart.4zzz.org.au
    > User-Agent: curl/7.68.0
    > Accept: */*
    > 
    * Empty reply from server
      0     0    0     0    0     0      0      0 --:--:--  0:00:01 --:--:--     0
    * Connection #0 to host iheart.4zzz.org.au left intact
    curl: (52) Empty reply from server

  9. #9
    Senior Member
    Join Date
    Apr 2005
    Location
    UK/London
    Posts
    5,817
    I tried curl with "tls-max 1.2" and it still failed for me.
    curl 7.83.1 with static libraries

    edit:
    just saw your update ... off to try again
    Paul Webster
    Author of "Now Playing" plugins covering Radio France (FIP etc), PlanetRadio (Bauer - Kiss, Absolute, Scala, JazzFM etc), KCRW, ABC Australia and CBC/Radio-Canada
    and, via the extra "Radio Now Playing" plugin lots more - see https://forums.slimdevices.com/showt...Playing-plugin

  10. #10
    Senior Member
    Join Date
    Apr 2005
    Location
    UK/London
    Posts
    5,817
    Odd ... still fails for me with 1.3

    Code:
    curl --tls-max 1.3 --verbose "https://iheart.4zzz.org.au/4zzz" --output 4zzz.aac
      % Total    % Received % Xferd  Average Speed   Time    Time     Time  Current
                                     Dload  Upload   Total   Spent    Left  Speed
      0     0    0     0    0     0      0      0 --:--:-- --:--:-- --:--:--     0*   Trying 110.232.114.240:443...
    * Connected to iheart.4zzz.org.au (110.232.114.240) port 443 (#0)
    * ALPN: offers h2
    * ALPN: offers http/1.1
    *  CAfile: C:\utils\curl\curl-ca-bundle.crt
    *  CApath: none
    * TLSv1.0 (OUT), TLS header, Certificate Status (22):
    } [5 bytes data]
    * TLSv1.3 (OUT), TLS handshake, Client hello (1):
    } [512 bytes data]
      0     0    0     0    0     0      0      0 --:--:--  0:00:01 --:--:--     0* TLSv1.2 (IN), TLS header, Certificate Status (22):
    { [5 bytes data]
    * TLSv1.3 (IN), TLS handshake, Server hello (2):
    { [122 bytes data]
    * TLSv1.2 (IN), TLS header, Finished (20):
    { [5 bytes data]
    * TLSv1.2 (IN), TLS header, Supplemental data (23):
    { [5 bytes data]
    * TLSv1.3 (IN), TLS handshake, Encrypted Extensions (8):
    { [6 bytes data]
    * TLSv1.2 (IN), TLS header, Supplemental data (23):
    { [5 bytes data]
    * TLSv1.3 (IN), TLS handshake, Certificate (11):
    { [4037 bytes data]
    * TLSv1.2 (IN), TLS header, Supplemental data (23):
    { [5 bytes data]
    * TLSv1.3 (IN), TLS handshake, CERT verify (15):
    { [264 bytes data]
    * TLSv1.2 (IN), TLS header, Supplemental data (23):
    { [5 bytes data]
    * TLSv1.3 (IN), TLS handshake, Finished (20):
    { [52 bytes data]
    * TLSv1.2 (OUT), TLS header, Finished (20):
    } [5 bytes data]
    * TLSv1.3 (OUT), TLS change cipher, Change cipher spec (1):
    } [1 bytes data]
    * TLSv1.2 (OUT), TLS header, Supplemental data (23):
    } [5 bytes data]
    * TLSv1.3 (OUT), TLS handshake, Finished (20):
    } [52 bytes data]
    * SSL connection using TLSv1.3 / TLS_AES_256_GCM_SHA384
    * ALPN: server did not agree on a protocol. Uses default.
    * Server certificate:
    *  subject: CN=iheart.4zzz.org.au
    *  start date: Apr 30 21:34:10 2022 GMT
    *  expire date: Jul 29 21:34:09 2022 GMT
    *  subjectAltName: host "iheart.4zzz.org.au" matched cert's "iheart.4zzz.org.au"
    *  issuer: C=US; O=Let's Encrypt; CN=R3
    *  SSL certificate verify ok.
      0     0    0     0    0     0      0      0 --:--:--  0:00:01 --:--:--     0* TLSv1.2 (OUT), TLS header, Supplemental data (23):
    } [5 bytes data]
    > GET /4zzz HTTP/1.1
    > Host: iheart.4zzz.org.au
    > User-Agent: curl/7.83.1
    > Accept: */*
    >
    * TLSv1.2 (IN), TLS header, Supplemental data (23):
    { [5 bytes data]
    * TLSv1.3 (IN), TLS handshake, Newsession Ticket (4):
    { [217 bytes data]
    * TLSv1.2 (IN), TLS header, Supplemental data (23):
    { [5 bytes data]
    * TLSv1.3 (IN), TLS handshake, Newsession Ticket (4):
    { [217 bytes data]
    * old SSL session ID is stale, removing
    * TLSv1.2 (OUT), TLS header, Supplemental data (23):
    } [5 bytes data]
    * TLSv1.3 (OUT), TLS alert, decode error (562):
    } [2 bytes data]
    * OpenSSL SSL_read: error:0A000126:SSL routines::unexpected eof while reading, errno 0
      0     0    0     0    0     0      0      0 --:--:--  0:00:02 --:--:--     0
    * Closing connection 0
    curl: (56) OpenSSL SSL_read: error:0A000126:SSL routines::unexpected eof while reading, errno 0
    Paul Webster
    Author of "Now Playing" plugins covering Radio France (FIP etc), PlanetRadio (Bauer - Kiss, Absolute, Scala, JazzFM etc), KCRW, ABC Australia and CBC/Radio-Canada
    and, via the extra "Radio Now Playing" plugin lots more - see https://forums.slimdevices.com/showt...Playing-plugin

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •