IP Library Granted Patent US 12,430,696
Granted Patent B2
US 12,430,696 · App. 18/589,213 · Granted Sep 30, 2025

Systems and methods for synchronizing event data structures in computer networks

Inventors: Jordan Mendell (Boca Raton, FL); Christopher Haralampoudis (Venice, CA)
Assignee: DK Crown Holdings Inc.
H04L67/1095A63F13/79A63F13/85
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,430,696
App. No.
18/589,213
Granted
Sep 30, 2025
Kind
B2
Abstract

Systems and methods for synchronizing event data structures in computer networks are disclosed. A system can receive, via a network from a first computing device corresponding to a first profile, a first network communication to generate a synchronized group identifying a second profile of a second computing device. The system can generate the synchronized group, and in response to receiving a second network communication from the second computing device, generate a data record including data record parameters specified in the second network communication. A data package to present a content item corresponding to the data record is generated in response to determining that the second profile is identified in the synchronized group, and a feed of the synchronized group is provided in response to corresponding network communications.

Claims (63)

1. A system, comprising:

one or more processors coupled to non-transitory memory, the one or more processors configured to:

receive, via a network from a first computing device corresponding to a first profile, a first network communication to generate a synchronized group for synchronizing data via the network, the first network communication identifying a second profile of a second computing device;

generate the synchronized group in response to the first network communication, the synchronized group identifying the first profile and indicating the second profile as an invitee;

responsive to generating the synchronized group, transmit a second network communication to the second computing device associated with the second profile, the second network communication identifying an invitation to join the synchronized group;

receive, from the second computing device responsive to the second network communication, a selection to accept the invitation to join the synchronized group;

update the synchronized group to indicate that the second profile is a member of the synchronized group;

in response to receiving a third network communication from the second computing device to place a wager, generate a data record for the wager comprising wager parameters specified in the third network communication;

determine that the second profile comprises a permission setting to authorize automatic generation of a data package to present a content item corresponding to the data record in a feed of the synchronized group, wherein the permission setting, when enabled, authorizes the automatic generation of data packages for presenting, in the feed of the synchronized group, content items corresponding to data records for wagers associated with the second profile, and wherein the permission setting, when disabled, restricts the automatic generation of data packages for presenting, in the feed of the synchronized group, content items corresponding to data records for wagers associated with the second profile;

in response to determining that the second profile is identified in the synchronized group and that the second profile comprises the permission setting to authorize automatic generation of data packages to present, in the feed of the synchronized group, content items corresponding to data records for wagers of the second profile, generate the data package to present a corresponding content item in the feed of the synchronized group, the data package comprising a subset of the wager parameters and stored in association with the synchronized group, the data package encoded according to an encoding format;

receive, from the first computing device via the network, a fourth network communication to access data of the synchronized group via the network; and

provide, to the first computing device via the network, the feed of the synchronized group, causing the first computing device to (i) decode the data package and (ii) generate the content item using the data package, the content item identifying the second profile.

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

detect a change in an event identified in the data record; and

generate an updated data package based on the change in the event.

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

receive, from the first computing device, a fifth network communication to generate a second data record based on the subset of the wager parameters;

generate, responsive to the fifth network communication, the second data record including second wager parameters generated based on the subset of the wager parameters; and

generate, responsive to determining that the first profile of the first computing device is identified in the synchronized group, a second data package comprising a second subset of the second wager parameters.

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

identify the subset of the wager parameters based on the fifth network communication.

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

identify, responsive to the third network communication and responsive to determining that the second profile is identified in the synchronized group, a plurality of synchronized groups in which the second profile is identified; and

generate, for each of the plurality of synchronized groups, a respective data package comprising the subset of the wager parameters.

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

maintain a data structure identifying a plurality of synchronized groups including the synchronized group, each of the plurality of synchronized groups identifying a respective set of profile identifiers.

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

