[go: up one dir, main page]

HK1089026A - Managing context-related information with a mobile station - Google Patents

Managing context-related information with a mobile station Download PDF

Info

Publication number
HK1089026A
HK1089026A HK06110898.6A HK06110898A HK1089026A HK 1089026 A HK1089026 A HK 1089026A HK 06110898 A HK06110898 A HK 06110898A HK 1089026 A HK1089026 A HK 1089026A
Authority
HK
Hong Kong
Prior art keywords
context
mobile station
related information
condition
user
Prior art date
Application number
HK06110898.6A
Other languages
Chinese (zh)
Inventor
扬内.亚尔卡宁
海基.霍莫
哈里.拉卡拉
伊尔卡.萨尔迷宁
瑞库.索梅拉
Original Assignee
Nokia Technologies Oy
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Nokia Technologies Oy filed Critical Nokia Technologies Oy
Publication of HK1089026A publication Critical patent/HK1089026A/en

Links

Description

System, mobile station, method and computer program product for managing context-related information
Technical Field
The present invention relates generally to systems and methods for operating a mobile station, and more particularly to systems, mobile stations, and methods for managing context (context) related information using a mobile station.
Background
Social interaction is increasingly growing into the world of information. In this regard, socializing has been relatively adept at dealing with this constant flow of information, separating meaningful information from meaningless information. For example, people glance at advertisements every day without any thoughts while handling pieces of information such as news headlines or traffic signs. People often easily see and react to important information such as traffic lights, alarm signals, and pedestrian crossings.
Computers also live in a world full of information in the same way people operate in an information society. Conventionally, human attention is used to determine which information is useful and interesting. However, in recent times computers have become increasingly autonomous in the processing of information. For example, firewall software automatically decides which packets are of interest and which should be discarded. It is obvious that this has been instructed by the user, but once the various initial parameters have been set, its behavior is essentially autonomous.
However, the situation of computers is changing. Machine-to-machine communication is growing rapidly, and these portions of traffic are directed towards users. For example, mobile-directed advertising has been envisioned many times, but has never been successful, simply because it would be a dire burden for the user, and also may be a privacy violation (since people often think their mobile phones are very private items).
How do people deal with this rich information? The commonly accepted idea is that people process information in a sense by attaching it to the context. For example, it is not meaningful to place chess pieces on a chess board until the placement is considered in the context of a chess game in which the pieces have a significance in relative position. As another example, in traffic, driving a car means that the driver is attentive to a different traffic indication than the same driver is attentive to while walking. Thus, in general, context is very important for the processing of information.
Although people process information by attaching context to the information, computing devices such as mobile phones do not understand the concept of context. In this regard, mobile phones are enjoyable to make sounds regardless of whether the user is in a meeting or in a hospital. In order to provide context to information for users of computing devices, the users must explicitly instruct the devices how to do so, for example by setting user profiles. But since computing devices such as mobile phones always have their respective users (or nearly always so), such computing devices have "learned" about much of the respective users. For example, such computing devices already know whether their corresponding user is moving, know where their corresponding user is located, know whether it is now day or night, and so on. As another example, such computing devices may also know some or all of the contents of their corresponding user's calendar or the contents of their corresponding user's email and/or SMS messages. However, computing devices are silent machines, and because of this, there is typically no way to know what their respective users want to do unless someone or something teaches them.
Technology has evolved to provide computing devices with a sense of context. Most of these technologies have been integrated into the desktop computer world, or office world of meetings (e.g., context sensitive whiteboards). Some of them focus on the problem of travelers, providing location-sensitive information. More importantly, however, almost all of these current technologies focus on a single solution to a single problem.
Disclosure of Invention
In light of the foregoing background, embodiments of the present invention provide systems, mobile stations, methods and computer program products for managing context-related information. More specifically, the system, mobile station and method of the present invention facilitate the exchange and sharing of context-related information between context-related engines. Embodiments of the present invention also provide an Application Program Interface (API) for applications that can then use, publish, and subscribe to context-related information locally, over local area networks, and over operator-supported networks.
Embodiments of the present invention provide a context exchange architecture that may be implemented by a mobile station and, as such, require relatively little, if any, fixed infrastructure. In addition, embodiments of the present invention are capable of managing context information available from electronic devices external to the mobile terminal, while the mobile station generally plays a central role because many people continue to use the mobile station to contact and trust their mobile station. Embodiments of the present invention also have a better deployment cycle than fixed infrastructure systems and methods, and use embodiments of the present invention provide secure transmission of context-related information and provide a mobile station as an agent or representative of a mobile station user in machine-to-machine communications. In addition, embodiments of the present invention provide a clean upward compatibility path, thereby increasing the robustness of a mobile station operating in accordance with embodiments of the present invention.
Embodiments of the present invention are capable of receiving context-related information from a variety of different sources. For example, context-related information may be received from sources such as the mobile terminal user himself, various sensors and processors within the mobile station, other electronic devices (e.g., MP3 players, etc.), the mobile station's neighbors (e.g., for peer-to-peer communications), etc. Additionally or alternatively, the context-related information may be received from a source, such as a fixed, local infrastructure, cellular network, and/or data network.
From the context-related information, the context of the mobile station, or more precisely the user of the mobile station, can be determined on the basis of the context-related information, for example by means of an application external to the mobile station. Embodiments of the present invention are capable of determining any of a number of different contexts associated with a mobile station, and thus the user of the mobile station. For example, embodiments of the invention can determine physical context ("where i am", "how warm the weather is", etc.), social context ("who i am with", "who i is speaking"), and/or target context ("what i is doing").
Thus, by context, the state of the user of the mobile station can be influenced by, for example, modifications to the configuration or state of the mobile station and/or its applications, modifications to the terminal (and thus the user) visibility to the outside world, and/or modifications to the mobile station (and thus the user) perception of the outside world.
Drawings
Having thus described the invention in general terms, reference will now be made to the accompanying drawings, which are not necessarily drawn to scale, and wherein:
fig. 1 is a schematic block diagram of a wireless communication system including a cellular network and a data network to which a mobile station is bidirectionally coupled via a wireless RF link, in accordance with one embodiment of the present invention;
FIG. 2 is a schematic block diagram of a mobile station according to one embodiment of the present invention;
FIG. 3 is a schematic block diagram of a context exchange architecture within a mobile station in accordance with one embodiment of the present invention;
FIG. 4 is a flow chart illustrating various steps in a method of creating and thereby making contextually relevant information available to a user; and
FIG. 5 is a flow chart illustrating various steps in a method of retrieving context-related information.
Detailed Description
The present invention now will be described more fully hereinafter with reference to the accompanying drawings, in which preferred embodiments of the invention are shown. This invention may, however, be embodied in many different forms and should not be construed as limited to the embodiments set forth herein, but rather should be construed as broadly as the present disclosure is set forth in order to provide a thorough and complete disclosure and which will fully convey the scope of the invention to those skilled in the art. Like numbers refer to like elements throughout.
Referring to fig. 1 and 2, an illustration of one type of wireless communication network including terminals, such as mobile stations, that would benefit from the present invention is provided. It should be understood, however, that a mobile telephone as illustrated and hereinafter described is merely illustrative of one type of mobile station that would benefit from the present invention and, therefore, should not be taken to limit the scope of the present invention. While several embodiments of the mobile station are illustrated and will be hereinafter described for purposes of example, other types of mobile stations, such as Portable Digital Assistants (PDAs), pagers, and other types of voice and text communications systems, can readily employ the present invention. Moreover, the system and method of the present invention will be primarily described in conjunction with mobile communications applications. The system and method of the present invention can be utilized within the mobile communications industry as well as outside the mobile communications industry in conjunction with a variety of other applications.
Additionally, although several embodiments of the present systems and methods include a terminal that includes a mobile station, the terminal may not necessarily include a mobile station. In this regard, the terminal may include any of numerous other processing devices, such as a personal computer, laptop computer, server computer, or the like, capable of operating in accordance with embodiments of the present invention. In addition, the system and method of the present invention will be primarily described in conjunction with mobile communications applications. It should be understood, however, that the system and method of the present invention can be utilized in conjunction with a variety of other applications, both in the mobile communications industries and outside of the mobile communications industries.
As shown, a mobile station 10 includes an antenna 12 for transmitting channels to and receiving signals from a base station site or Base Station (BS) 14. The base station is a part of a cellular network that includes a Mobile Switching Center (MSC)16, an information center (MC)18, a voice coder/decoder (voice coder) (VC)20, a Data Modem (DM)22, and other elements required for network operation. When a mobile station makes and receives calls, the MSC is capable of routing calls and messages to and from the mobile station. As indicated above, the cellular network may also be referred to as a base station/MSC/interworking function (BMI) 24. The MSC controls the forwarding of messages to and from the mobile station for the mobile station when the mobile station registers with the network, and also controls the forwarding of messages to and from the MC for the mobile station. Such messages may include, for example, voice messages received by the MSC from subscribers of the Public Switched Telephone Network (PSTN), as well as Short Message Service (SMS) messages and voice messages received by the MSC from mobile stations or other mobile terminals served by the network.
The user data for the mobile station 10 is permanently stored in the Home Location Register (HLR)26 of the system and temporarily stored in a Visitor Location Register (VLR)28 within the area in which the mobile station is located at a given moment. In this regard, the VLR contains selected administrative information necessary for paging control and the provision of subscription services to each mobile station currently located within the geographical area controlled by the VLR. Although each functional entity can be implemented as a separate unit, the switching means is mainly manufactured to implement the VLR together with the MSC 16 so that the geographical area controlled by the MSC coincides with the area controlled by the VLR, thereby simplifying the signalling requirements. Also, MSC and VLR will be referred to herein collectively as MSC/VLR.
The mobile station 10 may also be connected to a data network. For example, the base station BS 14 may be connected to a Packet Control Function (PCF)30 connected to a Packet Data Serving Node (PDSN) 32. The PDSN is preferably connected to an AAA server 34 that provides authentication, authorization, and accounting services. As understood by those skilled in the art, the AAA server may comprise a remote Access Dial-in user service (RADIUS). The PDSN may also be connected to a wide area network, such as the internet 36. Conversely, devices such as processing elements (e.g., personal computers, server computers, or the like) may be connected to the mobile station via the PDSN. For example, the processing elements may include one or more processing elements associated with content server 40, as shown in FIG. 1. By directly or indirectly connecting the mobile station 10 and the other devices to the PSDN and the internet, the mobile station may communicate with the other devices, such as according to the Internet Protocol (IP) specification, to thereby carry out various functions of the mobile station.
Referring now to fig. 2, there is illustrated a block diagram of a mobile station 10 that would benefit from the present invention. The mobile station includes a transmitter 46, a receiver 48, and a controller 50 that provides signals to and receives signals from the transmitter and receiver, respectively. These signals include signaling information in accordance with the air interface standard of the applicable cellular system, and also user speech and/or user generated data. In this regard, the mobile station can be capable of operating with one or more air interface standards, communication protocols, modulation types, and access types. More specifically, the mobile station is capable of operating in accordance with any of a number of first, second and/or third-generation communication protocols or the like. For example, the mobile station may be capable of operating in accordance with second-generation (2G) wireless communication protocols such as, for example, IS-136(TDMA), GSM, and IS-95(CDMA), and/or third-generation (3G) wireless communication protocols such as, for example, Universal Mobile Telecommunications System (UMTS), IEEE 822.11b (WLAN), General Packet Radio Service (GPRS), High Speed Circuit Switched Data (HSCSD), and Short Message Service (SMS).
It is understood that the controller 50 includes the circuitry required for implementing the audio and logic functions of the mobile station 10. For example, the controller may be comprised of a digital signal processing device, a microprocessor device, and various analog to digital converters, digital to analog converters, and other support circuits. The control and signal processing functions of the mobile station are allocated between these devices according to their respective capabilities. Whereby the controller also includes the functions of convolutionally encoding and interleaving messages and modulating and transmitting the preceding data. The controller may additionally include an internal Voice Coder (VC)50A and may also include an internal Data Modem (DM) 50B. In addition, the controller 50 may include functionality to operate one or more software programs, which may be stored in memory (described below). For example, the controller may be capable of running a connectivity program, such as a conventional Web browser. The connectivity program may then allow the mobile station to transmit and receive Web content from, for example, origin server 40, according to, for example, a Wireless Application Protocol (WAP).
The mobile station 10 also comprises a user interface including a conventional earphone or speaker 52, a ringer 53, a microphone 54, a display 56, and a user input interface, all of which are coupled to the controller 50. The user input interface, which allows the mobile station to receive data, may comprise any of a number of devices allowing the mobile station to receive data, such as a keypad 58, a touch screen (not shown) or other input device. In embodiments incorporating a keypad, the keypad includes conventional numbers (0-9) and associated keys (#, #), as well as other keys for operating the mobile station.
The mobile station also includes a battery 60 that powers the various circuits that are required to operate the mobile station. In addition, the mobile station may include a position sensor such as a Global Positioning System (GPS) sensor 59. Based on this, the GPS sensor is able to determine the location of the mobile station, such as the longitude and latitude directions of the mobile station.
The mobile station 10 may also include memory, such as a Subscriber Identity Module (SIM)42, a removable user identity module (R-UIM), or the like, which typically stores information elements related to the mobile subscriber. In addition to the SIM, the mobile station 10 may include other memory. In this regard, the mobile station may include volatile memory 62, such as volatile Random Access Memory (RAM) including a cache area for the temporary storage of data. The mobile station can also include other non-volatile memory 64, which can be embedded and/or may be removable. The non-volatile memory may additionally or alternatively comprise an EEPROM, flash memory or similar device, such as those available from ScanDisk, Inc. of Sanpreville, Calif., or Lexar Media, Inc. of Fourmon, Calif. The memory may store any of a number of pieces of information, and data, used by the mobile station to implement the functions of the mobile station. For example, the memories can include an identifier, such as an International Mobile Equipment Identification (IMEI) code, capable of uniquely identifying the mobile station 10, e.g., an identifier to the MSC 16.
The mobile station 10 may also include an infrared transceiver 61 and/or other wired and/or wireless local data transmission means so that data may be shared with and/or obtained from other electronic devices 11 (one of which is shown in fig. 1), such as other mobile stations, car navigation systems, personal computers, printers, printed material including bar codes or the like. Sharing of data, as well as remote sharing of data, may also be provided according to a number of different techniques. Also, or alternatively, for example, the mobile station may share data using bluetooth wireless technology developed by the bluetooth special interest group. In addition, although not shown, the mobile stations may share data using Universal Serial Bus (USB) technology. Furthermore, the mobile station may comprise a radio frequency transceiver 63 capable of sharing data with other radio frequency transceivers and/or with Radio Frequency Identification (RFID) transponder tags, for example, as known to those skilled in the art. For more information on sharing data according to a radio frequency technique, see ECMA international (european union standardization information and communications system) standard ECMA-340 titled: near field communication-interface and protocol (NFCIP-1) (2002), the entire contents of which are incorporated herein by reference.
The mobile station 10 may also have one or more sensors 65 for sensing at least a portion of one or more environmental conditions of the mobile user, and more particularly the mobile station operated by or otherwise under the control of the mobile user. In this regard, the mobile station may include sensors such as, for example, position sensors, touch sensors, audio sensors, register sensors, ambient light sensors, ambient temperature sensors, and/or three-axis acceleration sensors. The audio sensor may include, for example, a microphone 54 capable of detecting sound and ambient environmental sounds. The location sensor may include, for example, a GPS sensor 59. Additionally or alternatively, the location sensor may comprise, for example, a radio navigation station triangulation sensor which determines the location of the wireless device by means of a network of radio navigation stations, base stations, or access points, as described by way of example in nokia european patent EP 0767594 A3, entitled: a mobile station location system, published 12/5 1999, the contents of which are incorporated herein by reference in their entirety. As can be appreciated, the sensor can also be located in a mobile station housing similar to the accessory and/or in a wireless accessory such as a bluetooth-capable device. The sensors may also be located in an environment such as in a user's room or in a vehicle. Also, information that can be measured by the mobile station, such as the duration of use of the mobile station, can be received by the mobile station as sensor data. For more information on such sensors, see U.S. patent application No.09/854,628, entitled: a context-sensitive Web service, filed on 12.5.2001, which was published on 21.11.2002 as U.S. patent application publication No.2002/0173295, the contents of which are incorporated herein by reference in their entirety.
The mobile station 10 is able to implement a distributed context structure framework through the use of sending identification information and/or context data for a separate, easily updated application or remote server in the system, according to embodiments of the present invention. In this regard, reference is now made to the context exchange architecture of the mobile station 10 of FIG. 3, which in accordance with one embodiment of the present invention includes one or more sensors 100 capable of providing measurement and/or sensing data. The sensors can also preprocess the measured and/or sensed data as "context atoms", for example, via a sensor Application Program Interface (API), and then store it. As used herein, a "context atom" generally refers to a particular piece of context-related information. Context atoms can include entities that typically have any of a number of other attributes, associated names, values, sources (i.e., originators), data, and/or. More specifically, the context atoms can contain other attributes including metadata information such as the reliability of the context-related information and its accuracy, source, time of creation, and the like.
For example, a temperature sensor may measure the ambient temperature of the environment surrounding the mobile station 10 and then process the temperature as a context atom. Also, for example, the mobile station may maintain a directory that can meter, or record, the last call made by the mobile station. The last call data can then be processed as a context atom. Furthermore, for example, a three-axis acceleration sensor may measure the movement of the mobile station. Thus, the movement data can be processed as context atoms which may comprise the current absolute values of the accelerations, which values come together over a few seconds, and/or to approximate that the mobile station, or more precisely the user of the mobile station, is walking, running, standing still or may be sitting in a car.
The context exchange fabric of the mobile station 10 also includes a context engine 102 that is capable of receiving and subsequently storing context atoms and also providing access to the context atoms in accordance with embodiments of the present invention. The context engine includes a context repository 104 and a context API 106. The context repository may in turn include a blackboard (blackberry) 104a and a reservation manager 104 b. The blackboard is a storage unit for context-related information and as such typically stores context atoms received from sensors or other context sources (e.g. other electronic devices, applications residing in the background of the network, other user terminals, etc.). In addition, the blackboard can provide an API to query and set context atoms. Instead, the reservation manager can provide reservations for various context atoms and/or notifications when these context atoms change. The subscription manager can thus poll the context atoms periodically based on these subscriptions and announcements. To provide access to the context repository, the context engine also includes a context API. In this regard, according to embodiments of the invention, the context API allows one or more user applications 108 to access context data from the blackboard.
The blackboard 104a can save the context atoms for an indefinite period of time unless other factors are introduced. For example, one or more context atoms can include an expiration time so that after each context atom expires, such context atoms can be deleted from the blackboard, while a notification is sent to the device that reserved each context atom if needed (as described below). However, as will be appreciated, the expiration time may be reset each time the context atom is updated with different information (e.g., different values). Also, in this case when a new context atom is stored in a blackboard with the same name and context source (indicating that it is from the same source) as a previous context atom already stored in the blackboard, the new context atom can replace the previous context atom so that the previous context atom can be discarded or moved to the history cache, for example.
The context exchange fabric also includes a data store 110 coupled to the context engine 102. The data store can store information such as user preferences, profile information, and access permissions to the privacy engine 112 also contained in the structure. The privacy engine can provide security and privacy. More specifically, the privacy engine can act on any of a number of different levels of security and privacy, from the lowest point of communication (e.g., a firewall) to the highest level (e.g., "who is my friend and who is not"). User preferences and profiles in the data store may then control the operation of the privacy engine. For example, the privacy engine may retrieve a list of known buddies from the data store so that when the mobile station 10 needs to be queried in order to perform an action according to embodiments of the present invention, the privacy engine may indicate whether the action is allowed by comparing the querying entity with the buddy list. In one embodiment, the privacy engine functions based on the devices and/or user applications operating on context atoms according to embodiments of the present invention and one action type, e.g., place, get, subscribe, notify, etc., as described below. It should be understood, however, that the privacy engine may also utilize other information including other context atoms and data in the data store to make decisions regarding access permissions.
In addition to sources of context-related information internal to the mobile station 10 (e.g., sensors 100 and other data measurement components), the context exchange fabric can also provide for receiving context-related information from sources external to the mobile station. In this regard, the context exchange structure includes a communication manager 114 that can identify other context sources within communication range from the mobile station. In addition to identifying other context sources, the communication manager can initiate contact with these context sources and, in general, provide for the daily management of communications with these context sources. The communication manager may also act (with the privacy engine 112) as a firewall. The communication manager can abstract different connection types to the context engine 102 so that context atoms within the context engine can be stored and/or retrieved whether or not the communication manager is communicating with other context sources via bluetooth, GPRS, RFID, USB or some other connection type.
To facilitate communication of the mobile station 10 with a cellular network, a data network, and/or other electronic devices 11, the context exchange fabric also includes a service interface 116. The service interfaces operate in the same way as the context APIs 106 in the context engine 102. In this regard, the service interface may include, for example, an over-the-air interface and underlying transport protocols (e.g., Ethernet, GPRS, TCP/IP). The context exchange fabric also provides context exchange protocols, according to various embodiments of the present invention. In general, context exchange protocols include standardized protocols that allow different entities to exchange context atoms in a secure and reliable manner regardless of the underlying structure or transmission channel. In this way, for example, the context atoms stored at least partially in the blackboard 104a can be stored in a separate memory device, such as a memory device connected to the content server 40.
More specifically, the context exchange protocol defines the format of context atom-related messages that can be sent and received externally to the mobile station 10, in accordance with embodiments of the present invention. In this regard, the context exchange protocol provides for sending requests and receiving responses, where the requests and responses are transmitted within context exchange protocol messages, and where such messages may contain one or more requests and/or responses. In addition to defining the format in which messages are sent and received, the context exchange protocol can support all of the functions of the context engine 102. For example, the context exchange protocol can handle various functionalities of the context engine, such as retrieving context atoms, setting and/or modifying context atoms, adding and/or deleting users, and/or sending notifications to users when context atoms change. The context exchange protocol also provides for querying and setting context atoms and setting users who want to monitor changes in the context atoms.
The context exchange protocol may additionally support many different protocol functions. For example, messages sent and received according to the context exchange protocol may have a set priority. In this regard, higher priority messages may be sent and received before lower priority messages. Messages of lower priority may be queued and aggregated with other messages of lower priority and/or other messages of higher priority and then sent in a larger aggregated message after a timeout or when other communications occur. For example, context exchange protocol messages may be embedded in Session Initiation Protocol (SIP) messages when a call is initiated from the mobile station 10. Thus, lower priority messages may be sent with higher priority messages.
The context exchange protocol may further support sending error messages. The context exchange protocol may also operate independently of the transport protocol of the message, while the message can be sent according to any number of different protocols, such as hypertext transfer protocol (HTTP), Simple Object Access Protocol (SOAP), extensible markup language (XML), Simple Mail Transfer Protocol (SMTP), Short Message Service (SMS), and Session Initiation Protocol (SIP). Additionally, context exchange protocol messages may be compressed, encrypted, and/or digitally signed according to any of a number of known techniques, such as ZIP compression, XML encryption, and XML signing. The context exchange protocol is also extensible so that new operations can be added to the protocol without any changes to the encapsulation of the message.
The context exchange fabric may additionally provide for creating new context atoms, as well as deleting and/or modifying existing context atoms. In this regard, the context exchange fabric may include a script engine 118 that is capable of storing rules and conditions. In one embodiment, the script engine can receive external rules in accordance with a context exchange protocol and then store the rules. The script engine can then examine the rules, reserve the relevant context atoms (described below), and thereby execute the rules according to the conditions defined in the rules. The script engine allows complex rules to be executed under different circumstances. Also, the script engine may reduce the need for application code while reducing bandwidth requirements. In addition, although the subscription manager typically only sends notifications when context atoms change, the script engine may further specify conditional requirements for sending notifications. For example, the script engine may specify a condition such as "send notification only when the value changes by more than 20%". In one embodiment, for example, a rule may include one or more Java's containing executable code that defines the condition of the ruleTMClass, and/or include definition rulesAn extensible markup language (XML) script of boolean logic of the condition.
The script engine 118 can simplify the operation process on the context atom while reducing the bandwidth required for this operation. For example, if an external application or electronic device wishes to subscribe to a context atom that changes quickly, but does not want to update as quickly, the external application or electronic device may first send context rules to a scripting engine that will subscribe the atom locally, and then store a filtered version of the atom (e.g., a sample of 1 hour intervals) to the blackboard 104 a. The external application or electronic device may then subscribe to the filtered version and receive updates only when the filtered version changes. Alternatively, the script engine can send notifications directly to the application or device that sent the context rules to the script engine, thereby reducing the number of context atoms in the blackboard.
Each context rule typically includes one or more conditions and one or more actions to be performed when the conditions are satisfied. In this regard, the conditions of the context rules are typically associated with the context atoms, or more specifically, the values in the context atoms. The script engine 118 can execute any of a number of different context rules, including any of a number of different actions. For example, context rules can specify the setting of a context atom value, the sending of a notification, and/or the transmission of a context atom to another device and/or application. Context rules can be exchanged between the mobile station 10 and other devices, such as the electronic device 11, in a number of different ways. For example, in one embodiment, context rules may be exchanged according to a context exchange protocol, such as adding new context rules, deleting context rules, and/or notifying the device of expired or otherwise unavailable context rules. Alternatively, the context rules can be created internally within the mobile station.
The components of the architecture have been described separately from the mobile station block diagram of fig. 2. It should be understood, however, that the structure of the embodiment of the present invention as illustrated in fig. 3 can be implemented by a mobile station that includes the components illustrated in fig. 2. In this regard, at least some of the components of the structure can be embedded in corresponding components illustrated in fig. 2. For example, the blackboard 104a and/or data store 110 described below can be embedded in memory such as the SIM 42, volatile memory 62, and/or non-volatile memory 64. Likewise, the functions of the context engine 102, the script engine 118, the privacy engine 112, and/or the communication manager 114 can also be performed by the controller 50. Additionally, or alternatively, one or more components of the architecture of embodiments of the present invention may be performed by, and/or mirrored by, other components of the cellular network and/or data network of FIG. 1. For example, a copy of the content of the blackboard in the mobile terminal may be maintained in the operator's server (e.g., content server 40).
As indicated above, context atoms typically include at least a name and a value, and may also include metadata information such as its reliability, accuracy, source, time of creation, and the like. In operation, context atoms are typically created by an entity called a "context generator". As used herein, a context generator typically includes a context source, as explained above. Likewise, as used herein, the terms "context generator" and "context source" may be used interchangeably to refer to the same entity. The context generator can comprise any of a variety of internal or external systems, devices, and/or components that can create the context atoms, but in an exemplary embodiment the context generator can comprise internal sensors 100 and/or user applications 108, and/or external systems, devices, and/or components (e.g., sensors or user applications) that can push the context atoms to the mobile station, for example, according to a context exchange protocol.
Referring now to FIG. 4, as shown in block 120, context atoms can be created and then made available by providing mobile station conditions, such as measured and/or sensed data. Accordingly, context atoms can be created by preprocessing the conditions into context-related information, as shown in block 122. For example, context atoms can be created by preprocessing conditions into context-related information that includes any of a number of other features as explained above, as well as time of relevance, value sources, data, and/or the like. As represented by block 124, context atoms can be provided to, or otherwise received by, the transfer station, or more specifically the context engine 102, by creation. As represented by block 126, the context atoms can be stored, for example, in the blackboard 104a by being received by the context engine.
For example, a thermometer may measure the ambient temperature and process the temperature measurement as a context atom "environment. temperature 95 ℃," which may then be received by the context engine 102 and stored by the blackboard 104 a. Additionally or alternatively, a change in temperature over a period of time may be measured, for example by the user application 108, and stored by the blackboard. As another example, a sensor (input device) may obtain a signal from a local beacon that identifies the location of the mobile station and process the signal into a context atom "location.
The mobile station 10 can receive measurements from any of a number of different types of local beacons that can transmit information such as, for example, bluetooth devices and/or RFID tags. In this regard, when the local beacon includes a bluetooth device, the bluetooth radio receiving device inside the mobile station may receive a signal from the beacon by performing service discovery to determine the bluetooth identifier. This identifier can then be stored by the blackboard as the context atom "local bluetooth environment". The "localbluetool environment" can be reserved with reference to another application as a context user and described below, and updated periodically accordingly to receive measurements received by the bluetooth radio receiving device. In this regard, the mobile station is able to monitor the electronics of the area surrounding the mobile station and request location information from them if available. The mobile station can then store any available location information back to the blackboard 104a where other applications (context users) can obtain the information. In the example given above, the bluetooth beacon may declare its location as sauna (steam bath), so that the mobile station stores the context atom "location.
The foregoing example illustrates a mobile station 10 storing context atoms identifying logical locations (e.g., a steam bath). It should be understood, however, that context atoms can be created to identify any of numerous other types of locations, such as an exact location (e.g., GPS coordinates and/or addresses) and/or a relative location (e.g., "near K-Mart"). The use of the GPS sensor 59 may provide location information, particularly when the mobile station is located outdoors. However, even the lack of GPS location information is useful, for example, to indicate the likelihood that the mobile station is located indoors where GPS sensing cannot sense location information.
Once stored in the blackboard 104a, the context atoms are typically retrieved by an entity called a "context user". Like the context generator, a context user can include any of a number of different internal or external systems, devices, and/or components capable of retrieving context atoms. In this regard, reference is now made to FIG. 5, which illustrates various steps for retrieving context-related information in accordance with an embodiment of the present invention. As indicated by the block 128, when a context user wishes to retrieve a context atom, the context user is connected to the mobile station 10, or more specifically the context engine 102, for example according to a context exchange protocol when the context user is external to the mobile station or according to the context API106 when the context user is internal to the mobile station. The context consumer can thus, for example, send and the context engine can receive a request to identify a context atom, for example by name, as represented by block 130. For example, the request may read "please give me a context atom called environment temperature", where the phrase "environment temperature" represents the ambient temperature of the environment surrounding the mobile station. Additionally or alternatively, context users can transmit and the context engine can receive requests to identify context atoms from sources of respective context-related information, and/or combinations of sources and context atom names, thereby allowing the context users to restrict their queries to particular context sources. For example, a context user may send a request "please all context atoms provided by a temperature sensor within the mobile station". In a typical example, an application may wish to act as a pre-processor for a single sensor, so that the application does not want to receive context atoms associated with other sensors that provide the same context-related information. This of course means that the name of the context atom may not be unique, but the context atom may be delineated by one or more other attributes including the source of the context atom.
In response to the request, the context engine 102 can then query the privacy engine 112 as to whether to allow the context user to retrieve the requested information, as shown at block 132. If the context user has the right to retrieve the requested context atom, the context atom is sent to the context user, as shown in block 134. In this regard, the context atoms are typically sent by the context engine through the context API106 if the context atoms are requested by an application (e.g., the user application 108) internal to the mobile station. However, if the context atom is requested by an external application, the context atom is typically sent by the context API106 to the communication manager 114, which in turn sends the context atom over a communication link according to a context exchange protocol.
However, if the context user does not have the right to retrieve the requested context atom, the context atom is not sent to the context user. In this case, the context engine 102 can send a message to the context consumer indicating that the request to retrieve the context atoms was denied, if desired, as indicated at block 136. Assuming a request from an external application or device is received according to the context exchange protocol, the request may be silently discarded, such as in the case of an error or a retransmission of the request. In other cases, the context engine simply ignores the request and therefore does not send a response to the context consumer.
In addition to retrieving context atoms, context users are also notified when a particular context atom changes, such as when a particular context atom is added to the blackboard 104a, removed from the blackboard, and/or otherwise changed. In addition, the context consumers can also specify the degree of change required before notifying each context consumer of the respective change. To receive notifications of changes to particular context atoms, a context user can reserve a particular context atom by placing a request for one or more context atoms on a notification list. Similarly, the context engine 102 can issue notifications to context users when the content of the corresponding context atom changes or expires. However, as can be appreciated, the context engine typically checks with the privacy engine 112 to determine whether the user is allowed to receive such notifications. Thus, the context engine can keep apprised of any changes to the context user by notifying the context user of each such change and the country flag of the corresponding context atom. Whereas any of a number of changes may require notification, the context engine typically sends a notification if an atom appears or disappears, the content of the atom has changed, and/or the subscription has terminated.
Once the context user retrieves one or more context atoms, the context user can utilize the context atoms to determine a context of the mobile station 10 (or a user of the mobile station) so that the mobile station, for example, can operate based on the determined context. In this regard, the context user can determine the context of the mobile station, or more specifically the user of the mobile station, based on the requested context atoms and thereby transmit the context back to the mobile station so that the mobile station can perform one or more operations based on the context. For example, the context information can be utilized to configure the mobile station based on the determined context, such as by changing the volume of the mobile station based on ambient noise (physical context), changing a menu displayed by the mobile station based on whether the user is in a digital community associated with the user (social context), and/or highlighting email messages having the same context as the email displayed by the mobile station (target context).
Additionally or alternatively, the context information may be used to assist a user of the mobile station 10 in understanding the user's context, such as by the mobile station receiving context notifications (physical context) based on the location of the mobile station, receiving WAP sites (physical context) of stores in a building closest to the mobile station, receiving shopping preferences of friends (social context) when the user of the mobile station is shopping with their friends, receiving automatic traffic alerts (target context) when the user of the mobile station is walking on the road, and/or receiving price information for items the user is interested in obtaining (target context). Also, the context information may be used to enhance visibility of the user of the mobile station, such as by the mobile station sending a message (physical context) when the mobile station or the user of the mobile station arrives at a particular location, such as the mobile station displaying a mood indication (social context) of the user by changing the background color of the display screen 56, sending the user's shopping preferences when the user (with the mobile station) enters a retail store, and/or sending an indication (target context) by the mobile station that the user is willing to participate in a similar game when the user plays a game.
As a more specific example, an application (e.g., Java)TMApplications) can customize/request information for the location of the mobile station 10 and the ambient temperature at the corresponding location. Continuing with the example of sauna pool above, after the user enters the sauna pool, the application receives context atoms containing the location information "sauna pool", and temperature information of 95 ℃. Based on the location and temperature, the application can determine that the comfort (i.e., context) of the user of the mobile station is "warm". Thus, the application may send an indication of the context back to the mobile station, which stores the context in the blackboard 104a as, for example, another context atom "user. If the user is not in the sauna, but the ambient temperature is kept at 95 ℃, the application may determine the comfort level as "hot" for subsequent storage by the blackboard of the context atom "user.
In another more particular example, it is contemplated that the digital community generally refers to the group of people with whom a mobile station user can communicate using electronic devices, such as instant messaging contacts, email contacts, and the like, as is known to those skilled in the art. Since the user of the mobile station may also interact with members of the digital community of the user, the determined context may be utilized to direct the mobile station to perform one or more actions based on the electronic devices of the community, or more specifically the group of people, surrounding the user of the mobile station. For example, if a user of a mobile station is in a meeting with the user's automobile discussion group (Chevy, who is driving for 50 s), the user interface of the mobile station may change to "50 s mode" while the color, display, menu, or the like, changes to the style for 50 s.
In yet another more particular example, it is contemplated that a user of the mobile station 10 may have an associated user application 108 installed on the mobile station when the user is participating in a supermarket membership club. Once installed, the user application may send context rules to the script engine 118 that basically indicate "please trigger when location corresponds to a store of a supermarket chain" and thus reserve the location context atom. When the user of the mobile station arrives at a supermarket in a supermarket chain, the script engine can determine that the conditions of the context rules have been met and launch the user application. The user application may then download new information from a preset address or Uniform Resource Locator (URL) and send advertisements on the display screen 56 that provide information about new incoming items, recent events around the supermarket, etc. In addition, since the user application also reserves the location context, when the user leaves the supermarket, the user application can be notified and shut down accordingly. Thus, the user of the mobile station does not need to separately activate/deactivate the program.
In further attempts to determine the context of the user of the mobile station 10, additional information can be measured, stored as context atoms, and retrieved by the context user in determining the context. For example, additional information such as whether the user is wearing clothing (which may be detected by the mobile station through indicia embedded in the clothing) may be taken into account when determining the comfort level. As another example, information determined based on the measurements, such as changes in temperature, may be utilized in determining the context. In this regard, if the temperature variation is very large, for example, a context user may introduce large temperature variations when the user station is too close to the fire and/or the mobile station apparatus is in danger of being damaged. In response to such a context determination, a notification may then be sent to the user to alert the user to the perceived danger.
Also to help accurately determine the user's context, a contextual user can direct a particular user application 108 (pre-processor) to change various processing parameters. In one example, when the context atom indicates a large temperature change, for example, the context user can direct the user application to measure the temperature that will change by decreasing the sample interval so that the context user can more carefully track the change in temperature.
In addition to, or in the alternative to, creating context atoms from sensors 100 on the mobile station 10, one or more of the context atoms can be created from sensors located on other mobile stations that can communicate with the mobile station. For example, the mobile station may act as a context user by checking bluetooth neighbors (i.e., mobile stations located in the vicinity of the mobile station that are capable of communicating with the mobile station via bluetooth technology) and requesting confirmation of temperature from the blackboard 104a of other mobile stations. This may be necessary, for example, if another contextual user suspects that the temperature sensor carried with him/her is broken or when the mobile station is not provided with a temperature sensor.
As another example of a contextual user, consider that a third party user application has been configured, for example by a physician, to monitor the health of the user of the mobile station 10. The user application may be installed on the mobile station (i.e., user application 108) or, alternatively, may reside external to the mobile station (i.e., on content server 40) along with the availability of the required context atoms provided by the privacy engine 112. To monitor the health of the user, the user application subscribes to context atoms such as "user. The physician may set a number of conditions relating to the health of the user, which may be stored in the script engine 118. For example, the condition can monitor, for example, the comfort of the user as hot and last for more than 30 minutes. In such a case, where the condition is satisfied, the mobile station may be triggered to send an alert to the user. If the user does not acknowledge the alert, such as by deleting it from the heat source, the mobile station is triggered to send a notification to alert the doctor. In addition, the user application can be configured to maintain a log file of the monitored context atoms, which can then be transmitted to the physician over the air, or when the user next makes a physician appointment.
As another example of a health condition of a user in relation to the mobile station 10, consider that the user has a schedule specifying that the user's blood pressure should be checked one or more times by the blood pressure monitoring device (i.e., the context source). In this case, the user may operate the blood pressure monitoring device to measure the blood pressure of the user, where the measured blood pressure values may thus be stored as context atoms (e.g., "user. Also in this case, the schedule may be maintained, for example, by the script engine 118, or alternatively by a schedule application that is remotely operated locally by the mobile station. During operation, the condition may then monitor, for example, that the user fails to check the user's blood pressure at the corresponding schedule time, again as determined by comparing the timestamp of the last corresponding context atom with the schedule time. The mobile station is then triggered to send an alert to the user when the condition is satisfied. As before, if the user does not acknowledge the alert, such as by operating a blood pressure measurement device to measure the user's blood pressure, the mobile station can be triggered to send a notification alerting the physician.
As described above, the script engine 118 may store a number of conditions that result in an alert being sent, such as to a user of the mobile station 10. However, as can be appreciated, it is also desirable in various circumstances to delay or even prevent the alarm from being sent. In this way, the script engine may also store one or more conditions that specify any alarm delays or prevent their occurrence. For example, continuing the above example of triggering the mobile station to send an alarm when the user's comfort level is hot and persists for more than 30 minutes, or when the user does not check the user's blood pressure at the time of the corresponding schedule, the script engine may also store one or more conditions that specify delaying or preventing such an alarm from occurring. For example, the condition may be monitored when the user is located in the doctor's office, and when the condition is satisfied, the sending of the alert is delayed until the user leaves the doctor's office, and if desired, the sending of the alert is prevented if the condition is no longer satisfied when the user leaves the doctor's office. In this regard, the condition may completely prevent the mobile station from sending the alert when the condition is satisfied, and instead delay the sending of the alert.
According to one aspect of the invention, all or part of the inventive system, such all or part of the mobile station 10, the electronic device 11 and/or the content server 40, generally operates under control of a computer program product (e.g., the context engine 102, the script engine 118, the privacy engine 112 and/or the communication manager 114, etc.). The computer program product for performing the methods of embodiments of the invention includes a computer-readable storage medium, such as the non-volatile memory medium, and computer-readable program code portions, such as a series of computer instructions, embodied in the computer-readable medium.
In this regard, FIGS. 4 and 5 are flowcharts of methods, systems, and program products according to the invention. It will be understood that each block or step of the flowcharts, and combinations of blocks in the flowcharts, can be implemented by computer program instructions. These computer program instructions may be loaded onto a computer or other programmable apparatus to produce a machine, such that the instructions which execute on the computer or other programmable apparatus create means for implementing the functions specified in the flowcharts block(s) or step(s). These computer program instructions may also be stored in a computer-readable memory that can direct a computer or other programmable apparatus to function in a particular manner, such that the instructions stored in the computer-readable memory produce an article of manufacture including instruction means which implement the function specified in the flowcharts block(s) or step(s). The computer program instructions may also be loaded onto a computer or other programmable apparatus to cause a series of operational steps to be performed on the computer or other programmable apparatus to produce a computer implemented process such that the instructions which execute on the computer or other programmable apparatus provide steps for implementing the functions specified in the flowcharts block(s) or step(s).
Accordingly, blocks or steps of the flowcharts support combinations of means for performing the specified functions, combinations of steps for performing the specified functions and program instruction means for performing the specified functions. It will also be understood that each block or step of the flowchart, and combinations of blocks or steps in the flowchart, can be implemented by special purpose hardware-based computer systems which perform the specified functions or steps, or combinations of special purpose hardware and computer instructions.
Many modifications and other embodiments of the invention will come to mind to one skilled in the art to which this invention pertains having the benefit of the teachings presented in the foregoing descriptions and the associated drawings. Therefore, it is to be understood that the inventions are not to be limited to the specific embodiments disclosed and that modifications and other embodiments are intended to be included within the scope of the appended claims. Although specific terms are employed herein, they are used in a generic and descriptive sense only and not for purposes of limitation.

