home-assistant-libs / netdisco

:mag_right: Python library to scan local network for services and devices.
Other
266 stars 147 forks source link

Discover openhome devices with Product:3 service #232

Closed bazwilliams closed 5 years ago

bazwilliams commented 5 years ago

Linn have changed the revision of the Product service used for device discovery of openhome devices in their latest firmware (http://docs.linn.co.uk/wiki/index.php/Beta:DsDavaar67:Release_Notes) without indicating that in their release notes.

As a result Home Assistant will not be able to discover or control Linn devices running this version of the firmware.

This adds support for 'Davaar' versions advertising a urn:av-openhome-org:service:Product:3 service.

kylegordon commented 5 years ago

@bazwilliams just fyi, I spoke to some folks, and the version number is additive. Basically you're checking for the minimum feature set you need.

I don't know what features were brought in with :3 but it was suggested that if it's just standard playback controls and source enumeration that it be broken out to a value, and then checked for >= 2

bazwilliams commented 5 years ago

@kylegordon Could you find out a single search type that would catch all versions of the Product service, that way when returning the entries we could compare for >= 2.

https://github.com/home-assistant/netdisco/blob/master/netdisco/discoverables/openhome.py#L10

kylegordon commented 5 years ago

@daviddw I meant to ask you today about this, but am now away for most of next week. Any thoughts on how you'd do what @bazwilliams is asking?