IP Library Granted Patent US 10,771,592
Granted Patent B2
US 10,771,592 · App. 15/997,608 · Granted Sep 8, 2020

Interoperability of discovery and connection protocols between client devices and first screen devices

Inventors: Stein Eldar Johnsen (Ranheim, NO); Alexander Taboriskiy (Zurich, CH)
Assignee: GOOGLE LLC
H04L67/42G06F9/451H04L67/141H04L67/16H04L67/36
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 10,771,592
App. No.
15/997,608
Granted
Sep 8, 2020
Kind
B2
Abstract

A second screen application operating on a client device presents a deduplicated listing of devices in a user interface, each listed device associated with one or more coupling protocols. A selection of a listed device is received via the user interface with which to participate in a video display session. Application status information is obtained from a control server for a first screen application of the selected device, the application status information indicating whether the first screen application is in an existing video display session with a second client device. A coupling methodology is determined based on the indicated application status and coupling protocols available to the client device and the one or more coupling protocols of the first screen application; and the client device couples to the first screen application via the determined coupling methodology.

Claims (60)

1. A computer-implemented method for facilitating interoperability between a first screen device and a second screen device, the method comprising:

discovering, by the second screen device, a first screen application operating on the first screen device and a plurality of coupling protocols available to connect to the first screen device;

providing, by the second screen device, a device list based on the discovering, the device list including a plurality of entries each associated with the first screen application and a respective coupling protocol of the plurality of coupling protocols;

obtaining, by the second screen device, pairing information for the first screen application from a control server;

updating, by the second screen device, the device list using the pairing information from the control server;

performing, by the second screen device, device deduplication using the updated device list to generate a deduplicated entry for the first screen application; and

presenting, by the second screen device, the deduplicated entry for the first screen application in a user interface.

2. The method of claim 1 , wherein providing, by the second screen device, the device list based on the discovering comprises:

adding an entry to the device list for each of the plurality of coupling protocols, wherein each added entry includes an application identifier of the first screen application and an identifier of a respective coupling protocol of the plurality of coupling protocols.

3. The method of claim 2 , wherein the application identifier of the first screen application is generated by the first screen application and provided to the second screen device in response to a discovery request of the second screen device.

4. The method of claim 1 , wherein the pairing information for the first screen application identifies one or more client devices with which the first screen application has been paired manually using a passcode.

5. The method of claim 4 , wherein updating the device list using the pairing information comprises:

adding an entry to the device list for each of the one or more client devices with which the first screen application has been paired manually, wherein each added entry includes an application identifier of the first screen application and an identifier of a respective client device with an indication of a manual pairing.

6. The method of claim 5 , wherein performing device deduplication using the updated device list comprises:

gathering entries that are associated with the first screen application in the updated device list using the application identifier of the first screen application; and

creating a single entry that includes the application identifier of the first screen application, the single entry being the deduplicated entry reflecting the plurality of coupling protocols and the one or more client devices with which the first screen application has been paired manually.

7. The method of claim 1 , further comprising:

receiving a user selection of the deduplicated entry for the first screen application;

requesting application status information associated with the first screen application from the control server;

receiving the application status information associated with the first screen application from the control server; and

determining, based on the application status information, whether the first screen application has an existing session with any other client devices.

8. The method of claim 7 , further comprising:

responsive to determining that the first screen application does not have an existing session with any other client devices, establishing a session with the first screen application.

9. The method of claim 8 , wherein establishing the session with the first screen application comprises:

identifying, by the second screen device, rankings of the plurality of coupling protocols; and

selecting, from the plurality of coupling protocols, a coupling protocol with a highest ranking for establishing the session with the first screen application.

10. The method of claim 8 , wherein establishing the session with the first screen application comprises:

receiving a user selection of one of the plurality of coupling protocols for establishing the session with the first screen application.

11. The method of claim 7 , further comprising:

