IP Library Granted Patent US 11,392,272
Granted Patent B2
US 11,392,272 · App. 16/938,542 · Granted Jul 19, 2022

Group-based communication system and apparatus configured to render suggested graphical objects

Inventors: Jeremy Apthorp (San Francisco, CA); Devin Foley (San Francisco, CA); Matthew Crocker (San Francisco, CA)
Assignee: Slack Technologies, LLC
G06F3/0482G06F16/538G06F40/205G06N20/00H04L12/1813
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,392,272
App. No.
16/938,542
Granted
Jul 19, 2022
Kind
B2
Abstract

Various embodiments of the present invention are directed to an improved group-based communication apparatus that is configured to render suggested graphical objects within a group-based communication interface. The group-based communication apparatus is configured to determine a ranking for a group-defined graphical object set based a user identifier. In response to receiving graphical object interface requests or messaging communication provision requests, the group-based apparatus is configured to determine at least one suggested graphical object based on the ranking and cause rendering of the at least one graphical object to a graphical object selection interface.

Claims (78)

1. An apparatus configured to render suggested graphical objects within a group-based communication platform, 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 at least one processor, cause the apparatus to at least:

receive a user identifier and a group identifier;

access a graphical object set comprising a plurality of graphical objects associated with the group identifier in a group-based communication repository, the graphical object set defined for a workspace of the group-based communication platform;

determine a ranking for the graphical object set based on the user identifier;

receive a request for a graphical object interface; and

in response to receiving the request, determine at least one suggested graphical object based on the ranking and cause rendering of the at least one suggested graphical object to a graphical object selection interface.

2. The apparatus of claim 1 , wherein the at least one non-transitory memory including the program code is further configured to, with the at least one processor, cause the apparatus to:

access a messaging communication associated with the request, the messaging communication comprising metadata and content data;

parse the content data to identify at least one text object;

update the ranking for the graphical object set based on the metadata and the at least one text object; and

determine at least one additional suggested graphical object based on the updated ranking and cause rendering of the at least one additional suggested graphical object to the graphical object selection interface.

3. The apparatus of claim 1 , wherein the at least one non-transitory memory including the program code is further configured to, with the at least one processor, cause the apparatus to:

access a messaging communication associated with the request, the messaging communication comprising metadata and content data;

parse the content data to identify at least one text object, wherein the at least one text object is associated with a second user identifier;

update the ranking for the graphical object set based on the metadata, the at least one text object, and the second user identifier; and

determine at least one additional suggested graphical object based on the updated ranking and cause rendering of the at least one additional suggested graphical object to the graphical object selection interface.

4. The apparatus of claim 1 , wherein the at least one non-transitory memory including the program code is further configured to, with the at least one processor, cause the apparatus to:

access a messaging communication associated with the request, the messaging communication comprising metadata and content data;

parse the content data to identify at least one text object;

determine one or more graphical objects by comparing the at least one text object to a keyword set of each graphical object of the graphical object set;

update the ranking for the graphical object set based on the metadata and the determined one or more graphical objects; and

determine at least one additional suggested graphical object based on the updated ranking and cause rendering of the at least one additional suggested graphical object to the graphical object selection interface.

5. The apparatus of claim 4 , wherein the at least one non-transitory memory including the program code is further configured to, with the at least one processor, cause the apparatus to:

analyze one or more messaging communications comprising a graphical object;

derive, based on the one or more messaging communications, a keyword; and

associate the keyword with the keyword set of the graphical object.

6. The apparatus of claim 5 , wherein the keyword is derived using one or more machine-learning algorithms.

7. The apparatus of claim 1 , wherein the at least one non-transitory memory including the program code configured to cause the apparatus to determine the ranking for the graphical object set is configured to, with the at least one processor, cause the apparatus to:

determine a plurality of scores for the graphical object set, wherein a score of the plurality of scores is based on at least one of a user frequency score or a user preference associated with a respective graphical object of the graphical object set.

8. The apparatus of claim 1 , wherein the at least one non-transitory memory including the program code is further configured to, with the at least one processor, cause the apparatus to:

access a role identifier associated with the user identifier, wherein determining the ranking for the graphical object set is further based on the role identifier.

9. A computer-implemented method for rendering suggested graphical objects within a group-based communication interface of a group-based communication platform, the computer-implemented method comprising:

receiving a user identifier and a group identifier;

accessing a graphical object set comprising a plurality of graphical objects associated with the group identifier in a group-based communication repository, the graphical object set defined for a workspace of the group-based communication platform;

determining a ranking for the graphical object set based on the user identifier;

receiving a request for a graphical object interface; and

in response to receiving the request, determining at least one suggested graphical object based on the ranking and causing rendering of the at least one suggested graphical object to a graphical object selection interface.

10. The computer-implemented method of claim 9 , further comprising:

accessing a messaging communication associated with the request, the messaging communication comprising metadata and content data;

parsing the content data to identify at least one text object;

