IP Library Granted Patent US 8,745,167
Granted Patent B2
US 8,745,167 · App. 12/480,500 · Granted Jun 3, 2014

System and method for globally and securely accessing unified information in a computer network

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,745,167
App. No.
12/480,500
Granted
Jun 3, 2014
Kind
B2
Abstract

A client stores a first set of workspace data, and is coupled via a computer network to a global server. The client may be configured to synchronize portions of the first set of workspace data with the global server, which stores independently modifiable copies of the portions. The global server may also store workspace data which is not downloaded from the client, and thus stores a second set of workspace data. The global server may be configured to identify and authenticate a user seeking global server access from a remote terminal, and is configured to provide access to the first set or to the second set. Further, services may be stored anywhere in the computer network. The global server may be configured to provide the user with access to the services. The system may further include a synchronization-start module at the client site (which may be protected by a firewall) that initiates interconnection and synchronization with the global server when predetermined criteria have been satisfied.

Claims (103)

1. A smartphone comprising:

a local data store configured to store a first workspace element;

a communications module configured to:

establish a direct Internet connection through a firewall and between the smartphone and a remote data store maintained on a server using a hypertext transfer protocol; and

secure the direct Internet connection; and

a synchronization module configured to:

communicate with a synchronization agent maintained on the server via the communication module;

process first modification information identifying one or more modifications of the first workspace element;

receive, from the synchronization agent, second modification information identifying one or more modifications of an independently-modifiable copy of the first workspace element stored in the remote data store;

generate a preferred version of the first workspace element based on the first modification information and the second modification information; and

store the preferred version of the first workspace element in the local data store.

2. The smartphone of claim 1 , wherein the synchronization module is further configured to:

transmit, via the communication module, the first modification information to the synchronization agent,

wherein the synchronization agent is configured to update the independently-modifiable copy of the first workspace element based on the first modification information.

3. The smartphone of claim 2 , further comprising a translator configured to translate the first workspace element from a first format to a second format that is different from the first format.

4. The smartphone of claim 1 , wherein the synchronization module further comprises a synchronization-start module configured to initiate a synchronization.

5. The smartphone of claim 1 , wherein the synchronization module is further configured to examine the first workspace element and the independently-modifiable copy of the first workspace element when the first workspace element and the independently-modifiable copy of the first workspace element have both been modified prior to a synchronization.

6. The smartphone of claim 5 , wherein the synchronization module is further configured to:

determine changes made to the first workspace clement and the independently-modifiable copy of the first workspace element; and

integrate the changes determined to have been made with respect to one of the workspace elements with the other workspace element.

7. The smartphone of claim 1 , wherein the first workspace element includes calendar workspace data.

8. The smartphone of claim 1 , wherein the first workspace element includes file workspace data.

9. A smartphone comprising:

a local data store configured to store a first workspace element;

a communications module configured to:

establish a direct Internet connection through a firewall and between the smartphone and a remote data store maintained on a server using a hypertext transfer protocol; and

secure the direct Internet connection; and

a synchronization module configured to:

communicate with a synchronization agent maintained on the server via the communication module;

process first modification information identifying one or more modifications of the first workspace element;

receive, from the synchronization agent, second modification information identifying one or more modifications of an independently-modifiable copy of the first workspace element stored in the remote data store;

select one of the first workspace element or the independently-modifiable copy of the first workspace element as a preferred version; and

store the preferred version in the local data store.

10. A non-transitory computer-readable storage medium storing computer-readable instructions thereon for execution on a smartphone comprising a local data store configured to store a first workspace element, a communications module configured to provide a direct Internet connection through a firewall and between the smartphone and a remote data store maintained on a server using a hypertext transfer protocol, and a synchronization module configured to communicate with a synchronization agent maintained on the server, the computer readable instructions, when executed on a processor on the smartphone, causing the smartphone to perform a method comprising:

communicating with the synchronization agent maintained on the server via the communication module;

processing first modification information identifying one or more modifications of the first workspace element;

receiving, from the synchronization agent, second modification information identifying one or more modifications of the independently-modifiable copy of the first workspace element stored in the remote data store;

