US2022245561A1PendingUtilityA1

Method and system for managing membership of communication channels associated with projects of an enterprise entity

Assignee: CLARI INCPriority: Mar 17, 2017Filed: Jan 6, 2022Published: Aug 4, 2022
Est. expiryMar 17, 2037(~10.7 yrs left)· nominal 20-yr term from priority
G06Q 10/1093G06Q 10/063118G06Q 10/063112G06Q 10/10H04L 51/212G06Q 10/06316G06Q 10/06311H04L 51/214G06Q 10/063114Y02P90/80H04L 51/046G06Q 10/06H04L 51/12H04L 51/14
58
PatentIndex Score
0
Cited by
0
References
0
Claims

Abstract

According to one embodiment, a customer relationship management (CRM) system is queried to obtain a list of projects that are associated with a particular user. A subset of the projects is selected from the list. Each of the projects in the subset includes an attribute that has been set to a predetermined attribute value or attribute state by the user (e.g., flagged, starred, a checkbox). For each of the projects in the subset, a communication channel (e.g., an instant messaging or IM system, an email group, a group chat, a social network community) associated with the project is identified. It is determined whether the user is already a member of the communication channel. If the user is not a member of the communication channel, the user is automatically added to the communication channel without user intervention from the user.

Claims

exact text as granted — not AI-modified
1 .- 20 . (canceled) 
     
     
         21 . A computer-implemented method of managing electronic communication channels of an electronic communications system, the method comprising:
 querying, by a server via a first application programming interface (API) over a network, a database system to obtain a first list of data entities, wherein each of the data entities of the first list includes information of a task expected to be completed within a predetermined period of time, and wherein each task is processed according to a plurality of predetermined states that are in a sequential order and define a life cycle of the corresponding task;   storing the first list of data entities in a local data store maintained in a persistent storage device of the server;   selecting a subset of the data entities from the first list of data entities retrieved from the local data store that satisfies one or more predetermined criteria;   for each data entity in the subset of the data entities,
 identifying a first list of a plurality of electronic communication channels associated with the corresponding data entity, 
 determining whether a first user is in a first user role configured to be associated with a first state of the corresponding data entity, 
 accessing the electronic communications system via a second API over the network to identify a first electronic communication channel of the plurality of electronic communication channels of which the first user is not a member, and 
 in response to determining that the first user is not a member of the first electronic communication channel and that the first user is in the first user role, automatically adding the first user as a member to the first electronic communication channel, such that the first user can communicate with another member of the first electronic communication channel; an 
   transmitting requests to the database system via the first API and the electronic communications system via the second API respectively over the network to add the first user to the first communication channel.   
     
     
         22 . The method of  claim 21 , wherein an attribute of each of the data entities in the subset indicates whether the first user has flagged the data entity. 
     
     
         23 . The method of  claim 21 , further comprising sorting the data entities in the first list based on a size of each data entity, wherein the subset of the data entities is selected from a predetermined number of data entities according to a sorted order. 
     
     
         24 . The method of  claim 21 , wherein the first list of data entities is owned by the first user or owned by a user group associated with the first user. 
     
     
         25 . The method of  claim 21 , further comprising:
 determining whether the data entity has reached a second state in the plurality of predetermined states;   in response to determining that the data entity has reached the second state, identifying a second electronic communication channel of the plurality of electronic communication channels, wherein the second electronic communication channel includes a second user as a member of the second electronic communication channel;   determining that the second user is in a second user role configured to be associated with the second state;   accessing the electronic communications system via the second API to determine that an amount of activities performed by the second user is below a predetermined amount; and   removing the second user from the second communication channel, in response to determining that the second user is in the second user role and the amount of activities is below the predetermined amount.   
     
     
         26 . The method of  claim 21 , further comprising:
 querying the electronic communications system via the second API to identify a second list of electronic communication channels associated with a client;   for each of the electronic communication channels in the second list, querying the database system via the first API to identify a second data entity associated with the electronic communication channel; and   automatically adding a third user having a third user role as a member to the electronic communication channel.   
     
     
         27 . The method of  claim 26 , further comprising examining a current state of the data entity to determine whether the current state of the data entity satisfies a third state in the plurality of predetermined states, wherein the third user is added to the electronic communication channel, in response to determining that the current state of the second data entity satisfies the third state. 
     
     
         28 . The method of  claim 26 , wherein the third user role represents a group leader of a user group. 
     
     
         29 . The method of  claim 21 , further comprising:
 querying the database system via the first API to identify a third list of a plurality of data entities;   for each of the data entities in the third list, examining a current state of the data entity to determine whether the current state of the data entity satisfies a fourth state in the plurality of predetermined states;   querying the electronic communications system via the second API based on the data entity to identify an electronic communication channel associated with the data entity, in response to determining that the current state of the data entity satisfies the fourth state; and   removing at least one member from the identified electronic communication channel.   
     
     
         30 . The method of  claim 21 , further comprising:
 querying, via a third API, an electronic calendar system associated with a fourth user to obtain a list of one or more events associated with the fourth user that have been scheduled within a predetermined time period;   obtaining, from the electronic calendar system via the third API, a plurality of email addresses of a plurality of attendees of the one or more events; and   examining the email addresses of the attendees to determine whether to add an attendee to a communication channel.   
     
     
         31 . The method of  claim 30 , wherein examining the email addresses of the attendees comprises:
 for each of the email addresses, determining a domain name of the email address;   querying the database system via the first API to obtain a second list of one or more data entities associated with the domain name;   for each of the data entities in the second list, determining whether the fourth user is a member of an electronic communication channel associated with the data entity; and   adding the fourth user as a member to the electronic communication channel associated with the data entity, in response to determining that the fourth user is not a member of the electronic communication channel associated with the data entity.   
     
     
         32 . The method of  claim 30 , further comprising removing email addresses having a domain name that is associated with an organization of the fourth user before examining the email addresses. 
     
     
         33 . The method of  claim 30 , further comprising sorting the data entities in the second list based on a number of events associated with each data entity, wherein the fourth user is added to electronic communication channels of a subset of the data entities selected according to a sorted order. 
     
     
         34 . The method of  claim 21 , wherein the one or more predetermined criteria comprise at least one of:
 each data entity in the subset of the data entities includes an attribute indicating that the data entity has been flagged; or   each data entity in the subset of the data entities is in the first state of the plurality of predetermined states.   
     
     
         35 . The method of  claim 34 , wherein the one or more predetermined criteria further comprise at least one of:
 each data entity in the subset of the data entities has reached the first state within a same period of time; or   each data entity in the subset of the data entities has an estimated time frame in which the data entity is to move from the first state to a second state in the plurality of predetermined states.   
     
     
         36 . The method of  claim 21 , wherein the electronic communication channels include at least one of an instant messaging system, an email group, a group chat, or a social network community, and wherein each of the plurality of electronic communication channels enables electronic communication over an electronic network. 
     
     
         37 . A non-transitory machine-readable medium having instructions stored therein, which when executed by a processor, cause the processor to perform operations of managing electronic communication channels of an electronic communications system, the operations comprising:
 querying, by a server via a first application programming interface (API) over a network, a database system to obtain a first list of data entities, wherein each of the data entities of the first list includes information of a task expected to be completed within a predetermined period of time, and wherein each task is processed according to a plurality of predetermined states that are in a sequential order and define a life cycle of the corresponding task;   storing the first list of data entities in a local data store maintained in a persistent storage device of the server;   selecting a subset of the data entities from the first list of data entities retrieved from the local data store that satisfies one or more predetermined criteria;   for each data entity in the subset of the data entities,
 identifying a first list of a plurality of electronic communication channels associated with the corresponding data entity, 
 determining whether a first user is in a first user role configured to be associated with a first state of the corresponding data entity, 
 accessing the electronic communications system via a second API over the network to identify a first electronic communication channel of the plurality of electronic communication channels of which the first user is not a member, and 
 in response to determining that the first user is not a member of the first electronic communication channel and that the first user is in the first user role, automatically adding the first user as a member to the first electronic communication channel, such that the first user can communicate with another member of the first electronic communication channel; and 
   transmitting requests to the database system via the first API and the electronic communications system via the second API respectively over the network to add the first user to the first communication channel.   
     
     
         38 . The machine-readable medium of  claim 37 , wherein an attribute of each of the data entities in the subset indicates whether the first user has flagged the data entity. 
     
     
         39 . The machine-readable medium of  claim 37 , wherein the operations further comprise sorting the data entities in the first list based on a size of each data entity, wherein the subset of the data entities is selected from a predetermined number of data entities according to a sorted order. 
     
     
         40 . A data processing system, comprising:
 a processor; and   a memory coupled to the processor and storing instructions, which when executed by the processor, cause the processor to perform operations of managing electronic communication channels of an electronic communications system, the operations comprising:
 querying, by a server via a first application programming interface (API) over a network, a database system to obtain a first list of data entities, wherein each of the data entities of the first list includes information of a task expected to be completed within a predetermined period of time, and wherein each task is processed according to a plurality of predetermined states that are in a sequential order and define a life cycle of the corresponding task; 
 storing the first list of data entities in a local data store maintained in a persistent storage device of the server; 
 selecting a subset of the data entities from the first list of data entities retrieved from the local data store that satisfies one or more predetermined criteria; 
 for each data entity in the subset of the data entities,
 identifying a first list of a plurality of electronic communication channels associated with the corresponding data entity, 
 determining whether a first user is in a first user role configured to be associated with a first state of the corresponding data entity, 
 accessing the electronic communications system via a second API over the network to identify a first electronic communication channel of the plurality of electronic communication channels of which the first user is not a member, and 
 in response to determining that the first user is not a member of the first electronic communication channel and that the first user is in the first user role, automatically adding the first user as a member to the first electronic communication channel, such that the first user can communicate with another member of the first electronic communication channel; and 
 
 transmitting requests to the database system via the first API and the electronic communications system via the second API respectively over the network to add the first user to the first communication channel.

Join the waitlist — get patent alerts

Track US2022245561A1 — get alerts on status changes and closely related new filings.

We store only your email — no account needed. See our privacy policy.