IP Library Granted Patent US 8,073,432
Granted Patent B2
US 8,073,432 · App. 10/695,521 · Granted Dec 6, 2011

Data synchronization

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,073,432
App. No.
10/695,521
Granted
Dec 6, 2011
Kind
B2
Abstract

The invention relates to a method and an apparatus for arranging data synchronization is a synchronization system which comprises at least a first synchronization device and a second synchronization device. The synchronization system defines binding data which associates a user data unit of the first synchronization device with at least one function of the first synchronization device. A first synchronization step is performed between the first synchronization device and the second synchronization device, the step comprising transferring the user data unit from the first synchronization device to the second synchronization device. After the first synchronization step has been performed, a second synchronization step is performed where binding data is transferred from the first synchronization device to the second synchronization device. Binding is formed in the second synchronization device between the user data unit and at least one function of the second synchronization device in accordance with the binding data.

Claims (87)

1. A method comprising:

defining binding data which associates a user data identifier identifying a user data unit with an identifier for identifying at least one function of a first communications device;

performing a first synchronization step between the first communications device and a second communications device, the step comprising transferring the user data unit from the first communications device to the second communications device;

performing a second synchronization step between the first communications device and the second communications device in response to the performance of the first synchronization step, the second step comprising transferring the binding data from the first communications device to the second communications device, wherein the second communications device is a mobile communications device or a synchronization server configured to synchronize the binding data to a mobile communications device to form binding in the mobile communications device in accordance with the binding data, and the first communications device checks whether the second communications device supports binding data synchronization and transmits the binding data to the second communications device in the second synchronization step in response to the fact that the second communications device supports binding data synchronization on the basis of the check.

2. The method of claim 1 , wherein the first communications device checks if the second communications device has user data units defined in the binding data, and

the first communications device transmits any missing user data units to the second communications device.

3. A method according to claim 1 , wherein the binding data associates the user data unit with a resource identifier which is used by at least one application.

4. A method according to claim 1 , wherein the binding data associates the user data unit with a device data unit which is a data unit affecting the operation of the second communications device.

5. A method according to claim 4 , wherein the user data unit is a phone number or refers to a phone number and the binding data associates the user data unit with a device data unit which is a speed dial number.

6. A method according to claim 4 , wherein the user data unit is a phone number or refers to a phone number and the binding data associates the user data unit with a device data unit, which is the identifier of a caller group.

7. A method according to claim 4 , the method further comprising:

synchronizing the device data unit from the first communications device to the second communications device in connection with the synchronization of the user data unit.

8. A method according to claim 1 , wherein the first communications device is configured to function as a server in accordance with a synchronization markup language protocol and the second communications device is configured to function as a client in accordance with a synchronization markup language protocol.

9. A communications device comprising means for establishing a synchronization session for user data synchronization with a second communications device, wherein the communications device is configured to define binding data which associates a user data identifier identifying a user data unit with an identifier for identifying at least one function of the mobile communications device;

the communications device is configured to perform a first synchronization step with the second communications device, the step comprising transferring the user data unit from the communications device to the second communications device; and

the communications device is configured, in response to the performance of the first synchronization step, to perform a second synchronization step with the second communications device, the second step comprising transferring the binding data from the communications device to the second communications device, wherein the second communications device is a mobile communications device or a synchronization server configured to synchronize the binding data to a mobile communications device to form binding in the mobile communications device in accordance with the binding data and the communications device is configured to check whether the second communications device supports binding data synchronization and to transmit the binding data to the second communications device in the second synchronization step in response to the fact that the second communications device supports binding data synchronization on the basis of the check.

10. A mobile communications device comprising means for establishing a synchronization session for user data synchronization with a second communications device, wherein the mobile communications device is configured to perform a first synchronization step with the second communications device, the step comprising receiving a user data unit from the second communications device;

