IP Library Granted Patent US 11,019,391
Granted Patent B1
US 11,019,391 · App. 16/590,688 · Granted May 25, 2021

Determining local network connections of devices using tokens

Inventors: Aidymar Bigio (Hillsborough, CA); Mateusz Marek Niewczas (San Francisco, CA); Amir Shimoni (Brooklyn, NY); Tal Gilady (Brooklyn, NY)
Assignee: Facebook, Inc.
H04N21/43637H04L63/10H04L67/06H04L67/18H04L67/20H04L67/306H04N21/25808H04N21/4122H04N21/4126H04N21/44227H04W4/80H04N21/4108H04W4/023
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 11,019,391
App. No.
16/590,688
Granted
May 25, 2021
Kind
B1
Abstract

An online system determines that a mobile device of a user and content device are connected to the same local network. To determine whether the content device is associated with the user, the online system provides a token and network ports to the content device. The content device establishes a connection to the mobile device using a selected network port to send the token. Responsive to receiving the token from the mobile device, the online system determines that the devices are connected to the same local network. The online system may also determine that the devices are within physical proximity to each other. The online system may send content items to the devices, and the user may view or interact with the content items simultaneously on multiple devices. Thus, the mobile device or content device acts as a complementary “second screen” or “control device” for the other device.

Claims (71)

1. A method comprising:

sending, by an online system, a token to a content device;

receiving, by the online system, information indicating a network port from the content device;

determining, by the online system, that the content device and a mobile device are potentially connected to a local network based on the information indicating the network port from the content device and network identifying information received from the mobile device;

in response to determining that the content device and the mobile device are potentially connected to the local network, sending, by the online system, the information indicating the network port from the content device to the mobile device, the mobile device configured to receive the information indicating the network port and to connect to the content device through the network port;

receiving, by the online system, a token from the mobile device, wherein the token received from the mobile device was sent from the content device to the mobile device through the network port;

determining, by the online system, that the content device and the mobile device are simultaneously connected to the local network based on the token sent to the client device and the token received from the mobile device; and

sending, by the online system to the content device, a content item for presentation in response to determining that the content device and the mobile device are simultaneously connected to the local network.

2. The method of claim 1 , further comprising:

selecting, by the online system, the content item based on a user profile of a user of the mobile device, the user profile maintained by the online system.

3. The method of claim 2 , further comprising:

receiving, by the online system from the mobile device, information identifying the user;

identifying, by the online system, the user profile of the user of the mobile device based on the information identifying the user.

4. The method of claim 1 , further comprising:

sending a unique token to each of a plurality of content devices for determining whether the mobile device and the plurality of content devices are simultaneously connected to the local network.

5. The method of claim 1 , further comprising:

determining whether the token sent by the online system to the content device has expired; and

in response to a determination that the token sent by the online system to the content device has expired, sending a subsequent token, by the online system, to the content device.

6. The method of claim 5 , further comprising:

receiving, by the online system, a new token from the mobile device, wherein the new token received from the mobile device was sent from the content device to the mobile device through a new connection between the content device and the mobile device;

determining, by the online system, that the content device and the mobile device are simultaneously connected to the local network based on the subsequent token sent to the client device and the new token received from the mobile device; and

sending, by the online system to the content device, a content item for presentation in response to determining that the content device and the mobile device are simultaneously connected to the local network.

7. The method of claim 1 , further comprising:

determining, by the online system, a physical proximity of the content device relative to the mobile device,

wherein the online system sends the content item to the content device responsive to determining that the physical proximity is less than a threshold distance.

8. The method of claim 7 , wherein determining the physical proximity of the content device relative to the mobile device comprises:

receiving, by the online system from the mobile device, a signal transmitted by the content device and detected by the mobile device; and

determining, by the online system, the physical proximity of the content device relative to the mobile device based on a strength of the signal.

9. A computer program product comprising a non-transitory computer readable storage medium having instructions encoded thereon that, when executed by a processor, cause the processor to:

send, by an online system, a token to a content device;

receive, by the online system, information indicating a network port from the content device;

