IP Library Granted Patent US 9,342,554
Granted Patent B2
US 9,342,554 · App. 13/935,878 · Granted May 17, 2016

Techniques to generate mass push notifications

Inventors: Bryan Jay Klimt, Jr. (Menlo Park, CA); Kevin David Lacker (Berkeley, CA); Michael Brian Jacokes (Menlo Park, CA); Thomas Alan Bouldin (San Francisco, CA); David Eitan Poll (Mountain View, CA); Ilya Sukhar (San Francisco, CA)
Assignee: FACEBOOK, INC.
G06F17/30424H04L51/20
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 9,342,554
App. No.
13/935,878
Granted
May 17, 2016
Kind
B2
Abstract

Techniques to generate mass push notifications are described. In one embodiment, for example, an apparatus may comprise a submission component, a query component, a delivery component, and a record update component. The submission component may be operative to receive a message bundle, the message bundle comprising a message and a query. The query component may be operative to compare the query to a plurality of recipient records to determine a plurality of recipient records matching the query, each of the plurality of recipient records corresponding to a particular installation of a particular application onto a particular device. The delivery component may be operative to broadcast the message to a plurality of installed applications corresponding to the plurality of recipients records matching the query. Other embodiments are described and claimed.

Claims (37)

1. A computer-implemented method, comprising:

receiving a message bundle, the message bundle comprising a message and a query, the query comprising a search term;

searching fields in a plurality of recipient records according to the query to determine a plurality of recipients associated with recipient records that match the query; and

pushing the message to the plurality of recipients.

2. The method of claim 1 , each of the plurality of recipient records specific to a particular application installed on a particular device.

3. The method of claim 1 , wherein pushing the message to the plurality of recipients comprises submitting a plurality of notifications to one or more notification services, each of the plurality of notifications corresponding to one of the plurality of recipients.

4. The method of claim 1 , the message bundle received using a developer user-notification interface.

5. The method of claim 1 , the message bundle received from a user application on a mobile device.

6. The method of claim 1 , the query specifying a geographical location, the determined plurality of recipients comprising those recipients with recipient records comprising geographical information corresponding to the geographical location, further comprising:

receiving a recipient record update to geographical information stored in one of the plurality of recipient records from a mobile device, the recipient record update comprising a current location of the mobile device.

7. The method of claim 1 , wherein comparing the query to the plurality of recipient records comprises:

dividing the plurality of recipient records into a plurality of record groups; and

examining each of the plurality of record groups in parallel to determine the plurality of recipients.

8. The method of claim 7 , the plurality of recipients comprising a plurality of installations of a particular application, the plurality of recipient records divided into a particular number of record groups based on a quantity of total installations of the particular application.

9. An apparatus, comprising:

a processor circuit on a device;

a submission component operative on the processor circuit to receive a message bundle, the message bundle comprising a message and a query, the query comprising a search term;

a query component operative on the processor circuit to search fields in a plurality of recipient records according to the query to determine a plurality of recipient records matching the query, each of the plurality of recipient records corresponding to a particular installation of a particular application onto a particular device; and

a delivery component operative on the processor circuit to push the message to a plurality of installed applications corresponding to the plurality of recipients records matching the query.

10. The apparatus of claim 9 , the delivery component operative to push the message to the plurality of installed applications by submitting a plurality of notifications to one or more notification services, each of the plurality of notifications corresponding to one of the plurality of installed applications.

11. The apparatus of claim 9 , the submission component operative to receive the message bundle from a first installed application on a mobile device, the first installed application corresponding to one of the plurality of recipient records.

12. The apparatus of claim 9 , the query specifying a geographical location, the determined plurality of installed applications comprising those installed applications with associated recipient records containing geographical information corresponding to the geographical location, further comprising:

a record update component operative to receive a recipient record update from a first installed application on a first mobile device, the recipient record update comprising a current location of the first mobile device, and to update a first recipient record according to the recipient record update, the first recipient record corresponding to the first installed application.

13. The apparatus of claim 9 , the query component operative to divide the plurality of recipient records into a plurality of record groups and to examine each of the plurality of record groups in parallel to determine the plurality of recipients.

14. The apparatus of claim 13 , the query component operative to divide the plurality of recipient records into a particular number of record groups based on a quantity of total installations of the particular application.

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

receive a message bundle, the message bundle comprising a message and a query, the query comprising a search term;

search fields in a plurality of recipient records according to the query to determine a plurality of recipients associated with recipient records that match the query; and

submit a plurality of notifications to one or more notification services, each of the plurality of notifications corresponding to one of the plurality of recipients and comprising the message.

16. The computer-readable storage medium of claim 15 , each of the plurality of recipient records specific to a particular application installed on a particular device.

17. The computer-readable storage medium of claim 15 , the message bundle received from a user application on a mobile device.

18. The computer-readable storage medium of claim 15 , the query specifying a geographical location, the determined plurality of recipients comprising those recipients with recipient records comprising geographical information corresponding to the geographical location, comprising further instructions that, when executed, cause a system to:

receive a recipient record update to geographical information stored in one of the plurality of recipient records from a mobile device, the recipient record update comprising a current location of the mobile device.

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

divide the plurality of recipient records into a plurality of record groups; and

examine each of the plurality of record groups in parallel to determine the plurality of recipients.

20. The computer-readable storage medium of claim 19 , the plurality of recipients comprising a plurality of installations of a particular application, the plurality of recipient records divided into a particular number of record groups based on a quantity of total installations of the particular application.

Assignments (2)
CHANGE OF NAME Recorded May 5, 2022
From: FACEBOOK, INC.
To: META PLATFORMS, INC.
Reel/Frame 059858/0387 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jun 2, 2016
From: KLIMT, BRYAN JAY, JR; LACKER, KEVIN DAVID; JACOKES, MICHAEL BRIAN; BOULDIN, THOMAS ALAN; POLL, DAVID EITAN; SUKHAR, ILYA
To: FACEBOOK, INC.
Reel/Frame 038771/0738 →
Continuity (1)
Related Publication 20150012598A1 · Jan 8, 2015