System and method for dynamic routing for push notifications
AssigneeApple Inc.
InventorsAndrew H. Vyrros, Darryl N. Bleau, Jeffrey T. Davey, Justin N. Wood
Life of this patent
Estimating the term…
Abstract
A system and method are described for dynamically routing push notifications to users over the most efficient network path. For example, in one embodiment, presence information associated with a device of a user is monitored. The presence information indicates whether the first device is currently connected to a wireless network and a current network location of the device. The channel quality for packets transmitted between the first device and a first gateway and between the first device and a second gateway is also monitored and is used to select between the first and second gateways when transmitting push notifications.
Claims21
A method for dynamically routing push notifications to a mobile device comprising:
- maintaining a provider presence table on each of a first and second gateways, each provider presence table comprising presence information for one or more devices, the presence information comprising an indication whether each device is currently connected and an indication of a network socket to which each device is currently connected;
- receiving an indication that a first user of a first device has selected to receive push notifications from a first provider;
- monitoring presence information associated with the first user, the presence information indicating whether the first device is currently connected to a wireless network and a current network location of the first device;
- monitoring channel quality for packets transmitted between the first device and the first gateway and between the first device and the second gateway, the monitoring comprising dynamically updating the channel quality based on one or more current conditions for packets transmitted between the first device and the first gateway and between the first device and the second gateway;
- receiving a push notification directed to the first user from the first provider;
- and
- selecting one of the first and the second gateways to transmit the push notification to the first device based on the monitored channel quality.
A non-transitory machine-readable medium having program code stored thereon which, when executed by one or more machines, causes the machines to perform the operations of:
- maintaining a provider presence table on each of a first and second gateways, each provider presence table comprising presence information for one or more devices, the presence information comprising an indication whether each device is currently connected and an indication of a network socket to which each device is currently connected;
- receiving an indication that a first user of a first device has selected to receive push notifications from a first provider;
- monitoring presence information associated with the first user, the presence information indicating whether the first device is currently connected to a wireless network and a current network location of the first device;
- monitoring channel quality for packets transmitted between the first device and the first gateway and between the first device and the second gateway, the monitoring comprising dynamically updating the channel quality based on one or more current conditions for packets transmitted between the first device and the first gateway and between the first device and the second gateway;
- receiving a push notification directed to the first user from the first provider;
- and
- selecting one of the first and the second gateways to transmit the push notification to the first device based on the monitored channel quality.
A system, comprising:
- a processor;
- and
- a memory;
- wherein the processor and the memory perform operations for:
- maintaining a provider presence table on each of a first and second gateways, each provider presence table comprising presence information for one or more devices, the presence information comprising an indication whether each device is currently connected and an indication of a network socket to which each device is currently connected;
- receiving an indication that a first user of a first device has selected to receive push notifications from a first provider;
- monitoring presence information associated with the first user, the presence information indicating whether the first device is currently connected to a wireless network and a current network location of the first device;
- monitoring channel quality for packets transmitted between the first device and the first gateway and between the first device and the second gateway, the monitoring comprising dynamically updating the channel quality based on one or more current conditions for packets transmitted between the first device and the first gateway and between the first device and the second gateway;
- receiving a push notification directed to the first user from the first provider;
- and
- selecting one of the first and the second gateways to transmit the push notification to the first device based on the monitored channel quality.
Dependencies are inferred from the claim text.