IP Library Granted Patent US 12,335,215
Granted Patent B1
US 12,335,215 · App. 18/102,663 · Granted Jun 17, 2025

Providing an instant messaging interface for data analytics

Inventors: Kartik Sundar (San Francisco, CA); Katherine Anne Maertens (Seattle, WA); Yukiko Ishida Anonuevo (Concord, CA); Naomi Menahem (Seattle, WA); Bailiang Zhou (Seattle, WA); Manish Tripathi (San Francisco, CA); Jared Briskman (Redwood City, CA)
Assignee: Salesforce, Inc.
H04L51/18G06F9/543H04L51/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 12,335,215
App. No.
18/102,663
Filed
Jan 27, 2023
Granted
Jun 17, 2025
Kind
B1
Examiner
YI, RINNA
Art Unit
2179
USPC
715/752
Abstract

The various implementations described herein include methods and devices for providing an instant messaging interface for data analytics. In one aspect, a method includes displaying a user interface for a communication application, including displaying a shared link to a graphical data visualization. A snapshot button near the link is used to generate a link snapshot comprising a version of the graphical data visualization. In response to user activation of the snapshot button, the method generates the link snapshot. To generate the link snapshot the method first determines if the user or users have proper security access to view the data contained in the graphical data visualization. If a user has proper security access to a subset of the data from the data source, the method dynamically generates the link snapshot for the subset of data to which the user has security access.

Claims (61)

1. A method, comprising:

at a computing device having a display, one or more processors and memory storing one or more programs configured for execution by the one or more processors:

displaying, via the display to a receiving user, a user interface for a channel of a communication application, including:

displaying a shared link to a graphical data visualization of data from a data source; and

displaying a snapshot button near the shared link, wherein the snapshot button is configured to generate a link snapshot comprising a version of the graphical data visualization representing data from the data source, to which the receiving user has security access, wherein the link snapshot includes a preview of the graphic data visualization; and

in response to an activation of the snapshot button by the receiving user, generating the link snapshot, including:

identifying an access permission of the receiving user to the data from the data source;

in accordance with the access permission, determining that the receiving user has security access to view a subset of the data from the data source;

dynamically generating the link snapshot for the subset of the data according to the access permission of the receiving user; and

displaying the link snapshot near the shared link in the user interface of the communication application.

2. The method of claim 1 , wherein the link snapshot provides access to the graphical data visualization from within the communication application.

3. The method of claim 1 , wherein the receiving user activating the snapshot button is a same user who shared the shared link.

4. The method of claim 1 , wherein the receiving user activating the snapshot button is different from a user who shared the shared link.

5. The method of claim 1 , wherein:

the communication application comprises a plurality of channels; and

each channel of the plurality of channels has a corresponding set of access permissions.

6. The method of claim 1 , wherein the channel of the communication application comprises a direct messaging channel with an individual user.

7. The method of claim 1 , wherein the channel of the communication application comprises a group chat with multiple users.

8. The method of claim 7 , wherein any individual user of the multiple users can activate the snapshot button, and the link snapshot is generated according to access permission of an individual user activating the snapshot button.

9. The method of claim 8 , wherein the individual user activating the snapshot button is a user who shared the shared link in the channel of a communication application, and the method further comprises generating a respective link snapshot for each user in the channel, including, for each user:

identifying a respective access permission of the respective user to the data from the data source;

determining that the respective user has security access to view a respective subset of the data from data source; and

generating a respective link snapshot for the respective subset of the data from the data source.

10. The method of claim 1 , wherein, when a user does not have security access to view any of the data from the data source, generating a message informing the user that security access prevents displaying the link snapshot.

11. The method of claim 1 , wherein the subset of data from the data source comprises all of the data required to generate the graphical data visualization.

12. The method of claim 1 , wherein the subset of data from the data source comprises less than all of the data required to generate the graphical data visualization.

13. A computing device, comprising:

one or more processors;

memory;

a display; and

one or more programs stored in the memory and configured for execution by the one or more processors, the one or more programs comprising instructions for:

displaying, via the display to a receiving user, a user interface for a channel of a communication application, including:

displaying a shared link to a graphical data visualization of data from a data source;

displaying a snapshot button near the shared link, wherein the snapshot button is configured to generate a link snapshot comprising a version of the graphical data visualization representing data from the data source, to which the receiving user has security access, wherein the link snapshot includes a preview of the graphic data visualization; and

in response to activation of the snapshot button by the receiving user, generating the link snapshot, including:

identifying an access permission of the receiving user to the data from the data source;

in accordance with the access permission, determining that the receiving user has security access to view a subset of the data from the data source;

dynamically generating the link snapshot for the subset of the data according to the access permission of the receiving user; and

displaying the link snapshot near the shared link in the user interface of the communication application.

14. The computing device of claim 13 , wherein the channel of the communication application comprises a group chat with multiple users.

15. The computing device of claim 14 wherein any individual user of the multiple users can activate the snapshot button, and the link snapshot is generated according to access permission of an individual user activating the snapshot button.

16. The computing device of claim 15 , wherein the individual user activating the snapshot button is a user who shared the shared link in the channel of a communication application, and the one or more programs further comprising instructions for:

generating a respective link snapshot for each user in the channel, including, for each user:

identifying a respective access permission of the respective user to the data from the data source;

determining that the respective user has security access to view a respective subset of the data from data source; and

generating a respective link snapshot for the respective subset of the data from the data source.

17. A non-transitory computer-readable storage medium storing one or more programs configured for execution by a computing device having one or more processors, memory, and a display, the one or more programs comprising instructions for:

displaying, via the display to a receiving user, a user interface for a channel of a communication application, including:

displaying a shared link to a graphical data visualization of data from a data source; and

displaying a snapshot button near the shared link, wherein the snapshot button is configured to generate a link snapshot comprising a version of the graphical data visualization representing data from the data source, to which the receiving user has security access, wherein the link snapshot includes a preview of the graphic data visualization; and

in response to an activation of the snapshot button by the receiving user, generating the link snapshot, including:

identifying an access permission of the receiving user to the data from the data source;

in accordance with the access permission, determining that the receiving user has security access to view a subset of the data from the data source;

dynamically generating the link snapshot for the subset of the data according to the access permission of the receiving user; and

displaying the link snapshot near the shared link in the user interface of the communication application.

18. The computer-readable storage medium of claim 17 , wherein the channel of the communication application comprises a group chat with multiple users, any individual user of the multiple users can activate the snapshot button, and the link snapshot is generated according to access permission of an individual user activating the snapshot button.

19. The computer-readable storage medium of claim 18 , wherein the individual user activating the snapshot button is a user who shared the shared link in the channel of a communication application, and the one or more programs further comprising instructions for:

generating a respective link snapshot for each user in the channel, including, for each user:

identifying a respective access permission of the respective user to the data from the data source;

determining that the respective user has security access to view a respective subset of the data from data source; and

generating a respective link snapshot for the respective subset of the data from the data source.

Assignments (3)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Apr 22, 2025
From: MAERTENS, KATHERINE ANNE
To: SALESFORCE.COM, INC.
Reel/Frame 070916/0416 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Apr 22, 2025
From: SUNDAR, KARTIK; ANONUEVO, YUKIKO ISHIDA; MENAHEM, NAOMI; ZHOU, BAILIANG; TRIPATHI, MANISH; BRISKMAN, JARED
To: SALESFORCE, INC.
Reel/Frame 070916/0438 →
CHANGE OF NAME Recorded Apr 22, 2025
From: SALESFORCE.COM, INC.
To: SALESFORCE, INC.
Reel/Frame 070952/0643 →
Continuity (1)
Provisional Application 63303944 · Jan 27, 2022
References Cited (38)
US 9740874B2 · Mahkovec · 2017 [cited by examiner]
US 10474352B1 · Winters et al. · 2019 [cited by applicant]
US 10515121B1 · Setlur et al. · 2019 [cited by applicant]
US 10546001B1 · Nguyen et al. · 2020 [cited by applicant]
US 10749831B2 · Zhong · 2020 [cited by examiner]
US 20040210532A1 · Nagawa · 2004 [cited by examiner]
US 20150046429A1 · Eblighatian et al. · 2015 [cited by applicant]
US 20150154156A1 · Meyers, Jr. · 2015 [cited by examiner]
US 20150195330A1 · Lee · 2015 [cited by examiner]
US 20160012739A1 · Jafari · 2016 [cited by examiner]
US 20160283447A1 · Masterson · 2016 [cited by examiner]
US 20170011023A1 · Ghannam et al. · 2017 [cited by applicant]
US 20170076507A1 · Bivins · 2017 [cited by applicant]
US 20170154089A1 · Sherman · 2017 [cited by applicant]
US 20170249711A1 · Odegard · 2017 [cited by applicant]
US 20170277669A1 · Sekharan · 2017 [cited by applicant]
US 20170277696A1 · Sekharan · 2017 [cited by applicant]
US 20170308571A1 · McCurley et al. · 2017 [cited by applicant]
US 20180144064A1 · Krasadakis · 2018 [cited by applicant]
US 20180189294A1 · Anand et al. · 2018 [cited by applicant]
US 20190163807A1 · Jain et al. · 2019 [cited by applicant]
US 20190272296A1 · Prakash et al. · 2019 [cited by applicant]
US 20200241903A1 · Wang et al. · 2020 [cited by applicant]
US 20200293167A1 · Blyumen · 2020 [cited by applicant]
US 20200387556A1 · Uppal · 2020 [cited by examiner]
US 20210004370A1 · Sekharan et al. · 2021 [cited by applicant]
US 20220172723A1 · Tendolkar · 2022 [cited by applicant]
EP 3535676A1 · 2019 [cited by applicant]
WO WO2020076811A1 · 2020 [cited by applicant]
Atallah, Preinterview First Office Action, U.S. Appl. No. 16/940,267, Feb. 22, 2022, 6 pgs. [cited by applicant]
Atallah, First Action Interview Office Action, U.S. Appl. No. 16/940,267, Mar. 22, 2022, 5 pgs. [cited by applicant]
Atallah, Notice of Allowance, U.S. Appl. No. 16/940,267, Aug. 4, 2022, 7 pgs. [cited by applicant]
Hearst, Office Action, U.S. Appl. No. 17/206,046, Feb. 10, 2022, 17 pgs. [cited by applicant]
Hearst, Final Office Action, U.S. Appl. No. 17/206,046, Sep. 12, 2022, 18 pgs. [cited by applicant]
Hearst, Office Action, U.S. Appl. No. 17/206,046, Mar. 9, 2023, 20 pgs. [cited by applicant]
Hearst, Notice of Allowance, U.S. Appl. No. 17/206,046, Oct. 18, 2023, 9 pgs. [cited by applicant]
Tableau Software, LLC, International Search Report and Written Opinion, PCT/US2021/040919, Oct. 18, 2021, 11 pgs. [cited by applicant]
Thom, Notice of Allowance, U.S. Appl. No. 17/583,164, Feb. 15, 2023, 23 pgs. [cited by applicant]
Cited By (2)
US 12,443,491 US 12,443,505