IP Library Granted Patent US 8,881,180
Granted Patent B1
US 8,881,180 · App. 13/299,118 · Granted Nov 4, 2014

Cross platform discovery and communication over a local network

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 8,881,180
App. No.
13/299,118
Granted
Nov 4, 2014
Kind
B1
Abstract

Exemplary methods, apparatuses, and systems that execute a cross-platform application programming interface (API) that supports a plurality of applications are described. The cross-platform API implements a request from an application for a device to participate in a unique conversation, the unique conversation being identified by a topic and independent of a unique identifier for entities. The cross-platform API further provides the application an abstracted discovery mechanism by which the application causes the device to discover an entity that is accessible on the local network participating in the unique conversation. The cross-platform API further provides the application with a message passing mechanism by which the application causes the first device to exchange messages related to the unique conversation with the entity.

Claims (51)

1. A computer-implemented method comprising:

executing, by a device, a cross-platform application programming interface (API), wherein the cross-platform API includes functionality to support a plurality of applications, wherein execution of one of the plurality of the applications includes interaction between a plurality of entities within a local network, and wherein

the cross-platform API implements a request from the application for the device to participate in a unique conversation, wherein the unique conversation is identified by a topic and independent of a unique identifier for entities,

the cross-platform API provides the application an abstracted discovery mechanism by which the application causes the device to discover an entity that is accessible on the local network participating in the unique conversation, wherein the abstracted discovery mechanism performs said discovery by sending messages according to a plurality of underlying discovery protocols and monitoring for a message utilizing one of the plurality of underlying discover protocols from the entity, the sending and monitoring of messages including:

sending a first message according to a first of the plurality of underlying discovery protocols,

monitoring for a second message utilizing the first discovery protocol from the entity,

determining that the second message has not been received,

sending, in response to determining that the second message has not been received, a third message according to a second of the plurality of underlying discovery protocols, and

receiving a fourth message utilizing the second discovery protocol from the entity, and

the cross-platform API provides the application with a message passing mechanism by which the application causes the device to exchange messages related to the unique conversation with the entity.

2. The computer-implemented method of claim 1 , wherein message passing mechanism populates values in a static byte array to be sent as an Internet Protocol (IP) packet.

3. The computer-implemented method of claim 1 , wherein the cross-platform API supports both peer-to-peer and client-server communication relationships between the device and the entity.

4. The computer-implemented method of claim 1 , wherein the plurality of applications supported by the cross-platform API include a variety of types of applications.

5. The computer-implemented method of claim 4 , wherein the variety of types of applications include multi-player games, remote control applications, content sharing applications, polling applications, and printing applications.

6. The computer-implemented method of claim 1 , wherein the abstracted discovery mechanism includes

asynchronously probing the local network to find entities participating in the unique conversation,

receiving an acknowledgement message from each participating entity, each acknowledgement message including an address and port number, and

updating a list of entities participating in the unique conversation.

7. The computer-implemented method of claim 6 , wherein the address is a link-local address and the cross-platform API operates based upon the assumption that the link-local address is unique.

8. The computer-implemented method of claim 1 , wherein the entity participates in the unique conversation as a proxy for one or more services to which the entity has access.

9. A non-transitory machine-readable storage medium storing instructions that, when executed, cause a device to perform a method comprising:

executing a cross-platform application programming interface (API), wherein the cross-platform API includes functionality to support a plurality of applications, wherein execution of one of the plurality of the applications includes interaction between a plurality of entities within a local network, and wherein

the cross-platform API implements a request from the application for the device to participate in a unique conversation, wherein the unique conversation is identified by a topic and independent of a unique identifier for entities,

the cross-platform API provides the application an abstracted discovery mechanism by which the application causes the device to discover an entity that is accessible on the local network participating in the unique conversation, wherein the abstracted discovery mechanism performs said discovery by:

sending a first message according to a first of the plurality of underlying discovery protocols,

monitoring for a second message utilizing the first discovery protocol from the entity,

