GithubHelp home page GithubHelp logo

Comments (2)

AverageDwarfGiant avatar AverageDwarfGiant commented on August 10, 2024

Following up my own post with an update

Turns out that a firewall blocked the Aluratek from accessing Ycast on the Linux PC.

Having an old Raspberry Pi 3B on hand, I installed the latest Raspberry Pi OS on this with Ycast on top. Entware DNSmasq successfully routes vtuner.com access to the Raspberry Pi.

Although the Aluratek can now see Ycast Raspberry Pi, I am now experiencing the same kind of problem mentioned in issue #96 with the Sagem MyDu@l Radio 700.

Among the things I see with the "-d" ycast debug option is some mention of Unicode. I would guess that if Unicode is broken somewhere that it would have to be on the Aluratek but I don't know.

I'm actually not surprised about this. It's my understanding that the Aluratek Airmm01f is actually a rebadged Sagem MyDu@l.

I'll try doing this again to gather debug information. Any advice to best do this would be appreciated.

from ycast.

AverageDwarfGiant avatar AverageDwarfGiant commented on August 10, 2024

Another update:

I figured out how to generate pcap files using tcpdump and how to examine these using Wireshark.

I also ran Ycast on a Raspberry PI with the debug option, "-d". This is what I got trying to use it with the Aluratek:

2023-03-14 20:20:40 INFO: YCast (1.1.0) server starting
2023-03-14 20:20:40 DEBUG: Debug logging enabled
2023-03-14 20:20:40 INFO:  * Running on http://0.0.0.0:80/ (Press CTRL+C to quit)
2023-03-14 20:21:44 INFO: 192.168.50.234 - - [14/Mar/2023 20:21:44] "�[37mGET /setupapp/aluratek/asp/BrowseXML/loginXML.asp?token=0 HTTP/1.0�[0m" 200 -
2023-03-14 20:21:44 INFO: 192.168.50.234 - - [14/Mar/2023 20:21:44] "�[37mGET /setupapp/aluratek/asp/BrowseXML/loginXML.asp?mac=2B730FF0FDB232C8A8931FF1B0BEB0AC&dlang=eng&fver=1.754333 HTTP/1.0�[0m" 200 -
2023-03-14 20:21:50 DEBUG: Radiobrowser API request: tags?hidebroken=true
2023-03-14 20:21:51 DEBUG: Starting new HTTP connection (1): all.api.radio-browser.info:80
2023-03-14 20:21:51 DEBUG: http://all.api.radio-browser.info:80 "GET /json/tags?hidebroken=true HTTP/1.1" 200 None
2023-03-14 20:21:51 DEBUG: Radiobrowser API request: countries?hidebroken=true
2023-03-14 20:21:51 DEBUG: Starting new HTTP connection (1): all.api.radio-browser.info:80
2023-03-14 20:21:52 DEBUG: http://all.api.radio-browser.info:80 "GET /json/countries?hidebroken=true HTTP/1.1" 200 2717
2023-03-14 20:21:52 DEBUG: Radiobrowser API request: languages?hidebroken=true
2023-03-14 20:21:52 DEBUG: Starting new HTTP connection (1): all.api.radio-browser.info:80
2023-03-14 20:21:52 DEBUG: http://all.api.radio-browser.info:80 "GET /json/languages?hidebroken=true HTTP/1.1" 200 3099
2023-03-14 20:21:52 DEBUG: Radiobrowser API request: stations?order=votes&reverse=true&limit=200
2023-03-14 20:21:52 DEBUG: Starting new HTTP connection (1): all.api.radio-browser.info:80
2023-03-14 20:21:52 DEBUG: http://all.api.radio-browser.info:80 "GET /json/stations?order=votes&reverse=true&limit=200 HTTP/1.1" 200 None
2023-03-14 20:21:52 ERROR: Exception on /ycast/radiobrowser/ [GET]
Traceback (most recent call last):
  File "/usr/lib/python3/dist-packages/flask/app.py", line 2447, in wsgi_app
    response = self.full_dispatch_request()
  File "/usr/lib/python3/dist-packages/flask/app.py", line 1952, in full_dispatch_request
    rv = self.handle_user_exception(e)
  File "/usr/lib/python3/dist-packages/flask/app.py", line 1821, in handle_user_exception
    reraise(exc_type, exc_value, tb)
  File "/usr/lib/python3/dist-packages/flask/_compat.py", line 39, in reraise
    raise value
  File "/usr/lib/python3/dist-packages/flask/app.py", line 1950, in full_dispatch_request
    rv = self.dispatch_request()
  File "/usr/lib/python3/dist-packages/flask/app.py", line 1936, in dispatch_request
    return self.view_functions[rule.endpoint](**req.view_args)
  File "/home/pi/Downloads/YCast-1.1.0/ycast/server.py", line 183, in radiobrowser_landing
    len(radiobrowser.get_stations_by_votes())))
  File "/home/pi/Downloads/YCast-1.1.0/ycast/radiobrowser.py", line 155, in get_stations_by_votes
    print(station_json)
UnicodeEncodeError: 'latin-1' codec can't encode characters in position 173-177: ordinal not in range(256)
2023-03-14 20:21:52 INFO: 192.168.50.234 - - [14/Mar/2023 20:21:52] "�[35m�[1mGET /ycast/radiobrowser/?vtuner=true&mac=2B730FF0FDB232C8A8931FF1B0BEB0AC&dlang=eng&fver=1.754333 HTTP/1.0�[0m" 500 -
2023-03-14 20:21:59 INFO: 192.168.50.234 - - [14/Mar/2023 20:21:59] "�[37mGET /setupapp/aluratek/asp/BrowseXML/loginXML.asp?mac=2B730FF0FDB232C8A8931FF1B0BEB0AC&dlang=eng&fver=1.754333 HTTP/1.0�[0m" 200 -

I can't claim to know what may be happening but it appears that a 32-digit hex number, probably a UUID, is being handed off as a MAC address.

Meanwhile, I can still use the Aluratek with vtuner.com apparently because I never registered its MAC address for any vtuner account.

Alura-Vtuner.pcap is the packet capture of a working vtuner connection although I filtered out the actual TCP audio stream to reduce the file size.

(I used "!tcp.stream eq 10" but the streams on the exported pcap file have been renumbered: 11 ->10, 12 -> 11, etc. with streams 0 to 9 remaining unchanged)

Alura-RPiYcast.pcap is the packet capture of one of my failed attempts to use the Aluratek with Ycast.

(Looks like I couldn't upload the two files as-is. These have been packaged together in Aluratek.zip)

Aluratek.zip

from ycast.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.