IP Library Granted Patent US 11,921,743
Granted Patent B2
US 11,921,743 · App. 17/156,916 · Granted Mar 5, 2024

Dynamic profile reconciliation in group-based communication systems

Inventors: Myles Grant (San Carlos, CA); Elizabeth Clemenson (San Francisco, CA); Paul Rosania (San Francisco, CA); Sri Vasamsetti (San Francisco, CA); Yingyu Sun (San Francisco, CA)
Assignee: Salesforce, Inc.
G06F16/27G06F16/25H04L67/306
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,921,743
App. No.
17/156,916
Granted
Mar 5, 2024
Kind
B2
Abstract

Techniques for performing dynamic profile reconciliation in a communication system. A server computing system may identify two or more user profiles corresponding to a same user that is associated with the communication system. The server computing system may integrate historical data associated with the two or more user profiles into a single user profile (e.g., a destination user profile). The historical data may include messages sent and/or received via the two or more user profiles, files associated with the messages, metadata corresponding to each message, and the like. Responsive to combining the two or more user profiles into the single user profile, the server computing system may delete at least one of the two or more user profiles, storing the combined data in association with the single user profile.

Claims (78)

1. An apparatus for profile reconciliation in a group-based communication system, the apparatus comprising at least one processor and at least one memory, the at least one memory having computer-coded instructions stored thereon, where the computer-coded instructions, in execution with the at least one processor, configure the apparatus to:

identify an identity association between a source profile and a destination profile, wherein the source profile and the destination profile are associated with a same user identifier of the group-based communication system;

based at least in part on the identity association, perform a cross-profile communication history integration between the source profile and the destination profile, wherein performing the cross-profile communication history integration causes the apparatus to:

identify a source communication history stream associated with the source profile and a destination communication history stream associated with the destination profile; and

integrate one or more source communication data objects of the source communication history stream into one or more destination communication data objects of the destination communication history stream based at least in part on temporal markers associated with the one or more source communication data objects and the one or more destination communication data objects;

in response to completing the cross-profile communication history integration between the source profile and the destination profile, deactivate the source profile;

receive a request to convert a non-shared communication channel into a shared communication channel, wherein the non-shared communication channel is associated with a first organizational identifier and the shared communication channel is associated with the first organizational identifier and a second organizational identifier; and

identify a guest account associated with the non-shared communication channel, wherein the source profile corresponds to the guest account, wherein:

the identity association is identified based at least in part on the request and an identification of the guest account;

first content data associated with the non-shared communication channel is encrypted according to a first policy associated with the first organizational identifier; and

second content data associated with the shared communication channel is encrypted according to the first policy and a second policy associated with the second organizational identifier.

2. The apparatus of claim 1 , wherein:

the source profile has a limited access privilege with respect to the group-based communication system.

3. The apparatus of claim 2 , wherein the destination profile has full access privilege with respect to the group-based communication system.

4. The apparatus of claim 1 , wherein the apparatus is further configured to:

based at least in part on the identity association, modify a source ownership indicator of third content data associated with the source profile to enable transfer of ownership of the third content data to the destination profile.

5. The apparatus of claim 1 , wherein the apparatus is further configured to:

generate a destination stream communication interface for the destination communication history stream, wherein the destination stream communication interface is configured to:

be accessible by a client device associated with the destination profile.

6. The apparatus of claim 1 , wherein the apparatus is further configured to:

perform a cross-profile personal data integration for the source profile and the destination profile based at least in part on the identity association, wherein performing the cross-profile personal data integration causes the apparatus to:

identify a personal data object associated with the source profile, the personal data object having associated with a user identifier indicating a source identifier associated with the source profile; and

modify the user identifier of the personal data object to indicate a destination identifier associated with the destination profile.

7. The apparatus of claim 1 , wherein the apparatus is further configured to:

perform a cross-profile data integration for the source profile and the destination profile based at least in part on the identity association, wherein performing the cross-profile data integration causes the apparatus to:

identify a data object associated with the source profile, the data object having associated therewith a user identifier indicating a source identifier associated with the source profile; and

modify the user identifier associated with the data object to indicate a destination identifier associated with the destination profile.

8. The apparatus of claim 1 , wherein the apparatus is further configured to generate a destination stream communication interface for the destination communication history stream, wherein the destination stream communication interface is configured to display the destination communication history stream.

9. A computer-implemented method for profile reconciliation in a communication system, the computer-implemented method comprising:

identifying an identity association between a source profile and a destination profile, wherein the source profile and the destination profile are associated with a same user identifier of the communication system;

based at least in part on the identity association, performing a cross-profile communication history integration between the source profile and the destination profile, wherein performing the cross-profile communication hi story integration comprises:

identifying a source communication history stream associated with the source profile and a destination communication history stream associated with the destination profile; and

integrating one or more source communication data objects of the source communication history stream into one or more destination communication data objects of the destination communication history stream based at least in part on temporal markers associated with the one or more source communication data objects and the one or more destination communication data objects;

