# US 12,224,924 B2 · Methods, systems, and media for detecting the presence of a digital media device on a network

> Agents: this data is available as JSON from the patentgrep API and MCP server — see https://patentgrep.com/llms.txt

- Number: US 12,224,924 B2
- Document ID: US12224924B2
- Status: Granted
- Kind: B2
- Application number: 18/219,995
- Filed: 2023-07-10
- Published: 2023-11-02
- Granted: 2025-02-11
- Earliest claimed: 2013-06-25
- Assignees: Google Inc.
- Applicants: Google LLC
- Inventors: Ant Oztaskent; Yaroslav Volovich
- Web page: https://patentgrep.com/patent/US12224924B2

## CPC

- H04L 12/2809: {indicating that an appliance service is present in a home automation network (monitoring functionality H04L43/0817; discovery or management thereof, e.g. service location protocol [SLP] or web services, H04L67/51)}
- H04L 12/2805: {Home Audio Video Interoperability [HAVI] networks}
- H04L 41/12: Discovery or management of network topologies
- H04L 43/10: Active monitoring, e.g. heartbeat, ping or trace-route
- H04L 67/51: Discovery or management thereof, e.g. service location protocol [SLP] or web services
- G06F 16/00: Information retrieval; Database structures therefor; File system structures therefor
- H04B 1/38: Transceivers, i.e. devices in which transmitter and receiver form a structural unit and in which at least one part is used for functions of transmitting and receiving
- H04L 2012/2849: {Audio/video appliances}
- H04L: TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION (arrangements common to telegraphic and telephonic communication H04M)
- G06F: ELECTRIC DIGITAL DATA PROCESSING (computer systems based on specific computational models G06N)
- H04B: TRANSMISSION

## Abstract

Methods, systems, and media for detecting the presence of a digital media device on a network are provided. In some embodiments, methods for detecting a presence of a particular type of digital media device is provided, the methods comprising: identifying cached device details for devices previously associated with the network; performing a simple device discovery protocol (SSDP) on the network, and substantially concurrently sending a unicast message to an address associated with the identified cached digital media device using hypertext transfer protocol (HTTP); and indicating the presence of a digital media device on the network in response to either (i) receiving a response to the unicast message, or (ii) determining that a type of a device discovered using SSDP is the same as the particular device type.

## Claims

### Claim 1

A method for detecting a presence of a digital media device, the method comprising:
in response to a first discovery protocol search determining that a first media device is a particular device type present on a local network and in response to a second discovery protocol search determining that a second media device is the particular device type present on the local network, presenting, using a hardware processor, a first indication and a second indication that indicate presence of devices of a particular type on the local network,
the first discovery protocol search discovers devices on the local network and the second discovery protocol search checks for presence of the devices that were previously discovered on the local network; and
causing, using the hardware processor, an action associated with at least one of the first media device and the second media device based on the particular type of device present on the local network to be performed.

### Claim 2 (depends on 1)

The method of claim 1, wherein the first discovery protocol search includes obtaining device details for the devices discovered on the local network and wherein the second discovery protocol search includes a request for cached device details for the devices that were previously discovered on the local network.

### Claim 3 (depends on 2)

The method of claim 2, further comprising:
receiving an instruction to detect the presence of the particular type of media device on the local network; and
determining whether a local cache includes the cached device details corresponding to one or more devices that have been previously associated with the local network in response to receiving the instruction to detect the presence of the particular type of digital media device on the local network, wherein the first discovery protocol search and the second discovery protocol search are concurrently initiated in response to determining that the local cache includes the cached device details corresponding to the one or more devices that have been previously associated with the local network.

### Claim 4 (depends on 3)

The method of claim 3, further comprising storing at least a portion of device details received using the first discovery protocol search and the particular device type of the first media device in the local cache in response to the first discovery protocol search determining that the first media device is the particular device type present on the local network.

### Claim 5 (depends on 2)

The method of claim 2, wherein the first discovery protocol search is a simple device discovery protocol (SSDP) search that comprises:
sending a multicast message on the local network that requests device details for devices that are connected to the local network;
receiving, in response to sending the multicast message, a unicast reply that includes a link to a service description file corresponding to the first media device;
in response to receiving the unicast reply, accessing the service description file and determining whether a device type and received device details of the first media device are included in the service description file from the unicast reply; and
comparing the received device details to the cached device details to determine whether the first media device corresponds to one or more devices previously associated with the local network.

### Claim 6 (depends on 5)

The method of claim 5, wherein the SSDP search further comprises:
querying a device type identification database using at least a portion of the received requested device details in response to determining (a) that the received requested details do not include the device type of the first media device and (b) that the first media device does not correspond to one of the one or more devices previously associated with the local network, based on the comparison of the received device details to the cached device details;
receiving an identified device type of the first media device in response to querying the device type identification database; and
determining that the device type of the first media device is the same as the particular device type.

### Claim 7 (depends on 5)

The method of claim 5, wherein the SSDP search further comprises:
sending a user datagram protocol (UDP) multicast message on the local network that requests device details for devices that are connected to the local network; and
receiving a UDP unicast reply that includes a universally unique identifier (UUID) of at least one digital media device and a uniform resource locator (URL) for the service description file corresponding to the at least one digital media device.

### Claim 8 (depends on 7)

The method of claim 7, wherein the SSDP search further comprises sending a unicast message requesting the service description file from the replying device to an address associated an identified cached digital media device using HTTP, and wherein determining whether the device type of the at least one digital media device is included in the received device details further comprises checking the service description file for the device type.