receive a request to increment a first counter or a second counter of the data package in response to a corresponding interaction with the content item; and

update the first counter or the second counter of the data package based on the request.

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

detect a change in an event identified in the data record; and

update the wager parameters of the data record responsive to detecting the change in the event.

9. A method, comprising:

receiving, by one or more processors coupled to non-transitory memory, via a network from a first computing device corresponding to a first profile, a first network communication to generate a synchronized group for synchronizing data via the network, the first network communication identifying a second profile of a second computing device;

generating, by the one or more processors, the synchronized group in response to the first network communication, the synchronized group identifying the first profile and indicating the second profile as an invitee;

responsive to generating the synchronized group, transmitting, by the one or more processors, a second network communication to the second computing device associated with the second profile, the second network communication identifying an invitation to join the synchronized group;

receiving, by the one or more processors, from the second computing device responsive to the second network communication, a selection to accept the invitation to join the synchronized group;

updating, by the one or more processors, the synchronized group to indicate that the second profile is a member of the synchronized group;

receiving a third network communication from the second computing device to place a wager, generating, by the one or more processors, a data record for the wager comprising wager parameters specified in the second network communication;

determining, by the one or more processors, that the second profile comprises a permission setting to authorize automatic generation of a data package to present a content item corresponding to the data record in a feed of the synchronized group, wherein the permission setting, when enabled, authorizes the automatic generation of data packages for presenting, in the feed of the synchronized group, content items corresponding to data records for wagers associated with the second profile, and wherein the permission setting, when disabled, restricts the automatic generation of data packages for presenting, in the feed of the synchronized group, content items corresponding to data records for wagers associated with the second profile;

in response to determining that the second profile is identified in the synchronized group and that the second profile comprises the permission setting to authorize automatic generation of data packages to present, in the feed of the synchronized group, content items corresponding to data records for wagers of the second profile, generating, by the one or more processors, the data package to present a corresponding content item in the feed of the synchronized group, the data package comprising a subset of the wager parameters and stored in association with the synchronized group, the data package encoded according to an encoding format;

receiving, by the one or more processors, from the first computing device via the network, a fourth network communication to access data of the synchronized group via the network; and

providing, by the one or more processors, to the first computing device via the network, the feed of the synchronized group, causing the first computing device to (i) decode the data package and (ii) generate the content item using the data package, the content item identifying the second profile.

10. The method of claim 9 , further comprising:

detecting, by the one or more processors, a change in an event identified in the data record; and

generating, by the one or more processors, an updated data package based on the change in the event.

11. The method of claim 9 , further comprising:

receiving, by the one or more processors, from the first computing device, a fifth network communication to generate a second data record based on the subset of the wager parameters;

generating, by the one or more processors, responsive to the fifth network communication, the second data record including second wager parameters generated based on the subset of the wager parameters; and

generating, by the one or more processors, responsive to determining that the first profile of the first computing device is identified in the synchronized group, a second data package comprising a second subset of the second wager parameters.

12. The method of claim 11 , further comprising:

identifying, by the one or more processors, the subset of the wager parameters based on the fifth network communication.

13. The method of claim 9 , further comprising:

identifying, by the one or more processors, responsive to the third network communication and responsive to determining that the second profile is identified in the synchronized group, a plurality of synchronized groups in which the second profile is identified; and

generating, by the one or more processors, for each of the plurality of synchronized groups, a respective data package comprising the subset of the wager parameters.

14. The method of claim 9 , further comprising:

maintaining, by the one or more processors, a data structure identifying a plurality of synchronized groups including the synchronized group, each of the plurality of synchronized groups identifying a respective set of profile identifiers.

15. The method of claim 9 , further comprising:

receiving, by the one or more processors, a request to increment a first counter or a second counter of the data package in response to a corresponding interaction with the content item; and

updating, by the one or more processors, the first counter or the second counter of the data package based on the request.

