WO2010075883A1 - Context-based communication service - Google Patents
Context-based communication service Download PDFInfo
- Publication number
- WO2010075883A1 WO2010075883A1 PCT/EP2008/068349 EP2008068349W WO2010075883A1 WO 2010075883 A1 WO2010075883 A1 WO 2010075883A1 EP 2008068349 W EP2008068349 W EP 2008068349W WO 2010075883 A1 WO2010075883 A1 WO 2010075883A1
- Authority
- WO
- WIPO (PCT)
- Prior art keywords
- context
- context information
- derived
- query
- terminal
- Prior art date
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/90—Details of database functions independent of the retrieved data types
- G06F16/95—Retrieval from the web
- G06F16/953—Querying, e.g. by the use of web search engines
- G06F16/9537—Spatial or temporal dependent retrieval, e.g. spatiotemporal queries
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W8/00—Network data management
- H04W8/22—Processing or transfer of terminal data, e.g. status or physical capabilities
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/24—Querying
- G06F16/242—Query formulation
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/24—Querying
- G06F16/245—Query processing
- G06F16/2453—Query optimisation
- G06F16/24534—Query rewriting; Transformation
- G06F16/24542—Plan optimisation
- G06F16/24545—Selectivity estimation or determination
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/24—Querying
- G06F16/245—Query processing
- G06F16/2457—Query processing with adaptation to user needs
- G06F16/24575—Query processing with adaptation to user needs using context
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/40—Information retrieval; Database structures therefor; File system structures therefor of multimedia data, e.g. slideshows comprising image and additional audio data
- G06F16/43—Querying
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/50—Network services
- H04L67/52—Network services specially adapted for the location of the user terminal
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/50—Network services
- H04L67/535—Tracking the activity of the user
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W4/00—Services specially adapted for wireless communication networks; Facilities therefor
- H04W4/02—Services making use of location information
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/04—Protocols specially adapted for terminals or networks with limited capabilities; specially adapted for terminal portability
Definitions
- the present invention relates to the field of communication services.
- the present invention relates to a method for providing a context-based service to a terminal of a communication network.
- the present invention relates to a context server and a communication system configured to implement the above method.
- communication networks allow to provide users with a number of data services (for instance, Internet access, e-mail, exchange of messages, video- on-demand) and/or telephone services (for instance, calls and conference calls).
- data services for instance, Internet access, e-mail, exchange of messages, video- on-demand
- telephone services for instance, calls and conference calls
- a user may access such services by means of a terminal, which can be either a fixed terminal (i.e. a terminal which is connected to the communication network distributing the services through a wired connection) or a mobile terminal (i.e. a terminal which is connected to the communication network distributing the services through a wireless connection).
- exemplary mobile terminals are the GSM (Global System for Mobile communications) or UMTS (Universal Mobile Telecommunication System) mobiles and the laptop computers provided with a GSM or UMTS interface, or with a Bluetooth or Wi-Fi interface.
- a terminal (in particular, a mobile terminal) is frequently equipped with a number of sensors allowing to detect context information about the terminal.
- context information are:
- the terrestrial coordinates at which the terminal is located which may be detected e.g. by a GPS device installed on the terminal;
- the device is connected to, which may be detected by any GSM or UMTS mobile; - the luminosity and/or the temperature and/or the humidity of the environment surrounding the terminal, which can be detected by suitable sensors installed on the terminal;
- Context-based service will designate a data service or a telephone service which is capable of acquiring context information from a terminal and to use such context information for adapting itself to the context of the terminal.
- US 7,383,253 discloses a Continuous Query Processor that processes queries on continuously updating data sources or data streams and includes a Publication Manager for accepting published structured elements of data from data stream Publishers, a Subscription Manager for giving structured elements of data to one or more data stream Subscribers, a Query Module Manager for processing queries represented by Query Modules, a Query Module Store for maintaining deployed Query Modules, a Query Primitive Manager performing processing for various primitives that comprise a Query Module, and a Schedule Manager for coordinating when a primitive within a Query Module gets processed in order to maintain that each continuous query is continuously updated immediately upon the arrival of structured element data affecting any part of a continuous query.
- VCI virtual construct intervals
- Each construct interval has a unique ID or interval coordinate and a set of endpoints.
- a construct interval is considered activated when a predicate interval using it in its decomposition is added to the system.
- the predicate ID is then inserted into the ID lists associated with the decomposed VCIs.
- a bitmap vector is used to indicate the activation of VCIs that cover an event value.
- the challenge is to find an appropriate set of construct intervals to make predicate decomposition simple and, more importantly, to build efficient bitmap indexes. Because each construct interval covers only a small range of attribute values, the invention also uses bitmap clipping to cut unnecessary bitmap storage. To facilitate bitmap clipping, the invention introduce the covering segment concept. Bit positions outside a covering segment are pruned.
- a computing application comprises at least one instruction set to cooperate with a data environment to optimise the processing of subscriptions by the data environment when communicating with cooperating services and/or applications.
- a subscription is identified.
- a subscription template is created for the subscription and the subscription template is parameterised to create a parameter table containing parameters (e.g. subscription constants).
- a join is then performed between the parameters of the parameter table and the parameterised subscription templates to generate application and/or service data required by the cooperating services and/or applications.
- the data is then processed by the applications and/or services.
- raw context information will designate context information that the terminal is capable of detecting.
- exemplary raw context information may be for instance the above mentioned terrestrial coordinates, identifier of the mobile cell, identifier of the Wi-Fi hotspot, and identifiers of Bluetooth devices.
- Further exemplary raw context information may be for instance a list of Bluetooth devices located in proximity of a given terminal.
- derived context information will designate context information derived by suitably processing raw context information.
- exemplary derived context information that may be derived from the above mentioned terrestrial coordinates is the address at which the terminal is located. Indeed, the address can not be directly provided by the terminal itself, but can be derived by suitably processing terrestrial coordinates provided by the terminal.
- exemplary derived context information that may be derived from the above mentioned list of Bluetooth devices located in proximity of a given terminal is a list of users located in proximity of the terminal. Indeed, also in this case, the list of users cannot be directly provided by the terminal itself, but can be derived by suitably processing the list of Bluetooth devices provided by the terminal.
- Derived context information may be formed by different attributes.
- the derived context information address may comprise at least three attributes: city, street and street number.
- the identifier of each user is an attribute of the derived context information.
- a context-based service may be suitable for adapting itself to raw context information about the terminal. For instance, a context-based service may provide transmission of tourist information to the terminal when the terminal enters the coverage area of a given Wi-Fi hotspot (e.g., a Wi-Fi hotspot located in a museum).
- a context-based service may be suitable for adapting itself to one or more attributes of derived context information about the terminal.
- a context-based service may allow the user defining a list of other users (e.g., his/her friends) and, while the user with his/her terminal is located in a given city (e.g. a city different from his/her residence city), being notified when the terminals of one or more of such other users are located in proximity of his/her terminal.
- This exemplary context-based service is therefore suitable for adapting itself to a single attribute (i.e. city) of derived context information (i.e. address).
- the Applicant has faced the problem of providing a method for providing a context-based service to a terminal of a communication network, which is capable of providing a context-based service suitable for adapting itself to one or more attributes of derived context information about the terminal.
- a method for providing a context-based service to a terminal of a communication network comprising, at a context server cooperating with the communication network: a) receiving a query from a service application suitable for implementing the context based service, the query indicating that the context server should perform an action when a query condition is fulfilled, the query condition referring to one or more attributes of derived context information indicative of a context of the terminal; b) generating a query evaluation trigger indicating that the query condition should be evaluated when the derived context information is updated; c) identifying raw context information allowing to derive the derived context information; d) generating a calculation trigger indicating that the derived context information should be calculated when an update of the raw context information is received from the terminal; e) receiving from the terminal an update of the raw context information and, according to the calculation trigger, calculating a new value of the derived context information according to the update; and f) according to the query evaluation trigger, evaluating the query condition by using the new value
- the step c) may comprise identifying the raw context information as raw context information whose variation may determine a variation of the one or more attributes referred to by the query condition.
- step c) comprises identifying further raw context information allowing to derive the derived context information
- the step d) comprises generating a further calculation trigger indicating that the derived context information should be calculated also when an update of the further raw context information is received from the terminal.
- Step e) may comprise, after calculating the new value of the derived context information, storing the new value in a context database cooperating with the context server, the context database also storing a previously stored value of the derived context information. Step e) may further comprise comparing the new value with the stored value and, if the new value is equal to the stored value, deciding not to perform step f).
- step e) further comprises removing the previously stored value of the derived context information from the context database upon reception of the update. In one embodiment, step e) further comprises removing the previously stored value of the derived context information from the context database upon expiration of an expiry time.
- the present invention provides a context server for a communication network, the context server being configured to provide a context- based service to a terminal of the communication network, the context server comprising:
- a query processor configured to: a) receive a query from a service application suitable for implementing the context based service, the query indicating that the context server should perform an action when a query condition is fulfilled, the query condition referring to one or more attributes of derived context information indicative of a context of the terminal; b) generate a query evaluation trigger indicating that the query condition should be evaluated when the derived context information is updated; c) identify raw context information allowing to derive the derived context information; and d) generate a calculation trigger indicating that the derived context information should be calculated when an update of the raw context information is received from the terminal; and - a trigger processor configured to: e) receive from the terminal an update of the raw context information and, according to the calculation trigger, calculate a new value of the derived context information according to the update; and f) according to the query evaluation trigger, evaluate the query condition by using the new value and, if the query condition is fulfilled, performing the action.
- the query processor is preferably configured to identifying the raw context information as raw context information whose variation may determine a variation of the one or more attributes referred to by the query condition.
- the query processor is configured to identify the raw context information by invoking a derived context provider cooperating with the context server.
- the context server may further comprise a context database suitable for storing a previously stored value of the derived context information.
- the trigger processor is further configured to, after calculating the new value of the derived context information, store the new value in the context database.
- the trigger processor is further configured to compare the new value with the stored value and, if the new value is equal to the stored value, decide not to evaluate the query condition by using the new value. In one embodiment the trigger processor is further configured to remove the previously stored value of the derived context information from the context database upon reception of the update.
- the trigger processor may be further configured to remove the previously stored value of the derived context information from the context database upon expiration of an expiry time.
- the present invention provides a communication system comprising a communication network and a context server cooperating with the communication network, the context server being configured to provide a context-based service to a terminal of the communication network, wherein the context server is as set forth above.
- FIG. 1 schematically shows a communication system suitable for implementing the method according to an embodiment of the present invention
- FIG. 2 is a flow chart schematically showing the operation of the communication system of Figure 1 , when a query is received from a service application
- - Figure 3 is flow chart schematically showing the operation of the communication system of Figure 1 , when an update of raw context information is received from a terminal.
- Figure 1 schematically shows a communication system CS suitable for implementing the method according to embodiments of the present invention.
- the communication system CS comprises a communication network CN.
- the communication network CN may comprise a mobile access network such as a GSM or UMTS network and/or a transport packet-switched network such as an Internet network.
- the communication system CS comprises a context server SCtx and a service application A.
- the service application A is suitable for implementing (when activated) a context- based service by cooperating with the context server SCtx, as it will be described in further detail herein after.
- the service application A may be included in the context server SCtx.
- it may be a configuration application which is automatically activated at the context server SCtx when a given event occurs in the communication system CS (e.g., a new terminal is connected to the communication network CN).
- the context server SCtx is suitable for cooperating with the service application A.
- the context server SCtx comprises a query pre-processor QPP, a query processor QP, a trigger database TR-DB, a trigger processor TRP, and a context database C-DB.
- the roles of the various components of the context server SCtx will be explained in detail herein after.
- the communication system CS comprises at least one derived context provider DCP, which is suitable for cooperating with the context server SCtx. More particularly, the derived context provider DCP is suitable for receiving raw context information from the context server SCtx, for processing them for calculating derived context information and for transmitting the derived context information to the context server SCtx, as it will be described in further detail herein after.
- the communication system CS comprises a terminal T, by means of which a user may access the context-based service implemented by the service application A.
- the terminal T cooperates with a sensor module SM, which includes one or more sensors suitable for detecting raw context information relating to the terminal T.
- the sensor module SM is represented as included in the terminal T. However, according to other embodiments not shown in the drawings, the sensor module SM may be external to the terminal T.
- the terminal T comprises a context client CCtx, which is suitable for cooperating with the context server SCtx, for providing the context server SCtx with raw context information detected by the sensor module SM.
- the context-based service implemented by the service application A may be the above mentioned service that allows the user defining a list of other users (e.g., his/her friends) and, while the user with his/her terminal is located in a given city (e.g. a city different from his/her residence city), being notified when the terminals of one or more of such other users are located in proximity of his/her terminal.
- a given city e.g. a city different from his/her residence city
- the service application A is activated when the user requests to access the context-based service. According to other variants, the service application A is activated at the request of the context server SCtx.
- the service application A when the service application A is activated, it generates a query Q[action, Cq(DS)] (step 1 ).
- the query Q[action, Cq(DS)] indicates that, for implementing the context-based service, the service application A needs the context server SCtx to perform a given action (in the above exemplary context based service, the context server SCtx should provide the service application A with the identifiers of users whose terminals are located in proximity of the terminal T) when a query condition Cq is fulfilled.
- the query condition Cq relates to one or more attributes of derived context information DS about the terminal T.
- the query condition Cq may be a change of one or more attributes of the derived context information DS, or the equality of such one or more attributes to a predefined value.
- the derived context information DS is the address
- the query condition Cq relates only to a single attribute of the address (i.e. the city), the query condition Cq being a inequality between the city where the terminal T is currently located and the residence city of the user.
- the query Q[action, Cq(DS)] preferably also comprises an identifier of the terminal T, since the communication system CS of Figure 1 generally comprises various terminals, and therefore the application A has to specify the terminal to which the query relates. For simplicity, in the following description, the identifier of the terminal T will be omitted.
- the query Q[action, Cq(DS)] is received by the context server SCtx, which preferably processes it by means of its query pre-processor QPP.
- the query preprocessor QPP preferably validates the query Q[action, Cq(DS)] (step not shown in Figure 2).
- the query Q[action, Cq(DS)] is forwarded to the query processor QP, that generates a query evaluation trigger TRI [DS, evaluate(Cq)] associated to the query Q[action, Cq(DS)] (step 2).
- the query evaluation trigger TRI [DS, evaluate(Cq)] indicates that, for allowing the service application A to operate in a correct way, the context server SCrx should evaluate the query condition Cq (i.e. check whether it is fulfilled or not) and react accordingly (i.e. perform the action specified in the query when the query condition Cq is fulfilled) each time an update of the derived context information DS is received.
- the query evaluation trigger TRI [DS, evaluate(Cq)] is then stored in the trigger database TR-DB.
- the query processor QP invokes the derived context provider DCP for retrieving possible dependencies of the derived context information DS referred to by the query condition Cq from raw context information RS (step 3).
- the derived context provider DCP selects, among all the raw context information impacting on the derived context information DS, only the raw context information RS whose variations could determine a variation of the one or more attributes actually referred to by the query condition Cq.
- variations of the address may be indicated by variations of raw context information such as: the terrestrial coordinates and/or the mobile cell's identifier and/or the identifiers of the Bluetooth devices detected by the Bluetooth interface of the terminal T and/or the identifier of the Wi-Fi hotspot detected by the Wi-Fi interface of the terminal T.
- the identifiers of the Bluetooth devices detected by the Bluetooth interface of the terminal T change, this is typically not determined by a variation of the city where the terminal T is located. This is due to the fact that the coverage area of a Bluetooth device typically is of some tens of meters.
- Variations of the identifiers of the Bluetooth devices detected by the Bluetooth interface are therefore typically determined by a variation of the position of the terminal T within the same building at the same street number, or within a same street. The same considerations apply also to changes of the identifier of the Wi-Fi hotspot detected by the Wi-Fi interface of the terminal T.
- this may indicate a change of city.
- the identifiers of the Bluetooth devices detected by the Bluetooth interface of the terminal T and/or the identifier of the Wi-Fi hotspot detected by the Wi-Fi interface of the terminal T are preferably disregarded, since variations of such raw context information do not indicate variations of city.
- the mobile cell's identifier are preferably taken into account, since variations of such raw context information may indicate variations of city.
- the terrestrial coordinates they should also be taken into account, since also variations of such raw context information may indicate variations of the city.
- the query processor QP After selection of the raw context information RS by the derived context provider DCP, the query processor QP generates a calculation trigger TR2[RS, calculate(DS)] (step 4).
- the calculation trigger TR2[RS, calculate(DS)] indicates that the derived context information DS referred to by the query condition Cq should be calculated each time an update on the raw context information RS selected by the derived context provider DCP is received from the terminal T at the context server SCtx.
- the query processor QP may generate a calculation trigger TR2[RS, calculate(DS)] indicating that the derived context provider DCP should calculate the address each time an update of the terrestrial coordinates is received at the context server SCtx. Therefore, the value of the derived context information DS (i.e. the address) is advantageously calculated only upon reception of updates of raw context information RS (i.e. the terrestrial coordinates) that may impact on the attribute city, while avoiding to calculate it upon reception of updates of any other raw context information transmitted by the terminal T (i.e. identifiers of Bluetooth devices or identifier of Wi-Fi hotspot) that, according to the information provided by the derived context provider DCP, are not going to impact the attribute city.
- the terminal T i.e. identifiers of Bluetooth devices or identifier of Wi-Fi hotspot
- the query processor QP In case the derived context provider DCP selects more than one raw context information RS, during step 4 the query processor QP generates a separate calculation trigger for each selected raw context information. For instance, by referring to the above exemplary context-based service, if the derived context provider DCP selects both the terrestrial coordinates and the identifier of the mobile cell as raw context information RS, then the query processor QP may generate a first calculation trigger indicating that the address should be recalculated when updates of the terrestrial coordinates are received, and a second calculation trigger indicating that the address should be recalculated when updates of the mobile cell's identifier are received.
- the calculation trigger(s) generated during step 4 are then stored in the trigger database TR-DB.
- the context server SCtx After generation of the query evaluation trigger TRI [DS, evaluate(Cq)] and of the calculation trigger(s) TR2[RS, calculate(DS)], the context server SCtx awaits for possible updates of raw context information transmitted by the terminal T.
- the terminal T sends updates of all the raw context information to the context server SCtx either periodically or each time any of such raw context information changes value. Therefore, by referring to the above exemplary context- based service, the terminal T sends an update of the detected terrestrial coordinates, of the mobile cell's identifier, of the Wi-Fi hotspot identifier and of the Bluetooth device identifiers each time any of these varies.
- the context server SCtx receives it by means of its trigger processor TRP
- the trigger processor TRP then stores the update U in the context database C-DB (step 6).
- the trigger processor TRP invokes the derived context provider DCP, that in turn provides it with the derived context information that depend on the raw context information whose update U has been received. For instance, by referring to the above exemplary context-based service, if an update U of the Wi-Fi hotspot identifier is received, the derived context provider DCP informs the trigger processor TRP that, in view of the selection performed during step 3, there are no derived context information depending on such a raw context information. On the other hand, if an update U of terrestrial coordinates is received, the derived context provider DCP informs the trigger processor TRP that, in view of the selection performed during step 3, the derived context information address depend on such raw context information.
- the trigger processor TRP removes from the context database C-DB the stored values SV of the derived context information that depend on the raw context information whose update U has been received (step 7). This advantageously allows preventing that query conditions referring to attributes of such derived context information continue being considered fulfilled during the time period elapsing between reception of the update U and calculation of new values of such derived context information according to the update U.
- the identifiers of further users whose terminals are located in proximity of the terminal T should be provided to the terminal T while the terminal T is located in any city different from the city of residence of the user. If the user moves from one city to another city, the terrestrial coordinates detected by the terminal T change accordingly. The updates of the terrestrial coordinates are periodically sent to the context server SCtx. Upon reception of an update of the terrestrial coordinates, the trigger processor TRP invokes the derived context provider DCP, thus determining that the address at which the terminal T is located depends on the terrestrial coordinates, and accordingly deletes the stored address from the context database C-DB.
- the query condition Cq would be fulfilled even when the updated terrestrial coordinates indicate that the user is now located in his/her residence city, until the new address is calculated.
- the service application A would then continue notifying to the terminal T the identifiers of other users whose terminals are located in its proximity, even if the terminal T is now in his/her residence city. This situation would disadvantageously persist until a new address is calculated based on the updated terrestrial coordinates.
- both the updates U of the raw context information and the stored values SV of the derived context information stored in the context database C-DB have a predefined expiry time.
- the expire time of the stored values SV of the derived context information is determined by the derived context provider DCP.
- both the updates of terrestrial coordinates and the calculated values of the address may have an expiry time of e.g. 4 hours.
- the trigger processor TRP checks in the trigger database TR-DB whether a calculation trigger is active on the raw context information whose update U has been received (step 8).
- the trigger processor TRP does not perform any other action.
- this situation occurs for instance when an update of identifiers of Bluetooth devices detected by the Bluetooth interface of the terminal T is received at the context server SCtx. Since these raw context information have not been selected during step 3, no calculation trigger has been generated for them. Accordingly, upon reception of updates of the identifiers of detected Bluetooth devices, the context server SCtx advantageously does not perform any further action.
- the trigger processor TRP reads in the context database C-DB the update U of the raw context information and transmits it to the derived context provider DCP.
- the derived context provider DCP in turn calculates according to the update U a new value NV of the derived context information dependent on such raw context information (step 9), and forwards it to the trigger processor TRP, that stores it in the context database C-DB (step 10).
- the trigger processor TRP checks in the trigger database TR-DB whether a query evaluation trigger is active on the derived context information whose new value NV has been calculated during step 9 (step 11 ).
- the trigger processor TRP does not perform any other action. Otherwise, if a query evaluation trigger is active on the derived context information whose new value NV has been calculated during step 9, the trigger processor TRP evaluates the query condition included in the active query evaluation trigger, by applying such a query condition to the new value NV of derived context information (step 12).
- the trigger processor determines that a query evaluation trigger is active on the derived context information address, and accordingly applies the query condition (i.e. current city different from residence city) to the city corresponding to the new address.
- the trigger processor TRP may check whether the new value NV of the derived context information is equal to the stored value SV. In the affirmative, the trigger processor TRP determines that the derived context information still have the same value, and accordingly continues behaving as if the update U were not received. Otherwise, the trigger processor TRP performs the step 12 of applying the query condition to the new value NV of derived context information. This is particularly advantageous, since the query is evaluated only when the value of the derived context information actually changes, thus avoiding to repeat evaluation each time the received update U does not imply a change of value of the derived context information.
- the context server SCtx takes the action specified by the query (step 13). Otherwise, the context server SCtx does not perform any action. Therefore, by referring to the above exemplary context-based service, if the current city calculated according to the updated address is different from the residence city of the user, the context server SCtx continues providing the service application A with the identifiers of users whose terminals are located in proximity of the terminal T. Otherwise, if the current city calculated according to the updated address is equal to the residence city of the users, the context server SCtx will not perform any further action.
- the above disclosed method is capable of providing a context-based service suitable for adapting itself to one or more attributes of derived context information about the terminal.
- coordination between updates of raw context information received from the terminal, recalculation of derived context and evaluation of the query condition based on derived context information (or, rather, attributes thereof) is particularly efficient.
- the context server SCtx upon reception of an update of raw context information the context server SCtx is capable of determining whether a new value of the derived context information must be calculated and, in the affirmative, of evaluating the query condition by applying it to the newly calculated value of the derived context information.
- the derived context information are updated substantially in real time according to variations of the raw context information from which they depend.
- removing stored values of derived context information from the context database as soon as an update of related raw context information is received at the context server advantageously prevents the context server from evaluating the query condition by applying it to obsolete values of the derived context information, i.e. to values of the derived context information that are no more indicative of the actual context of the terminal.
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Databases & Information Systems (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- Data Mining & Analysis (AREA)
- General Physics & Mathematics (AREA)
- Computational Linguistics (AREA)
- Multimedia (AREA)
- Operations Research (AREA)
- Mathematical Physics (AREA)
- Computer Hardware Design (AREA)
- Mobile Radio Communication Systems (AREA)
- Information Transfer Between Computers (AREA)
Abstract
Description
Claims
Priority Applications (6)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US13/142,571 US8484185B2 (en) | 2008-12-30 | 2008-12-30 | Context-based communication service |
EP08875560.8A EP2374069B1 (en) | 2008-12-30 | 2008-12-30 | Context-based communication service |
PCT/EP2008/068349 WO2010075883A1 (en) | 2008-12-30 | 2008-12-30 | Context-based communication service |
KR1020117017766A KR101669158B1 (en) | 2008-12-30 | 2008-12-30 | Context-based commmunication service |
CN200880132804.XA CN102317935B (en) | 2008-12-30 | 2008-12-30 | Context-Based Communication Services |
CA2748576A CA2748576C (en) | 2008-12-30 | 2008-12-30 | Context-based communication service |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
PCT/EP2008/068349 WO2010075883A1 (en) | 2008-12-30 | 2008-12-30 | Context-based communication service |
Publications (1)
Publication Number | Publication Date |
---|---|
WO2010075883A1 true WO2010075883A1 (en) | 2010-07-08 |
Family
ID=40467099
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
PCT/EP2008/068349 WO2010075883A1 (en) | 2008-12-30 | 2008-12-30 | Context-based communication service |
Country Status (6)
Country | Link |
---|---|
US (1) | US8484185B2 (en) |
EP (1) | EP2374069B1 (en) |
KR (1) | KR101669158B1 (en) |
CN (1) | CN102317935B (en) |
CA (1) | CA2748576C (en) |
WO (1) | WO2010075883A1 (en) |
Families Citing this family (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8756611B2 (en) * | 2010-12-07 | 2014-06-17 | International Business Machines Corporation | Delayed expansion of values in context |
US8938394B1 (en) * | 2014-01-09 | 2015-01-20 | Google Inc. | Audio triggers based on context |
US10567476B2 (en) | 2014-10-30 | 2020-02-18 | Amazon Technologies, Inc. | Rule-based action triggering in a provider network |
US10397128B2 (en) | 2014-10-30 | 2019-08-27 | Amazon Technologies, Inc. | Routing handler for rule-based action triggering |
US10505881B2 (en) | 2015-09-23 | 2019-12-10 | Amazon Technologies, Inc. | Generating message envelopes for heterogeneous events |
US11068487B2 (en) | 2015-09-08 | 2021-07-20 | Amazon Technologies, Inc. | Event-stream searching using compiled rule patterns |
US9973306B2 (en) | 2015-09-14 | 2018-05-15 | Amazon Technologies, Inc. | Freshness-sensitive message delivery |
US10171314B2 (en) * | 2015-12-01 | 2019-01-01 | Here Global B.V. | Methods, apparatuses and computer program products to derive quality data from an eventually consistent system |
US10990887B1 (en) | 2017-12-13 | 2021-04-27 | Amazon Technologies, Inc. | Anything-but matching using finite-state machines |
JP7537215B2 (en) * | 2020-09-30 | 2024-08-21 | 株式会社リコー | SERVER DEVICE, COMMUNICATION SYSTEM, COMMUNICATION METHOD, AND PROGRAM |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2000077690A1 (en) * | 1999-06-15 | 2000-12-21 | Kanisa Inc. | System and method for document management based on a plurality of knowledge taxonomies |
WO2003027901A1 (en) * | 2001-09-21 | 2003-04-03 | Endeca Technologies, Inc. | Scalable hierarchical data-driven navigation system and method for information retrieval |
EP1450519A2 (en) * | 2003-02-20 | 2004-08-25 | Lg Electronics Inc. | Context synchronization method in mobile communication system |
Family Cites Families (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR100731015B1 (en) * | 2001-01-09 | 2007-06-22 | 엘지전자 주식회사 | How to provide location-aligned information service |
JP3674569B2 (en) | 2001-10-04 | 2005-07-20 | オムロン株式会社 | SENSOR MANAGEMENT DEVICE, SENSOR MANAGEMENT DEVICE CONTROL PROGRAM, COMPUTER-READABLE RECORDING MEDIUM CONTAINING THE PROGRAM, AND SENSOR MANAGEMENT DEVICE CONTROL METHOD |
US7444344B2 (en) | 2003-06-27 | 2008-10-28 | Microsoft Corporation | Method to increase subscription scalability |
US7313554B2 (en) | 2003-09-29 | 2007-12-25 | International Business Machines Corporation | System and method for indexing queries, rules and subscriptions |
US7383253B1 (en) | 2004-12-17 | 2008-06-03 | Coral 8, Inc. | Publish and subscribe capable continuous query processor for real-time data streams |
JP4779450B2 (en) * | 2005-06-01 | 2011-09-28 | 株式会社日立製作所 | Network system that performs application control according to context information |
US8594702B2 (en) * | 2006-11-06 | 2013-11-26 | Yahoo! Inc. | Context server for associating information based on context |
-
2008
- 2008-12-30 WO PCT/EP2008/068349 patent/WO2010075883A1/en active Application Filing
- 2008-12-30 US US13/142,571 patent/US8484185B2/en active Active
- 2008-12-30 CN CN200880132804.XA patent/CN102317935B/en active Active
- 2008-12-30 EP EP08875560.8A patent/EP2374069B1/en active Active
- 2008-12-30 CA CA2748576A patent/CA2748576C/en active Active
- 2008-12-30 KR KR1020117017766A patent/KR101669158B1/en active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2000077690A1 (en) * | 1999-06-15 | 2000-12-21 | Kanisa Inc. | System and method for document management based on a plurality of knowledge taxonomies |
WO2003027901A1 (en) * | 2001-09-21 | 2003-04-03 | Endeca Technologies, Inc. | Scalable hierarchical data-driven navigation system and method for information retrieval |
EP1450519A2 (en) * | 2003-02-20 | 2004-08-25 | Lg Electronics Inc. | Context synchronization method in mobile communication system |
Also Published As
Publication number | Publication date |
---|---|
CA2748576A1 (en) | 2010-07-08 |
EP2374069A1 (en) | 2011-10-12 |
CA2748576C (en) | 2018-11-06 |
US20110271287A1 (en) | 2011-11-03 |
KR101669158B1 (en) | 2016-11-09 |
EP2374069B1 (en) | 2020-04-15 |
CN102317935B (en) | 2016-07-06 |
US8484185B2 (en) | 2013-07-09 |
KR20110111439A (en) | 2011-10-11 |
CN102317935A (en) | 2012-01-11 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CA2748576C (en) | Context-based communication service | |
JP5592380B2 (en) | Data distribution adjustment system and method using time presentation | |
US8718670B2 (en) | Method of transmitting data to a mobile device | |
KR101399184B1 (en) | Managing group of location based triggers | |
US20140155096A1 (en) | Method, apparatus and computer program product for self-learning location method selection logic | |
US20080215351A1 (en) | Service information providing apparatus and service information providing method | |
CN1476711A (en) | System, method and apparatus for polling telecommunications nodes for real-time information | |
KR20090124894A (en) | Distributed Rule Processing for Ubiquitous Computing Environments | |
CN102014144A (en) | Method and device for submitting terminal data | |
US20170302760A1 (en) | Web based system using events and pushed web content to interact with remote users for notifications and data collections | |
US20040152474A1 (en) | Information providing system, apparatus, method and pervasive device relative to geographical location | |
KR101546083B1 (en) | Method and communication system for providing a context-based communication service | |
EP3244586B1 (en) | Response message processing method, device and system | |
US7349708B2 (en) | System and method for providing position information | |
KR20090100131A (en) | Apparatus and method for servicing location information of terminal in broadband wireless communication system | |
CN101860821B (en) | Method and system for acquiring instant messages | |
EP1542430A1 (en) | Method and arrangement for automated predictive presence service | |
JP2007140830A (en) | Mobile information terminal, position information monitoring system and position information monitoring method | |
JP2005057708A (en) | Instant message transceiving system, server apparatus, terminal equipment, program, medium for recording program, and instant message transceiving method | |
RU2440686C2 (en) | Method of identifying services for convergent messaging systems | |
JP2006093928A (en) | Information delivery system, information delivery apparatus, method of delivering information and information delivery program | |
CN117201604A (en) | Method and device for issuing information | |
KR101220512B1 (en) | System for providing content and method for providing error message thereof | |
US20050267957A1 (en) | Diffusing configuration data to distributed devices | |
JP2001202384A (en) | Server system and method for communication network information service |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
WWE | Wipo information: entry into national phase |
Ref document number: 200880132804.X Country of ref document: CN |
|
121 | Ep: the epo has been informed by wipo that ep was designated in this application |
Ref document number: 08875560 Country of ref document: EP Kind code of ref document: A1 |
|
WWE | Wipo information: entry into national phase |
Ref document number: 13142571 Country of ref document: US |
|
WWE | Wipo information: entry into national phase |
Ref document number: 2748576 Country of ref document: CA Ref document number: 4982/DELNP/2011 Country of ref document: IN |
|
NENP | Non-entry into the national phase |
Ref country code: DE |
|
WWE | Wipo information: entry into national phase |
Ref document number: 2008875560 Country of ref document: EP |
|
ENP | Entry into the national phase |
Ref document number: 20117017766 Country of ref document: KR Kind code of ref document: A |