updating the ranking for the graphical object set based on the metadata and the at least one text object; and

determining at least one additional suggested graphical object based on the updated ranking and causing rendering of the at least one additional suggested graphical object to the graphical object selection interface.

11. The computer-implemented method of claim 9 , further comprising:

accessing a messaging communication associated with the request, the messaging communication comprising metadata and content data;

parsing the content data to identify at least one text object;

determining one or more graphical objects by comparing the at least one text object to a keyword set of each graphical object of the graphical object set;

updating the ranking for the graphical object set based on the metadata and the determined one or more graphical objects; and

determining at least one additional suggested graphical object based on the updated ranking and causing rendering of the at least one additional suggested graphical object to the graphical object selection interface.

12. The computer-implemented method of claim 9 , wherein determining the ranking for the graphical object set comprises:

determining a plurality of scores for the graphical object set, wherein a score of the plurality of scores is based on at least one of a user frequency score or a user preference associated with a respective graphical object of the graphical object set.

13. The computer-implemented method of claim 9 , further comprising:

accessing a role identifier associated with the user identifier, wherein determining the ranking for the graphical object set is further based on the role identifier.

14. The computer-implemented method of claim 11 , further comprising:

analyze one or more messaging communications comprising a graphical object;

derive, based on the one or more messaging communications, a keyword; and

associate the keyword with the keyword set of the graphical object.

15. The computer-implemented method of claim 14 , wherein the keyword is derived using one or more machine-learning algorithms.

16. 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 user identifier and a group identifier;

access a graphical object set comprising a plurality of graphical objects associated with the group identifier in a group-based communication repository, the graphical object set defined for a workspace of a group-based communication platform;

determine a ranking for the graphical object set based on the user identifier;

receive a request for a graphical object interface; and

in response to receiving the request, determine at least one suggested graphical object based on the ranking and cause rendering of the at least one suggested graphical object to a graphical object selection interface.

17. The computer program product of claim 16 , wherein the computer-readable program code portions comprising the executable portion are configured to further:

access a messaging communication associated with the request, the messaging communication comprising metadata and content data;

parse the content data to identify at least one text object;

update the ranking for the graphical object set based on the metadata and the at least one text object; and

determine at least one additional suggested graphical object based on the updated ranking and cause rendering of the at least one additional suggested graphical object to the graphical object selection interface.

18. The computer program product of claim 16 , wherein the computer-readable program code portions comprising the executable portion are configured to further:

access a messaging communication associated with the request, the messaging communication comprising metadata and content data;

parse the content data to identify at least one text object;

determine one or more graphical objects by comparing the at least one text object to a keyword set of each graphical object of the graphical object set;

update the ranking for the graphical object set based on the metadata and the determined one or more graphical objects; and

determine at least one additional suggested graphical object based on the updated ranking and cause rendering of the at least one additional suggested graphical object to the graphical object selection interface.

19. The computer program product of claim 16 , wherein the computer-readable program code portions comprising the executable portion configured to determine the ranking for the graphical object set are configured to:

determine a plurality of scores for the graphical object set, wherein a score of the plurality of scores is based on at least one of a user frequency score or a user preference associated with a respective graphical object of the graphical object set.

20. The computer program product of claim 16 , wherein the computer-readable program code portions comprising the executable portion are configured to further:

access a role identifier associated with the user identifier, wherein determining the ranking for the graphical object set is further based on the role identifier.

Assignments (5)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jan 23, 2025
From: SLACK TECHNOLOGIES, LLC
To: SALESFORCE, INC.
Reel/Frame 070001/0469 →
CORRECTIVE ASSIGNMENT TO CORRECT THE NEWLY MERGED ENTITY'S NEW NAME, AND TO REMOVE THE PERIOD PREVIOUSLY RECORDED AT REEL: 057254 FRAME: 0738. ASSIGNOR(S) HEREBY CONFIRMS THE MERGER AND CHANGE OF NAME. Recorded Sep 9, 2021
From: SKYLINE STRATEGIES II LLC; SLACK TECHNOLOGIES, INC.
To: SLACK TECHNOLOGIES, LLC
Reel/Frame 057514/0930 →
MERGER Recorded Aug 2, 2021
From: SLACK TECHNOLOGIES, INC.; SKYLINE STRATEGIES I INC.
To: SLACK TECHNOLOGIES, INC.
Reel/Frame 057254/0693 →
MERGER AND CHANGE OF NAME Recorded Aug 2, 2021
From: SKYLINE STRATEGIES II LLC; SLACK TECHNOLOGIES, INC.; SLACK TECHNOLOGIES, LLC
To: SLACK TECHNOLOGIES, LLC.
Reel/Frame 057254/0738 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Feb 12, 2021
From: APTHORP, JEREMY; FOLEY, DEVIN; CROCKER, MATTHEW
To: SLACK TECHNOLOGIES, INC.
Reel/Frame 055249/0573 →