Commit Graph

108 Commits

Author SHA1 Message Date
Micha LaQua f349a2686c
Merge pull request #77 from tomtastic/patch-1
Fix API endpoint for get_station_by_id
2020-12-03 13:41:47 +01:00
Micha LaQua 22475e9c3a
Merge pull request #70 from Arduous/patch-1
Update README.md ycast works with a Marantz SR5009
2020-12-03 13:35:08 +01:00
Micha LaQua 1d65195926
Merge pull request #73 from Arduous/master
radiobrowser.py: remove inadequate print statement.
2020-12-03 13:34:38 +01:00
Tom Matthews 25ecc9b668
Fix API endpoint for get_station_by_id
Fixes https://github.com/milaq/YCast/issues/76
2020-11-29 11:20:17 +00:00
Samuel Progin 595dea2fd5
radiobrowser.py: remove inadequate print statement.
The print statement is removed as:
- It is not present in other very similar methods
- It clutters the log
2020-10-24 17:28:38 +02:00
Samuel Progin a37b86f638
Update README.md ycast works with a Marantz SR5009
Thank you.
2020-10-20 17:50:36 +02:00
milaq e01d0af1a7 bump version 2020-10-10 17:07:17 +02:00
milaq 9ea3f3c3c9 Merge branch 'master' of github.com:milaq/YCast into master 2020-10-10 16:38:35 +02:00
milaq f39b65e759 Add dynamic directory displayname
Also capitalize genres and all capitalize languages

Co-authored-by: Jonathan Rawle <git@jonathanrawle.co.uk>
2020-10-10 16:36:44 +02:00
Micha LaQua 00ba3ace66
Merge pull request #55 from mbroz/master
Add Denon DNP-720AE to confirmed devices
2020-10-10 16:03:28 +02:00
Micha LaQua e799b92ed6
Merge branch 'master' into master 2020-10-10 16:02:46 +02:00
Milan Broz ab2ac64cc0 Add Denon DNP-720AE to confirmed devices 2020-10-10 16:02:04 +02:00
Micha LaQua f920d9f286
Merge pull request #60 from 463/patch-1
Add Denon DNP-730AE to confirmed devices
2020-10-10 16:00:19 +02:00
milaq e893948485 Add Yamaha CRX-N560/MCR-N560 to supported devices
Thanks to @ra666ack for reporting
2020-10-10 15:58:45 +02:00
milaq dc6bcf19d4 Add instructions for Grundig radios
Co-authored-by: Jakub Janeczko <jjaneczk@gmail.com>
2020-10-10 15:54:12 +02:00
Jakub Janeczko 9cbd4eb254 server: Some devices use capital I in {start,end}Items 2020-10-10 15:48:36 +02:00
Jakub Janeczko 04c40f2b5f add support for navXML.asp and FavXML.asp queries
Some devices use hardcoded links for station list and favourites.
2020-10-10 15:46:41 +02:00
Guido Schmitz ee5d6ffdb1 Add POST method for Denon Remote App 2020-10-10 15:43:16 +02:00
milaq 0a2aaa163d Radiobrowser: Migrate to new API
Also fix up attributes and countrycode mapping as outlined in migration suggestions at https://api.radio-browser.info/

Co-authored-by: Thomas Endt <thomas.endt@uipath.com>
Co-authored-by: Jonathan Rawle <git@jonathanrawle.co.uk>
2020-10-10 15:20:22 +02:00
463 ae0e3b6c8c
Update README.md
Denon DNP-730AE is working well too
2020-06-30 16:26:47 +02:00
Milan Broz d40cf3d894 Add Denon DNP-720AE to confirmed devices 2020-06-05 19:29:49 +02:00
milaq 1c296ec089 Add more tested and supported devices 2020-05-16 10:09:39 +02:00
milaq d0c87277a9 Add more confirmed devices and revise sort order 2020-04-28 23:58:36 +02:00
Jakub Janeczko 544fe5d981 Readme: Add RX-V500D to supported devices
Also add a note about home routers.
2020-02-24 01:19:14 +01:00
milaq 85ee2d6797 Add Denon DRA-100 to confirmed devices 2020-02-24 00:47:03 +01:00
milaq e17dff463a readme: confirm more devices
Also use underscore instead of an 'x' for model number wildcards
to increase readability.
2020-01-12 16:23:49 +01:00
milaq b89ac21546 Nginx example: Don't try to resolve ipv6 localhost 2020-01-12 16:07:27 +01:00
milaq ceb71ab00d Add request host checking to redirects
Notifies the user even without debug logging and makes troubleshooting easier.
2019-09-04 20:52:34 +02:00
milaq 9ce1e19ea3 Add Yamaha RX-Vx77 series to tested devices 2019-09-04 20:52:29 +02:00
milaq 1b4ba071b7 Disable station tracking by default
Station tracking depends on redirects which some AVRs don't do in a discernible manner.
We enable this again when we found out what makes redirects work for the affected models.
2019-08-27 19:37:57 +02:00
milaq 987951e43f Don't use redirect but direct response when handling upstream API calls 2019-08-27 00:29:53 +02:00
milaq a0000eec95 Only fetch additional info for stations if requested
E.g.: We don't need the playable stream URL for fetching icons
2019-08-26 21:07:23 +02:00
milaq f2f4c7a908 Radiobrowser: Add support for fetching playable station URL
We now get the playable station URL directly from the Radiobrowser API.
This fixes the issue with playlists in the 'url' attribute.

