IP Library Granted Patent US 12,063,577
Granted Patent B2
US 12,063,577 · App. 15/886,334 · Granted Aug 13, 2024

System and method for managing items in a list shared by a group of mobile devices

Inventors: Michael Hin Kai Hung (Waterloo, CA); Herbert Anthony Little (Waterloo, CA); Michael Stephen Brown (Toronto, CA)
Assignee: Huawei Technologies Co., Ltd.
H04W4/18G06F3/0482G06Q10/103G06Q10/1097H04L51/063H04L65/403H04W4/08
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,063,577
App. No.
15/886,334
Granted
Aug 13, 2024
Kind
B2
Abstract

A method and system share data amongst a group of a plurality of mobile devices without requiring a database or server to centrally store the shared data. The shared data is instead stored by each group member individually while controlling the manner in which the shared data is updated. To manage updates, the shared data is atomized such that individual databases in the shared data are separated or otherwise delineated into one or more records. To maintain a common copy of the shared data at each device, any update is sent to all group members using an intermediate message exchange service that is capable of transmitting a sent message to more than one recipient if necessary. In this way, the updates are multicast to the group. To manage the content of the shared data, each update comprises one or more changes to a current copy of a corresponding record.

Claims (55)

1. A method of operating a mobile device, the method comprising:

obtaining a list of shared data items, wherein the list is shared amongst a group comprising a plurality of mobile devices, the list comprises a shared data item that is associated with a shared data to be updated by the plurality of mobile devices that include the mobile device and a different mobile device;

generating, locally by the mobile device, a first task to be completed, wherein the first task comprises a first request to update the shared data item;

receiving a common message sent by the different mobile device, wherein the common message comprises personal identification numbers (PINs) of the plurality of mobile devices, wherein the common message comprises a second task, and wherein the second task comprises a second request to update the shared data item;

determining, based on the locally generated first task and the second task in the common message, that a collision exists;

selecting, between the first task and the second task and based on a conflict hierarchy of the mobile device and the different mobile device and time stamps associated with the first task and the second task, a task to be used for updating the shared data, wherein selecting the task to be used for updating the shared data based on the conflict hierarchy of the mobile device and the different mobile device and the time stamps associated with the first task and the second task comprises:

determining whether the mobile device and the different mobile device have a same tier of conflict hierarchy;

in response to determining that the mobile device and the different mobile device have the same tier of conflict hierarchy, determining a first timestamp of the first task and a second timestamp of the second task; and

in response to determining that the first timestamp and the second timestamp are equal, determining a selected task for updating the shared data from the first task and the second task based on PINs of the mobile device and the different mobile device; and

updating, by the mobile device, the shared data according to the selected task without further communication with the different mobile device.

2. The method according to claim 1 , further comprising:

transmitting, in response to receiving the common message, an acknowledgement message to the different mobile device, wherein the acknowledgement message comprises an indication that the common message was received from the mobile device.

3. The method according to claim 1 , wherein the common message is obtained from a message exchange service.

4. The method according to claim 1 , wherein the shared data item in the list has a user assignment to indicate who is to be completing the shared data item.

5. The method according to claim 1 , further comprising generating an updated list to reflect changes made by other mobile devices in the group.

6. The method according to claim 1 , wherein the second task represents a task in a group project, and wherein the task in the group project comprises a plurality of values associated with indicative of status information for the task.

7. The method according to claim 1 , further comprising posting a comment pertaining to a selected one or more of the shared data items.

8. A mobile device comprising:

at least one processor; and

one or more memories coupled to the at least one processor and storing programming instructions for execution by the at least one processor to:

obtain a list of shared data items, wherein the list is shared amongst a group comprising a plurality of mobile devices, the list comprises a shared data item that is associated with a shared data to be updated by the plurality of mobile devices that include the mobile device and a different mobile device;

generate, locally by the mobile device, a first task to be completed, wherein the first task comprises a first request to update the shared data item;

receive a common message sent by the different mobile device, wherein the common message comprises personal identification numbers (PINs) of the plurality of mobile devices, wherein the common message comprises a second task, and wherein the second task comprises a second request to update the shared data item;

determine, based on the locally generated first task and the second task in the common message, that a collision exists;

select, between the first task and the second task and based on a conflict hierarchy of the mobile device and the different mobile device and time stamps associated with the first task and the second task, a task to be used for updating the shared data, wherein selecting the task to be used for updating the shared data based on the conflict hierarchy of the mobile device and the different mobile device and the time stamps associated with the first task and the second task comprises:

determining whether the mobile device and the different mobile device have a same tier of conflict hierarchy;

in response to determining that the mobile device and the different mobile device have the same tier of conflict hierarchy, determining a first timestamp of the first task and a second timestamp of the second task; and