determine, by the online system, that the content device and a mobile device are potentially connected to a local network based on the information indicating the network port from the content device and network identifying information received from the mobile device;

in response to determining that the content device and the mobile device are potentially connected to the local network, send, by the online system, the information indicating the network port from the content device to the mobile device, the mobile device configured to receive the information indicating the network port and to connect to the content device through the network port;

receive, by the online system, a token from the mobile device, wherein the token received from the mobile device was sent from the content device to the mobile device through the network port;

determine, by the online system, that the content device and the mobile device are simultaneously connected to the local network based on the token sent to the client device and the token received from the mobile device; and

send, by the online system to the content device, a content item for presentation in response to determining that the content device and the mobile device are simultaneously connected to the local network.

10. The computer program product of claim 9 , wherein the instructions further cause the processor to:

select, by the online system, the content item based on a user profile of a user of the mobile device, the user profile maintained by the online system.

11. The computer program product of claim 10 , wherein the instructions further cause the processor to:

receive, by the online system from the mobile device, information identifying the user;

identify, by the online system, the user profile of the user of the mobile device based on the information identifying the user.

12. The computer program product of claim 9 , wherein the instructions further cause the processor to:

send a unique token to each of a plurality of content devices for determining whether the mobile device and the plurality of content devices are simultaneously connected to the local network.

13. The computer program product of claim 9 , wherein the instructions further cause the processor to:

determine whether the token sent by the online system to the content device has expired; and

in response to a determination that the token sent by the online system to the content device has expired, send a subsequent token, by the online system, to the content device.

14. The computer program product of claim 9 , wherein the instructions further cause the processor to:

determining, by the online system, a physical proximity of the content device relative to the mobile device,

wherein the online system sends the content item to the content device responsive to determining that the physical proximity is less than a threshold distance.

15. A computer system comprising:

a non-transitory computer-readable storage medium storing executable computer program instructions, the computer program instructions comprising instructions that when executed cause a computer processor to perform steps, comprising:

sending, by an online system, a token to a content device;

receiving, by the online system, information indicating a network port from the content device;

determining, by the online system, that the content device and a mobile device are potentially connected to a local network based on the information indicating the network port from the content device and network identifying information received from the mobile device;

in response to determining that the content device and the mobile device are potentially connected to the local network, sending, by the online system, the information indicating the network port from the content device to the mobile device, the mobile device configured to receive the information indicating the network port and to connect to the content device through the network port;

receiving, by the online system, a token from the mobile device, wherein the token received from the mobile device was sent from the content device to the mobile device through the network port;

determining, by the online system, that the content device and the mobile device are simultaneously connected to the local network based on the token sent to the client device and the token received from the mobile device; and

sending, by the online system to the content device, a content item for presentation in response to determining that the content device and the mobile device are simultaneously connected to the local network.

16. The system of claim 15 , wherein the steps further comprise:

selecting, by the online system, the content item based on a user profile of a user of the mobile device, the user profile maintained by the online system.

17. The system of claim 16 , wherein the steps further comprise:

receiving, by the online system from the mobile device, information identifying the user;

identifying, by the online system, the user profile of the user of the mobile device based on the information identifying the user.

18. The system of claim 15 , wherein the steps further comprise:

sending a unique token to each of a plurality of content devices for determining whether the mobile device and the plurality of content devices are simultaneously connected to the local network.

19. The system of claim 15 , wherein the steps further comprise:

determining whether the token sent by the online system to the content device has expired; and

in response to a determination that the token sent by the online system to the content device has expired, sending a subsequent token, by the online system, to the content device.

20. The system of claim 15 , wherein the steps further comprise:

determining, by the online system, a physical proximity of the content device relative to the mobile device,

wherein the online system sends the content item to the content device responsive to determining that the physical proximity is less than a threshold distance.

Assignments (1)
CHANGE OF NAME Recorded Nov 18, 2021
From: FACEBOOK, INC.
To: META PLATFORMS, INC.
Reel/Frame 058897/0824 →
Continuity (1)
Continuation 15657939 · Jul 24, 2017