generating a preferred version of the first workspace element based on the first modification information and the second modification information; and

storing the preferred version of the first workspace element in the local data store.

11. The non-transitory computer-readable storage medium of claim 10 , wherein the computer-readable instructions, when executed on a processor on the smartphone, cause the smartphone to perform a method, further comprising: transmitting first modification information via the communication module to the synchronization agent for use in updating the independently-modifiable copy of the first workspace element.

12. The non-transitory computer-readable storage medium of claim 10 , wherein the computer-readable instructions, when executed on a processor on the smartphone, cause the smartphone to perform a method, further comprising: translating the first workspace element from a first format to a second format that is different from the first format.

13. The non-transitory computer-readable storage medium of claim 10 , wherein the computer-readable instructions, when executed on a processor on the smartphone, cause the smartphone to perform a method, further comprising: initiating a synchronization via a synchronization-start module.

14. The non-transitory computer-readable storage medium of claim 10 , wherein the computer-readable instructions, when executed on a processor on the smartphone, cause the smartphone to perform a method, further comprising: examining the first workspace element and the independently-modifiable copy of the first workspace element when the first workspace element and the independently-modifiable copy of the first workspace element have both been modified prior to a synchronization.

15. The non-transitory computer-readable storage medium of claim 14 , wherein the computer-readable instructions, when executed on a processor on the smartphone, cause the smartphone to perform a method, further comprising:

determining changes made to the first workspace element and the independently-modifiable copy of the first workspace element; and

integrating the changes determined to have been made with respect to one of the workspace elements with the other workspace element.

16. The non-transitory computer-readable storage medium of claim 10 , wherein the first workspace element includes calendar workspace data.

17. The non-transitory computer-readable storage medium of claim 10 , wherein the first workspace element includes file workspace data.

18. A non-transitory computer-readable storage medium storing computer-readable instructions thereon for execution on a smartphone comprising a local data store configured to store a first workspace element, a communications module configured to provide a direct Internet connection through a firewall and between the smartphone and a remote data store maintained on a server using a hypertext transfer protocol, and a synchronization module configured to communicate with a synchronization agent maintained on the server, the computer readable instructions, when executed on a processor on the smartphone, causing the smartphone to perform a method comprising:

communicating with the synchronization agent maintained on the server via the communication module,

processing first modification information identifying one or more modifications of the first workspace element;

receiving, from the synchronization agent, second modification information identifying one or more modifications of the independently-modifiable copy of the first workspace element stored in the remote data store;

selecting one of the first workspace element or the independently-modifiable copy of the first workspace element as a preferred version; and

storing the preferred version in the local data store.

19. A method of synchronizing workspace data and a remote data store maintained on a server that is located behind a firewall, the method comprising:

communicating with a synchronization agent maintained on the server via a direct Internet connection through the firewall using a hypertext transfer protocol;

processing first modification information identifying one or more modifications of a first workspace element stored in a local data store on the smartphone;

receiving, from the synchronization agent, second modification information identifying one or more modifications of an independently-modifiable copy of the first workspace element stored in the remote data store;

generating a preferred version of the first workspace element based on the first modification information and the second modification information; and

storing the preferred version of the first workspace element in the local data store.

20. The method of claim 19 , further comprising: transmitting the first modification information via the direct Internet connection to the synchronization agent for use in updating the independently-modifiable copy of the first workspace element.

21. The method of claim 19 further comprising: translating the first workspace element from a first format to a second format that is different from the first format.

22. The method of claim 19 , further comprising: initiating a synchronization via a synchronization-start module on the smartphone.

23. The method of claim 19 , further comprising: examining the first workspace element and the independently-modifiable copy of the first workspace element when the first workspace element and the independently-modifiable copy of the first workspace element have both been modified prior to a synchronization.

24. The method of claim 23 , further comprising:

determining changes made to the first workspace element and the independently-modifiable copy of the first workspace element; and

integrating the changes determined to have been made with respect to one of the workspace elements with the other workspace element.

25. The method of claim 19 , wherein the first workspace element includes calendar workspace data.

26. The method of claim 19 , wherein the first workspace element includes file workspace data.