the mobile communications device is configured, in response to the performance of the first synchronization step, to perform a second synchronization step with the second communications device, the second step comprising receiving binding data which associates a user data identifier identifying the user data unit with an identifier for identifying at least one function of the second communications device;

the mobile communications device is configured to form binding between the received user data unit and at least one function of the mobile communications device in accordance with the binding data received during the second synchronization step;

the mobile communications device is configured to check if all user data units defined in the received binding data are available in the mobile communications device;

in response to at least one user data unit defined in the received binding data not being available in the mobile communications device on the basis of the check, the mobile communications device is configured to request the at least one further user data unit from the second communications device;

and

the mobile communications device is configured to form a binding between the at least one further user data unit, received in response to the request, and at least one of its functions in accordance with the binding data.

11. A non-transitory computer readable storage medium encoded with a computer program, the computer readable medium comprising:

a program code portion for controlling a communications device to define binding data which associates a user data identifier identifying a user data unit with an identifier for identifying at least one function of the communications device;

a program code portion for controlling the communications device to perform a first synchronization step with a second communications device, the step comprising transferring the user data unit from the communications device to the second communications device; and

a program code portion for controlling the communications device to perform, in response to the performance of the first synchronization step, a second synchronization step with the second communications device, the second step comprising transferring the binding data from the communications device to the second communications device, wherein the second communications device is a mobile communications device or a synchronization server configured to synchronize the binding data to a mobile communications device to form binding between the received user data unit and at least one function of the mobile communications device, and the computer readable medium comprises a program code portion for checking whether the second communications device supports binding data synchronization and a program code portion for transmitting the binding data to the second communications device in the second synchronization step in response to the fact that the second communications device supports binding data synchronization on the basis of the check.

12. A non-transitory computer readable storage medium encoded with a computer program, the computer readable medium comprising:

a program code portion for controlling a mobile communications device to perform a first synchronization step with a second communications device, the step comprising receiving a user data unit;

a program code portion for controlling the mobile communications device to perform, in response to the performance of the first synchronization step, a second synchronization step with the second communications device, the second step comprising receiving, from the second communications device, binding data which associates a user data identifier identifying the user data unit with an identifier for identifying at least one function of the second communications device; and

a program code portion for controlling the mobile communications device to form binding between the received user data unit and one function of the mobile communications device in accordance with the binding data received during the second synchronization step;

a program code portion for controlling the mobile communications device to check if all user data units defined in the received binding data are available in the mobile communications device;

a program code portion for controlling the mobile communications device to, in response to at least one user data unit defined in the received binding data not being available in the mobile communications device on the basis of the check, request the at least one further user data unit from the second communications device;

and

a program code portion for controlling the mobile communications device to form a binding between the at least one further user data unit, received in response to the request, and at least one of its functions in accordance with the binding data.

13. A non-transitory computer readable storage medium storing a data structure for use in a mobile communications device, wherein the data structure comprises binding data associating a user data identifier identifying a user data unit with an identifier for identifying at least one function of the mobile communications device and which is defined in a second communications device and which during the execution of a computer program which updates the data stored in the memory of the mobile communications device causes the mobile communications device to form binding between a user data unit received from the second communications device and at least one function of the mobile communications device, the data structure being configured to be receivable during a second synchronization step between the mobile communications device and the second communications device, the second step comprising receiving the binding data from the second communications device to the mobile communications device in response to the performance of a first synchronization step comprising receiving the user data unit from the second communications device to the mobile communications device, which is further configured to check if all user data units defined in the binding data are available in the mobile communications device, in response to at least one user data unit defined in the received binding data not being available in the mobile communications device on the basis of the check, request the at least one further user data unit from the second communications device, and form a binding between the at least one further user data unit and at least one of its functions in accordance with the binding data.

14. A computer readable storage medium according to claim 13 , wherein the binding data associates the user data unit with a device data unit which is a data unit affecting the operation of the mobile communications device.

15. An apparatus comprising

