IP Library Patent Application 15385314
Patent Application
App. No. 15/385,314

TECHNIQUES FOR MESSAGING USING REPLICATION OF A CLIENT DATABASE

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 None
App. No.
15/385,314
Abstract

Techniques for messaging using replication of a client database are described. In one embodiment, an apparatus may comprise a local queue component operative to receive a message collection update at the first client device from a database synchronization system via an update queue, the message collection update for a message object collection, the message object collection associated with device-to-device messaging communication between the first client device and a second client device; and a local database management component operative to update a local database store for the message object collection on the client device using the message collection update, wherein updating the local database store is based on a collection identifier for the message collection update; and extract a device-to-device message from the message collection update, wherein extracting the device-to-device message from the message collection update empowers the messaging client to display the device-to-device message on the first client device. Other embodiments are described and claimed.

Claims (60)

1 . A computer-implemented method, comprising:

receiving a message collection update at a first client device from a database synchronization system via an update queue for the database synchronization system, the message collection update for a message object collection, the message object collection associated with device-to-device messaging communication between the first client device and a second client device;

updating a local database store for the message object collection on the client device using the message collection update, wherein updating the local database store is based on a collection identifier for the message collection update;

extracting a device-to-device message from the message collection update; and

displaying the device-to-device message on the first client device.

2 . The method of claim 1 , the message collection update associated with a primary key and a sorting key, the primary key comprising a message identifier, the sorting key comprising a timestamp for the message collection update.

3 . The method of claim 1 , the message object collection comprising a plurality of device-to-device message objects, wherein each of the plurality of device-to-device message objects is addressed to the first client device.

4 . The method of claim 1 , further comprising:

retrieving device-to-device configuration information specific to the device-to-device messaging communication between the first client device and the second client device; and

extracting the device-to-device message from the message collection update based on the device-to-device configuration information.

5 . The method of claim 1 , the device-to-device messaging communication between the first client device and the second client device embodied in a device-to-device message thread, further comprising:

receiving a messaging composition interaction via the user interface for the device-to-device message thread, the messaging composition interaction comprising a user message;

generating a device-to-device message object comprising the user message; and

writing the device-to-device message object to a second-client-device-specific message object collection, wherein the second-client-device-specific message object collection is replicated to the second client device by the database synchronization system.

6 . The method of claim 1 , the first client device associated with a first user account, further comprising:

receiving a device-to-device messaging communication invitation on the first client device, the device-to-device messaging communication invitation received as invitation object, the invitation object specifying a second-client-device-specific message object collection;

accepting the device-to-device messaging communication invitation on the first client in response to receiving the device-to-device messaging communication invitation on the first client device; and

deleting the invitation object in response to receiving the device-to-device messaging communication invitation, wherein deleting the device-to-device messaging communication invitation is operative to delete the invitation object from one or more other client devices associated with the first user account.

7 . The method of claim 1 , the first client device associated with a first user account, the second client device associated with a second user account, further comprising:

displaying a user-to-user message thread display on the first client device, the user-to-user message thread display associated with a user-to-user message thread between the first user account and the second user account, the user-to-user message thread display including a device-to-device message thread invocation control;

receiving a user activation of the device-to-device message thread invocation control in association with the user-to-user message thread display; and

sending a device-to-device messaging communication invitation to the second user account in response to receiving the user activation of the device-to-device message thread invocation control.

8 . An apparatus, comprising:

a processor circuit on a first client device;

a local queue component of a messaging client operative on the processor circuit to receive a message collection update at the first client device from a database synchronization system via an update queue for the database synchronization system, the message collection update for a message object collection, the message object collection associated with device-to-device messaging communication between the first client device and a second client device; and

a local database management component of the messaging client operative on the processor circuit to update a local database store for the message object collection on the client device using the message collection update, wherein updating the local database store is based on a collection identifier for the message collection update; and extract a device-to-device message from the message collection update, wherein extracting the device-to-device message from the message collection update empowers the messaging client to display the device-to-device message on the first client device.

9 . The apparatus of claim 8 , the message collection update associated with a primary key and a sorting key, the primary key comprising a message identifier, the sorting key comprising a timestamp for the message collection update.

10 . The apparatus of claim 8 , the message object collection comprising a plurality of device-to-device message objects, wherein each of the plurality of device-to-device message objects is addressed to the first client device.

11 . The apparatus of claim 8 , further comprising:

the local database management component operative to retrieve device-to-device configuration information specific to the device-to-device messaging communication between the first client device and the second client device; and extract the device-to-device message from the message collection update based on the device-to-device configuration information.

12 . The apparatus of claim 8 , the device-to-device messaging communication between the first client device and the second client device embodied in a device-to-device message thread, further comprising:

