IP Library Granted Patent US 11,099,705
Granted Patent B1
US 11,099,705 · App. 16/887,967 · Granted Aug 24, 2021

Automatic dashboard tiles for online tools

Inventors: Eric Paul Wittke (Chicago, IL); Jon Belkowitz (Brooklyn, NY); Rick Muñoz (Oakland, CA); Narinder Singh (Medina, WA)
Assignee: salesforce.com, inc.
G06F3/0481G06Q30/0246
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,099,705
App. No.
16/887,967
Granted
Aug 24, 2021
Kind
B1
Abstract

Disclosed herein are system, method, and computer program product embodiments for automatically generating tiles. An embodiment operates by detecting a first node of a model has been populated with a first plurality of data values from a first online tool. The embodiment selects a tile logic block corresponding to the first node from a plurality of tile logic blocks. The embodiment generates a first tile associated with the first node by executing the tile logic block based on the first plurality of data values. The embodiment inserts the first tile into a dashboard configured to display a plurality of tiles. The embodiment then sends the dashboard for display.

Claims (72)

1. A method, comprising:

detecting, by a computing device, a first node of a model has been populated with a first plurality of data values from a first online tool,

wherein the model is composed of a plurality of related nodes, and

wherein the detecting comprises receiving a message issued by the first online tool and indicating that the first plurality of data values have been stored in the first data structure;

in response to the detecting, executing, by the computing device, an initial search of a repository storing a plurality of tile logic blocks for a tile logic block specific to the first online tool using an identity of the first online tool as a search criterion;

in response to the initial search being unsuccessful and the plurality of tile logic blocks not including a tile logic block specific to the first online tool, executing a search of the repository for a tile logic block specific to the node using an identity of the first node as a search criterion,

wherein each of the plurality of tile logic blocks stored in the repository is associated with an online tool or a node of the plurality of related nodes;

selecting, by the computing device, a tile logic block of the plurality of tile logic blocks specific to the first node and identified during the search;

generating, by the computing device, a first tile by executing the tile logic block based on the first plurality of data values;

inserting, by the computing device, the first tile into a dashboard configured to display a plurality of tiles; and

sending, by the computing device, the dashboard for display.

2. The method of claim 1 , further comprising:

detecting, by the computing device, a second node of the model has been populated with a second plurality of data values from a second online tool;

determining, by the computing device, the plurality of tile logic blocks does not comprise a tile logic block corresponding to the second online tool or a tile logic block corresponding to the second node;

generating, by the computing device, a second tile based on a measurement count and a dimension type of the second plurality of data values in response to the determining; and

inserting, by the computing device, the second tile into the dashboard.

3. The method of claim 1 , wherein the first plurality of data values are pushed to the model using an application programming interface (API).

4. The method of claim 1 , wherein executing the tile logic block results in a graph corresponding to the first plurality of data values, and wherein the first tile comprises the graph.

5. The method of claim 1 , wherein the first plurality of values comprises website traffic metrics.

6. The method of claim 1 , wherein the first node comprises a plurality of interconnected tables and the plurality of first data values populate a plurality of fields in the plurality of interconnected tables.

7. The method of claim 1 , further comprising:

sending, by the computing device, an alert for display after generating the first tile; and

receiving, by the computing device, a request to view the dashboard based on the alert,

wherein sending the dashboard is based on the request.

8. A system, comprising:

a memory; and

at least one processor coupled to the memory and configured to:

detect a first node of a model has been populated with a first plurality of data values from a first online tool,

wherein the model is composed of a plurality of related nodes, and

wherein the detecting comprises receiving a message issued by the first online tool and indicating that the first plurality of data values have been stored in the first data structure;

in response to the detecting, execute an initial search of a repository storing a plurality of tile logic blocks for a tile logic block specific to the first online tool using an identity of the first online tool as a search criterion;

in response to the initial search being unsuccessful and the plurality of tile logic blocks not including a tile logic block specific to the first online tool, execute a search of the repository for a tile logic block specific to the node using an identity of the first node as a search criterion,

