IP Library Granted Patent US 11,654,361
Granted Patent B2
US 11,654,361 · App. 17/333,988 · Granted May 23, 2023

Systems and methods for prioritizing content packets based on a dynamically updated list of content filtering rules

Inventors: Jonathan Nguyen (Cambridge, MA); Daniel Kesack (Ipswich, MA); William Hester (Boston, MA); Sophie Dasinger (Cambridge, MA); Edward Zaleski (New Berlin, WI); Ethan Haskell (Boston, MA); Corey Shtasel-Gottlieb (Cambridge, MA)
Assignee: DRAFTKINGS, INC.
A63F13/65A63F13/355A63F13/46A63F13/828H04L67/141H04L67/55H04W4/18H04W4/21G06F40/106H04L67/01H04L67/02
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,654,361
App. No.
17/333,988
Granted
May 23, 2023
Kind
B2
Abstract

Systems and methods for prioritizing content packets based on a dynamically updated list of content filtering rules are described. A system is configured to identify an application executing on a client device to which to transmit content, the application associated with an account and determine that the application is configured with a configuration setting to apply a content filtering policy corresponding to a list of players including one or more players included in one or more lineups associated with the account. The system can receive a content item from a content source and determine one or more player tags associated with the content item. The system can determine that the content item includes a player tag corresponding to a player included in the list of players and transmit the content item to the client device for insertion in a content feed provided by the application responsive to the determination.

Claims (92)

1. A method, comprising:

receiving, by a server including one or more processors, from an application executing on a client device, a request for content for presentation in a content feed of the application, the application associated with an account, the account associated with a lineup comprising one or more players;

determining, by the server, that a content item of a plurality of candidate content items includes a player tag that identifies a player of the one or more players included in the lineup associated with the account;

updating, by the server, the content feed by inserting the content item into the content feed responsive to determining that the content item includes the player tag, wherein the content item is inserted into the content feed based on a priority score of the content item and respective priority scores of other content items in the content feed;

transmitting, by the server, the content item to the client device for presentation by the application within the content feed presented by the application based on the priority score of the content item;

responsive to receiving a request to disable a content filtering policy, selecting, by the server, a second content item of the plurality of candidate content items having a second player tag that does not identify a second player included in the lineup associated with the account; and

transmitting, by the server, the second content item to the client device for presentation by the application in the content feed presented by the application.

2. The method of claim 1 , further comprising:

establishing, by the server, a web socket connection between the server and the application executing on the client device;

maintaining, by the server, state information of the web socket connection; and

wherein transmitting the content item to the client device comprises transmitting, by the server, the content item to the client device responsive to determining that the web socket connection is active.

3. The method of claim 2 , further comprising:

storing, by the server, a request to transmit the content item in a queue responsive to determining that there is no active web socket connection between the server and the application;

determining, by the server, that the web socket connection between the server and the application has been established; and

retrieving, by the server, the content item from the queue for transmission to the client device responsive to determining that the web socket connection between the server and the application has been established.

4. The method of claim 1 , further comprising:

maintaining, by the server, a list of players associated with the account; and

updating, by the server, the list of players responsive to a user of the account modifying an existing lineup or adding a new lineup.

5. The method of claim 4 , wherein the content item is a first content item and the first content item is assigned a first player tag identifying a first player included in the lineup associated with the account, and the method further comprising:

determining, by the server, that a third player has been added to the list of players associated with the account;

identifying, by the server, a third content item including a third player tag corresponding to the third player;

adding the third content item to a queue of content items to transmit to the application; and

transmitting the third content item to the client device for presentation in the application responsive to determining that there is a connection between the server and the application executing on the client device.

6. The method of claim 4 , wherein the content item is a first content item and the first content item is assigned a first player tag identifying a first player included in the list of players associated with the account, and the method further comprising:

determining, by the server, that a second lineup including a set of players associated with the account has expired;

removing, by the server, at least one player of the set of players from the list of players associated with the account responsive to determining that the second lineup has expired;

identifying a fourth content item including a fourth player tag that corresponds to the at least one player of the set of players that was removed from the list of players; and

removing the fourth content item from a queue of content items to transmit to the application responsive to removing the at least one player from the list of players.

7. The method of claim 1 , wherein the application is configured to display an actionable item that when selected, applies the content filtering policy to filter the content presented by the application.

8. The method of claim 1 , wherein the content item is a first content item and wherein the method further comprises:

receiving the first content item from a first content source in a first content format;

selecting, from a plurality of content modification policies, a first content modification policy to modify the first content format of the first content item to a second content format that the application executing on the client device is configured to present in the application;

formatting the first content item from the first content format to the second content format;

storing the first content item in the second content format; and

wherein transmitting the first content item includes transmitting the first content item in the second content format for presentation by the application.

9. The method of claim 8 , further comprising:

receiving a third content item from a second content source in a third content format;

selecting, from the plurality of content modification policies, a second content modification policy to modify the third content format of the first content item to a fourth content format that the application executing on the client device is configured to present;

formatting the third content item from the third content format to the fourth content format;

storing the third content item in the fourth content format; and

transmitting the third content item to the client device in the fourth content format for presentation by the application.

10. A system comprising:

a server including one or more processors configured to:

receive, from an application executing on a client device a request for content for presentation in a content feed of the application, the application associated with an account associated with a lineup comprising one or more players;

determine that a content item of a plurality of candidate content items includes a player tag that identifies a player of the one or more players included in the lineup associated with the account;