determining that the second message has not been received,

sending, in response to determining that the second message has not been received, a third message according to a second of the plurality of underlying discovery protocols, and

receiving a fourth message utilizing the second discovery protocol from the entity, and

the cross-platform API provides the application with a message passing mechanism by which the application causes the device to exchange messages related to the unique conversation with the entity.

10. The machine-readable storage medium of claim 9 , wherein message passing mechanism populates values in a static byte array to be sent as an Internet Protocol (IP) packet.

11. The machine-readable storage medium of claim 9 , wherein the cross-platform API supports both peer-to-peer and client-server communication relationships between the device and the entity.

12. The machine-readable storage medium of claim 9 , wherein the plurality of applications supported by the cross-platform API include a variety of types of applications.

13. The machine-readable storage medium of claim 12 , wherein the variety of types of applications include multi-player games, remote control applications, content sharing applications, polling applications, and printing applications.

14. The machine-readable storage medium of claim 9 , wherein the abstracted discovery mechanism includes

asynchronously probing the local network to find entities participating in the unique conversation,

receiving an acknowledgement message from each participating entity, each acknowledgement message including an address and port number, and

updating a list of entities participating in the unique conversation.

15. The machine-readable storage medium of claim 9 , wherein the address is a link-local address and the cross-platform API operates based upon the assumption that the link-local address is unique.

16. The machine-readable storage medium of claim 9 , wherein the entity participates in the unique conversation as a proxy for one or more services to which the entity has access.

17. An apparatus comprising:

a processing device, wherein the processing device executes instructions that cause the apparatus to

execute a cross-platform application programming interface (API), wherein the cross-platform API includes functionality to support a plurality of applications, wherein execution of one of the plurality of the applications includes interaction between a plurality of entities within a local network, and wherein

the cross-platform API implements a request from the application for the apparatus to participate in a unique conversation, wherein the unique conversation is identified by a topic and independent of a unique identifier for entities,

the cross-platform API provides the application an abstracted discovery mechanism by which the application causes the device to discover an entity that is accessible on the local network participating in the unique conversation, wherein the abstracted discovery mechanism performs said discovery by:

sending a first message according to a first of the plurality of underlying discovery protocols,

monitoring for a second message utilizing the first discovery protocol from the entity,

determining that the second message has not been received,

sending, in response to determining that the second message has not been received, a third message according to a second of the plurality of underlying discovery protocols, and

receiving a fourth message utilizing the second discovery protocol from the entity, and

the cross-platform API provides the application with a message passing mechanism by which the application causes the apparatus to exchange messages related to the unique conversation with the entity.

Assignments (4)
RELEASE OF SECURITY INTEREST Recorded Feb 11, 2020
From: DLI LENDING AGENT, LLC
To: CRYPTOPEAK SOLUTIONS, LLC; ECTOLINK, LLC; INTERFACE LINX, LLC; SELECTIVE SIGNALS, LLC; SI-FLASH DRIVES, LLC; SOTERIA ENCRYPTION, LLC; SYNERGY DRONE, LLC; UNIBEAM PHOTONICS, LLC
Reel/Frame 051892/0218 →
SECURITY INTEREST Recorded May 23, 2017
From: CRYPTOPEAK SOLUTIONS, LLC; ECTOLINK, LLC; INTERFACE LINX, LLC; SELECTIVE SIGNALS, LLC; SI-FLASH DRIVES, LLC; SOTERIA ENCRYPTION, LLC; SYNERGY DRONE, LLC; UNIBEAM PHOTONICS, LLC
To: DLI LENDING AGENT, LLC
Reel/Frame 042554/0298 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded May 18, 2017
From: JARGON TECHNOLOGIES, LLC
To: SPECTRUM PATENTS, INC.
Reel/Frame 042432/0014 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Nov 17, 2011
From: SRIKANTH, BHANU; EPSTEIN, NATHAN; SCHULZ, JEFF
To: JARGON TECHNOLOGIES LLC
Reel/Frame 027247/0889 →