IP Library Granted Patent US 10,862,989
Granted Patent B2
US 10,862,989 · App. 16/273,879 · Granted Dec 8, 2020

Push notification delivery system

Inventors: Adam C. Lowry (Portland, OR); Erik A. Onnen (Portland, OR)
Assignee: Urban Airship, Inc.
H04L67/26H04L51/04H04L67/10H04L67/104H04L67/2819H04L67/2842H04W4/14
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 10,862,989
App. No.
16/273,879
Granted
Dec 8, 2020
Kind
B2
Abstract

An example method for delivery of push notifications includes receiving a push notification including a message and a destination, creating a send token, sending a push notification derived from the received push notification and the send token, and receiving push information concerning a processing of the sent push notification which is identified by the send token. An example system for delivering push notifications includes a server system having a processor, memory, and a network interface, where the memory stores program instructions including code segments for receiving a received push notification via the network interface. In this example, the program instructions further includes code segments for creating a send token, code segments for sending a sent push notification derived from the received push notification and the send token via the network interface, and code segments for receiving received push information concerning a processing of the sent push notification are provided.

Claims (44)

1. A method comprising:

receiving, at an online system, a message and destination information, the destination information representing a plurality of destinations for the message to be sent;

receiving information specifying one or more target application life cycle events targeted by a customer of the online system;

generating a push notification in accordance with the message;

transmitting the push notification to devices specified in the plurality of destinations;

receiving, from one or more of the devices, push information associated with the push notification, the push information for each device comprising data of one of more occurred application life cycle events occurred at the device associated with a receipt of the push notification; and

storing the data of one or more occurred application life cycle events that match the target application life cycle events.

2. The method of claim 1 , further comprising:

developing statistics from the data of the one or more occurred application life cycle events that match the target application life cycle events; and

presenting the statistics to the customer of the online system.

3. The method of claim 2 , wherein the statistics comprises a number of times a specific application life cycle event is performed on an application program associated with the push notification, the specific application life cycle event is one of: opening the application program, initializing the application program, closing the application program, foregrounding the application program, or backgrounding the application program.

4. The method of claim 2 , wherein the statistics represents usage patterns associated with an application program associated with the push notification.

5. The method of claim 1 , wherein the occurred application life cycle events is associated with an application program that is published by the customer.

6. The method of claim 1 , wherein generating the push notification comprises:

creating, for each destination, a respective token associating the destination with the message, the respective token comprising an identifier used to distinguish the push notification to be transmitted to the destination from another push notification to be transmitted to another destination;

creating the push notification based on content of the message; and

associating the push notification with the respective token.

7. The method of claim 1 , wherein the push information further comprises status of processing of the transmitted push notification.

8. The method of claim 1 , further comprising determining, from a set of stored recipients that match criteria specified in the destination information, a subset of recipients to which the push notification should be sent based at least in part on the destination information.

9. The method of claim 1 , wherein the destination information comprises criteria specifying a list of devices.

10. The method of claim 1 , wherein transmitting the push notification to the devices specified in the plurality of destinations is based on one or more deferral rules.

11. A system comprising:

a processor; and

a memory comprising instructions, when executed by the processor, cause the processor to:

receive, at an online system, a message and destination information, the destination information representing a plurality of destinations for the message to be sent;

receive information specifying one or more target application life cycle events targeted by a customer of the online system;

generate a push notification in accordance with the message;

transmit the push notification to devices specified in the plurality of destinations;

receive, from one or more of the devices, push information associated with the push notification, the push information for each device comprising data of one of more occurred application life cycle events occurred at the device associated with a receipt of the push notification; and

store the data of one or more occurred application life cycle events that match the target application life cycle events.

12. The system of claim 11 , wherein the instructions further cause the processor to:

develop statistics from the data of the one or more occurred application life cycle events that match the target application life cycle events; and

present the statistics to the customer of the online system.

13. The system of claim 12 , wherein the statistics comprises a number of times a specific application life cycle event is performed on an application program associated with the push notification, the specific application life cycle event is one of: opening the application program, initializing the application program, closing the application program, foregrounding the application program, or backgrounding the application program.

14. The system of claim 12 , wherein the statistics represents usage patterns associated with an application program associated with the push notification.

15. The system of claim 11 , wherein the occurred application life cycle events is associated with an application program that is published by the customer.

16. The system of claim 11 , wherein the instruction to generate the push notification comprises instructions that further cause the processor to:

create, for each destination, a respective token associating the destination with the message, the respective token comprising an identifier used to distinguish the push notification to be transmitted to the destination from another push notification to be transmitted to another destination;

create the push notification based on content of the message; and

associate the push notification with the respective token.

17. The system of claim 11 , wherein the push information further comprises status of processing of the transmitted push notification.

18. The system of claim 11 , the instructions further cause the processor to determine, from a set of stored recipients that match criteria specified in the destination information, a subset of recipients to which the push notification should be sent based at least in part on the destination information.

19. The system of claim 11 , wherein the destination information comprises criteria specifying a list of devices.

20. The system of claim 11 , wherein transmitting the push notification to the devices specified in the plurality of destinations is based on one or more deferral rules.

Assignments (6)
SECURITY INTEREST Recorded Jul 1, 2024
From: AIRSHIP GROUP, INC.; APPTIMIZE, LLC
To: RUNWAY GROWTH FINANCE CORP.
Reel/Frame 068099/0779 →
CHANGE OF NAME Recorded Jan 21, 2021
From: URBAN AIRSHIP, INC.
To: AIRSHIP GROUP, INC.
Reel/Frame 055059/0223 →
RELEASE OF SECURITY INTEREST Recorded Apr 2, 2020
From: SILICON VALLEY BANK
To: URBAN AIRSHIP, INC.
Reel/Frame 052300/0425 →
SECURITY INTEREST Recorded Apr 2, 2020
From: URBAN AIRSHIP, INC.; APPTIMIZE, LLC
To: WELLS FARGO BANK, NATIONAL ASSOCIATION
Reel/Frame 052308/0550 →
SECURITY INTEREST Recorded Jun 28, 2019
From: URBAN AIRSHIP, INC.
To: SILICON VALLEY BANK
Reel/Frame 049627/0826 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Feb 15, 2019
From: LOWRY, ADAM C.; ONNEN, ERIK A.
To: URBAN AIRSHIP, INC.
Reel/Frame 048344/0798 →
Cited By (2)
US 12,219,031 US 12,260,458