IP Library Granted Patent US 10,789,275
Granted Patent B2
US 10,789,275 · App. 15/362,454 · Granted Sep 29, 2020

Systems and methods for providing content

Inventor: Taylor Gordon (New York, NY)
Assignee: Facebook, Inc.
G06F16/285G06F16/41H04L63/102H04L67/06H04L67/22
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,789,275
App. No.
15/362,454
Granted
Sep 29, 2020
Kind
B2
Abstract

Systems, methods, and non-transitory computer-readable media can determine a first set of content items to be sent to a computing device of a user. A token is generated based at least in part on the first set of content items, the token being encoded with information for tracking content items sent to the computing device of the user. Data corresponding to the set of content items and the token is sent to the computing device of the user.

Claims (62)

1. A computer-implemented method comprising:

determining, by a computing system, a first set of content items to be sent to a computing device of a user;

generating, by the computing system, a token based at least in part on the first set of content items, wherein the token is a fixed-length bit string, the token being encoded with information for tracking content items sent to the computing device of the user, the generating further comprising:

determining, by the computing system, a set of candidate content items from which the first set of content items were determined;

hashing, by the computing system, identifiers corresponding to the set of candidate content items to a first set of bins associated with the token;

hashing, by the computing system, identifiers corresponding to the first set of content items to the first set of bins associated with the token; and

sending, by the computing system, data corresponding to the first set of content items and the token to the computing device of the user.

2. The computer-implemented method of claim 1 , the method further comprising:

receiving, by the computing system, the token from the computing device of the user; and

determining, by the computing system, that the first set of content items were sent to the computing device based at least in part on the information encoded in the token.

3. The computer-implemented method of claim 2 , the method further comprising:

determining, by the computing system, a second set of content items to be sent to the computing device of the user based at least in part on the information encoded in the token, the second set of content items not including content items that were included in the first set of content items.

4. The computer-implemented method of claim 3 , the method further comprising:

generating, by the computing system, an updated token based at least in part on the second set of content items, the updated token being encoded with information for tracking content items sent to the computing device of the user including both the first set of content items and the second set of content items.

5. The computer-implemented method of claim 1 , wherein generating the token based at least in part on the first set of content items further comprises:

categorizing, by the computing system, each bin in the first set of bins based at least in part on the identifiers that were hashed to that bin; and

encoding, by the computing system, the respective categorizations of the first set of bins in the token.

6. The computer-implemented method of claim 5 , wherein categorizing each bin in the first set of bins further comprises:

determining, by the computing system, that only identifiers corresponding to the set of candidate content items were hashed to a first bin in the first set of bins; and

categorizing, by the computing system, the first bin as a bin that corresponds to candidate content items.

7. The computer-implemented method of claim 5 , wherein categorizing each bin in the first set of bins further comprises:

determining, by the computing system, that only identifiers corresponding to the first set of content items were hashed to a first bin in the first set of bins; and

categorizing, by the computing system, the first bin as a bin that corresponds to content items that were sent to the computing device of the user.

8. The computer-implemented method of claim 5 , wherein categorizing each bin in the first set of bins further comprises:

determining, by the computing system, that at least one first identifier corresponding to a content item in the set of candidate content items was hashed to a first bin in the first set of bins;

determining, by the computing system, that at least one second identifier corresponding a content item in the first set of content items was also hashed to the first bin; and

categorizing, by the computing system, the first bin as a bin that corresponds to both candidate content items and content items that were sent to the computing device of the user.

9. The computer-implemented method of claim 8 , the method further comprising:

hashing, by the computing system, the first identifier to a second set of bins in the token;

hashing, by the computing system, the second identifier to the second set of bins in the token;

categorizing, by the computing system, each bin in the second set of bins based at least in part on the identifiers that were hashed to that bin; and

encoding, by the computing system, the respective categorizations of the second set of bins in the token.

10. A system comprising:

at least one processor; and

a memory storing instructions that, when executed by the at least one processor, cause the system to perform:

determining a first set of content items to be sent to a computing device of a user;

generating a token based at least in part on the first set of content items, wherein the token is a fixed-length bit string, the token being encoded with information for tracking content items sent to the computing device of the user, the generating further comprising:

determining a set of candidate content items from which the first set of content items were determined;

hashing identifiers corresponding to the set of candidate content items to a first set of bins associated with the token;

hashing identifiers corresponding to the first set of content items to the first set of bins associated with the token; and

sending data corresponding to the first set of content items and the token to the computing device of the user.

11. The system of claim 10 , wherein the instructions further cause the system to perform:

receiving the token from the computing device of the user; and

determining that the first set of content items were sent to the computing device based at least in part on the information encoded in the token.

12. The system of claim 11 , wherein the instructions further cause the system to perform:

determining a second set of content items to be sent to the computing device of the user based at least in part on the information encoded in the token, the second set of content items not including content items that were included in the first set of content items.

13. The system of claim 12 , wherein the instructions further cause the system to perform:

generating an updated token based at least in part on the second set of content items, the updated token being encoded with information for tracking content items sent to the computing device of the user including both the first set of content items and the second set of content items.

14. A non-transitory computer-readable storage medium including instructions that, when executed by at least one processor of a computing system, cause the computing system to perform a method comprising:

determining a first set of content items to be sent to a computing device of a user;

generating a token based at least in part on the first set of content items, wherein the token is a fixed-length bit string, the token being encoded with information for tracking content items sent to the computing device of the user, the generating further comprising:

determining a set of candidate content items from which the first set of content items were determined;

hashing identifiers corresponding to the set of candidate content items to a first set of bins associated with the token;

hashing identifiers corresponding to the first set of content items to the first set of bins associated with the token; and

sending data corresponding to the first set of content items and the token to the computing device of the user.

15. The non-transitory computer-readable storage medium of claim 14 , wherein the instructions further cause the system to perform:

receiving the token from the computing device of the user; and

determining that the first set of content items were sent to the computing device based at least in part on the information encoded in the token.

16. The non-transitory computer-readable storage medium of claim 15 , wherein the instructions further cause the system to perform:

determining a second set of content items to be sent to the computing device of the user based at least in part on the information encoded in the token, the second set of content items not including content items that were included in the first set of content items.

17. The non-transitory computer-readable storage medium of claim 16 , wherein the instructions further cause the system to perform:

generating an updated token based at least in part on the second set of content items, the updated token being encoded with information for tracking content items sent to the computing device of the user including both the first set of content items and the second set of content items.

Assignments (2)
CHANGE OF NAME Recorded Dec 1, 2021
From: FACEBOOK, INC.
To: META PLATFORMS, INC.
Reel/Frame 058645/0271 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Feb 28, 2017
From: GORDON, TAYLOR
To: FACEBOOK, INC.
Reel/Frame 041404/0426 →
Continuity (1)
Related Publication 20180150545A1 · May 31, 2018