the messaging client operative to receive a messaging composition interaction via the user interface for the device-to-device message thread, the messaging composition interaction comprising a user message; and

the local database management component operative to generate a device-to-device message object comprising the user message; and write the device-to-device message object to a second-client-device-specific message object collection, wherein the second-client-device-specific message object collection is replicated to the second client device by the database synchronization system.

13 . The apparatus of claim 8 , the first client device associated with a first user account, further comprising:

the local queue component operative to receive a device-to-device messaging communication invitation on the first client device, the device-to-device messaging communication invitation received as invitation object, the invitation object specifying a second-client-device-specific message object collection; and

the local database management component operative to accept the device-to-device messaging communication invitation on the first client in response to receiving the device-to-device messaging communication invitation on the first client device; and delete the invitation object in response to receiving the device-to-device messaging communication invitation, wherein deleting the device-to-device messaging communication invitation is operative to delete the invitation object from one or more other client devices associated with the first user account.

14 . The apparatus of claim 8 , the first client device associated with a first user account, the second client device associated with a second user account, further comprising:

the messaging client operative to display a user-to-user message thread display on the first client device, the user-to-user message thread display associated with a user-to-user message thread between the first user account and the second user account, the user-to-user message thread display including a device-to-device message thread invocation control; and receive a user activation of the device-to-device message thread invocation control in association with the user-to-user message thread display; and

the local queue component operative to send a device-to-device messaging communication invitation to the second user account in response to receiving the user activation of the device-to-device message thread invocation control.

15 . At least one computer-readable storage medium comprising instructions that, when executed, cause a system to:

receive a message collection update at a first client device from a database synchronization system via an update queue for the database synchronization system, the message collection update for a message object collection, the message object collection associated with device-to-device messaging communication between the first client device and a second client device, the message object collection comprising a plurality of device-to-device message objects, wherein each of the plurality of device-to-device message objects is addressed to the first client device;

update a local database store for the message object collection on the client device using the message collection update, wherein updating the local database store is based on a collection identifier for the message collection update;

extract a device-to-device message from the message collection update; and

display the device-to-device message on the first client device.

16 . The computer-readable storage medium of claim 15 , the message collection update associated with a primary key and a sorting key, the primary key comprising a message identifier, the sorting key comprising a timestamp for the message collection update.

17 . The computer-readable storage medium of claim 15 , further comprising further instructions that, when executed, cause a system to:

retrieve device-to-device configuration information specific to the device-to-device messaging communication between the first client device and the second client device; and

extract the device-to-device message from the message collection update based on the device-to-device configuration information.

18 . The computer-readable storage medium of claim 15 , the device-to-device messaging communication between the first client device and the second client device embodied in a device-to-device message thread, further comprising further instructions that, when executed, cause a system to:

receive a messaging composition interaction via the user interface for the device-to-device message thread, the messaging composition interaction comprising a user message;

generate a device-to-device message object comprising the user message; and

write the device-to-device message object to a second-client-device-specific message object collection, wherein the second-client-device-specific message object collection is replicated to the second client device by the database synchronization system.

19 . The computer-readable storage medium of claim 15 , the first client device associated with a first user account, further comprising further instructions that, when executed, cause a system to:

receive a device-to-device messaging communication invitation on the first client device, the device-to-device messaging communication invitation received as invitation object, the invitation object specifying a second-client-device-specific message object collection;

accept the device-to-device messaging communication invitation on the first client in response to receiving the device-to-device messaging communication invitation on the first client device; and

delete the invitation object in response to receiving the device-to-device messaging communication invitation, wherein deleting the device-to-device messaging communication invitation is operative to delete the invitation object from one or more other client devices associated with the first user account.

20 . The computer-readable storage medium of claim 15 , the first client device associated with a first user account, the second client device associated with a second user account, further comprising further instructions that, when executed, cause a system to:

display a user-to-user message thread display on the first client device, the user-to-user message thread display associated with a user-to-user message thread between the first user account and the second user account, the user-to-user message thread display including a device-to-device message thread invocation control;

receive a user activation of the device-to-device message thread invocation control in association with the user-to-user message thread display; and

send a device-to-device messaging communication invitation to the second user account in response to receiving the user activation of the device-to-device message thread invocation control.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Sep 12, 2017
From: LEACH, CHRISTOPHER ANTHONY; LEUPOLD, FELIX; TUCKETT, NICHOLAS MILES; MILLICAN, JONATHAN RICHARD; KATHURIA, VISHAL; PAULS, LEIGH JONATHAN HENRY
To: FACEBOOK, INC.
Reel/Frame 043553/0956 →