IP Library Granted Patent US 12,701,178
Granted Patent B2
US 12,701,178 · App. 18/815,305 · Granted Aug 4, 2026

Systems and methods for multi-client content delivery

Inventors: Nathan Giacalone (Cambridge, MA); Ryan McCullough (Reading, MA); Sumanth Reddy (Cambridge, MA); Brandon Ward (Somerville, MA); Andrew Busch (Waltham, MA)
Assignee: DK Crown Holdings Inc.
H04L69/28H04L7/0054H04L7/0079H04L67/125H04L67/62
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 12,701,178
App. No.
18/815,305
Filed
Aug 26, 2024
Granted
Aug 4, 2026
Kind
B2
Art Unit
2453
USPC
709/219
Abstract

In some aspects, the disclosure is directed to methods and systems for synchronized multi-client content delivery, and a content selection system based on individual and aggregated scores for the content items, to generate bundles or sets of content items having approximately corresponding scores. Server timers and local timers on client devices may be synchronized via notifications, and timer durations dynamically adjusted when client requests and responses are sent prior to client-side timer expiration, but received after server-side timer expiration, indicating communication latency has caused desynchronization. Timers may be adjusted on a global basis or per-client device basis. Through scoring and bundling, sets of content items that may be relevant to approximately an equal share of the recipient client devices may be selected and transmitted.

Claims (57)

1 . A system, comprising:

one or more processors to:

receive, from a server, a content item corresponding to an event window of a live event, the event window corresponding to a server timer maintained by the server;

initiate, upon receipt of the content item, a local timer corresponding to the event window;

responsive to detecting an interaction within a threshold of the local timer, transmit, to the server, a first communication corresponding to the content item, the first communication comprising a receipt time of the content item and specifying a wager for the event window; and

present, based on a second communication from the server, an indication that processing of the wager specified in the first communication is restricted responsive to the server determining that the first communication arrived past an expiration of a server timer plus an offset that is computed based on a difference between a transmission time of the first communication and the receipt time of the first communication.

2 . The system of claim 1 , wherein the content item is included in a transmission, the transmission comprising a transmission time and an identification of the event window.

3 . The system of claim 1 , wherein the one or more processors are further configured to receive an indication that an account has been updated based on the processing of the first communication being restricted.

4 . The system of claim 1 , wherein the one or more processors are configured to:

receive a second content item corresponding to a second event window;

transmit a third communication corresponding to the second content item; and

present an indication that the third communication is processed by the server based on the third communication arriving at the server within the second event window.

5 . The system of claim 4 , wherein the one or more processors are configured to:

receive an indication that an account is updated based on the third communication being processed by the server.

6 . The system of claim 1 , wherein the one or more processors are further configured to:

receive, from the server, a second content item corresponding to a second event window and a second server timer;

receive a synchronization notification identifying a transmission time of the second content item;

determine a local offset based on the transmission time of the second content item and a corresponding receipt time of a synchronization notification; and

execute a second local timer based on the second event window and the local offset.

7 . The system of claim 6 , wherein the one or more processors are further configured to:

determine that the second local timer has expired; and

transmit a notification to the server indicating that the local timer has expired.

8 . The system of claim 6 , wherein the one or more processors are further configured to:

receive, from the server, a second synchronization notification indicating an expiration of the second server timer; and

stopping the second local timer based on the second synchronization notification.

9 . The system of claim 8 , wherein the one or more processors are to:

receive a second interaction with the second content item following expiration of the second local timer; and

restrict transmission of a communication corresponding to the second interaction based on the expiration of the second local timer.

10 . The system of claim 1 , wherein the one or more processors are further configured to present the content item according to the local timer during the event window.

11 . A method comprising:

receiving, by one or more processors coupled to non-transitory memory, from a server, a content item corresponding to an event window of a live event, the event window corresponding to a server timer maintained by the server;

initiating, by the one or more processors, upon receipt of the content item, a local timer corresponding to the event window;

responsive to detecting an interaction within a threshold of the local timer, transmitting, by the one or more processors, to the server, a first communication corresponding to the content item, the first communication comprising a receipt time of the content item and specifying a wager for the event window; and

presenting, by the one or more processors, based on a second communication from the server, an indication that processing of the wager specified in the first communication is restricted responsive to the server determining that the first communication arrived past an expiration of a server timer plus an offset that is computed based on a difference between a transmission time of the first communication and the receipt time of the first communication.

12 . The method of claim 11 , wherein receiving the content item includes receiving the content item in a transmission comprising a transmission time and an identification of the event window.

13 . The method of claim 11 , further comprising:

receiving, by the one or more processors, an indication that an account has been updated based on the processing of the first communication being restricted.

14 . The method of claim 11 , further comprising:

receiving, by the one or more processors, a second content item corresponding to a second event window;

transmitting, by the one or more processors, a third communication corresponding to the second content item; and

presenting, by the one or more processors, an indication that the third communication is processed by the server based on the third communication arriving at the server within the second event window.