16. The method of claim 9 , further comprising:

detecting, by the one or more processors, a change in an event identified in the data record; and

updating, by the one or more processors, the wager parameters of the data record responsive to detecting the change in the event.

Assignments (3)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jul 15, 2025
From: MENDELL, JORDAN; HARALAMPOUDIS, CHRISTOPHER
To: DRAFTKINGS, INC.
Reel/Frame 071712/0039 →
CHANGE OF NAME Recorded Jul 15, 2025
From: DRAFTKINGS, INC.
To: DK CROWN HOLDINGS INC.
Reel/Frame 071944/0699 →
SECURITY INTEREST Recorded Nov 7, 2024
From: DK CROWN HOLDINGS INC.; JACKPOCKET LLC
To: MORGAN STANLEY SENIOR FUNDING, INC.
Reel/Frame 069320/0109 →
Continuity (2)
Continuation 17971050 · Oct 21, 2022
Related Publication 20250274508A1 · Aug 28, 2025
References Cited (28)
US 20080220856A1 · Lynch · 2008 [cited by examiner]
US 20100144426A1 · Winner et al. · 2010 [cited by applicant]
US 20130143649A1 · Allen et al. · 2013 [cited by applicant]
US 20130169743A1 · Beauvais · 2013 [cited by examiner]
US 20130268357A1 · Heath · 2013 [cited by applicant]
US 20130311598A1 · Arrouye · 2013 [cited by examiner]
US 20150143422A1 · Moran et al. · 2015 [cited by applicant]
US 20180190077A1 · Hall · 2018 [cited by examiner]
US 20190099653A1 · Wanke et al. · 2019 [cited by applicant]
US 20210056750A1 · Rowley · 2021 [cited by applicant]
US 20210065516A1 · Warren · 2021 [cited by examiner]
US 20220215723A1 · Koustas et al. · 2022 [cited by applicant]
US 20220270432A1 · Mendell et al. · 2022 [cited by applicant]
US 20220377427A1 · Montgomery et al. · 2022 [cited by applicant]
US 20230034853A1 · Jovanovic et al. · 2023 [cited by applicant]
Burch, “Yahoo Fantasy Launches Live Video Chat Feature, Allowing Friends to Draft Baseball Teams Together (Exclusive)”, May 23, 2021. [cited by applicant]
Elliot R, “The time is now for the ultimate friend-to-friend betting experience”, May 28, 2019. [cited by applicant]
Final Office Action on U.S. Appl. No. 17/971,050 dated Sep. 27, 2023. [cited by applicant]
Gontarz, “The most common features offered by sportsbook app”, Jun. 2, 2021. [cited by applicant]
Innovecs Games, “Sports Betting Algorithms: Opportunities for Your Business to Increase Revenue”, Feb. 2, 2021. [cited by applicant]
Landers, “Machine Learning Approaches to Competing in Fantasy Leagues for the NFL”, May 28, 2018. [cited by applicant]
Milne, “10 Best Sports Apps (and What Makes Them Stand Out)”, Aug. 18, 2021. [cited by applicant]
Newall, “Request-a-bet sports betting products indicate patterns of bettor preference and bookmaker profits”, Sep. 8, 2020. [cited by applicant]
Non-Final Office Action on U.S. Appl. No. 17/971,050 dated Jan. 26, 2023. [cited by applicant]
Non-Final Office Action on U.S. Appl. No. 17/971,050 dated Jun. 6, 2023. [cited by applicant]
Restivo, “The Action Network: Follow Your Friends' Bets in Our Updated Mobile App”, Sep. 23, 2021. [cited by applicant]
Rovell, “Draftkings Hopes Social Feed Will Spark Engagement & Interaction Among Bettors”, Jul. 18, 2022. [cited by applicant]
Wood, “Group Betting: How Sky Bet Added A Social Dimension to Sports Betting”, Jul. 30, 2018. [cited by applicant]