Supplying notifications related to supply and consumption of user context data
First Claim
1. A method in a wearable computer for providing information about a current state of a user of the wearable computer, the current state modeled with multiple state attributes, the wearable computer executing a plurality of state server modules to supply values for the state attributes, executing a plurality of state client modules to receive and process values for the state attributes, and executing an intermediary module to facilitate exchange of state attribute values, the method comprising:
- under control of each of the executing state server modules, sending to the intermediary module values for at least one of the state attributes;
under control of multiple of the executing state client modules, sending to the intermediary module requests for values for at least one of the state attributes; and
under control of the intermediary module,receiving the sent state attribute values and the sent state attribute value requests;
in response to the received state attribute value requests, sending at least some of the received state attribute values to at least some of the state client modules;
analyzing the received state attribute value requests in order to determine events related to the received state attribute value requests such that occurrences of the determined events may be of interest to at least some of the state client modules; and
without other intervention from the state client modules,determining to monitor for occurrences of the determined events; and
when the monitoring detects an occurrence of one of the determined events, notifying at least one of the state client modules of the detected occurrence, so that state client modules can automatically be notified of occurrences of events of interest.
2 Assignments
0 Petitions
Accused Products
Abstract
Techniques are described for providing information about a current state that is modeled with multiple state attributes. In some situations, the providing includes receiving from a module a request related to the modeling of the current state with the multiple state attributes. In such situations, the providing further includes, without further intervention related to the request by the module, determining that the request cannot currently be satisfied, and indicating to the module that the request cannot currently be satisfied, monitoring at later times after the indicating to determine whether the request can be satisfied, and indicating to the module that the request can be satisfied if it is determined at one of the later times that the request can currently be satisfied.
-
Citations
67 Claims
-
1. A method in a wearable computer for providing information about a current state of a user of the wearable computer, the current state modeled with multiple state attributes, the wearable computer executing a plurality of state server modules to supply values for the state attributes, executing a plurality of state client modules to receive and process values for the state attributes, and executing an intermediary module to facilitate exchange of state attribute values, the method comprising:
-
under control of each of the executing state server modules, sending to the intermediary module values for at least one of the state attributes; under control of multiple of the executing state client modules, sending to the intermediary module requests for values for at least one of the state attributes; and under control of the intermediary module, receiving the sent state attribute values and the sent state attribute value requests; in response to the received state attribute value requests, sending at least some of the received state attribute values to at least some of the state client modules; analyzing the received state attribute value requests in order to determine events related to the received state attribute value requests such that occurrences of the determined events may be of interest to at least some of the state client modules; and without other intervention from the state client modules, determining to monitor for occurrences of the determined events; and when the monitoring detects an occurrence of one of the determined events, notifying at least one of the state client modules of the detected occurrence, so that state client modules can automatically be notified of occurrences of events of interest. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25)
-
-
26. A computer-readable medium whose contents cause a computing device to provide information about a current state modeled with multiple state attributes, the providing of the information based on a plurality of executing state server modules that supply values for the state attributes, on a plurality of executing state client modules that receive and process values for the state attributes, and on an executing intermediary module that facilitates exchange of state attribute values, by performing a method comprising:
-
for each of the executing state server modules, sending values for at least one of the state attributes; for each of multiple of the executing state client modules, sending one or more requests for values for at least one of the state attributes; and under control of the intermediary module, receiving the sent state attribute values and the sent state attribute value requests, and sending at least some of the received state attribute values to at least some of the state client modules based at least in part on the received state attribute value requests; analyzing the received state attribute value requests in order to automatically determine related events whose occurrences may be of interest to at least some of the state client modules; and when monitoring for occurrences of the determined events detects an occurrence of one of the determined events, notifying at least one of the state client modules of the detected occurrence.
-
-
27. A portable computing device for providing information about a state of a user, the state modeled with multiple state attributes, the providing of the information based on a plurality of executing state server modules to supply values for the state attributes, on a plurality of executing state client modules to receive and process values for the state attributes, and on an executing intermediary module to facilitate exchange of state attribute values, comprising:
-
a first module configured to, for each of multiple of the executing state client modules, receive a value request from the state client module for each of one or more of the state attributes; a second module configured to, for each of the executing state server modules, receive values sent from the state server module for at least one of the state attributes, and configured to send at least some of the received state attribute values to at least some of the state client modules based at least in part on the received state attribute value requests; and an intermediary module configured to, analyze the received state attribute value requests in order to automatically determine events whose occurrences may be of interest to at least some of the state client modules; and when monitoring for occurrences of the determined events detects an occurrence of one of the determined events, notifying at least one of the state client modules of the detected occurrence.
-
-
28. A method in a computing system for providing information about a current state that is modeled with multiple state attributes, the method comprising:
-
receiving information from one or more modules that includes one or more values of at least one state attribute and additional information for the one or more values that describes those values, the additional information for each of the one or more values including uncertainty information for the value; automatically analyzing the received information in order to determine at least one type of occurrence that may be of interest to at least one determined module, the determining based at least in part on the additional information; after the determining of the type of occurrence, detecting an occurrence of the determined type; and notifying the determined modules of the detected occurrence. - View Dependent Claims (29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58)
-
-
59. A computer-readable medium whose contents cause a computing device to provide information about a state that is represented with multiple state attributes, by performing a method comprising:
-
receiving information that includes one or more values of at least one state attribute and additional information for at least one of the one or more values that describes those at least one values, the additional information for each of the at least one values including uncertainty information for the value; automatically analyzing the received information in order to determine at least one type of occurrence that may be of interest to at least one determined client, the determining based at least in part on the additional information; after the determining of the type of occurrence, detecting an occurrence of the determined type; and performing one or more additional actions based on the detected occurrence. - View Dependent Claims (60, 61, 62)
-
-
63. A computing device for providing information about a current state that is represented with multiple attributes, comprising:
-
one or more processors; an analysis component configured to, when executed by at least one of the processors, automatically analyze received information in order to determine at least one type of occurrence that may be of interest, the received information including one or more values of at least one attribute and additional information for at least one of the one or more values that describes those at least one values, the additional information for each of the at least one values including uncertainty information for the value, the determining being based at least in part on the additional information; a detection component configured to, when executed by at least one of the processors, after the determining of the type of occurrence, detect an occurrence of the determined type; and a notifier component configured to, when executed by at least one of the processors, provide a notification of the detected occurrence. - View Dependent Claims (64, 65, 66, 67)
-
Specification