### Claim 9 (depends on 7)

The method of claim 7, further comprising:
comparing the received UUID to the cached device details to determine whether device details are already cached for a responding device; and
comparing the received device details to the cached device details further comprises comparing the received URL to a URL in the cached device details to determine if the URL has changed.

### Claim 10 (depends on 2)

The method of claim 2, wherein the second discovery protocol search is a shortened device discovery protocol search that comprises identifying the second media device that is of the particular type from among one or more devices previously associated with the local network from a local cache, sending a unicast message to an address associated with the second media device using hypertext transfer protocol (HTTP) in response to identifying that the second media device is of the particular type, and receiving a reply to the unicast message from the second media device indicating that the second media device is present on the local network.

### Claim 11

A system for detecting a presence of a digital media device, the system comprising:
a memory; and
a hardware processor that, when executing computer executable instructions stored in the memory, is configured to:
in response to a first discovery protocol search determining that a first media device is a particular device type present on a local network and in response to a second discovery protocol search determining that a second media device is the particular device type present on the local network, present a first indication and a second indication that indicate presence of devices of a particular type on the local network, wherein the first discovery protocol search discovers devices on the local network and wherein the second discovery protocol search checks for presence of the devices that were previously discovered on the local network; and
cause an action associated with at least one of the first media device and the second media device based on the particular type of device present on the local network to be performed.

### Claim 12 (depends on 11)

The system of claim 11, wherein the first discovery protocol search includes obtaining device details for the devices discovered on the local network and wherein the second discovery protocol search includes a request for cached device details for the devices that were previously discovered on the local network.

### Claim 13 (depends on 12)

The system of claim 12, wherein the hardware processor is further configured to:
receive an instruction to detect the presence of the particular type of media device on the local network; and
determine whether a local cache includes the cached device details corresponding to one or more devices that have been previously associated with the local network in response to receiving the instruction to detect the presence of the particular type of digital media device on the local network, wherein the first discovery protocol search and the second discovery protocol search are concurrently initiated in response to determining that the local cache includes the cached device details corresponding to the one or more devices that have been previously associated with the local network.

### Claim 14 (depends on 13)

The system of claim 13, wherein the hardware processor is further configured to store at least a portion of device details received using the first discovery protocol search and the particular device type of the first media device in the local cache in response to the first discovery protocol search determining that the first media device is the particular device type present on the local network.

### Claim 15 (depends on 12)

The system of claim 12, wherein a full discovery protocol search is a simple device discovery protocol (SSDP) search that comprises:
sending a multicast message on the local network that requests device details for devices that are connected to the local network;
receiving, in response to sending the multicast message, a unicast reply that includes a link to a service description file corresponding to the first media device;
in response to receiving the unicast reply, accessing the service description file and determining whether a device type and received device details of the first media device are included in the service description file from the unicast reply; and
comparing the received device details to the cached device details to determine whether the first media device corresponds to one or more devices previously associated with the local network.

### Claim 16 (depends on 15)

The system of claim 15, wherein the SSDP search further comprises:
querying a device type identification database using at least a portion of the received requested device details in response to determining (a) that the received requested details do not include the device type of the first media device and (b) that the first media device does not correspond to one of the one or more devices previously associated with the local network, based on the comparison of the received device details to the cached device details;
receiving an identified device type of the first media device in response to querying the device type identification database; and
determining that the device type of the first media device is the same as the particular device type.

### Claim 17 (depends on 15)

The system of claim 15, wherein the SSDP search further comprises:
sending a user datagram protocol (UDP) multicast message on the local network that requests device details for devices that are connected to the local network; and
receiving a UDP unicast reply that includes a universally unique identifier (UUID) of at least one digital media device and a uniform resource locator (URL) for the service description file corresponding to the at least one digital media device.

### Claim 18 (depends on 17)

The system of claim 17, wherein the SSDP search further comprises sending a unicast message requesting the service description file from the replying device to an address associated an identified cached digital media device using HTTP, and wherein determining whether the device type of the at least one digital media device is included in the received device details further comprises checking the service description file for the device type.

### Claim 19 (depends on 17)

The system of claim 17, wherein the hardware processor is further configured to:
compare the received UUID to the cached device details to determine whether device details are already cached for a responding device; and
compare the received device details to the cached device details further comprises comparing the received URL to a URL in the cached device details to determine if the URL has changed.

### Claim 20 (depends on 12)

The system of claim 12, wherein the second discovery protocol search is a shortened device discovery protocol search that comprises identifying the second media device that is of the particular type from among one or more devices previously associated with the local network from a local cache, sending a unicast message to an address associated with the second media device using hypertext transfer protocol (HTTP) in response to identifying that the second media device is of the particular type, and receiving a reply to the unicast message from the second media device indicating that the second media device is present on the local network.

### Claim 21

A non-transitory computer-readable medium containing computer executable instructions that, when executed by a processor, cause the processor to perform a method for detecting a presence of a digital media device, the method comprising:
in response to a first discovery protocol search determining that a first media device is a particular device type present on a local network and in response to a second discovery protocol search determining that a second media device is the particular device type present on the local network, presenting a first indication and a second indication that indicate presence of devices of a particular type on the local network, wherein the first discovery protocol search discovers devices on the local network and wherein the second discovery protocol search checks for presence of the devices that were previously discovered on the local network; and
causing an action associated with at least one of the first media device and the second media device based on the particular type of device present on the local network to be performed.
