You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
23 lines
693 B
23 lines
693 B
"""Discover DirecTV Receivers."""
|
|
from netdisco.util import urlparse
|
|
from . import SSDPDiscoverable
|
|
|
|
|
|
class Discoverable(SSDPDiscoverable):
|
|
"""Add support for discovering DirecTV Receivers."""
|
|
|
|
def info_from_entry(self, entry):
|
|
"""Return the most important info from a uPnP entry."""
|
|
url = urlparse(entry.values['location'])
|
|
|
|
device = entry.description['device']
|
|
|
|
return url.hostname, device['serialNumber']
|
|
|
|
def get_entries(self):
|
|
"""Get all the DirecTV uPnP entries."""
|
|
return self.find_by_device_description({
|
|
"manufacturer": "DIRECTV",
|
|
"deviceType": "urn:schemas-upnp-org:device:MediaServer:1"
|
|
})
|