Claims (62)

1. A mobile station for managing context-related information, wherein the mobile station comprises:
a context engine to store context-related information based on at least a portion of at least one condition, wherein the context engine further manages an exchange of the context-related information with at least one context consumer; and
a communication manager to communicate with at least one context consumer to exchange context-related information, wherein the at least one context consumer is external to the mobile station.
2. A mobile station according to claim 1, wherein the context engine comprises:
a blackboard storing the context-related information; and
a subscription manager that provides at least one subscription for at least a portion of the context-related information to at least one context consumer.
3. A mobile station according to claim 2, wherein the context-related information is at least one of information retrieved from and stored by the blackboard.
4. A mobile station according to claim 1, wherein the context-related information is stored in the form of at least one context atom comprising at least a name and an associated value.
5. A mobile station according to claim 4, wherein the at least one context atom further comprises at least one of a timestamp, a source identifier, a reliability of a corresponding value, and an accuracy of the corresponding value.
6. A mobile station according to claim 5, wherein at least a portion of the context-related information is based upon at least one of a timestamp, a source identifier, a reliability of a corresponding value, and an accuracy of the corresponding value.
7. The mobile station of claim 1, further comprising:
a subscription manager for allowing at least one context consumer to subscribe to at least one event relating to at least a part of said context-related information.
8. A mobile station according to claim 1, wherein the context engine stores context-related information from at least one context generator, and the at least one context generator comprises at least one of an application internal to the mobile station, an application external to the mobile station, and a user of the mobile station.
9. The mobile station of claim 1, further comprising:
at least one sensor that measures at least a portion of at least one condition of at least one of the mobile station and a user of the mobile station.
10. A mobile station as defined in claim 9, wherein the at least one sensor is further to process the portion of the at least one condition as context-related information.
11. The mobile station of claim 1, further comprising:
a privacy engine to provide at least a portion of at least one of security and privacy for the exchange of the context-related information.
12. A mobile station according to claim 11, wherein the privacy engine is operable in accordance with at least one rule for granting or denying permission to exchange context-related information with at least one context consumer.
13. A mobile station according to claim 1, wherein the communication manager manages connectivity to at least one context generator for the exchange of context-related information, and the communication manager further abstracts at least one communication technology such that the context engine is capable of operating independently of the at least one communication technology.
14. A mobile station according to claim 1, wherein the context engine is to transmit at least a portion of the context-related information to at least one context consumer external to the mobile station, such that the at least one context consumer is to determine the context of the mobile station based on the transmitted portion of the context-related information.
15. A mobile station according to claim 1, wherein the context engine is to communicate with the at least one external device according to a context exchange protocol that defines a format in which the context-related information is at least one of transmitted and received.
16. The mobile station of claim 1, further comprising:
a script engine for executing at least a portion of at least one context rule associated with at least a portion of the context-related information, wherein the at least one context rule comprises at least a portion of at least one condition, and the script engine executes the at least one context rule when the respective portion of the at least one condition is satisfied.
17. A mobile station according to claim 16, wherein the at least one context rule further comprises at least one action to be performed when a respective portion of the at least one condition is satisfied.
18. A mobile station according to claim 17, wherein a context consumer comprises an application for monitoring a health condition of a user of the mobile station, wherein at least one context rule is associated with the health condition of the user, and
the corresponding at least one context rule includes at least a portion of at least one condition related to the user's health condition and an alert to be sent when a corresponding portion of the at least one condition is satisfied.
19. The mobile station of claim 1, further comprising:
at least one application program interface that facilitates at least one of the sending and receiving of the context-related information.
20. A communication system, comprising:
at least one context generator that creates context-related information;
determining at least one contextual user of a context based on the context-related information; and
a mobile station that stores context-related information created by the at least one context generator, wherein the mobile station further manages an exchange of context-related information between the at least one context generator and the at least one context user.
21. A communications system according to claim 20, wherein the mobile station comprises a context engine that stores the context-related information and provides at least one subscription for at least a portion of the context-related information to the at least one context consumer.
22. A communications system according to claim 21, wherein the context-related information is at least one information retrieved from and stored by the context engine.
23. A communication system according to claim 20, wherein the mobile station is capable of storing the context-related information in the form of at least one context atom comprising at least a name and an associated value.
24. A communication system according to claim 23, wherein the mobile station stores the context-related information in the form of at least one context atom further comprising at least one of a timestamp, a source identifier, a reliability of a corresponding value, and an accuracy of a corresponding value.
25. A communication system according to claim 24, wherein at least a portion of the context-related information is based on at least one of a timestamp, a source identifier, a reliability of a corresponding value, and an accuracy of the corresponding value.
26. A communications system according to claim 20, wherein the mobile station comprises a subscription manager that enables at least one context consumer to subscribe to at least one event relating to at least a portion of the context-related information.
27. A communications system according to claim 20, wherein the at least one context generator comprises at least one of an application internal to the mobile station, an application external to the mobile station, and a user of the mobile station.
28. A communications system according to claim 20, wherein the at least one context generator comprises at least one sensor that measures at least a portion of at least one condition of at least one of the mobile station and a user of the mobile station.
29. A communication system according to claim 28, wherein said at least one sensor further processes said portion of said at least one condition into context-related information.
30. A communications system according to claim 20, wherein the mobile station comprises a privacy engine that provides at least a portion of at least one of security and privacy for the exchange of the context-related information.
31. A communications system according to claim 30, wherein the privacy engine operates in accordance with at least one rule of authorisation or denial of permission to exchange context-related information with at least one context consumer.
32. A communications system according to claim 20, wherein the mobile station comprises a communication manager that manages connectivity to the at least one context generator for exchanging context-related information, and the communication manager further abstracts the at least one communication technology such that the mobile station operates independently of the at least one communication technology.
33. A communications system according to claim 20, wherein the mobile station is capable of transmitting at least a portion of the context-related information to at least one context consumer external to the mobile station, such that the at least one context consumer can determine the context of the mobile station based on the transmitted portion of the context-related information.
34. A communication system according to claim 20, wherein the mobile station is capable of communicating with at least one external device according to a context exchange protocol that defines a format in which the context-related information is at least one of transmitted and received.
35. A communications system according to claim 18, wherein the mobile station comprises a script engine that executes at least a portion of at least one context rule relating to at least a portion of the context-related information, wherein the at least one context rule includes at least a portion of at least one condition, and wherein the script engine executes the at least one context rule when a corresponding portion of the at least one condition is satisfied.
36. A communication system according to claim 35, wherein the at least one context rule further comprises at least one action to be performed when a respective portion of the at least one condition is satisfied.
37. A communications system according to claim 36, wherein a context consumer comprises an application for monitoring the health of a user of the mobile station, wherein at least one context rule relates to the health of the user, and
the corresponding at least one context rule includes at least a portion of at least one condition related to the user's health condition and an alert to be sent when a corresponding portion of the at least one condition is satisfied.
38. A communications system according to claim 20, wherein the mobile station comprises at least one application program interface for facilitating at least one of sending and receiving context-related information.
39. The communication system of claim 20, further comprising:
at least one electronic device in communication with the mobile station, wherein the at least one electronic device comprises a context engine that stores a portion of context-related information stored by the mobile station.
40. A method for managing context-related information with a mobile station, wherein the method comprises:
measuring at least a portion of at least one condition;
storing context-related information based on the portion of the at least one condition;
managing an exchange of context-related information with at least one context user, wherein the managing an exchange comprises:
receiving a request from a contextual user for at least a portion of the contextually relevant information;
determining whether the contextual user is authorized to receive the requested portion of the contextually relevant information; and
sending the requested portion of the context-related information when allowed to be authorized.
41. The method according to claim 40, wherein managing the exchange of context-related information further comprises:
providing at least one subscription to at least a portion of the context-related information for the at least one context consumer.
42. A method according to claim 40, wherein storing context-related information comprises storing the context-related information in the form of at least one context atom comprising at least a name and an associated value.
43. A method according to claim 42, wherein storing context-related information comprises storing the context-related information in the form of at least one context atom further comprising at least one of a timestamp, a source identifier, a reliability of a corresponding value, and an accuracy of a corresponding value.
44. The method according to claim 43, wherein at least a portion of the context-related information is based on at least one of a timestamp, a source identifier, a reliability of a corresponding value, and an accuracy of the corresponding value.
45. A method according to claim 40, wherein measuring at least a portion of the at least one condition comprises measuring at least a portion of the at least one condition by a context generator, wherein the context generator comprises at least one of an application internal to the mobile station, an application external to the mobile station, and a user of the mobile station.
46. The method of claim 40, wherein measuring at least a portion of at least one condition further comprises processing the portion of the at least one condition into context-related information.
47. The method of claim 40, wherein determining whether permission is authorized comprises determining whether permission is authorized based on at least one rule.
48. The method according to claim 40, wherein transmitting the requested portion of the context-related information comprises transmitting the requested portion of the context-related information to at least one context consumer external to the mobile station, such that the at least one context consumer determines the context of the mobile station based on the transmitted portion of the context-related information.
49. The method according to claim 40, wherein managing the exchange of context-related information further comprises:
executing at least one context rule associated with at least a portion of the context-related information, wherein the at least one context rule comprises at least a portion of at least one condition, and executing the at least one context rule comprises executing the at least one context rule when a corresponding portion of the at least one condition is satisfied.
50. A method according to claim 49, wherein the at least one context rule further comprises at least one action to be performed when a respective portion of the at least one condition is satisfied.
51. A method according to claim 50, wherein a context consumer comprises an application for monitoring the health of a user of the mobile station, wherein at least one context rule is related to the health of the user, and
the corresponding at least one context rule includes at least a portion of at least one condition related to the user's health condition and an alert to be sent when a corresponding portion of the at least one condition is satisfied.
52. A computer program product for managing context-related information, the computer program product comprising at least one computer-readable storage medium having computer-readable program code portions stored therein, the computer-readable program code portions comprising:
a first executable portion for receiving measurements of at least a portion of at least one condition;
a second executable portion for storing context-related information based on the portion of the at least one condition;
a third executable portion for managing exchange of the context-related information with at least one context consumer, wherein the third executable portion is for receiving a request for at least a portion of the context-related information from a context consumer, determining whether the context consumer is authorized to receive the requested portion of the context information, and when authorized to do so, transmitting the requested portion of the context-related information.
53. The computer program product of claim 52, wherein the third executable portion is further for providing at least one subscription to at least a portion of the context-related information to the at least one context consumer.
54. A computer program product according to claim 52, wherein the second executable portion is for storing the context-related information in the form of at least one context atom including at least a name and a related value.
55. A computer program product according to claim 54, wherein the second executable portion is for storing the context-related information in the form of at least one context atom further comprising at least one of a timestamp, a source identifier, a reliability of a corresponding value, and an accuracy of a corresponding value.
56. The computer program product according to claim 55, wherein at least a portion of the context-related information is based on at least one of a timestamp, a source identifier, a reliability of a corresponding value, and an accuracy of the corresponding value.
57. A computer program product according to claim 52, wherein the first executable portion is further for processing the portion of the at least one condition into context-related information.
58. A computer program product according to claim 52, wherein the third executable portion is for determining whether authorization permission is granted based on at least one rule.
59. The computer program product of claim 52, wherein the third executable portion is for transmitting the requested portion of the context-related information to at least one context consumer external to the mobile station, such that the at least one context consumer determines a context of the mobile station based on the transmitted portion of the context-related information.
60. A computer program product according to claim 52, wherein the third executable portion is further for executing at least one context rule associated with at least a portion of the context-related information, wherein the at least one context rule includes at least a portion of at least one condition, and wherein the third executable portion is for executing the at least one context rule when a corresponding portion of the at least one condition is satisfied.
61. The computer program product according to claim 60, wherein said at least one context rule further comprises at least one action to be performed when a corresponding portion of said at least one condition is satisfied.
62. The computer program product according to claim 61, wherein a context consumer comprises an application for monitoring a health condition of a user of the mobile station, wherein at least one context rule relates to the health condition of the user, and the corresponding at least one context rule comprises at least a portion of at least one condition relating to the health condition of the user, and an alert to be sent when the corresponding portion of the at least one condition is satisfied.
HK06110898.6A 2003-04-03 2004-04-02 Managing context-related information with a mobile station HK1089026A (en)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
US60/460,316 2003-04-03