responsive to determining that the first screen application has an existing session with another client device, identifying a coupling protocol of the existing session, and determining whether the coupling protocol of the existing session is supported by the second screen device.

12. The method of claim 11 , further comprising:

responsive to determining that the coupling protocol of the existing session is supported by the second screen device, connecting with the first screen application using the coupling protocol of the existing session.

13. The method of claim 11 , further comprising:

responsive to determining that the coupling protocol of the existing session is not supported by the second screen device, connecting with the first screen application via the control server.

14. A non-transitory computer readable medium comprising instructions, which when executed by a processor, cause the process to perform operations for facilitating interoperability between a first screen device and a second screen device, the operations comprising:

discovering, by the second screen device, a first screen application operating on the first screen device and a plurality of coupling protocols available to connect to the first screen device;

providing, by the second screen device, a device list based on the discovering, the device list including a plurality of entries each associated with the first screen application and a respective coupling protocol of the plurality of coupling protocols;

obtaining, by the second screen device, pairing information for the first screen application from a control server;

updating, by the second screen device, the device list using the pairing information from the control server;

performing, by the second screen device, device deduplication using the updated device list to generate a deduplicated entry for the first screen application; and

presenting, by the second screen device, the deduplicated entry for the first screen application in a user interface.

15. The non-transitory computer readable medium of claim 14 , wherein providing, by the second screen device, the device list based on the discovering comprises:

adding an entry to the device list for each of the plurality of coupling protocols, wherein each added entry includes an application identifier of the first screen application and an identifier of a respective coupling protocol of the plurality of coupling protocols, wherein the application identifier of the first screen application is generated by the first screen application and provided to the second screen device in response to a discovery request of the second screen device.

16. The non-transitory computer readable medium of claim 14 , wherein the pairing information for the first screen application identifies one or more client devices with which the first screen application has been paired manually using a passcode.

17. The non-transitory computer readable medium of claim 14 , wherein updating the device list using the pairing information comprises:

adding an entry to the device list for each of the one or more client devices with which the first screen application has been paired manually, wherein each added entry includes an application identifier of the first screen application and an identifier of a respective client device with an indication of a manual pairing.

18. The non-transitory computer readable medium of claim 17 , wherein performing device deduplication using the updated device list comprises:

gathering entries that are associated with the first screen application in the updated device list using the application identifier of the first screen application; and

creating a single entry that includes the application identifier of the first screen application, the single entry being the deduplicated entry reflecting the plurality of coupling protocols and the one or more client devices with which the first screen application has been paired manually.

19. A system to facilitate interoperability between a first screen device and a second screen device, the system comprising:

a memory; and

a processor, coupled to the memory, to:

discover a first screen application operating on the first screen device and a plurality of coupling protocols available to connect to the first screen device;

provide a device list based on the discovering, the device list including a plurality of entries each associated with the first screen application and a respective coupling protocol of the plurality of coupling protocols;

obtain pairing information for the first screen application from a control server;

update the device list using the pairing information from the control server;

perform device deduplication using the updated device list to generate a deduplicated entry for the first screen application; and

present the deduplicated entry for the first screen application in a user interface.

20. The system of claim 19 , wherein each of the plurality of entries associated with the first screen application includes an application identifier of the first screen application that is generated by the first screen application and provided to the second screen device in response to a discovery request of the second screen device.

21. The system of claim 19 , wherein the pairing information for the first screen application identifies one or more client devices with which the first screen application has been paired manually using a passcode.

Assignments (2)
CHANGE OF NAME Recorded Oct 29, 2018
From: GOOGLE INC.
To: GOOGLE LLC
Reel/Frame 047500/0284 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jun 4, 2018
From: JOHNSEN, STEIN ELDAR; TABORISKIY, ALEXANDER
To: GOOGLE INC.
Reel/Frame 045983/0993 →
Continuity (2)
Continuation 14613229 · Feb 3, 2015
Related Publication 20180288193A1 · Oct 4, 2018