Scalable notification delivery service
First Claim
1. In a network environment comprised of one or more computer or devices such as mobile devices that serve as notification sources, meaning that such computer or devices serve as sources where notifications are generated in response to an event, such notifications being generated in a network format comprised of an XML document included within an HTTP post request or included with a SOAP message that is included within an HTTP post request, and wherein the network is also comprised of one or more computers or devices that serve as notification sinks, meaning that such computer or devices serve as destinations on the network where the generated notifications are to be sent, a method for delivering such notifications from a notification service that scales the notifications to the number and variety of notification sources and notification sinks at the time such notifications are generated and delivered, the method comprising:
- (a) receiving, at a listening component of the delivery service, a notification generated by a notification source in a network format comprised of an XML document included within an HTTP post request, notification content of the notification being structured within the XML document that identifies data including a category of notification and transform operations associated with the category that may be performed on notifications of the particular category;
(b) translating the notification into an internal processing format(c) forwarding the translated notification to a routing component of the notification service where categorizations of notifications that may be received are stored in an XML configuration document, wherein each of the categories has associated transform operations that may be performed for that category;
(d) referencing the XML configuration document at the routing component to determine a category associated with the notification and performing at the routing component one or more of the associated transform operations on the notification content of the XML document;
(e) forwarding the notification from the routing component to a delivery component of the notification service for delivery to the notification sinks of the network;
(f) changing the XML configuration document at the router by adding or deleting nodes of the XML document to add or delete different categories of notifications, and editing transform operations consistent with the added or deleted categories; and
(g) repeating parts (a) through (e) for any subsequent notification corresponding to the changed categories of notifications.
2 Assignments
0 Petitions
Accused Products
Abstract
A notification service that efficiently scales to the number and variety of notifications and users being serviced. The notification service is separated into three general functional components. A listener component receives a notification in a network format suitable for transmitting the notification over a network. The listener component translates the notification into an internal processing format used by the notification service. The notification is then forwarded to a routing component that determines a category associated with the notification, and performs a set of one or more operations on the notification based on its category. Finally, the notification service is forwarded to a delivery service for delivery of the notification to the notification sink. The listener component, the routing component, and the delivery component may each be scaled in order to adjust for current processing loads using load balancing functionality.
-
Citations
38 Claims
-
1. In a network environment comprised of one or more computer or devices such as mobile devices that serve as notification sources, meaning that such computer or devices serve as sources where notifications are generated in response to an event, such notifications being generated in a network format comprised of an XML document included within an HTTP post request or included with a SOAP message that is included within an HTTP post request, and wherein the network is also comprised of one or more computers or devices that serve as notification sinks, meaning that such computer or devices serve as destinations on the network where the generated notifications are to be sent, a method for delivering such notifications from a notification service that scales the notifications to the number and variety of notification sources and notification sinks at the time such notifications are generated and delivered, the method comprising:
-
(a) receiving, at a listening component of the delivery service, a notification generated by a notification source in a network format comprised of an XML document included within an HTTP post request, notification content of the notification being structured within the XML document that identifies data including a category of notification and transform operations associated with the category that may be performed on notifications of the particular category; (b) translating the notification into an internal processing format (c) forwarding the translated notification to a routing component of the notification service where categorizations of notifications that may be received are stored in an XML configuration document, wherein each of the categories has associated transform operations that may be performed for that category; (d) referencing the XML configuration document at the routing component to determine a category associated with the notification and performing at the routing component one or more of the associated transform operations on the notification content of the XML document; (e) forwarding the notification from the routing component to a delivery component of the notification service for delivery to the notification sinks of the network; (f) changing the XML configuration document at the router by adding or deleting nodes of the XML document to add or delete different categories of notifications, and editing transform operations consistent with the added or deleted categories; and (g) repeating parts (a) through (e) for any subsequent notification corresponding to the changed categories of notifications. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19)
-
-
20. In a network environment comprised of one or more computer or devices such as mobile devices that serve as notification sources, meaning that such computer or devices serve as sources where notifications are generated in response to an event, such notifications being generated in a network format comprised of an XML document included within an HTTP post request or included with a SOAP message that is included within an HTTP post request, and wherein the network is also comprised of one or more computers or devices that serve as notification sinks, meaning that such computer or devices serve as destinations on the network where the generated notifications are to be sent, a computer program product for implementing a method for delivering such notifications from a notification service that scales the notifications to the number and variety of notification sources and notification sinks at the time such notifications are generated and delivered, the method comprising:
-
(a) receiving, at a listening component of the delivery service, a notification generated by a notification source in a network format comprised of an XML document included within an HTTP post request, notification content of the notification being structured within the XML document that identifies data including a category of notification and transform operations associated with the category that may be performed on notifications of the particular category; (b) translating the notification into an internal processing format (c) forwarding the translated notification to a routing component of the notification service where categorizations of notifications that may be received are stored in an XML configuration document, wherein each of the categories has associated transform operations that may be performed for that category; (d) referencing the XML configuration document at the routing component to determine a category associated with the notification and performing at the routing component one or more of the associated transform operations on the notification content of the XML document; (e) forwarding the notification from the routing component to a delivery component of the notification service for delivery to the notification sinks of the network; (f) changing the XML configuration document at the router by adding or deleting nodes of the XML document to add or delete different categories of notifications, and editing transform operations consistent with the added or deleted categories; and (g) repeating parts (a) through (e) for any subsequent notification corresponding to the changed categories of notifications. - View Dependent Claims (21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38)
-
Specification