Requesting computer user's 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 (SSMs) to supply values for the state attributes, executing a plurality of state client modules (SCMs) to receive and process values for the state attributes, and executing an intermediary module to facilitate exchange of state attribute values, comprising:
- under control of each of the executing SSMs, sending to the intermediary module a registration message indicating a current availability of the SSM to supply values for at least one indicated state attribute;
under control of each of the executing SCMs, determining a need for a value of one of the state attributes; and
sending to the intermediary module a request for a value of the one state attribute; and
under control of the intermediary module, receiving the sent registration messages; and
for each of the executing SCMs, receiving from the SCM the request for the value of the one state attribute;
determining based on the received registration messages multiple of the SSMs that are currently available to supply values for the one state attribute;
in response to the receiving of the request from the SCM, requesting the determined SSMs to supply the requested value;
receiving at least one value of the one state attribute in response to the requesting; and
sending to the SCM at least one of the received values, so that the SCMs receive values for the state attributes as requested from available SSMs.
3 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 first and second sources indications of an ability to supply values for, respectively, an indicated one of the state attributes and another of the state attributes. In such situations, the providing also includes, in response to receiving a request from a first client for a value of the indicated one attribute, determining that the first source is available to supply the value, obtaining the value from the first source, and supplying a value obtained from the first source to the first client.
-
Citations
132 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 (SSMs) to supply values for the state attributes, executing a plurality of state client modules (SCMs) to receive and process values for the state attributes, and executing an intermediary module to facilitate exchange of state attribute values, comprising:
-
under control of each of the executing SSMs, sending to the intermediary module a registration message indicating a current availability of the SSM to supply values for at least one indicated state attribute;
under control of each of the executing SCMs, determining a need for a value of one of the state attributes; and
sending to the intermediary module a request for a value of the one state attribute; and
under control of the intermediary module, receiving the sent registration messages; and
for each of the executing SCMs, receiving from the SCM the request for the value of the one state attribute;
determining based on the received registration messages multiple of the SSMs that are currently available to supply values for the one state attribute;
in response to the receiving of the request from the SCM, requesting the determined SSMs to supply the requested value;
receiving at least one value of the one state attribute in response to the requesting; and
sending to the SCM at least one of the received values, so that the SCMs receive values for the state attributes as requested from available SSMs. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8)
-
-
9. A method in a computer for providing information about a current state that is modeled with multiple state attributes, comprising:
-
receiving from a first source an indication of an ability to supply values for an indicated one of the state attributes of the modeled current state;
receiving from a second source an indication of an ability to supply values for another of the state attributes of the modeled current state; and
in response to receiving a request from a first client for a value of the indicated one attribute, the request including an indication of a source for the values of the one attribute, determining that the first source is available to supply the value;
obtaining the value from the first source; and
supplying a value obtained from the first source to the first client only if the first source is the indicated source. - View Dependent Claims (10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 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, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71)
-
-
72. A method in a computer for providing information about a current state that is modeled with multiple state attributes, comprising:
-
receiving from a first source an indication of an ability to supply values for an indicated one of the state attributes of the modeled current state, the first source including a group of instructions to be executed to produce a value for the one attribute;
receiving from a second source an indication of an ability to supply values for another of the state attributes of the modeled current state;
in response to receiving a request from a first client for a value of the indicated one attribute, determining that the first source is available to supply the value;
obtaining the value from the first source, the obtaining including requesting the first source to supply the value; and
supplying a value obtained from the first source to the first client;
and loading and executing the group of instructions in response to the requesting of the first source to supply the value, the loading and executing so that the first source can produce the requested value.
-
-
73. A method in a computer for providing information about a current state that is modeled with multiple state attributes, comprising:
-
receiving from a first source an indication of an ability to supply values for an indicated one of the state attributes of the modeled current state;
receiving from a second source an indication of an ability to supply values for another of the state attributes of the modeled current state;
in response to receiving a request from a first client for a value of the indicated one attribute, the first client including a group of instructions to be executed to receive a value for the one attribute, determining that the first source is available to supply the value;
obtaining the value from the first source; and
supplying a value obtained from the first source to the first client;
and loading and executing the group of instructions in response to receiving of a value for the one attribute from a source, the loading and executing before the receiving of the request from the first client.
-
-
74. A method in a computer for providing information about a current state that is modeled with multiple state attributes, comprising:
-
receiving from a first source an indication of an ability to supply values for an indicated one of the state attributes of the modeled current state;
receiving from a second source an indication of an ability to supply values for another of the state attributes of the modeled current state;
in response to receiving a request from a first client for a value of the indicated one attribute, determining that the first source is available to supply the value;
obtaining the value from the first source; and
supplying a value obtained from the first source to the first client;
receiving from the first client an indication of a second of the state attributes and an indication that a source for a value for the second state attribute is to be a same source as for the supplied value for the one attributes; and
selecting a value to be supplied to the first client for the second state attribute that is received from the same source.
-
-
75. A method in a computer for providing information about a current state that is modeled with multiple state attributes, comprising:
-
receiving from a first source an indication of an ability to supply values for an indicated one of the state attributes of the modeled current state;
receiving from a second source an indication of an ability to supply values for another of the state attributes of the modeled current state;
in response to receiving a request from a first client for a value of the indicated one attribute, determining that the first source is available to supply the value;
obtaining the value from the first source; and
supplying a value obtained from the first source to the first client;
receiving from a source a current value of a specified state attribute, the receiving not in response to requesting the current value from the source; and
in response to the receiving of the current value, determining at least one client having an interest in receiving values for the specified state attribute; and
sending the received current value to each of the determined clients.
-
-
76. A computer-readable medium whose contents cause a computing device to provide information about a current state that is modeled with multiple state attributes, by performing a method comprising:
-
receiving from a first source an indication of an ability to supply values for an indicated one of the state attributes of the modeled current state; and
in response to receiving a request from a first client for a value of the indicated one attribute that includes an indication of a source for the values of the one attribute, determining that the first source is available to supply the value;
obtaining the value from the first source; and
if the first source is the indicated source, supplying a value obtained from the first source to the first client. - View Dependent Claims (77)
-
-
78. A computer-readable generated data signal transmitted via a transmission medium, the generated data signal having encoded contents that cause a computer system to provide information about a current state that is modeled with multiple state attributes, by performing a method comprising:
-
receiving from a first source an indication of an ability to supply values for an indicated one of the state attributes of the modeled current state;
receiving from a second source an indication of an ability to supply values for another of the state attributes of the modeled current state; and
in response to receiving a request from a first client for a value of the indicated one attribute that includes an indication of a source for the values of the one attribute, determining that the first source is available to supply the value;
obtaining the value from the first source; and
supplying a value obtained from the first source to the first client only if the first source is the indicated source.
-
-
79. A computing device for providing information about a current state that is represented with multiple attributes, comprising:
-
an attribute mapping module that is capable of receiving from a first source an indication of an ability to supply values for an indicated one of the attributes of the current state and of receiving from a second source an indication of an ability to supply values for another of the attributes of the current state;
an attribute value request module that is capable of receiving a request for a value of the one attribute from a first client that indicates a source for the values of the one attribute; and
an attribute value supplier module that is capable of, in response to the receiving of the request, determining that the first source is available to supply the value, requesting the value from the first source, and supplying to the first client a value received from the first source only if the first source is the indicated source. - View Dependent Claims (80, 81)
-
-
82. A computing device for providing information about a current state that is represented with multiple modeled attributes, comprising:
-
means for receiving from a first source an indication of an ability to supply values for an indicated one of the modeled attributes of the current state and for receiving from a second source an indication of an ability to supply values for another of the modeled attributes of the current state; and
means for, in response to receiving a request from a first client for a value of the indicated one attribute that indicates a source for the values of the one attribute, determining that the first source is available to supply the value, requesting the value from the first source, and supplying a value received from the first source to the first client only if the first source is the indicated source.
-
-
83. A method in a portable computer for providing information about a context that is modeled with multiple context attributes, comprising:
-
receiving from each of multiple sources an indication of an ability to supply values for at least one of the context attributes of the modeled context;
receiving from each of multiple clients an indication of a desire to receive multiple values for one of the context attributes of the modeled context;
for each of the multiple clients, receiving multiple requests from the client for a value for the one context attribute for which the client has indicated the desire to receive values; and
after the receiving of each of the multiple requests, retrieving the requested value by, determining whether any of the multiple sources currently have an ability to supply values for the one context attribute for which the client has indicated the desire to receive values;
when at least one of the multiple sources is determined to have the ability, requesting each of the determined sources to supply a value for the one context attribute;
receiving at least one value from the determined sources in response to the requesting; and
sending at least one of the received values to the client; and
after requesting each of the determined sources to supply the value, receiving from a first source an indication of an ability to supply values for the first attribute, the first source not one of the multiple sources; and
after the receiving of a next request for a value of the first attribute, requesting the first source to supply a value of the first attribute. - View Dependent Claims (84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98)
-
-
99. A method in a portable computer for providing information about a context that is modeled with multiple context attributes, comprising:
-
receiving from each of multiple sources an indication of an ability to supply values for at least one of the context attributes of the modeled context;
receiving from each of multiple clients an indication of a desire to receive multiple values for one of the context attributes of the modeled context;
for each of the multiple clients, receiving multiple requests from the client for a value for the one context attribute for which the client has indicated the desire to receive values; and
after the receiving of each of the multiple requests, retrieving the requested value by, determining whether any of the multiple sources currently have an ability to supply values for the one context attribute for which the client has indicated the desire to receive values;
when at least one of the multiple sources is determined to have the ability, requesting each of the determined sources to supply a value for the one context attribute;
receiving at least one value from the determined sources in response to the requesting; and
sending at least one of the received values to the client; and
after requesting each of the determined sources to supply the value;
receiving from one of the determined sources an indication of an inability to supply values for the first attribute; and
after the receiving of a next request from a client for a value of the first attribute, requesting a group of sources to supply a value of the first attribute such that the group of sources does not include the one determined source.
-
-
100. A computer-readable medium containing instructions that when executed cause a computing device to provide information about a context that is modeled with multiple context attributes, by:
-
receiving from each of multiple sources an indication of an ability to supply values for at least one of the context attributes of the modeled context;
receiving from each of multiple clients an indication of a desire to receive multiple values for one of the context attributes of the modeled context;
for each of the multiple clients, receiving multiple requests from the client for a value for the one context attribute for which the client has indicated the desire to receive values; and
after the receiving of each of the multiple requests, retrieving the requested value by, determining whether any of the multiple sources currently have an ability to supply values for the one context attribute for which the client has indicated the desire to receive values;
when at least one of the multiple sources is determined to have the ability, requesting each of the determined sources to supply a value for the one context attribute;
receiving at least one value from the determined sources in response to the requesting; and
sending at least one of the received values to the client; and
after requesting each of the determined sources to supply the value, receiving from a first source an indication of an ability to supply values for the first attribute, the first source not one of the multiple sources; and
after the receiving of a next request for a value of the first attribute, requesting the first source to supply a value of the first attribute.
-
-
101. A portable computer for providing information about a context that is represented with multiple attributes, comprising:
-
an attribute mapping module that is capable of receiving from each of multiple sources an indication of an ability to supply values for at least one of the attributes of the context and of receiving from each of multiple clients an indication of a desire to receive multiple values for one of the attributes of the context; and
an attribute value supplier module that is capable of receiving from each of the multiple clients multiple requests for a value for the one attribute for which the client has indicated the desire to receive values, of determining after the receiving of each of the multiple requests whether any of the multiple sources currently have an ability to supply values for the one attribute, of requesting after the determining of at least one source that each determined source supply a value for the one attribute, of receiving in response to the requesting at least one value from the determined sources, of sending after the receiving at least one of the received values to the requesting client, and of, after requesting each of the determined sources to supply the value, receiving from a first source an indication of an ability to supply values for the first attribute, the first source not one of the multiple sources and requesting the first source to supply a value of the first attribute after the receiving of a next request for a value of the first attribute.
-
-
102. A computer-implemented method for providing information about a current state that is modeled with multiple state attributes, each of the state attributes having multiple sources available to supply values for the attribute, comprising:
-
sending to an intermediary module a first request for a value of a first of the state attributes;
receiving from the intermediary module a first value for the first state attribute that was supplied from a first source, the first value obtained by the intermediary module from the first source in response to the sent first request and sent from the intermediary module in response to the sent first request;
sending to the intermediary module a second request for a value of the first state attribute;
receiving from the intermediary module a second value for the first state attribute that was supplied from a second source, the second value obtained by the intermediary module from the second source in response to the sent second request and sent from the intermediary module in response to the sent second request;
sending to the intermediary module a third request for a value of a second of the state attributes;
receiving from the intermediary module a third value for the second state attribute that was supplied from the first source, the third value obtained by the intermediary module from the first source in response to the sent third request and sent from the intermediary module in response to the sent third request; and
using at least one of the received values to perform processing based on the modeled current state. - View Dependent Claims (103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115)
-
-
116. A computer-readable medium whose contents cause a computing device to provide information about a current state that is modeled with multiple state attributes, each of the state attributes having multiple sources available to supply values for the attribute, by:
-
sending to an intermediary module a first request for a value of a first of the state attributes;
receiving from the intermediary module a first value for the first state attribute that was supplied from a first source, the first value obtained by the intermediary module from the first source in response to the sent first request and sent from the intermediary module in response to the sent first request;
sending to the intermediary module a second request for a value of the first state attribute;
receiving from the intermediary module a second value for the first state attribute that was supplied from a second source, the second value obtained by the intermediary module from the second source in response to the sent second request and sent from the intermediary module in response to the sent second request;
sending to the intermediary module a third request for a value of a second of the state attributes;
receiving from the intermediary module a third value for the second state attribute that was supplied from a third source, the third value obtained by the intermediary module from the third source in response to the sent third request and sent from the intermediary module in response to the sent third request; and
using at least one of the received values to perform processing based on the modeled current state.
-
-
117. A computing device for providing information about a current state that is modeled with multiple state attributes, each of the state attributes having multiple sources available to supply values for the attribute, comprising:
-
a first module capable of sending to an intermediary module a first request for a value of a first of the state attributes, of sending to the intermediary module a second request for a value of the first state attribute, and of sending to the intermediary module a third request for a value of a second of the state attributes;
a second module capable of receiving from the intermediary module a first value for the first state attribute that was supplied from a first source, the first value obtained by the intermediary module from the first source in response to the sent first request and sent from the intermediary module in response to the sent first request, of receiving from the intermediary module a second value for the first state attribute that was supplied from a second source, the second value obtained by the intermediary module from the second source in response to the sent second request and sent from the intermediary module in response to the sent second request, and of receiving from the intermediary module a third value for the second state attribute that was supplied from a third source, the third value obtained by the intermediary module from the third source in response to the sent third request and sent from the intermediary module in response to the sent third request; and
a third module using at least one of the received values to perform processing based on the modeled current state.
-
-
118. A computer-implemented method for providing information about a current state that is modeled with multiple state attributes, each of the state attributes having multiple sources available to supply values for the attribute, comprising:
-
sending to an intermediary module a registration message indicating an ability to supply values for an indicated one of the state attributes of the modeled current state; and
for each of multiple requests for a value of the one state attribute, receiving the request from the intermediary module, the sending of the request from the intermediary module based on an request received by the intermediary module from a client; and
in response to the receiving of the request, retrieving multiple pieces of input information about the modeled current state, generating a value for the one state attribute based at least in part on the retrieved input information and generating an uncertainty value associated with accuracy of the generated value; and
sending to the intermediary module an indication of the generated value and an indication of the generated uncertainty value so that the intermediary module can supply the generated value to the client. - View Dependent Claims (119, 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, 130)
-
-
131. A computer-readable medium whose contents cause a computing device to provide information about a current state that is modeled with multiple state attributes, each of the state attributes having multiple sources available to supply values for the attribute, by performing a method comprising:
-
sending to an intermediary module a registration message indicating an ability to supply values for an indicated one of the state attributes of the modeled current state; and
for each of multiple requests for a value of the one state attribute, receiving the request from the intermediary module, the sending of the request from the intermediary module based on an request received by the intermediary module from a client; and
in response to the receiving of the request, retrieving multiple pieces of input information about the modeled current state, generating a value for the one state attribute based at least in part on the retrieved input information and an uncertainty value associated with accuracy of the generated value; and
sending to the intermediary module an indication of the generated value and the associated uncertainty value so that the intermediary module can supply the generated value to the client.
-
-
132. A computer system for providing information about a current state that is modeled with multiple state attributes, each of the state attributes having multiple sources available to supply values for the attribute, comprising:
-
a first module capable of sending to an intermediary module a registration message indicating an ability to supply values for an indicated one of the state attributes of the modeled current state; and
a second module capable of, for each of multiple requests for a value of the one state attribute, receiving the request from the intermediary module, the sending of the request from the intermediary module based on an request received by the intermediary module from a client; and
in response to the receiving of the request, retrieving multiple pieces of input information about the modeled current state, generating a value for the one state attribute based at least in part on the retrieved input information and generating an uncertainty value associated with accuracy of the generated value; and
sending to the intermediary module an indication of the generated value and an indication of the generated uncertainty value so that the intermediary module can supply the generated value to the client.
-
Specification