memory storing computer program code, and

at least one processor, the memory and the computer program code being configured to, with the at least one processor, cause the apparatus to perform at least the following:

define binding data which associates a user data identifier identifying the user data unit with an identifier for identifying at least one function of the apparatus;

perform a first synchronization step with a communications device, the step comprising transferring the user data unit from the apparatus to the communications device; and

in response to the performance of the first synchronization step, perform a second synchronization step with the communications device, the second step comprising transferring the binding data from the apparatus to the communications device, the apparatus being configured to check whether the communications device supports binding data synchronization and transmit the binding data to the communications device in the second synchronization step in response to the fact that the communications device supports binding data synchronization,

wherein the communications device is a mobile communications device or a synchronization server configured to synchronize the binding data to a mobile communications device to form binding in the mobile communications device in accordance with the binding data.

16. An apparatus according to claim 15 , wherein the binding data associates the user data unit with a device data unit which is a data unit affecting the operation of the communications device.

17. An apparatus according to claim 15 , wherein the user data unit is a phone number or refers to a phone number and the binding data associates the user data unit with a device data unit which is a speed dial number.

18. An apparatus according to claim 15 , wherein the user data unit is a phone number or refers to a phone number and the binding data associates the user data unit with a device data unit, which is the identifier of a caller group.

19. An apparatus according to claim 16 , wherein the apparatus is configured to function as a server in accordance with a synchronization markup language protocol.

20. An apparatus according to claim 15 , wherein the binding data associates the user data unit with a resource identifier which is used by at least one application.

21. An apparatus according to claim 15 , wherein the memory and the computer program code are configured to, with the at least one processor, cause the apparatus to further:

check if the user data units defined in the binding data have been transmitted to the communications device, and

transmit any missing user data units to the communications device.

22. An apparatus according to claim 15 , wherein the memory and the computer program code are configured to, with the at least one processor, cause the apparatus to synchronize binding data formed by another device.

23. An apparatus comprising

memory storing computer program code, and

at least one processor,

the memory and the computer program code being configured to, with the at least one processor, cause the apparatus to perform at least the following:

a mobile communications device to perform a first synchronization step with a second communications device, the step comprising receiving a user data unit from the second communications device;

in response to the performance of the first synchronization step, perform a second synchronization step with the second communications device, the step comprising receiving binding data which associates a user data identifier identifying the user data unit with an identifier for identifying at least one function of a communications device;

form binding, at the mobile communications device, between the received user data unit and at least one function of the mobile communications device in accordance with the binding data received during the second synchronization step;

check if all user data units defined in the received binding data are available in the mobile communications device;

in response to at least one user data unit defined in the received binding data not being available in the mobile communications device on the basis of the check, request the at least one further user data unit from the second communications device;

and

form a binding between the at least one further user data unit, received in response to the request, and at least one of functions of the mobile communications device in accordance with the binding data.

24. An apparatus according to claim 23 , wherein the binding data associates the user data unit with a device data unit which is a data unit affecting the operation of the mobile communications device.

25. An apparatus according to claim 23 , wherein the user data unit is a phone number or refers to a phone number and the binding data associates the user data unit with a device data unit which is a speed dial number.

26. An apparatus according to claim 23 , wherein the user data unit is a phone number or refers to a phone number and the binding data associates the user data unit with a device data unit, which is the identifier of a caller group.

27. An apparatus according to claim 23 , wherein the binding data associates the user data unit with a resource identifier which is used by at least one application.

28. An apparatus according to claim 23 , wherein the memory and the computer program code are configured to, with the at least one processor, cause the apparatus to further:

function as a client in accordance with a synchronization markup language protocol; and

maintain a binding data table which associates a local unique identifier or global unique identifier of the user data unit with at least one local unique identifier or global unique identifier related to the apparatus.

29. An apparatus according to claim 23 , wherein the apparatus is a mobile terminal.