27. A method of synchronizing workspace data between a smartphone and a remote data store maintained on a server located behind a firewall, the method comprising:

communicating with a synchronization agent maintained on the server via a direct Internet connection through the firewall using a hypertext transfer protocol;

generating first modification information identifying one or more modifications of a first workspace element stored in a local data store on the smartphone;

transmitting the first modification information to the synchronization agent via the direct Internet through the firewall;

receiving, from the synchronization agent, second modification information identifying one or more modifications of an independently-modifiable copy of the first workspace element stored in the remote data store;

selecting one of the first workspace element or the independently-modifiable copy of the first workspace element as a preferred version; and

storing the preferred version in the local data store.

28. A smartphone comprising:

a local data store configured to store a first workspace element;

a communication controller configured to establish a direct Internet connection through a firewall and between the smartphone and a remote data store maintained on a server using a hypertext transfer protocol; and

a synchronizing controller configured to:

communicate with a synchronization agent maintained on the server via the communication controller;

process first modification information identifying one or more modifications of the first workspace element;

receive from the synchronization agent, second modification information identifying one or more modifications of an independently-modifiable copy of the first workspace element stored in the remote data store;

generate a preferred version of the first workspace element based on the first modification information and the second modification information; and

store the preferred version of the first workspace element in the local data store.

29. The smartphone of claim 28 , wherein the synchronizing controller is further configured to transmit the first modification information via the communication controller to the synchronization agent.

30. The smartphone of claim 28 further comprising: a translator configured to translate the first workspace element from a first format to a second format that is different from the first format.

31. The smartphone of claim 28 , wherein the synchronizing controller comprises a synchronization-start module configured to initiate a synchronization.

32. The smartphone of claim 28 , wherein the synchronizing controller is further configured to examine the first workspace element and the independently-modifiable copy of the first workspace element when the first workspace element and the independently-modifiable copy of the first workspace element have both been modified prior to a synchronization.

33. The smartphone of claim 28 , wherein the synchronizing controller is further configured to:

determine changes made to the first workspace element and the independently-modifiable copy of the first workspace element; and

integrate the changes determined to have been made with respect to one of the workspace elements with the other workspace element.

34. The smartphone of claim 28 , wherein the first workspace element includes calendar workspace data.

35. The smartphone of claim 28 , wherein the first workspace element includes file workspace data.

36. A smartphone comprising:

a local data store configured to store a first workspace element;

a communication controller configured to establish a direct Internet connection through a firewall and between the smartphone and a remote data store maintained on a server using a hypertext transfer protocol; and

a synchronizing controller configured to:

communicate with a synchronization agent maintained on the server via the communication controller;

process first modification information identifying one or more modifications of the first workspace element;

receive, from the synchronization agent second modification information identifying one or more modifications of an independently-modifiable copy of the first workspace element stored in the remote data store;

select one of the first workspace element or the independently-modifiable copy of the first workspace element as a preferred version based on the first modification information and the second modification information; and

store the preferred version in the local data store.

Assignments (5)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jun 16, 2023
From: BLACKBERRY LIMITED
To: MALIKIE INNOVATIONS LIMITED
Reel/Frame 064104/0103 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Dec 27, 2017
From: GOOD TECHNOLOGY CORPORATION
To: GOOD TECHNOLOGY HOLDINGS LIMITED
Reel/Frame 044961/0698 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jun 20, 2014
From: RIGGINS, MARK D.; BAILES, R. STANLEY; BUI, HONG Q.; COWAN, DAVID J.; MENDEZ, DANIEL J.; NG, MASON; QUINLAN, SEAN MICHAEL; WAGLE, PRASAD; YING, CHRISTINE C.; ZULEEG, CHRISTOPHER R.; APTEKAR-STROBER, JOANNA A.
To: ROAMPAGE, INC.
Reel/Frame 033152/0967 →
CHANGE OF NAME Recorded Jun 20, 2014
From: ROAMPAGE, INC.
To: VISTO CORPORATION
Reel/Frame 033206/0715 →
CHANGE OF NAME Recorded Nov 26, 2012
From: VISTO CORPORATION
To: GOOD TECHNOLOGY CORPORATION
Reel/Frame 029347/0783 →