IP Library Granted Patent US 11,025,576
Granted Patent B1
US 11,025,576 · App. 16/237,297 · Granted Jun 1, 2021

Techniques for backend-specific cursor tracking

Inventors: Jason Curtis Jenks (Lynwood, WA); Joshua Scott Evenson (Brentwood, CA); Mohsen Agsen (Menlo Park, CA); Jeremy David Fein (New York, NY); Philippe Vincent Ajoux (San Mateo, CA)
Assignee: FACEBOOK, INC.
H04L51/18H04L51/22H04L51/32H04L67/1095
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 11,025,576
App. No.
16/237,297
Granted
Jun 1, 2021
Kind
B1
Abstract

Techniques for backend-specific cursor tracking are described. In one embodiment, an apparatus may comprise a local database synchronization component operative to initiate a client update at a messaging client on a client device, the client update associated with a specific backend service for a messaging system; retrieve an opaque backend-specific update cursor for the specific backend service; and store an updated opaque backend-specific update cursor for the messaging client; and a local network component operative to send the opaque backend-specific update cursor to the messaging system in association with a client update request; and receive an update package at the messaging client on the client device, the update package comprising the updated opaque backend-specific update cursor. Other embodiments are described and claimed.

Claims (36)

1. A computer-implemented method, comprising:

initiating a client update at a messaging client on a client device, the client update associated with a specific backend service for a messaging system based on the client update requesting that the specific backend service determine whether additional information is available for the messaging client more recent than a most recent update with the specific backend service;

retrieving an opaque backend-specific update cursor for the specific backend service, the opaque backend-specific update cursor conforming to a backend service-specific cursor format defining a format of one or more contents of the opaque backend-specific update cursor, the backend service-specific cursor format is unknown to the messaging client, and the format of the one or more contents is different than formats of content associated with other opaque backend-specific update cursors for other backend services;

sending the opaque backend-specific update cursor to the messaging system in association with a client update request;

receiving an update package at the messaging client on the client device, the update package comprising an updated opaque backend-specific update cursor; and

storing the updated opaque backend-specific update cursor for the messaging client.

2. The method of claim 1 , the update package comprising an directive package associated with the specific backend service and the updated opaque backend-specific update cursor, the directive package comprising timing instructions for a next update for the specific backend service with the messaging client.

3. The method of claim 1 , the specific backend service comprising a user mailbox service.

4. The method of claim 1 , the specific backend service comprising a user contacts service.

5. The method of claim 1 , the messaging client tracking two or more opaque backend-specific update cursors, wherein the two or more opaque backend-specific update cursors conform to different backend service-specific cursor formats.

6. The method of claim 1 , further comprising:

receiving a subsequent update package at the messaging client on the client device, the subsequent update package comprising a subsequent updated opaque backend-specific update cursor, wherein the opaque backend-specific update cursor conforms to a first backend service-specific cursor format and the subsequent updated opaque backend-specific update cursor conforms to a second backend service-specific cursor format.

7. An apparatus, comprising:

at least one processor operable to execute stored instructions that, when executed, cause the at least one processor to:

initiate a client update at a messaging client on a client device, the client update associated with a specific backend service for a messaging system based on the client update requesting that the specific backend service determine whether additional information is available for the messaging client more recent than a most recent update with the specific backend service;

retrieve an opaque backend-specific update cursor for the specific backend service, the opaque backend-specific update cursor conforming to a backend service-specific cursor format defining a format of one or more contents of the opaque backend-specific update cursor, the backend service-specific cursor format is unknown to the messaging client, and the format of the one or more contents is different than formats of content associated with other opaque backend-specific update cursors for other backend services;

store an updated opaque backend-specific update cursor for the messaging client;

send the opaque backend-specific update cursor to the messaging system in association with a client update request; and

receive an update package at the messaging client on the client device, the update package comprising the updated opaque backend-specific update cursor.

8. The apparatus of claim 7 , the update package comprising an directive package associated with the specific backend service and the updated opaque backend-specific update cursor, the directive package comprising timing instructions for a next update for the specific backend service with the messaging client.

9. The apparatus of claim 7 , the specific backend service comprising a user mailbox service.

10. The apparatus of claim 7 , the specific backend service comprising a user contacts service.

11. The apparatus of claim 7 , the messaging client tracking two or more opaque backend-specific update cursors, wherein the two or more opaque backend-specific update cursors conform to different backend service-specific cursor formats.

12. The apparatus of claim 7 , wherein the at least one processor is further caused to:

receive a subsequent update package at the messaging client on the client device, the subsequent update package comprising a subsequent updated opaque backend-specific update cursor, wherein the opaque backend-specific update cursor conforms to a first backend service-specific cursor format and the subsequent updated opaque backend-specific update cursor conforms to a second backend service-specific cursor format.

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

initiate a client update at a messaging client on a client device, the client update associated with a specific backend service for a messaging system based on the client update requesting that the specific backend service determine whether additional information is available for the messaging client more recent than a most recent update with the specific backend service;

retrieve an opaque backend-specific update cursor for the specific backend service, the opaque backend-specific update cursor conforming to a backend service-specific cursor format defining a format of one or more contents of the opaque backend-specific update cursor, the backend service-specific cursor format is unknown to the messaging client, and the format of the one or more contents is different than formats of content associated with other opaque backend-specific update cursors for other backend services;

send the opaque backend-specific update cursor to the messaging system in association with a client update request;

receive an update package at the messaging client on the client device, the update package comprising an updated opaque backend-specific update cursor; and

store the updated opaque backend-specific update cursor for the messaging client.

14. The at least one non-transitory computer-readable storage medium of claim 13 , the update package comprising an directive package associated with the specific backend service and the updated opaque backend-specific update cursor, the directive package comprising timing instructions for a next update for the specific backend service with the messaging client.

15. The at least one non-transitory computer-readable storage medium of claim 13 , the specific backend service comprising one of a user mailbox service or a user contacts service.

16. The at least one non-transitory computer-readable storage medium of claim 13 , the messaging client tracking two or more opaque backend-specific update cursors, wherein the two or more opaque backend-specific update cursors conform to different backend service-specific cursor formats.

17. The at least one non-transitory computer-readable storage medium of claim 13 , comprising further instructions that, when executed, cause a system to:

receive a subsequent update package at the messaging client on the client device, the subsequent update package comprising a subsequent updated opaque backend-specific update cursor, wherein the opaque backend-specific update cursor conforms to a first backend service-specific cursor format and the subsequent updated opaque backend-specific update cursor conforms to a second backend service-specific cursor format.

Assignments (2)
CHANGE OF NAME Recorded May 3, 2022
From: FACEBOOK, INC.
To: META PLATFORMS, INC.
Reel/Frame 059849/0161 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Feb 4, 2020
From: JENKS, JASON CURTIS; EVENSON, JOSHUA SCOTT; AGSEN, MOHSEN; FEIN, JEREMY DAVID; AJOUX, PHILIPPE VINCENT
To: FACEBOOK, INC.
Reel/Frame 051708/0636 →