IP Library Granted Patent US 8,103,690
Granted Patent B2
US 8,103,690 · App. 11/418,416 · Granted Jan 24, 2012

Realtime database architecture

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 8,103,690
App. No.
11/418,416
Granted
Jan 24, 2012
Kind
B2
Abstract

A method and apparatus is disclosed herein for automatically supplying data items to a client. In one embodiment, the method comprises determining, from among a plurality of data items displayable by a client, one or more relevant data items to be supplied to the client, the plurality of data items displayable by a client located in a first database corresponding to a tracked user's interactions with a website. The one or more relevant data items are then automatically supplied to the client. The method also includes storing a copy of the supplied one or more relevant data items in a second database.

Claims (63)

1. A computer-implemented method, comprising:

determining, from among a plurality of data items displayable by a client to a first user, one or more relevant data items to be supplied to the client for display to the first user, the plurality of data items displayable by a client located in a first database that stores real-time tracking data corresponding to a tracked second user's interactions with a website, wherein the plurality of data items corresponding to the tracked user's interactions with the website comprise one or more of clickflow data, presence on a web page, presence on a web site, sequence of pages traversed, time on page, time on site, referrer, host internet protocol address, email received, email bounced, email read;

automatically supplying the one or more relevant data items to the client for display to the first user;

storing a copy of the supplied one or more relevant data items in a second database; in response to client requests, providing the one or more relevant data items to the client from the second database;

determining a set of data items, corresponding to the tracked second user's interactions with the website, currently being displayed in a graphical user interface of the client;

determining a current version of the data items that are currently displayed by the client by comparison of a version of each of the set of data items stored in the first database with each of the set of data items stored in the second database to determine which of the one or more items from the set and currently being displayed is different from the version stored in the first database and not current in the second database; and

automatically supplying one or more current data items from the first database in response to the comparing, corresponding to the one or more items currently being displayed which are not current, to the client to be displayed by the client user interface.

2. The computer-implemented method of claim 1 , wherein the client has a user interface.

3. The computer-implemented method of claim 2 , wherein the determining further comprises:

determining when the client is on-line.

4. The computer-implemented method of claim 2 , wherein automatically supplying further comprises:

pushing the one or more relevant data items to the client.

5. The computer-implemented method of claim 4 , wherein the data is pushed to the client over Hyper Text Transfer Protocol port 80.

6. The computer-implemented method of claim 1 , further comprising:

replacing data items, stored in the second database, with the one or more current data items supplied from the first database, the second database updated to contain current versions of data items currently being displayed by the graphical user interface of the client.

7. The computer-implemented method of claim 1 , wherein the one or more current data items are supplied in pseudo realtime.

8. The computer-implemented method of claim 1 , wherein the data items displayable to the client are data items selected from one of contact information data, page information data, or activities information data.

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

automatically supplying the plurality of data items displayable by a client when the client is first opened; and

storing a copy of the plurality of data items displayable by the client in the second database.

10. A computer-readable storage medium that provides instructions, which when executed by a machine, causes the machine to perform the operations comprising:

determining, from among a plurality of data items displayable by a client to a first user, one or more relevant data items to be supplied to the client for display to the first user, the plurality of data items displayable by a client located in a first database that stores real-time tracking data corresponding to a tracked second user's interactions with a website, wherein the plurality of data items corresponding to the tracked user's interactions with the website comprise one or more of clickflow data, presence on a web page, presence on a web site, sequence of pages traversed, time on page, time on site, referrer, host internet protocol address, email received, email bounced, email read;

automatically supplying the one or more relevant data items to the client for display to the first user;

storing a copy of the supplied one or more relevant data items in a second database; in response to client requests, providing the one or more relevant data items to the client from the second database;

determining a set of data items corresponding to the tracked second user's interactions with the website currently being displayed in a graphical user interface of the client;

determining a current version of the data items that are currently displayed by the client by comparison of a version of each of the set of data items stored in the first database with each of the set of data items stored in the second database to determine which of the one or more items from the set and currently being displayed is different from the version stored in the first database and not current in the second database; and

automatically supplying one or more current data items from the first database in response to the comparing, corresponding to the one or more items currently being displayed which are not current, to the client to be displayed by the client user interface.

11. The computer-readable storage medium of claim 10 , wherein the client has a user interface.

12. The computer-readable storage medium of claim 11 , wherein the determining further comprises:

determining when the client is on-line.

13. The computer-readable storage medium of claim 11 , wherein automatically supplying further comprises:

pushing the one or more relevant data items to the client.

14. The computer-readable storage medium of claim 13 , wherein the data is pushed to the client over Hyper Text Transfer Protocol port 80.

15. The computer-readable storage medium of claim 10 , further comprising:

replacing data items, stored in the second database, with the one or more current data items.

16. The computer-readable storage medium of claim 15 , wherein the one or more current data items are supplied in pseudo realtime.

17. The computer-readable storage medium of claim 10 , wherein the data items displayable to the client are data items selected from one of contact information data, page information data, or activities information data.

18. The computer-readable storage medium of claim 10 , further comprising:

automatically supplying the plurality of data items displayable by a client when the client is first opened; and

storing a copy of the plurality of data items displayable by the client in the second database.

19. A system, comprising:

a memory to store a second database; and

a server coupled with the memory, wherein a processor of the server to:

determine, from among a plurality of data items displayable by a client to a first user, one or more relevant data items to be supplied to the client for display to the first user, the plurality of data items displayable by a client located in a first database corresponding to a tracked second user's interactions with a website, wherein the plurality of data items corresponding to the tracked user's interactions with the website comprise one or more of clickflow data, presence on a web page, presence on a web site, sequence of pages traversed, time on page, time on site, referrer, host internet protocol address, email received, email bounced, email read;

automatically supply the one or more relevant data items to the client for display to the first user; and

store a copy of the supplied one or more relevant data items in the second database; in response to client requests, provide the one or more relevant data items to the client from the second database;

determine a set of data items corresponding to the tracked second user's interactions with the website currently being displayed in a graphical user interface of the client; determining a current version of the data items that are currently displayed by the client by comparison of a version of each of the set of data items stored in the first database with each of the set of data items stored in the second database to determine which of the one or more items from the set and currently being displayed is different from the version stored in the first database and not current in the second database; and

automatically supply one or more current data items from the first database in response to the comparison, corresponding to the one or more items currently being displayed which are not current, to the client to be displayed by the client user interface.

20. The system of claim 19 , wherein the client has a user interface.

21. The system of claim 20 , wherein the server to determine further comprises:

the server to: determine when the server is on-line.

22. The system of claim 20 , wherein the server to automatically supply comprises:

the server to: push the one or more relevant data items to the client.

23. The system of claim 22 , wherein the data is pushed to the client over Hyper Text Transfer Protocol port 80.

24. The system of claim 19 , further comprising:

the server to:

replace data items, stored in the second database, with the one or more current data items.

25. The system of claim 19 , wherein the one or more current data items are supplied in pseudo realtime.

26. The system of claim 19 , wherein the data items displayable to the client are data items selected from one of contact information data, page information data, or activities information data.

27. The system of claim 19 , further comprising:

the server to:

automatically supply the plurality of data items displayable by a client when the client is first opened; and

store a copy of the plurality of data items displayable by the client in the second database.

Assignments (10)
RELEASE OF SECURITY INTEREST Recorded Oct 2, 2017
From: WELLS FARGO BANK, NATIONAL ASSOCIATION
To: CALLIDUS SOFTWARE INC.
Reel/Frame 043758/0311 →
RELEASE OF SECURITY INTEREST Recorded Jun 16, 2014
From: SILICON VALLEY BANK
To: LEADROCKET, INC. (FORMERLY GENIUS.COM)
Reel/Frame 033182/0679 →
PATENT SECURITY AGREEMENT Recorded May 23, 2014
From: CALLIDUS SOFTWARE INC.
To: WELLS FARGO BANK, NATIONAL ASSOCIATION, AS AGENT
Reel/Frame 033012/0639 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded May 12, 2014
From: LEADROCKET, INC.
To: CALLIDUS SOFTWARE, INC.
Reel/Frame 032872/0385 →
RELEASE OF SECURITY INTEREST Recorded May 9, 2014
From: SILICON VALLEY BANK
To: LEADROCKET, INC.
Reel/Frame 032862/0707 →
CHANGE OF NAME Recorded May 7, 2014
From: GENIUS.COM. INCORPORATED
To: LEADROCKET, INC.
Reel/Frame 032845/0164 →
RELEASE OF SECURITY INTEREST Recorded Jan 31, 2014
From: VENTURE LENDING & LEASING V, INC.
To: LEAD ROCKET, INC. (FORMERLY GENIUS.COM)
Reel/Frame 032111/0034 →
SECURITY AGREEMENT Recorded Nov 21, 2011
From: GENIUS.COM INCORPORATED
To: SILICON VALLEY BANK
Reel/Frame 027259/0733 →
SECURITY INTEREST Recorded Mar 17, 2011
From: GENIUS.COM INCORPORATED
To: VENTURE LENDING & LEASING V, INC.
Reel/Frame 026437/0057 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Aug 11, 2006
From: SEIDL, ROBERT; FLYNN, FRANK; THOMPSON, DAVID R.; DELORENZO, MICHAEL
To: GENIUS.COM
Reel/Frame 018174/0011 →