-
Notifications
You must be signed in to change notification settings - Fork 5
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Support devices without getPlayerStatus(Ex) support #68
Comments
There are plenty of issues at the Home Assistant repository for this specific device in the linkplay integration. I do wonder before going ahead with the upnp fallback if these devices work with certain companion apps and/or embedding a web applications where you can control these devices. We may be able to find out more about the differences this device has in comparison with the normal linkplay protocol. |
They do for sure work with Audio Pro and the "WiiM Home" (published by "LinkPlay Tech" in iOS App store) companion apps. No embedded web application. From what I can tell the apps use upnp to query the speakers for what's being played, and LinkPlay HTTP api for instructions (at least for the multiroom configuration). It's a bit hard to figure out exactly what they do over linkplay though, due to the https encryption. I've not gone through all the api calls in the acrylic http api documentation, but a random subset of playback (play/pause etc) control and multiroom control apis seems to be working. I've also tried some TCP UART APIs and result seems to be similar. Could definitely do some more testing though, to make sure all other APIs used by python-linkplay are working. |
I can't find any references to the getPlayerStatus(Ex) api command in the app either, so I'm open to have the uPnP added as a fallback. Let's try and fallback if the command cannot be found, similar to the linkplay-cli tooling, keep a boolean variable upnp_fallback so we don't query it every time. Since this is a linkplay library specificly, the result should be converted back to the dict structure already in place in the LinkPlayPlayer class. |
There's more information and some outputs at home-assistant/core#126172 |
Cool, I'll hopefully find some time to try to put an implementation together later this week. |
If or when upnp support gets added, would we be able to force that option for a player? The wiim mini currently crashes when polled by getPLayerStatusEx (usually happens to my device in less than 36 hours, other models of Wiim do not have this issue). Wiim support seems willing to address the issue from their side but in the meantime I'm using this integration https://github.com/onlyoneme/home-assistant-custom-components-wiim/tree/beta specifically for my wiim minis, which uses upnp. |
Some linkplay devices (including recent Audio Pro devices like the "A10 MkII") does not support getPlayerStatus and getPlayerStatusEx.
linkplay_cli uses a UPNP based fallback to getPlayerStatus
I could investigate implementing something similar, but wanted to check if that's something that you feel is within the scope of the project before I put any work into it?
The text was updated successfully, but these errors were encountered: