IP Library Granted Patent US 11,695,721
Granted Patent B2
US 11,695,721 · App. 17/463,371 · Granted Jul 4, 2023

Method, apparatus, and computer program product for categorizing multiple group-based communication messages

Inventors: Jerry Talton (New York, NY); Andrew S. Morrison (New York, NY); Japinder Singh (New York, NY); Jon Katzur (San Francisco, CA); John Gallagher (New York, NY)
Assignee: Salesforce, Inc.
H04L51/216H04L12/185H04L51/046
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,695,721
App. No.
17/463,371
Granted
Jul 4, 2023
Kind
B2
Abstract

An apparatus, method and computer program product may be provided for updating a graph-based knowledge representation data structure using one or more conversation segments. Updating a graph-based knowledge representation data structure may include receiving a conversation segment. The conversation segment may comprise one or more group-based communication messages and one or more sending user identifiers of the one or more group-based communication messages. Updating a graph-based knowledge representation data structure may further include identifying the one or more sending user identifiers of each group-based communication message of the conversation segment. Updating a graph-based knowledge representation data structure may further include determining one or more user identifiers of the sending user identifiers that satisfy conversation participation criteria. Updating a graph-based knowledge representation data structure may further include updating a user to user link score associated with each user identifier pair of the one or more user identifiers according to conversation segment-based user to user link score update criteria.

Claims (58)

1. An apparatus for updating a graph-based knowledge representation data structure using one or more conversation segments, the apparatus comprising at least one processor and at least one non-transitory memory including program code, the at least one non-transitory memory and the program code configured to, with the processor, cause the apparatus to at least:

receive a conversation segment, wherein the conversation segment comprises one or more group-based communication messages and one or more sending user identifiers of the one or more group-based communication messages;

identify the one or more sending user identifiers of each group-based communication message of the conversation segment;

determine one or more user identifiers of the one or more sending user identifiers that satisfy conversation participation criteria; and

update the graph-based knowledge representation data structure, wherein updating the graph-based knowledge representation data structure comprises:

updating one or more user to user link scores associated with corresponding user identifier pairs of the one or more user identifiers based at least in part on one or more conversation topics of the conversation segment.

2. The apparatus of claim 1 , wherein the conversation participation criteria comprise one or more thresholds of percentage of group-based communication messages per conversation segment, and wherein determining the one or more user identifiers of the one or more sending user identifiers that satisfy the conversation participation criteria comprises:

for each user identifier:

determine a number of group-based communication messages associated with the user identifier in the conversation segment;

determine a total number of group-based communication messages in the conversation segment;

calculate the percentage of group-based communication messages per conversation segment for the user identifier by dividing the number of group-based communication messages associated with the user identifier in the conversation segment by the total number of group-based communication messages in the conversation segment; and

determine that the percentage of group-based communication messages per conversation segment for the user identifier is higher than a lowest threshold of the one or more thresholds of percentage.

3. The apparatus of claim 1 , wherein the graph-based knowledge representation data structure is further associated with each user identifier of corresponding user identifier pairs and with a group-based communication channel.

4. The apparatus of claim 1 , wherein updating the one or more user to user link scores comprises incrementing an individual user to user link score of the one or more user to user link scores based at least in part on a pre-defined amount defined in the user link score update criteria.

5. The apparatus of claim 4 , wherein the pre-defined amount is associated with one or more relevancy weightings defined in the conversation participation criteria.

6. A method for updating user to a graph-based knowledge representation data structure using one or more conversation segments, the method comprising:

receiving a conversation segment, wherein the conversation segment comprises one or more group-based communication messages and one or more sending user identifiers of the one or more group-based communication messages;

identifying the one or more sending user identifiers of each group-based communication message of the conversation segment;

determining one or more user identifiers of the one or more sending user identifiers that satisfy conversation participation criteria; and

updating the graph-based knowledge representation data structure, wherein updating the graph-based knowledge representation data structure comprises:

updating a user to user link score associated with each user identifier pair of the one or more user identifiers according to conversation segment-based user to user link score update criteria.

7. The method of claim 6 , wherein the conversation participation criteria comprise one or more thresholds of percentage of group-based communication messages per conversation segment, and wherein determining the one or more user identifiers of the one or more sending user identifiers that satisfy the conversation participation criteria comprises:

for each user identifier:

determine a number of group-based communication messages associated with the user identifier in the conversation segment;

determine a total number of group-based communication messages in the conversation segment;

calculate the percentage of group-based communication messages per conversation segment for the user identifier by dividing the number of group-based communication messages associated with the user identifier in the conversation segment by the total number of group-based communication messages in the conversation segment; and

determine that the percentage of group-based communication messages per conversation segment for the user identifier is higher than a lowest threshold of the one or more thresholds of percentage.

8. The method of claim 6 , wherein the graph-based knowledge representation data structure is associated with each user identifier of each of the user identifier pairs and with a group-based communication channel.

9. The method of claim 6 , wherein updating the user to user link score comprises incrementing the user to user link score based at least in part on a pre-defined amount defined in the user link score update criteria.

10. The method of claim 9 , wherein the pre-defined amount is associated with one or more relevancy weightings defined in the conversation participation criteria.

11. The method of claim 6 , wherein the user to user link score is based at least in part on user to content affinity scores associated with the one or more user identifiers.

12. The method of claim 6 , wherein the user to user link score is based at least in part on user to user data including at least one of:

a number of messages read between a particular user identifier pair;

a number of messages reacted to between the particular user identifier pair; or

a number of channels in common for the particular user identifier pair.

13. The method of claim 6 , wherein the user to user link score is based at least in part on user to user data including:

a number of emails transmitted between email addresses associated with a particular user identifier pair; and

recency of emails transmitted between the email addresses associated with the particular user identifier pair.

14. A computer program product comprising at least one non-transitory computer-readable storage medium having computer-readable program code portions stored therein, the computer-readable program code portions comprising an executable portion configured to:

receive a conversation segment, wherein the conversation segment comprises one or more group-based communication messages and one or more sending user identifiers of the one or more group-based communication messages;

identify the one or more sending user identifiers of each group-based communication message of the conversation segment;

determine one or more user identifiers of the one or more sending user identifiers that satisfy conversation participation criteria; and

update a graph-based knowledge representation data structure, wherein updating the graph-based knowledge representation data structure comprises:

updating a user to user link score associated with each user identifier pair of the one or more user identifiers according to conversation segment-based user to user link score update criteria.

15. The computer program product of claim 14 , wherein the conversation participation criteria comprise one or more thresholds of percentage of group-based communication messages per conversation segment, and wherein determining the one or more user identifiers of the one or more sending user identifiers that satisfy the conversation participation criteria comprises:

for each user identifier:

determine a number of group-based communication messages associated with the user identifier in the conversation segment;

determine a total number of group-based communication messages in the conversation segment;

calculate the percentage of group-based communication messages per conversation segment for the user identifier by dividing the number of group-based communication messages associated with the user identifier in the conversation segment by the total number of group-based communication messages in the conversation segment; and

determine that the percentage of group-based communication messages per conversation segment for the user identifier is higher than a lowest threshold of the one or more thresholds of percentage.

16. The computer program product of claim 14 , wherein updating the graph-based knowledge representation data structure is associated with each user identifier of each of the user identifier pairs and with a group-based communication channel.

17. The computer program product of claim 14 , wherein updating the user to user link score comprises incrementing the user to user link score based at least in part on a pre-defined amount defined in the user link score update criteria.

18. The computer program product of claim 17 , wherein the pre-defined amount is associated with one or more relevancy weightings defined in the conversation participation criteria.

19. The computer program product of claim 14 , wherein the user to user link score is based at least in part on user to content affinity scores associated with the one or more user identifiers.

20. The computer program product of claim 14 , wherein the user to user link score is based at least in part on user to user data including at least one of:

a number of messages read between a particular user identifier pair;

a number of messages reacted to between the particular user identifier pair; or

a number of channels in common for the particular user identifier pair.

Assignments (4)
MERGER Recorded Nov 21, 2022
From: SLACK TECHNOLOGIES, LLC
To: SALESFORCE.COM, INC.
Reel/Frame 061972/0569 →
CHANGE OF NAME Recorded Nov 21, 2022
From: SALESFORCE.COM, INC.
To: SALESFORCE, INC.
Reel/Frame 061972/0769 →
MERGER AND CHANGE OF NAME Recorded Oct 1, 2021
From: SLACK TECHNOLOGIES, INC.; SLACK TECHNOLOGIES, LLC
To: SLACK TECHNOLOGIES, LLC
Reel/Frame 057683/0001 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Aug 31, 2021
From: TALTON, JERRY; MORRISON, ANDREW S.; SINGH, JAPINDER; KATZUR, JON; GALLAGHER, JOHN
To: SLACK TECHNOLOGIES, INC.
Reel/Frame 057347/0508 →