US 12,190,163 B2
Systems and methods for data synchronization in a multi-tenant synchronization system
Swati Pranay Kadu, Pune (IN); Salil Dhawan, Pune (IN); Mukesh Kumar Agarwal, Pune (IN); Karthik Srinivasan, Sandy, UT (US); and Akhilesh Suresh Mahajan, Pune (IN)
Assigned to InContact Inc., Salt Lake City, UT (US)
Filed by InContact Inc., Salt Lake City, UT (US)
Filed on Mar. 23, 2022, as Appl. No. 17/701,806.
Prior Publication US 2023/0305897 A1, Sep. 28, 2023
Int. Cl. G06F 9/50 (2006.01); G06F 16/25 (2019.01); G06F 16/27 (2019.01)
CPC G06F 9/5038 (2013.01) [G06F 16/256 (2019.01); G06F 16/27 (2019.01); G06F 2209/5021 (2013.01)] 12 Claims
OG exemplary drawing
 
1. A method for data synchronization in a multi-tenant data synchronization system, the method comprising:
receiving, by a computing device, a plurality of events for each tenant of a plurality of tenants in the multi-tenant system, wherein each event type in the plurality of events has a predetermined event priority;
for each of the plurality of events:
i) determining, by the computing device, a tenant prioritization score based on an agent activity level of a particular tenant of the plurality of tenants that is associated with the particular event of the plurality of events,
ii) assigning, by the computing device, a tenant tier to the respective event based on the tenant prioritization score, and
iii) creating, by the computing device, a data stream for each tenant tier, wherein each data stream includes a plurality of events that was assigned to the respective tenant tier; and
processing, by the computing device, the created data streams in parallel, and the plurality of events in each data stream in an order that is according to the predetermined priority of the event type for the particular event to perform multi-tenant data synchronization,
wherein an agent activity level is based on an average of a number of active agents divided by a number of logged in agents for a given period of time.