Flexible architecture for notifying applications of state changes
First Claim
1. A method for providing notifications to clients in response to state property changes, comprising:
- at a notification broker that is located on a computing device, receiving an automatic notification request from a client application on the computing device to receive a notification in response to an event that originates on the computing device;
wherein the event is associated with a change in a state property of the computing device, wherein execution of the client application on the computing device is dependent upon a received notification;
wherein an Application Program Interface (API) is utilized by the client application to register the notification request, wherein the notification request made through the API specifies to receive a notification upon an occurrence of at least one of;
when a registered state property changes, when a change to the state property meets a conditional expression that is specified through the API, and upon a schedule determined by the client, wherein the API also comprises functions for;
registering different state properties across different components of the computing device to be monitored for changes by the notification broker;
querying each of the state properties to determine a value; and
setting the state properties;
ensuring that the state property is registered with the notification broker, wherein the notification broker includes state properties that are updated by different components within the computing device;
determining when the state property changes, wherein determining when the state property changes comprises using the API to specify a batching operation on changes to the state property that occur within a predetermined time period;
wherein a call to the API batching operation specifies a time period for which a value of the state property is to remain constant before notifying the client application of a change to the state property;
determining when the client should receive notification of the state property change; and
the notification broker on the computing device notifying the client of the state property change when determined.
1 Assignment
0 Petitions
Accused Products
Abstract
Described is a method and system a unified mechanism for storing device, application, and service state, as well as a rich notification brokerage architecture. Clients register with a notification broker to receive notifications for changes to state properties. When a registered state property changes, a notification broker determines which clients to notify of the state change and provides the client with a notification regarding the change. Clients may be notified whenever a state changes, when a state change meets a predetermined condition, or based on a schedule. An application may also be launched in response to a state change. An application programming interface (API) is provided that provides a unified way of accessing state change information across different components within the device.
-
Citations
18 Claims
-
1. A method for providing notifications to clients in response to state property changes, comprising:
-
at a notification broker that is located on a computing device, receiving an automatic notification request from a client application on the computing device to receive a notification in response to an event that originates on the computing device;
wherein the event is associated with a change in a state property of the computing device, wherein execution of the client application on the computing device is dependent upon a received notification;
wherein an Application Program Interface (API) is utilized by the client application to register the notification request, wherein the notification request made through the API specifies to receive a notification upon an occurrence of at least one of;
when a registered state property changes, when a change to the state property meets a conditional expression that is specified through the API, and upon a schedule determined by the client, wherein the API also comprises functions for;
registering different state properties across different components of the computing device to be monitored for changes by the notification broker;
querying each of the state properties to determine a value; and
setting the state properties;ensuring that the state property is registered with the notification broker, wherein the notification broker includes state properties that are updated by different components within the computing device; determining when the state property changes, wherein determining when the state property changes comprises using the API to specify a batching operation on changes to the state property that occur within a predetermined time period;
wherein a call to the API batching operation specifies a time period for which a value of the state property is to remain constant before notifying the client application of a change to the state property;determining when the client should receive notification of the state property change; and the notification broker on the computing device notifying the client of the state property change when determined. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8)
-
-
9. A system for state management and notifications, comprising:
-
a processing unit; a data store on a mobile device that is arranged to store information relating to state properties, wherein at least some of the state properties are modified by different components; an Application Program Interface (API) configured to perform operations relating to the state properties;
wherein the API includes functions comprising;
registering the state properties to be monitored for changes by a notification broker;
querying the state properties;
setting the state properties;
registering notification requests relating to the state properties;
launching an application; and
comparing the state properties to conditional expressions;
using the API to specify a batching operation on changes to the state property that occur within a predetermined time period;
wherein a call to the API batching operation specifies a time period for which a value of the state property is to remain constant before notifying a client application of a change to the state property;client applications that are configured to execute using the processing unit and automatically register notification requests using the API and receive notifications in response to a change in a state property for which they have registered to receive a notification, wherein the notification requests indicate when the clients should receive notifications in response to changes associated with the state properties, and wherein execution of the client applications is dependent upon a received notification;
wherein the change in the state property is responsive to an event that originates on a device executing the client application;a notification list stored within the data store that is arranged to store the clients that have been registered to receive notification requests; the notification broker coupled to the data store, the notification list, and the clients, wherein the notification broker, includes functionality configured to perform the following actions, including to; receive a notification request to add at least one client to the notification list; add the at least one client to the notification list; and determine when a registered state property changes, and when the state property changes, determine the clients to receive a notification, and notify the determined clients of the state property change. - View Dependent Claims (10, 11, 12, 13, 14)
-
-
15. A computer-readable storage device having computer executable instructions for performing operations on state properties, comprising:
-
receiving at a notification broker on a device an automatic request from a client application that is executed on the device to receive an identifier identifying at least one state property within a group of state properties of the device such that the execution of the client application on the device is in response to the state properties associated with the device on which the client application resides;
wherein state properties within the group of state properties are updated by different components on the device;
wherein the state properties change is response to an event that originates on the device;
wherein an Application Program Interface (API) is utilized by the client application to register the request and comprises functions for;
registering state properties to be monitored for changes by a notification broker;
querying the state properties; and
setting the state properties;
using the API to specify a batching operation on changes to the state property that occur within a predetermined time period;
wherein a call to the API batching operation specifies a time period for which a value of the state property is to remain constant before notifying the client application of a change to the state property;receiving the identifier at the device that indicates the at least one state property within a group of state properties of the device; determining an operation to perform on the device relating to a state property within the group of state properties; and performing the operation on the device in response to the received identifier. - View Dependent Claims (16, 17, 18)
-
Specification