Patent ID: 7797306

Claim:
A notification system comprising a computer processor executing software components stored on a computer-readable medium, the software components comprising: a database engine component that processes received events and subscription information, the database engine component modeling the events and subscriptions as data prior to processing so as to facilitate event and subscription processing; a notification server component that delivers notifications to subscribers in accordance with the processed events and subscription information, at least one of the database engine component and the notification server component operative in a global web services environment, wherein the notification server determines to which subscribers to send notifications of a received event by performing a join between the received event and the subscriptions that are modeled as data by the database engine; and a context analyzer component that analyzes information regarding variables and parameters of a user, wherein the notification server component distributes notifications based on the variables and parameters stored by the context analyzer component, and wherein the parameters comprise contextual information discerned based on observations made autonomously via one or more sensors and statistical models, additional parameters conditioned on the contextual information, observations dynamically inferred via automated inference, a user's state specified in real-time and default notification preference parameters; wherein the notification server component performs a decision-theoretic analysis for pending notifications to determine whether to convey the pending notifications and in what manner to convey the pending notifications, by accessing variables and parameters stored in the context analyzer that indicate user preference.