Enhanced Push Notification Services
Abstract
A push notification server operates on a client device to manage push notifications that the client device receives from various push servers. In some embodiments, the push notification server may receive a notification message on behalf of an application and determine how to handle the notification message based on whether the application is operating on the client device. If the application is operating on the client device, the push notification server may deliver the notification message to the application. If the application is not operating on the client device, the push notification server may deregister the application from the push notification service, and/or display user information associated with the application in order to inform the user that the application is not operating.
Claims
exact text as granted — not AI-modified1 . A method comprising:
receiving, by a push notification server operating on a computing device, a connection termination message, wherein the connection termination message seeks to terminate an application that is registered with a push notification service; in response to receiving the connection termination message, determining, by the push notification server, that the application is not operating on the computing device; and based on the application not operating on the computing device, deregistering, by the push notification server, the application from the push notification service.
2 . The method of claim 1 further comprising:
receiving a second connection termination message, wherein the second connection termination message seeks to terminate a second application that is registered with the push notification service;
in response to receiving the second connection termination message, determining that the second application is operating on the computing device; and
notifying the second application that the connection termination message was received.
3 . The method of claim 1 , wherein the push notification server receives the connection termination message from a push notification gateway device that facilitates the push notification service, and wherein the push notification server polls the push notification gateway device in order to receive messages from the push notification gateway device.
4 . The method of claim 3 , further comprising:
after deregistering the application from the push notification service, the push notification server determining that no applications operating on the computing device are registered with the push notification service; and in response to determining that no applications operating on the computing device are registered with the push notification service, the push notification server stopping the polling of the push notification gateway device.
5 . The method of claim 3 , wherein the push notification server polls the push notification gateway device at a polling interval, the method further comprising:
determining that a remaining battery life of the computing device is below a battery life threshold and that the computing device is not being charged; and in response to determining that the remaining battery life of the computing device is below the battery life threshold and that the computing device is not being charged, the push notification server increasing the length of the polling interval.
6 . The method of claim 1 , wherein the application registers with a port of a short message service (SMS) push registry on the computing device, wherein the push notification server receives and stores a reference to the port, and wherein the push notification server uses the port to deliver messages to the application.
7 . The method of claim 6 , wherein the connection termination message contains an application identifier for the application and a data string, and wherein translating the at least part of the connection termination message to the format compatible with the SMS push registry comprises:
using the application identifier to look up the port; and before forwarding the translated connection termination message to the application via the port, converting the data string in the connection termination message to a Wireless Messaging API (WMA) TextMessage object in the translated connection termination message.
8 . The method of claim 1 , wherein the application is configured with user information that the application uses to register with an application service associated with the application, and wherein the push notification server stores the user information, the method further comprising:
while the application is not operating on the computing device, the push notification server obtaining the stored user information and displaying the stored user information on a user interface of the computing device.
9 . The method of claim 1 further comprising:
determining, by the application, whether the application is registered with the push notification service;
if the application is registered with the push notification service, the application displaying a non-login dialog on a user interface of the computing device; and
if the application is not registered with the push notification service, the application displaying a login dialog on the user interface of the computing device.
10 . The method of claim 9 further comprising:
in response to input received via the login dialog, the application registering with the push notification service via the push notification server, wherein the received input includes user information, and wherein registering with the push notification service comprises the application providing the user information to the push notification server for the push notification server to store.
11 . A method comprising:
obtaining, by a push notification server, user information, wherein the user information is used by an application, wherein the push notification server is operating on a computing device, and wherein the application is registered with a push notification service facilitated by the push notification server; determining, by the push notification server, that the application is not operating on the computing device; and displaying, by the push notification server, the user information on a user interface of the computing device on behalf of the application.
12 . The method of claim 11 , further comprising:
receiving a connection termination message, wherein the connection termination message seeks to terminate the application; and in response to receiving the connection termination message, deregistering the application from the push notification service.
13 . A system comprising:
a push notification gateway device that facilitates a push notification service, wherein the push notification gateway device is configured to transmit connection termination messages to registered push notification servers; and a computing device operating a push notification server, wherein the push notification server is configured to receive a connection termination message from the push notification gateway device that seeks to terminate an application that is registered with the push notification service, determine that the application is not operating on the computing device, and deregister the application from the push notification service.
14 . The system of claim 13 , wherein the push notification server polls the push notification gateway device in order to receive messages from the push notification gateway device.
15 . The system of claim 14 , wherein the push notification server is further configured to, after deregistering the application from the push notification service, determine that no applications operating on the computing device are registered with the push notification service and, in response to determining that no applications operating on the computing device are registered with the push notification service, stop the polling of the push notification gateway device.
16 . The system of claim 14 , wherein the computing device polls the push notification gateway device at a polling interval, and wherein the push notification server is further configured to determine that a remaining battery life of the computing device is below a battery life threshold and that the computing device is not being charged, and, in response to determining that the remaining battery life of the computing device is below the battery life threshold and that the computing device is not being charged, increase the length of the polling interval.
17 . The system of claim 13 , wherein the application registers with a port of a short message service (SMS) push registry on the computing device, wherein the computing device receives and stores a reference to the port, and wherein the computing device uses the port to deliver messages to the application.
18 . The system of claim 13 , wherein the application is configured with user information that the application uses to register with an application service associated with the application, wherein the computing device stores the user information independently from the application, and wherein the push registration server is further configured to, while the application is not operating on the computing device, retrieve the stored user information and display the stored user information on a user interface of the computing device.
19 . The system of claim 13 , wherein the application is configured to determine whether the application is registered with the push notification service, wherein the application is further configured to display a non-login dialog on a user interface of the computing device if the application is registered with the push notification service, and wherein the application is further configured to display a login dialog on the user interface of the computing device if the application is not registered with the push notification service.
20 . The system of claim 19 , wherein the application is further configured to register with the push notification service via the push notification server in response to input received via the login dialog, wherein the received input includes user information, and wherein registering with the push notification service comprises the application providing the user information to the push notification server for the push notification server to store.Join the waitlist — get patent alerts
Track US2014047078A1 — get alerts on status changes and closely related new filings.
We store only your email — no account needed. See our privacy policy.