Does not work if played station tracking would be disabled.
It _could_ work but we would need to create an additional API request for every single listed station, even the ones not enqueued for playing.
This would then be way slower and put extra strain on the Radiobrowser API.
2019-08-26 20:39:36 +02:00
milaq 87c7753fee Station icons: Basic station icon caching
Storage path for the station icon cache is: ~/.ycast/cache/icons
2019-08-25 19:57:24 +02:00
milaq 4b45aa58d0 Station icons: Keep aspect ratio when scaling 2019-08-25 19:23:37 +02:00
milaq 72a8df3ed9 Add initial support for station icon proxying and conversion
Station icons now get converted to a JPEG with a maxmimum dimension of 290 on icon request.
Although we need to implement caching and aspect ratio keeping, this should fix issues with incompatible station icons and HTTPS icon URLs.

Adds a new package dependency: Pillow
2019-08-25 17:02:41 +02:00
milaq f1a9885e53 Also track individually requested stations 2019-08-25 16:29:53 +02:00
milaq 5fe7d7cb67 Improve response items for AVR on error 2019-08-25 15:30:41 +02:00
milaq e373e1e150 vTuner: Add ability to set 'NoDataCache' element
Some AVRs use this to indicate that the page should not be cached. E.g. for top listings
2019-08-25 14:47:36 +02:00
milaq 6d6eb6c392 Remove "Previous" elements until we know that all AVRs have support for it
Every AVR should have a "back" button anyways.
Maybe some companion apps rely on it. Need to test that still.
2019-08-25 14:12:50 +02:00
milaq c6f4fe1691 Custom stations: Revisit checksum generation
Some AVRs do not allow an ID larger than 15 characters. Thanks to Marc for pointing that out.
Use a MD5 hash (128), XOR fold it (64) and cut it to size (48). This way we _should_ still have enough uniqueness and can generate a checksum which fits the limits.
2019-08-25 13:42:31 +02:00
milaq 19e0ff8649 Add ability to fetch single station element by hardcoded vTuner URL
Some AVRs fetch the station info by calling statxml.asp with the station ID parameter.
It seems like they expect a single station element in a vTuner compatible page.

This should not be confused with the streamurl acquisition proxying implemented in 7c3161aff9.
2019-08-22 23:16:40 +02:00
milaq 70d5ff072b Also set itemcount for Radiobrowser landing page
The vTuner API handles it also this way for a minimum folder depth of 1.
2019-08-22 20:42:55 +02:00
milaq 3c80bd2500 My Stations: Change the default config filename 2019-08-22 20:40:49 +02:00
milaq 2349e06a2e Add custom station ID generation
Generate IDs by hashing the station name and URL.
These IDs should be sufficiently unique.

We _may_ run into performance issues with a very large definition, but it should be fine for a sane amount of custom stations.
Revisit once we implement a custom station database.
2019-08-22 20:38:56 +02:00
milaq 7c3161aff9 Make YCast aware of played streams
Every stream URL is may now be fetched from the YCast server via redirection.
This allows for future integration of a "recently played" functionality and an availability check.
2019-08-22 20:30:29 +02:00
milaq 8504097e15 Independent hardcoded vTuner URL handling
All 'setupapp' calls are handled independently.
Allows for easier distinction between hardcoded vTuner URLs and our
own API calls.
Also may prevent client crashes because of an invalid response with a
landing page.
2019-08-22 01:31:13 +02:00
milaq 67ac5bd70a Handle station search globally
At least Denon AVRs don't require the API to return a 'Search' element
but use a hardcoded path for the search function.

Also, don't add a distinct menu item. Most AVRs don't display it
correctly either way.
2019-08-21 23:37:16 +02:00
milaq fbbf585bf0 Readme: Add more info and candy 2019-08-21 12:33:03 +02:00
milaq 4cd99f2a9c Radiobrowser: Handle connection errors 2019-08-21 00:21:29 +02:00