30. A method comprising:

receiving, by a mobile communications device, a user data unit from a second communications device in a first synchronization step with the second communications device;

in response to the performance of the first synchronization step, receiving, from the second communications device, binding data which associates a user data identifier identifying the user data unit with an identifier for identifying at least one function of a mobile communications device in a second synchronization step with the mobile communications device; and

forming binding between the user data unit and at least one function of the mobile communications device in accordance with the binding data received during the second synchronization step;

checking if all user data units defined in the received binding data are available in the mobile communications device;

in response to at least one user data unit defined in the received binding data not being available in the mobile communications device on the basis of the check, requesting the at least one further user data unit from the second mobile communications device;

and

forming binding between the at least one further user data unit, received in response to the request, and at least one of functions of the second mobile communications device in accordance with the binding data.

31. The method according to claim 30 , wherein the binding data associates the user data unit with a device data unit which is a data unit affecting the operation of the mobile communications device.

32. The method according to claim 30 , wherein the user data unit is a phone number or refers to a phone number and the binding data associates the user data unit with a device data unit which is a speed dial number.

33. The method according to claim 30 , wherein the user data unit is a phone number or refers to a phone number and the binding data associates the user data unit with a device data unit, which is the identifier of a caller group.

34. The method according to claim 30 , wherein the binding data associates the user data unit with a resource identifier which is used by at least one application.

35. The method according to claim 30 , wherein the mobile communications device is a client operating in accordance with a synchronization markup language protocol; and

the mobile communications device maintains a binding data table which associates a local unique identifier or global unique identifier of the user data unit with at least one local unique identifier or global unique identifier related to a communications device.

36. The method according to claim 30 , wherein the second communications device is a mobile terminal.

Assignments (9)
PATENT SECURITY AGREEMENT Recorded Apr 22, 2023
From: RPX CORPORATION
To: BARINGS FINANCE LLC, AS COLLATERAL AGENT
Reel/Frame 063429/0001 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Dec 28, 2021
From: PROVENANCE ASSET GROUP LLC
To: RPX CORPORATION
Reel/Frame 059352/0001 →
RELEASE OF SECURITY INTEREST Recorded Nov 30, 2021
From: NOKIA US HOLDINGS INC.
To: PROVENANCE ASSET GROUP HOLDINGS LLC; PROVENANCE ASSET GROUP LLC
Reel/Frame 058363/0723 →
RELEASE OF SECURITY INTEREST Recorded Nov 30, 2021
From: CORTLAND CAPITAL MARKETS SERVICES LLC
To: PROVENANCE ASSET GROUP HOLDINGS LLC; PROVENANCE ASSET GROUP LLC
Reel/Frame 058983/0104 →
ASSIGNMENT AND ASSUMPTION AGREEMENT Recorded Feb 14, 2019
From: NOKIA USA INC.
To: NOKIA US HOLDINGS INC.
Reel/Frame 048370/0682 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Sep 13, 2017
From: NOKIA TECHNOLOGIES OY; NOKIA SOLUTIONS AND NETWORKS BV; ALCATEL LUCENT SAS
To: PROVENANCE ASSET GROUP LLC
Reel/Frame 043877/0001 →
SECURITY INTEREST Recorded Sep 13, 2017
From: PROVENANCE ASSET GROUP HOLDINGS, LLC; PROVENANCE ASSET GROUP LLC
To: NOKIA USA INC.
Reel/Frame 043879/0001 →
SECURITY INTEREST Recorded Sep 13, 2017
From: PROVENANCE ASSET GROUP HOLDINGS, LLC; PROVENANCE ASSET GROUP, LLC
To: CORTLAND CAPITAL MARKET SERVICES, LLC
Reel/Frame 043967/0001 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded May 5, 2015
From: NOKIA CORPORATION
To: NOKIA TECHNOLOGIES OY
Reel/Frame 035567/0043 →