update the content feed by inserting the content item into the content feed responsive to determining that the content item includes the player tag, wherein the content item is inserted into the content feed based on a priority score of the content item and respective priority scores of other content items in the content feed;

transmit the content item to the client device for presentation by the application within the content feed presented by the application based on the priority score of the content item;

select, responsive to receiving a request to disable a content filtering policy, a second content item of the plurality of candidate content items having a second player tag that does not identify a second player included in the lineup associated with the account; and

transmit the second content item to the client device for presentation by the application in the content feed presented by the application.

11. The system of claim 10 , wherein the server is further configured to:

establish a web socket connection between the server and the application executing on the client device;

maintain state information of the web socket connection; and

wherein to transmitting the content item to the client device, the server is configured to transmit the content item to the client device responsive to determining that the web socket connection is active.

12. The system of claim 11 , wherein the server is configured to:

store a request to transmit the content item in a queue responsive to determining that there is no active web socket connection between the server and the application;

determine that the web socket connection between the server and the application has been established; and

retrieve the content item from the queue for transmission to the client device responsive to determining that the web socket connection between the server and the application has been established.

13. The system of claim 10 , wherein the server is configured to:

maintain a list of players associated with the account; and

update the list of players responsive to a user of the account modifying an existing lineup or adding a new lineup.

14. The system of claim 13 , wherein the content item is a first content item and the first content item is assigned a first player tag identifying a first player included in the list of players associated with the account, and wherein the server is configured to:

determine that a third player has been added to the list of players associated with the account;

identify a third content item including a third player tag corresponding to the third player;

add the third content item to a queue of content items to transmit to the application; and

transmit the third content item to the client device for presentation in the content feed of the application responsive to determining that there is a connection between the server and the application executing on the client device.

15. The system of claim 14 , wherein the server is configured to:

determine that a second lineup including a set of players associated with the account has expired;

remove at least one player of the set of players from the list of players associated with the account responsive to determining that the second lineup has expired;

identify a fourth content item including a fourth player tag that corresponds to the at least one player of the set of players that was removed from the list of players; and

remove the fourth content item from the queue of content items to transmit to the application responsive to removing the at least one player from the list of players.

16. The system of claim 10 , wherein the application is configured to display an actionable item that when selected, applies the content filtering policy to filter the content presented by the application.

17. The system of claim 10 , wherein the content item is a first content item and wherein the server is further configured to:

receive the first content item from a first content source in a first content format;

select, from a plurality of content modification policies, a first content modification policy to modify the first content format of the first content item to a second content format that the application executing on the client device is configured to present in the application;

format the first content item from the first content format to the second content format;

store the first content item in the second content format; and

wherein to transmit the first content item, the server is configured to transmit the first content item in the second content format for presentation by the application.

18. The system of claim 17 , wherein the server is further configured to:

receive a third content item from a second content source in a third content format;

select, from the plurality of content modification policies, a second content modification policy to modify the third content format of the third content item to a fourth content format that the application executing on the client device is configured to present in the application;

format the third content item from the third content format to the fourth content format;

store the third content item in the fourth content format; and

transmit the third content item to the client device in the fourth content format for presentation by the application.

19. A method, comprising:

receiving, by a server including one or more processors, from an application executing on a client device, a request for content for presentation in a content feed of the application, the application associated with an account, the account associated with a lineup comprising one or more players;

determining, by the server, that a content item of a plurality of candidate content items includes a player tag that identifies a player of the one or more players included in the lineup associated with the account;

updating, by the server, the content feed by inserting the content item into the content feed responsive to determining that the content item includes the player tag, wherein the content item is inserted into the content feed based on a priority score of the content item and respective priority scores of other content items in the content feed; and

transmitting, by the server, the content item to the client device for presentation by the application within the content feed presented by the application based on the priority score of the content item.

20. The method of claim 19 , further comprising:

establishing, by the server, a web socket connection between the server and the application executing on the client device;

maintaining, by the server, state information of the web socket connection; and

wherein transmitting the content item to the client device comprises transmitting, by the server, the content item to the client device responsive to determining that the web socket connection is active.

Assignments (5)
RELEASE OF SECURITY INTEREST Recorded Nov 7, 2024
From: BANC OF CALIFORNIA (FORMERLY KNOWN AS PACIFIC WESTERN BANK)
To: DK CROWN HOLDINGS INC.
Reel/Frame 069315/0578 →
SECURITY INTEREST Recorded Nov 7, 2024
From: DK CROWN HOLDINGS INC.; JACKPOCKET LLC
To: MORGAN STANLEY SENIOR FUNDING, INC.
Reel/Frame 069320/0109 →
CHANGE OF NAME Recorded Oct 3, 2023
From: DRAFTKINGS, INC.
To: DK CROWN HOLDINGS INC.
Reel/Frame 065103/0263 →
SECURITY INTEREST Recorded Jan 3, 2023
From: DK CROWN HOLDINGS INC.
To: PACIFIC WESTERN BANK
Reel/Frame 062266/0013 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded May 28, 2021
From: NGUYEN, JONATHAN; KESACK, DANIEL; HESTER, WILLIAM; DASINGER, SOPHIE; ZALESKI, EDWARD; HASKELL, ETHAN; SHTASEL-GOTTLIEB, COREY
To: DRAFTKINGS, INC.
Reel/Frame 056387/0131 →
Cited By (2)
US 12,226,699 US 12,452,343