15 . The method of claim 14 , further comprising receiving, by the one or more processors, an indication that an account is updated based on the third communication being processed by the server.

16 . The method of claim 11 , further comprising:

receiving, by the one or more processors, from the server, a second content item corresponding to a second event window and a second server timer;

receiving a synchronization notification identifying a transmission time of the second content item;

determining, by the one or more processors, a local offset based on the transmission time of the second content item and a corresponding receipt time of a synchronization notification; and

executing, by the one or more processors, a second local timer based on the second event window and the local offset.

17 . The method of claim 16 , further comprising:

determining, by the one or more processors, that the second local timer has expired; and

transmitting, by the one or more processors, a notification to the server indicating that the local timer has expired.

18 . The method of claim 16 , further comprising:

receiving, by the one or more processors, from the server, a second synchronization notification indicating an expiration of the second server timer; and

stopping, by the one or more processors, the second local timer based on the second synchronization notification.

19 . The method of claim 18 , further comprising:

receiving, by the one or more processors, a second interaction with the second content item following expiration of the second local timer; and

restricting, by the one or more processors, transmission of a communication corresponding to the second interaction based on the expiration of the second local timer.

20 . The method of claim 11 , further comprising presenting, by the one or more processors, the content item according to the local timer during the event window.

Assignments (3)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Mar 27, 2026
From: GIACALONE, NATHAN; MCCULLOUGH, RYAN; REDDY, SUMANTH; WARD, BRANDON; BUSCH, ANDREW
To: DRAFTKINGS, INC.
Reel/Frame 074205/0066 →
CHANGE OF NAME Recorded Mar 27, 2026
From: DRAFTKINGS, INC.
To: DK CROWN HOLDINGS INC.
Reel/Frame 075289/0273 →
SECURITY INTEREST Recorded Nov 7, 2024
From: DK CROWN HOLDINGS INC.; JACKPOCKET LLC
To: MORGAN STANLEY SENIOR FUNDING, INC.
Reel/Frame 069320/0109 →
Continuity (4)
Continuation 18222285 · Jul 14, 2023
Continuation 17470317 · Sep 9, 2021
Continuation 16732004 · Dec 31, 2019
Related Publication 20240422241A1 · Dec 19, 2024
References Cited (26)
US 5790805A · Bantum · 1998 [cited by applicant]
US 9867004B2 · Aldana et al. · 2018 [cited by applicant]
US 20090083372A1 · Teppler · 2009 [cited by examiner]
US 20100106842A1 · Cosmadopoulos et al. · 2010 [cited by applicant]
US 20130218942A1 · Willis et al. · 2013 [cited by applicant]
US 20150180963A1 · Luecke et al. · 2015 [cited by applicant]
US 20160337426A1 · Shribman · 2016 [cited by examiner]
US 20180032434A1 · Patel · 2018 [cited by examiner]
US 20180332434A1 · Kulkarni et al. · 2018 [cited by applicant]
US 20200044760A1 · Seed · 2020 [cited by examiner]
US 20200162796A1 · Azuolas et al. · 2020 [cited by applicant]
US 20200191943A1 · Wu et al. · 2020 [cited by applicant]
EP 2757746A2 · 2014 [cited by applicant]
Office Action on CA Appl. No. 3,166,394 dated Jan. 23, 2025. [cited by applicant]
Examination Report on EP Appl. No. 20848916.1 dated Jul. 26, 2024. [cited by applicant]
International Preliminary Report on Patentability on PCT Appl. No. PCT/US2020/067458 mailed Jul. 14, 2022. [cited by applicant]
International Search Report and Written Opinion on PCT Appl. No. PCT/US2020/067458 mailed Jun. 21, 2021. [cited by applicant]
Lee Giwon et al: “Fog-Assisted Aggregated Synchronization Scheme for Mobile Cloud Storage Applications”, IEEE Access, vol. 7, May 2, 2019 (May 2, 2019), pp. 56852-56863. [cited by applicant]
Non-Final Office Action on U.S. Appl. No. 16/732,004 dated Mar. 26, 2021. [cited by applicant]
Non-Final Office Action on U.S. Appl. No. 17/470,317 dated Dec. 23, 2022. [cited by applicant]
Non-Final Office Action on U.S. Appl. No. 18/222,285 dated Jan. 5, 2024. [cited by applicant]
Notice of Allowance on U.S. Appl. No. 16/732,004 dated Jul. 19, 2021. [cited by applicant]
Notice of Allowance on U.S. Appl. No. 17/470,317 dated Apr. 3, 2023. [cited by applicant]
Notice of Allowance on U.S. Appl. No. 18/222,285 dated Apr. 24, 2024. [cited by applicant]
Office Action on CA Appl. No. 3166394 dated Nov. 9, 2023. [cited by applicant]
Partial International Search Report on PCT Appl. No. PCT/US2020/067458 mailed Apr. 30, 2021. [cited by applicant]