in response to determining that the first timestamp and the second timestamp are equal, determining a selected task for updating the shared data from the first task and the second task based on PINs of the mobile device and the different mobile device; and

update, by the mobile device, the shared data according to the selected task without further communication with the different mobile device.

9. The mobile device according to claim 8 , wherein the one or more memories store the programming instructions for execution by the at least one processor to: transmit, in response to the common message being received, an acknowledgement message to the different mobile device, wherein the acknowledgement message comprises an indication that the common message was received from the mobile device.

10. The mobile device according to claim 8 , wherein the common message is obtained from a message exchange service.

11. The mobile device according to claim 8 , wherein the shared data item in the list has a user assignment to indicate who is to be completing the shared data item.

12. The mobile device according to claim 8 , wherein the one or more memories store the programming instructions for execution by the at least one processor to:

generate an updated list to reflect changes made by other mobile devices in the group.

13. The mobile device according to claim 8 , wherein the second task represents a task in a group project, and wherein the task in the group project comprises a plurality of values associated with indicative of status information for the task.

14. The mobile device according to claim 8 , wherein the one or more memories store the programming instructions for execution by the at least one processor to:

post a comment pertaining to a selected one or more of the shared data items.

15. A mobile device comprising:

at least one processor; and

one or more memories coupled the at least one processor and storing programming instructions for execution by the at least one processor to:

obtain a list of shared data items, wherein the list is shared amongst a group comprising a plurality of mobile devices, the list comprises a shared data item that is associated with a shared data to be updated by the plurality of mobile devices that include the mobile device and a different mobile device;

generate a common message, by the mobile device, to be sent to other members of the group to enable other mobile devices in the group to update a locally stored version of the list, wherein the common message comprises personal identification numbers (PINs) of the plurality of mobile devices, wherein the common message comprises a first task, and wherein the first task comprises a first request to update the shared data item;

send the common message to the other mobile devices in the group including the different mobile device, wherein the common message is used by the different mobile device to:

determine, based on a locally generated second task by the different mobile device and the first task in the common message, that a collision exists, wherein the locally generated second task by the different mobile device is a second task to be completed, and wherein the second task comprises a second request to update the shared data item;

select, between the first task and the second task and based on a conflict hierarchy of the mobile device and the different mobile device and time stamps associated with the first task and the second task, a task to be used for updating the shared data, wherein selecting the task to be used for updating the shared data based on the conflict hierarchy of the mobile device and the different mobile device and the time stamps associated with the first task and the second task comprises:

determining whether the mobile device and the different mobile device have a same tier of conflict hierarchy;

in response to determining that the mobile device and the different mobile device have the same tier of conflict hierarchy, determining a first timestamp of the first task and a second timestamp of the second task; and

in response to determining that the first timestamp and the second timestamp are equal, determining a selected task for updating the shared data from the first task and the second task based on PINs of the mobile device and the different mobile device;

update, by the different mobile device, the shared data according to the selected task without further communication with the mobile device; and

in response to sending the common message to the other mobile devices, determining if each of the other mobile devices are in coverage or out-of-coverage based on receiving or failing to receive an acknowledgement message from the other mobile devices.

16. The mobile device according to claim 15 , wherein the common message is sent via a message exchange service.

17. The mobile device according to claim 15 , wherein the shared data item in the list has a user assignment to indicate who is to be completing the shared data item.

18. The mobile device according to claim 15 , wherein the first task represents a task in a group project, and wherein the task comprises a plurality of values associated therewith indicative of status information for the task.

19. The mobile device according to claim 15 , wherein a sharing comprises sending the list via a message exchange service.

20. The mobile device according to claim 15 , wherein the list is shared amongst only a subset of the group of the plurality of mobile devices.

Assignments (3)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Dec 26, 2020
From: BLACKBERRY LIMITED
To: HUAWEI TECHNOLOGIES CO., LTD.
Reel/Frame 054855/0388 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Feb 1, 2018
From: HUNG, MICHAEL; LITTLE, HERBERT A.; BROWN, MICHAEL S.
To: RESEARCH IN MOTION LIMITED
Reel/Frame 044801/0568 →
CHANGE OF NAME Recorded Feb 1, 2018
From: RESEARCH IN MOTION LIMITED
To: BLACKBERRY LIMITED
Reel/Frame 045226/0833 →
Continuity (5)
Continuation 12756463 · Apr 8, 2010
Continuation In Part 12420562 · Apr 8, 2009
Provisional Application 61249487 · Oct 7, 2009
Related Publication 20190239037A1 · Aug 1, 2019
Related Publication 20240205646A9 · Jun 20, 2024