wherein each of the plurality of tile logic blocks stored in the repository is associated with an online tool or a node of the plurality of related nodes;

select a tile logic block of the plurality of tile logic blocks specific to the first node and identified during the search;

generate a first tile by executing the tile logic block based on the first plurality of data values;

insert the first tile into a dashboard configured to display a plurality of tiles; and

send the dashboard for display.

9. The system of claim 8 , wherein the at least one processor is further configured to:

detect a second node of the model has been populated with a second plurality of data values from a second online tool;

determine the plurality of tile logic blocks does not comprise a tile logic block corresponding to the second online tool or a tile logic block corresponding to the second node;

generate a second tile based on a measurement count and a dimension type of the second plurality of data values in response to the determining; and

insert the second tile into the dashboard.

10. The system of claim 8 , wherein the at least one processor is further configured to:

send an alert for display after generating the first tile; and

receive a request to view the dashboard based on the alert,

wherein sending the dashboard is based on the request.

11. The system of claim 8 , wherein the first plurality of data values are pushed to the model using an application programming interface (API).

12. The system of claim 8 , wherein executing the tile logic block results in a graph corresponding to the first plurality of data values, and wherein the first tile comprises the graph.

13. The system of claim 8 , wherein the first plurality of values comprises website traffic metrics.

14. The system of claim 8 , wherein the first node comprises a plurality of interconnected tables and the plurality of first data values populate a plurality of fields in the plurality of interconnected tables.

15. A non-transitory computer readable medium (CRM) having instructions stored thereon that, when executed by at least one computing device, cause the at least one computing device to perform operations comprising:

detecting a first node of a model has been populated with a first plurality of data values from a first online tool,

wherein the model is composed of a plurality of related nodes, and

wherein the detecting comprises receiving a message issued by the first online tool and indicating that the first plurality of data values have been stored in the first data structure;

in response to the detecting, executing an initial search of a repository storing a plurality of tile logic blocks for a tile logic block specific to the first online tool using an identity of the first online tool as a search criterion;

in response to the initial search being unsuccessful and the plurality of tile logic blocks not including a tile logic block specific to the first online tool, executing a search of the repository for a tile logic block specific to the node using an identity of the first node as a search criterion,

wherein each of the plurality of tile logic blocks stored in the repository is associated with an online tool or a node of the plurality of related nodes;

selecting a tile logic block of the plurality of tile logic blocks specific to the first node and identified during the search;

generating a first tile by executing the tile logic block based on the first plurality of data values;

inserting the first tile into a dashboard configured to display a plurality of tiles; and

sending the dashboard for display.

16. The non-transitory CRM of claim 15 , wherein the operations further comprise:

detecting a second node of the model has been populated with a second plurality of data values from a second online tool;

determining the plurality of tile logic blocks does not comprise a tile logic block corresponding to the second online tool or a tile logic block corresponding to the second node;

generating a second tile based on a measurement count and a dimension type of the second plurality of data values in response to the determining; and

inserting the second tile into the dashboard.

17. The non-transitory CRM of claim 15 , wherein the operations further comprise:

sending an alert for display after generating the first tile; and

receiving a request to view the dashboard based on the alert,

wherein sending the dashboard is based on the request.

18. The non-transitory CRM of claim 15 , wherein the first plurality of data values are pushed to the model using an application programming interface (API).

19. The non-transitory CRM of claim 15 , wherein executing the tile logic block results in a graph corresponding to the first plurality of data values, and wherein the first tile comprises the graph.

Assignments (2)
CHANGE OF NAME Recorded Dec 18, 2024
From: SALESFORCE.COM, INC.
To: SALESFORCE, INC.
Reel/Frame 069717/0499 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jun 2, 2020
From: WITTKE, ERIC PAUL; BELKOWITZ, JON; MUÑOZ, RICK; SINGH, NARINDER
To: SALESFORCE.COM, INC.
Reel/Frame 052807/0935 →