Publications (1)

Publication Number Publication Date
HK1089026A true HK1089026A (en) 2006-11-17

Family

ID=

Similar Documents

Publication Publication Date Title
CN104486479B (en) For the system of managing context-related information, movement station and method
US9560479B2 (en) Secure and private location sharing for location-aware mobile communication devices
US8737619B2 (en) Method of triggering location based events in a user equipment
US8073461B2 (en) Geo-tagged journal system for location-aware mobile communication devices
US9143380B2 (en) System and method for third party specified generation of web server content
CN102461130B (en) Push-based location updates
US20070281716A1 (en) Message transmission system for users of location-aware mobile communication devices in a local area network
US20070281690A1 (en) Displaying and tagging places of interest on location-aware mobile communication devices in a local area network
US20070282621A1 (en) Mobile dating system incorporating user location information
CN1631046A (en) In a wireless system, a method of selecting an application when receiving a dedicated message and a method of locating a user using user location awareness
TW201005317A (en) Method, apparatus, and computer program product for location sharing
US20110151891A1 (en) Communication system and a mobile station, proxy location server and method of operation for use in the system
US12425810B2 (en) Method for determining proximity between mobile devices, method for managing a database, computer program product, and mobile device
KR20050024377A (en) System, apparatus, and method for effecting network connections via wireless devices using radio frequency identification
HK1089026A (en) Managing context-related information with a mobile station
Godino-Llorente et al. P2P Multiuser Low-Cost Universal Solution for On-Demand GPS Positioning and Tracking in Large Environments
GB2573010A (en) Peer to peer communication system