Method and mechanism for providing computer programs with computer system events
First Claim
1. A system for providing notifications of computer system events to clients, comprising, a central service configured to monitor for system events including at least one system event corresponding to whether network connectivity has changed state and to fire at least one event notification in response thereto, including at least one event notification when a network connection is established, a registration mechanism for clients to register for notification of one or more types of events, including at least one client registered for network connectivity event notification, and a distribution mechanism that communicates the fired at least one event notification to each client registered for notification thereof based on the type of event notification, wherein the client registers for notification for a type of event with the registration mechanism and includes condition information therewith, the condition information specifying at least one further condition that is met before notification of an event of the type registered is communicated to the client, and the distribution mechanism includes a filtering mechanism for selectively communicating an event notification based on at least one condition.
2 Assignments
0 Petitions
Accused Products
Abstract
A method and system for providing system event notifications to clients such as applications. Clients register for notification of one or more types of events with a registration mechanism, and a System Event Notification Service, (SENS), receives system event information and fires event notifications in response thereto. A distribution mechanism selectively communicates the fired event to each client registered for notification thereof based on the type of event. Events include network events, for which the service monitors the connectivity state of the machine, including whether a connection is established or lost, the type of connection (LAN/WAN) and bandwidth information. To monitor a LAN state, the service caches outgoing and incoming network information including errors and packet counts and statistically evaluates this cached information against current information to determine whether the connection is established or lost. The service also determines if a destination (IP address or name) is reachable, by periodically polling destinations. Other system event notifications may be fired, including logon or logoff operations and power management events.
-
Citations
15 Claims
- 1. A system for providing notifications of computer system events to clients, comprising, a central service configured to monitor for system events including at least one system event corresponding to whether network connectivity has changed state and to fire at least one event notification in response thereto, including at least one event notification when a network connection is established, a registration mechanism for clients to register for notification of one or more types of events, including at least one client registered for network connectivity event notification, and a distribution mechanism that communicates the fired at least one event notification to each client registered for notification thereof based on the type of event notification, wherein the client registers for notification for a type of event with the registration mechanism and includes condition information therewith, the condition information specifying at least one further condition that is met before notification of an event of the type registered is communicated to the client, and the distribution mechanism includes a filtering mechanism for selectively communicating an event notification based on at least one condition.
-
8. A computer-readable medium having computer-executable instructions for performing steps comprising:
-
a) receiving system information at a central service;
b) publishing an event notification in response thereto, the event notification having an event type associated therewith;
c) receiving the event notification at an event class object of a loosely coupled events database;
d) matching the event notification with at least one client that has subscribed for event notification based on the type of event; and
e) communicating the event notification to each client that has subscribed therefor. - View Dependent Claims (9, 10, 11, 12, 13, 14, 15)
-
Specification