in response to completing the cross-profile communication history integration between the source profile and the destination profile, deactivating the source profile;

performing a cross-profile personal data integration for the source profile and the destination profile based at least in part on the identity association, wherein performing the cross-profile personal data integration comprises:

identifying a personal data object associated with the source profile, the personal data object having associated with a user identifier indicating a source identifier associated with the source profile; and

modifying the user identifier of the personal data object to indicate a destination identifier associated with the destination profile;

receiving a request to convert a non-shared communication channel into a shared communication channel, wherein the non-shared communication channel is associated with a first organizational identifier and the shared communication channel is associated with the first organizational identifier and a second organizational identifier; and

identifying a guest account associated with the non-shared communication channel, wherein the source profile corresponds to the guest account, wherein:

the identity association is identified based at least in part on the request and an identification of the guest account;

first content data associated with the non-shared communication channel is encrypted according to a first policy associated with the first organizational identifier; and

second content data associated with the shared communication channel is encrypted according to the first policy and a second policy associated with the second organizational identifier.

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

the source profile has a limited access privilege with respect to the communication system.

11. The computer-implemented method of claim 10 , wherein the destination profile has full access privilege with respect to the communication system.

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

based at least in part on the identity association, modifying a source ownership indicator of third content data associated with the source profile to enable transfer of ownership of the third content data to the destination profile.

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

generating a destination stream communication interface for the destination communication history stream, wherein the destination stream communication interface is configured to:

be accessible by a client device associated with the destination profile.

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

performing a cross-profile data integration for the source profile and the destination profile based at least in part on the identity association, wherein performing the cross-profile data integration comprises:

identifying a data object associated with the source profile, the data object having associated therewith the user identifier indicating the source identifier associated with the source profile; and

modifying the user identifier associated with the data object to indicate the destination identifier associated with the destination profile.

15. The computer-implemented method of claim 9 , further comprising generating a destination stream communication interface for the destination communication history stream, wherein the destination stream communication interface is configured to display the destination communication history stream.

16. One or more non-transitory computer storage media comprising instructions for performing dynamic profile reconciliation in a communication system, the instructions being configured to cause one or more processors to perform operations comprising:

identifying an identity association between a source profile and a destination profile, wherein the source profile and the destination profile are associated with a same user identifier of the communication system;

based at least in part on the identity association, performing a cross-profile communication history integration between the source profile and the destination profile, wherein performing the cross-profile communication hi story integration comprises:

identifying a source communication history stream associated with the source profile and a destination communication history stream associated with the destination profile; and

integrating one or more source communication data objects of the source communication history stream into one or more destination communication data objects of the destination communication history stream based at least in part on temporal markers associated with the one or more source communication data objects and the one or more destination communication data objects;

in response to completing the cross-profile communication history integration between the source profile and the destination profile, deactivating the source profile;

performing a cross-profile data integration for the source profile and the destination profile based at least in part on the identity association, wherein performing the cross-profile data integration comprises:

identifying a data object associated with the source profile, the data object having associated therewith a user identifier indicating a source identifier associated with the source profile; and

modifying the user identifier associated with the data object to indicate a destination identifier associated with the destination profile

receiving a request to convert a non-shared communication channel into a shared communication channel, wherein the non-shared communication channel is associated with a first organizational identifier and the shared communication channel is associated with the first organizational identifier and a second organizational identifier; and

identifying a guest account associated with the non-shared communication channel, wherein the source profile corresponds to the guest account, wherein:

the identity association is identified based at least in part on the request and an identification of the guest account;

first content data associated with the non-shared communication channel is encrypted according to a first policy associated with the first organizational identifier; and

second content data associated with the shared communication channel is encrypted according to the first policy and a second policy associated with the second organizational identifier.

17. The one or more non-transitory computer storage media of claim 16 , wherein:

the source profile has a limited access privilege with respect to the communication system.

18. The one or more non-transitory computer storage media of claim 17 , wherein the destination profile has full access privilege with respect to the communication system.

19. The one or more non-transitory computer storage media of claim 16 , the operations further comprising:

based at least in part on the identity association, modifying a source ownership indicator of third content data associated with the source profile to enable transfer of ownership of the third content data to the destination profile.

20. The one or more non-transitory computer storage media of claim 16 , the operations further comprising:

performing a cross-profile personal data integration for the source profile and the destination profile based at least in part on the identity association, wherein performing the cross-profile personal data integration comprises:

identifying a personal data object associated with the source profile, the personal data object having associated with the user identifier indicating the source identifier associated with the source profile; and

modifying the user identifier of the personal data object to indicate the destination identifier associated with the destination profile.

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 Feb 3, 2021
From: GRANT, MYLES; CLEMENSON, ELIZABETH; ROSANIA, PAUL; VASAMSETTI, SRI; SUN, YINGYU
To: SLACK TECHNOLOGIES, INC.
Reel/Frame 055127/0160 →
Continuity (2)
Provisional Application 62968287 · Jan 31, 2020
Related Publication 20210240729A1 · Aug 5, 2021