WO2009044234A1 - Context aware wireless information system and method - Google Patents

Context aware wireless information system and method Download PDF

Info

Publication number
WO2009044234A1
WO2009044234A1 PCT/IB2007/054065 IB2007054065W WO2009044234A1 WO 2009044234 A1 WO2009044234 A1 WO 2009044234A1 IB 2007054065 W IB2007054065 W IB 2007054065W WO 2009044234 A1 WO2009044234 A1 WO 2009044234A1
Authority
WO
WIPO (PCT)
Prior art keywords
information
portable devices
devices
environment
user profile
Prior art date
Application number
PCT/IB2007/054065
Other languages
French (fr)
Inventor
Iacopo Carreras
Daniele Miorandi
David Tacconi
Francesco De Pellegrini
Original Assignee
Associazione Create-Net
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 Associazione Create-Net filed Critical Associazione Create-Net
Priority to EP07826659A priority Critical patent/EP2204012A1/en
Priority to CN200780100973.0A priority patent/CN101821994B/en
Priority to PCT/IB2007/054065 priority patent/WO2009044234A1/en
Priority to US12/681,770 priority patent/US20100222080A1/en
Publication of WO2009044234A1 publication Critical patent/WO2009044234A1/en

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W4/00Services specially adapted for wireless communication networks; Facilities therefor
    • H04W4/02Services making use of location information
    • H04W4/029Location-based management or tracking services
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W4/00Services specially adapted for wireless communication networks; Facilities therefor
    • H04W4/02Services making use of location information
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W8/00Network data management
    • H04W8/18Processing of user or subscriber data, e.g. subscribed services, user preferences or user profiles; Transfer of user or subscriber data
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W84/00Network topologies
    • H04W84/02Hierarchically pre-organised networks, e.g. paging networks, cellular networks, WLAN [Wireless Local Area Network] or WLL [Wireless Local Loop]
    • H04W84/10Small scale networks; Flat hierarchical networks
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W92/00Interfaces specially adapted for wireless communication networks
    • H04W92/16Interfaces between hierarchically similar devices
    • H04W92/18Interfaces between hierarchically similar devices between terminal devices

Definitions

  • the invention pertains to improved systems and methods for supporting the provision of context-aware services in pervasive computing environments; specifically it relates to a scenario in which a plurality of intermittently connected portable computing devices is present, possibly together with a plurality of embedded computing devices.
  • embedded computing devices may present minimal supported features in terms of computing and communications, and are meant to provide portable devices (with which the users interface) with information which can be exploited to identify the context where the user is in.
  • Said embedded computing devices act as sources of information and do not necessarily include a user interface.
  • Said embedded devices may preferably include a sensing board for gathering contextual data.
  • Some examples of said embedded devices include, but are not limited to, RFIDs, standard sensor network devices, devices exposing/broadcasting local information etc.
  • Portable computing devices may present a set of extended features in terms of computing and communications; they also necessarily include a user interface. They are meant to interface with the end-users and may be inherently mobile.
  • Some examples of portable computing devices include, but are not limited to, smartphones, personal digital assistants, multimedia computers, laptops etc.
  • Said embedded devices can communicate with said portable devices via some forms of proximity wireless communications when getting within mutual communication range.
  • Said portable devices can communicate with each other via some form of wireless proximity communications when getting within mutual communication range. Connectivity among portable devices may vary over time as a consequence of a plurality of factors, including, e.g., users' mobility and radio channel conditions.
  • the method proposed is particularly suited for dissemination of contextual information, in the form of data which relate to the context in which the user is present.
  • Some examples of specific forms of contextual information include, but are not limited to, location information, time information, user activity information, information on locally available resources etc.
  • Data may be transferred among portable computing devices and embedded computing devices exploiting contact opportunities, where a contact is defined as the ability of at least two devices to setup a transmission channel (through proximity wireless communication means) and exchange messages on such transmission channel.
  • the present invention is particularly suited to scenarios characterized by intermittently connected and often partitioned networks, in which contacts are rare events, which may take place at unpredictable time instants.
  • the present invention is able to leverage such opportunities for localized exchange of data (in an "opportunistic" fashion) to enhance the quality of the service offered to the end-user.
  • Context information is transmitted via wireless communications to portable computing devices from said embedded computing devices or other portable devices.
  • Each portable computing device presents one or multiple profiles, associated to its user(s).
  • the user profile contains personal information about the user and may include, e.g., a description of its preferences and interests.
  • the method of present invention can use context information, appropriately filtered on the basis of the user profile, to change the behavior of one or many applications running on the device.
  • the information contained in the user profile is also used to control the forwarding of data messages from other personal computing devices upon a contact between the two devices.
  • a main advantage of the present invention relates to the fact that the proposed system is able to exploit (in an "opportunistic” fashion) the possible presence of nearby devices equipped with some form of proximity wireless communication interface to provide some forms of exchange of data able to enhance the service behavior.
  • One of the problems in such scenarios, solved by the present invention, is the possibly short duration of contacts.
  • the joint device and service discovery method of present invention (200,300), which sets up a communication link with one neighbor at one time only, is able to overcome such limitations.
  • the proposed system is able to work in the absence of continuous backhaul connectivity to a remote server.
  • the conventional approaches in which a client establishes a connection with a remote server, fail to work in intermittently connected wireless networks where interactions among peer devices take place sporadically.
  • An example of such an approach based on continuous connectivity can be found in [Personalized information retrieval using user-defined profile. US Patent number: 5761662].
  • a main limitation of this approach is the lack of a possibility of extending the service to a scenario in which a plurality of mobile devices communicates intermittently via proximity wireless communications.
  • IP intellectual property
  • Our invention may well work on top of layer-2 connectivity only, without requiring the use of IP addresses.
  • the proposed methods can be readily implemented on top of RFCOMM for Bluetooth-enabled smartphones; in such case the opportunistic communication unit (108) will interface with other portable devices through RFCOMM links.
  • the proposed system can be readily implemented employing protocols working on top of RFCOMM links, including OBEX and BNEP or using BNEP for a wifi based communication link or more generally layer 2 communication protocols implemented for wifi, webree or zigbee technologies.
  • the proposed system does not rely on the user profile only for generating a data request; the interest list is instead determined on the joint basis of the user profile (maintained by the profile manager, 102) and of the running service (which is accessed through the service container, 103).
  • This is a key feature in pervasive computing environments, in which the high dynamism of the system and the limited resources require the running service to play a fundamental role in determining the content to be requested.
  • a service running on very limited resources may limit the interests listed in the user's profile in order to get only the content with the highest impact on the user- perceived quality of experience.
  • the interest manager (105) may decide to limit the list of exposed interests.
  • Conventional approaches rely instead only on the use of user profile [Personalized information retrieval using user-defined profile. US Patent number: 5761662.
  • Fig. 1 System components Fig. 2 Message exchange during a successful discovery and exchange process Fig. 3 State transition during the discovery and exchange process Fig. 4 Alternation between states of two devices within the communication range Fig. 5 System components interaction flow, when generating the user interests Fig. 6 System components interaction flow when retrieving data, starting from user interests.
  • the first one relates to mobile peer-to-peer applications, in which mobile devices exchange information about: (i) the profile of the user currently active
  • a match between profile and data triggers the execution of a transfer of information from the device having the data and the one potentially interested in it.
  • the second one relates to mobile advertising information, in which the proposed system can be used to (i) gather and diffuse advertisement from local shops (ii) present the user with the advertisement relative to products matching her/his needs and search criteria.
  • the third one relates to an enhanced reduced keyboard disambiguation systems (i.e., enhanced T-9). In this case, the system and methods proposed are used for exchanging dictionary words among users having common entries in the respective profiles.
  • Profile Manager(102) the profile manager handles the creation/update/deletion of the user profile. Such profile is explicitly created by the user, and dynamically updated on the basis of users daily activities. Such profile information is permanently stored in the device's memory, and read at system bootstrap phase.
  • Service Container the service container is the environment where context-aware services are executed. Such Container provides seamless access to resources such as content storage, opportunistic data retrieval, profile information, etc.. In addition, the service container provides service deployment, update and deprecation functionalities.
  • • Data Acquisition Unit (107) this is an optional communication unit in charge of gathering contextual data from nearby embedded devices with sensing capabilities (109). Such unit periodically searches for available data sources, and takes care of all the necessary communication steps that are needed for reading sensor information. This unit communicates with the context acquisition unit for deciding which contextual data is relevant to the user.
  • OCU Opportunistic Communication Unit
  • the opportunistic communication unit transparently manages data exchanges among portable devices encountering on the move (110). This unit (108) handles any operation needed for setting up and tearing down the communication with other portable devices, in a transparent way for the user (including, e.g., handling the access to multiple radio interfaces).
  • Context Acquisition (106) the context acquisition unit stores/update/removes data according to user preferences and service requirements. This component represents the interface between the communication layers and the intermediate layers, where information is processed and stored. In particular, this unit executes all the policies that define which information will be stored or diffused, and which information will be discarded.
  • Interest Manager (IM) (105) the interest manager unit merges the user profile and the requirements originating from the hosted services into interests, which are a description of the data requested by the user.
  • Content Manager (104) this component manages the system's permanent storage. In particular, this unit stores any data item considered as relevant by the Interest Manager. It is accessed by the Interest manager for storing any incoming data, and by the service container for augmenting context- aware services.
  • One aspect of the invention pertains to discovery of nearby devices and of the services running on said devices (200, 300, 400).
  • the goal of the device and service discovery processes is to find one nearby device running the same service and with which data discovery and exchange can be performed.
  • each device can be in either one of two states: discoverable (passive state, 303) or discovering (active state, 302, 401, 403, 406)). Nodes are in passive state most of the time (402, 405, 407, 410); the transition to the active state is controlled by a thread which periodically triggers the device discovery process.
  • each said portable device in active state broadcasts at least one beacon message (201), signaling its presence.
  • All nearby devices in passive state listening on the same wireless channel acknowledge the beacon reception (202), signaling their presence.
  • a device receiving a beacon message freezes its internal state (304) to the passive mode until it gets released by the device which sent the beacon message.
  • the device in the active state adds the MAC address of said device in its internally maintained neighbor list.
  • the active device randomly chooses one of its neighbor (ii) polls such neighbor by sending a service discovery message (203). Steps (i) and (ii) are repeated until either a device running the same service is found (204) or all neighbors are polled without success. In both cases, a message is broadcasted to release all discovered devices apart from the one running the same service (205), whenever present.
  • a device in passive state which receives such release message, goes back to the normal operating state (303). If a device running the same service is found, devices move to connected active state (301, 404)) and connected passive state (305, 409), respectively. Then, data discovery and exchange are performed with said device. Data discovery and exchange is therefore performed with one single device at time.
  • Fig. 3 The state transitions incurred by any device in the discovery and exchange processes are depicted in Fig. 3 (300). Such representation, in the form of a finite state machine, is meant to provide a graphical explanation of the process described in details above.
  • Fig. 4 (400) further, a representation of the state of two devices within communication range versus time is represented.
  • the first device and service discovery process fails in that both devices are in the active state; the second attempt is successful and lead to data discovery and exchange.
  • the aforementioned device and service discovery can be embodied in any device supporting some form of proximity wireless communications.
  • Some examples of specific communication technologies include, but are not limited to, Bluetooth, the IEEE 802.15 family of standards, the IEEE 802.11 family of standards, WiBree. Joint Data Discovery and Exchange
  • One aspect of the invention pertains to discovery and exchange of data among nearby devices. According to the device and service discovery procedure outlined above, data discovery and exchange is therefore performed with one single device at a time.
  • the device in the connected active state (301) sends a unicast message to the device in the connected passive state (305), describing its interest.
  • Such interest can be expressed in various ways, depending on the particular embodiment.
  • Some examples of specific forms of methods for expressing interests include, but are not limited to, a list of ⁇ attribute,value> pairs, where attribute indicates the label of the specific metadata field, and value its current value, a tree structure expressed in XML format, a list of triples in the form of subject-predicate-object expressions (such as in RDF).
  • the device in the connected passive state Upon reception of said message, the device in the connected passive state inquiries its local repository to see if any of the data contained matches said description.
  • the data presenting a positive match (if any) is grouped into a single message.
  • Said message is enriched with a description of the interests of the device in the connected passive state and sent to the device in the connected active state (301).
  • the metadata matching procedure is repeated at the device in the connected active state (301), which sends then a message to the other device with the relevant data, if any.
  • the device in the connected active state (301) sends a completed handshake message (206) to the device in the connected passive state (305) and moves back to the passive state (303, 405).
  • the device in the connected passive state (305) moves back to the passive state (303, 410).
  • the described joint data discovery and exchange method can be implemented on top of a layer 2, such as the RFCOMM of the Bluetooth stack or IEEE 802.15.4, or wifi or on top of a layer 4, as an UDP socket over any proximity wireless connection.
  • a layer 2 such as the RFCOMM of the Bluetooth stack or IEEE 802.15.4, or wifi or on top of a layer 4, as an UDP socket over any proximity wireless connection.
  • Figure 4 describes the overall exchange of messages during a successful discovery and exchange process.
  • the described operations for joint data discovery and exchange require the system to: (1) build the user interests starting from the user profile and hosted services (2) retrieve any data matching some specific interests.
  • a getlnterest() (506) request is invoked to the Interest Manager (502).
  • the Interest Manager answers with the User Interests (510), which are generated taking into account the User Profile (508), which is retrieved from the Profile Manager (503) (getProfile() method invocation (507)), and the service requirements, which are obtained from the Service Container (504) (getServiceConstaints() method invocation (509)).
  • the second functionality in reported in figure 6.
  • FIG. 7 shows a block diagram representation of the relation among the various components of the proposed method.
  • the user is required to select a service among all those offered by the portable device (701). Once the service is selected, the user is required to create and/or edit the personal profile according to her/his interests and preferences (702). Once the profile is saved the application starts waiting for incoming connections (703) and periodically searches for close- by neighbors running the same service (704).

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Mobile Radio Communication Systems (AREA)

Abstract

The invention relates to a system and method for providing context-aware services in pervasive computing environments. Specifically it targets environments where a plurality of intermittently connected portable computing devices interact with each other and possibly a plurality of embedded computing devices, that can be fixed in a certain environment. Said portable computing devices communicate with each other via some forms of proximity wireless communications when getting within mutual communication range. Said embedded devices can communicate with said portable devices via a wireless communication interface when getting within mutual communication range. The method proposed is particularly suited for transparent dissemination (i.e., requiring no explicit user intervention) of contextual information, in the form of data which relates to the context the user is in. Some examples of specific forms of contextual information include, but are not limited to: location information, time information, user activity information, information on locally available resources.

Description

Context aware wireless information system and method
DESCRIPTION
Background
The invention pertains to improved systems and methods for supporting the provision of context-aware services in pervasive computing environments; specifically it relates to a scenario in which a plurality of intermittently connected portable computing devices is present, possibly together with a plurality of embedded computing devices.
According to the invention, the task mentioned above is solved by a method showing the characteristics of patent claim 1.
Moreover, embedded computing devices may present minimal supported features in terms of computing and communications, and are meant to provide portable devices (with which the users interface) with information which can be exploited to identify the context where the user is in. Said embedded computing devices act as sources of information and do not necessarily include a user interface. Said embedded devices may preferably include a sensing board for gathering contextual data. Some examples of said embedded devices include, but are not limited to, RFIDs, standard sensor network devices, devices exposing/broadcasting local information etc. Portable computing devices may present a set of extended features in terms of computing and communications; they also necessarily include a user interface. They are meant to interface with the end-users and may be inherently mobile. Some examples of portable computing devices include, but are not limited to, smartphones, personal digital assistants, multimedia computers, laptops etc.
Said embedded devices can communicate with said portable devices via some forms of proximity wireless communications when getting within mutual communication range. Said portable devices can communicate with each other via some form of wireless proximity communications when getting within mutual communication range. Connectivity among portable devices may vary over time as a consequence of a plurality of factors, including, e.g., users' mobility and radio channel conditions.
The method proposed is particularly suited for dissemination of contextual information, in the form of data which relate to the context in which the user is present. Some examples of specific forms of contextual information include, but are not limited to, location information, time information, user activity information, information on locally available resources etc.
Data may be transferred among portable computing devices and embedded computing devices exploiting contact opportunities, where a contact is defined as the ability of at least two devices to setup a transmission channel (through proximity wireless communication means) and exchange messages on such transmission channel. The present invention is particularly suited to scenarios characterized by intermittently connected and often partitioned networks, in which contacts are rare events, which may take place at unpredictable time instants. The present invention is able to leverage such opportunities for localized exchange of data (in an "opportunistic" fashion) to enhance the quality of the service offered to the end-user. Context information is transmitted via wireless communications to portable computing devices from said embedded computing devices or other portable devices.
Each portable computing device presents one or multiple profiles, associated to its user(s). The user profile contains personal information about the user and may include, e.g., a description of its preferences and interests. The method of present invention can use context information, appropriately filtered on the basis of the user profile, to change the behavior of one or many applications running on the device. The information contained in the user profile is also used to control the forwarding of data messages from other personal computing devices upon a contact between the two devices.
A main advantage of the present invention relates to the fact that the proposed system is able to exploit (in an "opportunistic" fashion) the possible presence of nearby devices equipped with some form of proximity wireless communication interface to provide some forms of exchange of data able to enhance the service behavior.
One of the problems in such scenarios, solved by the present invention, is the possibly short duration of contacts.
Conventional methods are based on a three phases approach:
1. Discovery of all neighbor devices
2. Discovery of running services on each of the neighbor devices
3. Exchange of data with the devices running the same service.
This kind of approach is the one used in [Personal profile sharing and management or short-range wireless terminals. US Patent number: 7249182] and [(WO/2007/081524) MEDIA DATA EXCHANGE, TRANSFER OR DELIVERY FOR PORTABLE ELECTRONIC DEVICES]. Such method fails in the presence of short contacts duration and of a large number of co-located devices (which happens, e.g., when people walking on a crowded street in opposite directions with a Bluetooth-enabled smartphone meet). The failure is due to the fact that task (1) may end up taking a long time and the same problem applies to task (2) as well. The joint device and service discovery method of present invention (200,300), which sets up a communication link with one neighbor at one time only, is able to overcome such limitations. The proposed system is able to work in the absence of continuous backhaul connectivity to a remote server. The conventional approaches, in which a client establishes a connection with a remote server, fail to work in intermittently connected wireless networks where interactions among peer devices take place sporadically. An example of such an approach based on continuous connectivity can be found in [Personalized information retrieval using user-defined profile. US Patent number: 5761662]. A main limitation of this approach is the lack of a possibility of extending the service to a scenario in which a plurality of mobile devices communicates intermittently via proximity wireless communications. This limitation is solved by the proposed system which is able to work in a system where devices and users are not continuously connected. Such a solution is also not encompassed in [Method and system for distributing contents to a plurality of users, US- 20070183354]. On the contrary the present invention is able to deal with such scenarios thanks to the opportunistic communication unit (108) which is in charge of enabling the setup of communication channels with neighboring devices running the same service, whenever present.
It is also important to stress that the proposed system does not require IP connectivity for exchanging data. IP, indeed, does not work well in intermittently connected networks, in which it is difficult (if not even impossible) to ensure consistency of IP routing tables and uniqueness of IP addresses, due to possibly frequent disconnections. Such an approach is the one presented as a preferred embodiment in [Peer-to-peer network and user information discovery and sharing for mobile users and devices US2006098588)]. Our invention, on the other hand, may well work on top of layer-2 connectivity only, without requiring the use of IP addresses. As an example, the proposed methods can be readily implemented on top of RFCOMM for Bluetooth-enabled smartphones; in such case the opportunistic communication unit (108) will interface with other portable devices through RFCOMM links. Similarly, the proposed system can be readily implemented employing protocols working on top of RFCOMM links, including OBEX and BNEP or using BNEP for a wifi based communication link or more generally layer 2 communication protocols implemented for wifi, webree or zigbee technologies.
Moreover, the proposed system does not rely on the user profile only for generating a data request; the interest list is instead determined on the joint basis of the user profile (maintained by the profile manager, 102) and of the running service (which is accessed through the service container, 103). This is a key feature in pervasive computing environments, in which the high dynamism of the system and the limited resources require the running service to play a fundamental role in determining the content to be requested. As an example, a service running on very limited resources may limit the interests listed in the user's profile in order to get only the content with the highest impact on the user- perceived quality of experience. This situation can be easily accommodated by our invention, in which the interest manager (105) may decide to limit the list of exposed interests. Conventional approaches rely instead only on the use of user profile [Personalized information retrieval using user-defined profile. US Patent number: 5761662.
Brief description of the drawings:
Fig. 1 System components Fig. 2 Message exchange during a successful discovery and exchange process Fig. 3 State transition during the discovery and exchange process Fig. 4 Alternation between states of two devices within the communication range Fig. 5 System components interaction flow, when generating the user interests Fig. 6 System components interaction flow when retrieving data, starting from user interests.
Fig. 7 Block diagram of the proposed method
Detailed description of the invention
Three use cases are presented to better frame the problem and highlight the advantages of the proposed invention.
The first one relates to mobile peer-to-peer applications, in which mobile devices exchange information about: (i) the profile of the user currently active
(ii) the data available in the shared data space.
A match between profile and data triggers the execution of a transfer of information from the device having the data and the one potentially interested in it. The second one relates to mobile advertising information, in which the proposed system can be used to (i) gather and diffuse advertisement from local shops (ii) present the user with the advertisement relative to products matching her/his needs and search criteria. The third one relates to an enhanced reduced keyboard disambiguation systems (i.e., enhanced T-9). In this case, the system and methods proposed are used for exchanging dictionary words among users having common entries in the respective profiles. This comes from the observation that (i) users sharing some common interests tend to use specialized terms which are usually not included in general-purpose dictionaries, as the ones commonly delivered with T-9 (as an example, we may think of the terms "carabiner", "grigri" and "jumars", commonly used by climbers but not used outside such domain) (ii) some words are used in restricted geographical areas only (e.g., dialects and some forms of slang or in general terms to a geographically customized dictionary). An embodiment of the proposed invention (100) would include computing means for carrying out the following operations:
• Profile Manager(102): the profile manager handles the creation/update/deletion of the user profile. Such profile is explicitly created by the user, and dynamically updated on the basis of users daily activities. Such profile information is permanently stored in the device's memory, and read at system bootstrap phase.
• Service Container (103): the service container is the environment where context-aware services are executed. Such Container provides seamless access to resources such as content storage, opportunistic data retrieval, profile information, etc.. In addition, the service container provides service deployment, update and deprecation functionalities.
• Data Acquisition Unit (107): this is an optional communication unit in charge of gathering contextual data from nearby embedded devices with sensing capabilities (109). Such unit periodically searches for available data sources, and takes care of all the necessary communication steps that are needed for reading sensor information. This unit communicates with the context acquisition unit for deciding which contextual data is relevant to the user. • Opportunistic Communication Unit (OCU) (108): the opportunistic communication unit transparently manages data exchanges among portable devices encountering on the move (110). This unit (108) handles any operation needed for setting up and tearing down the communication with other portable devices, in a transparent way for the user (including, e.g., handling the access to multiple radio interfaces).
• Context Acquisition (106): the context acquisition unit stores/update/removes data according to user preferences and service requirements. This component represents the interface between the communication layers and the intermediate layers, where information is processed and stored. In particular, this unit executes all the policies that define which information will be stored or diffused, and which information will be discarded. • Interest Manager (IM) (105): the interest manager unit merges the user profile and the requirements originating from the hosted services into interests, which are a description of the data requested by the user. • Content Manager (104): this component manages the system's permanent storage. In particular, this unit stores any data item considered as relevant by the Interest Manager. It is accessed by the Interest manager for storing any incoming data, and by the service container for augmenting context- aware services.
The relation among the various components in an operational phase, is graphically depicted in Fig. 7.
Device and Service Discovery
One aspect of the invention pertains to discovery of nearby devices and of the services running on said devices (200, 300, 400). The goal of the device and service discovery processes is to find one nearby device running the same service and with which data discovery and exchange can be performed. In the proposed invention, each device can be in either one of two states: discoverable (passive state, 303) or discovering (active state, 302, 401, 403, 406)). Nodes are in passive state most of the time (402, 405, 407, 410); the transition to the active state is controlled by a thread which periodically triggers the device discovery process. In order to discover nearby devices, each said portable device in active state broadcasts at least one beacon message (201), signaling its presence. All nearby devices in passive state listening on the same wireless channel acknowledge the beacon reception (202), signaling their presence. A device receiving a beacon message freezes its internal state (304) to the passive mode until it gets released by the device which sent the beacon message. In the case of discovering of at least one said devices, the device in the active state adds the MAC address of said device in its internally maintained neighbor list. The active device (i) randomly chooses one of its neighbor (ii) polls such neighbor by sending a service discovery message (203). Steps (i) and (ii) are repeated until either a device running the same service is found (204) or all neighbors are polled without success. In both cases, a message is broadcasted to release all discovered devices apart from the one running the same service (205), whenever present. A device in passive state, which receives such release message, goes back to the normal operating state (303). If a device running the same service is found, devices move to connected active state (301, 404)) and connected passive state (305, 409), respectively. Then, data discovery and exchange are performed with said device. Data discovery and exchange is therefore performed with one single device at time.
The state transitions incurred by any device in the discovery and exchange processes are depicted in Fig. 3 (300). Such representation, in the form of a finite state machine, is meant to provide a graphical explanation of the process described in details above.
In Fig. 4 (400), further, a representation of the state of two devices within communication range versus time is represented. The first device and service discovery process fails in that both devices are in the active state; the second attempt is successful and lead to data discovery and exchange. The aforementioned device and service discovery can be embodied in any device supporting some form of proximity wireless communications. Some examples of specific communication technologies include, but are not limited to, Bluetooth, the IEEE 802.15 family of standards, the IEEE 802.11 family of standards, WiBree. Joint Data Discovery and Exchange
One aspect of the invention pertains to discovery and exchange of data among nearby devices. According to the device and service discovery procedure outlined above, data discovery and exchange is therefore performed with one single device at a time. The device in the connected active state (301) sends a unicast message to the device in the connected passive state (305), describing its interest. Such interest can be expressed in various ways, depending on the particular embodiment. Some examples of specific forms of methods for expressing interests include, but are not limited to, a list of <attribute,value> pairs, where attribute indicates the label of the specific metadata field, and value its current value, a tree structure expressed in XML format, a list of triples in the form of subject-predicate-object expressions (such as in RDF). Upon reception of said message, the device in the connected passive state inquiries its local repository to see if any of the data contained matches said description. The data presenting a positive match (if any) is grouped into a single message. Said message is enriched with a description of the interests of the device in the connected passive state and sent to the device in the connected active state (301). The metadata matching procedure is repeated at the device in the connected active state (301), which sends then a message to the other device with the relevant data, if any. Then, the device in the connected active state (301) sends a completed handshake message (206) to the device in the connected passive state (305) and moves back to the passive state (303, 405). Upon reception of the completed handshake message, the device in the connected passive state (305) moves back to the passive state (303, 410).
The described joint data discovery and exchange method can be implemented on top of a layer 2, such as the RFCOMM of the Bluetooth stack or IEEE 802.15.4, or wifi or on top of a layer 4, as an UDP socket over any proximity wireless connection. This means that the implementation of the platform can be easily done on every mobile device with a wireless interface, where specific API are available (as for instance the JSR82 API for accessing Bluetooth functionalities in J2ME enabled mobile devices). Figure 4 describes the overall exchange of messages during a successful discovery and exchange process.
The described operations for joint data discovery and exchange require the system to: (1) build the user interests starting from the user profile and hosted services (2) retrieve any data matching some specific interests.
The former functionality is briefly depicted in Fig. 5 (500) together with the internal system components involved in the process. The process is described as follows.
Upon reception of a beacon message (505) from the Opportunistic Communication Unit (501), a getlnterest() (506) request is invoked to the Interest Manager (502). The Interest Manager answers with the User Interests (510), which are generated taking into account the User Profile (508), which is retrieved from the Profile Manager (503) (getProfile() method invocation (507)), and the service requirements, which are obtained from the Service Container (504) (getServiceConstaints() method invocation (509)). The second functionality in reported in figure 6.
Interests (603) are received from the Opportunstic Communication Unit (601), which invokes a getData() (604) call to the Content Manager (602). The Content Manager (602) returns any stored data (605) matching the interests received from the other device. The Opportunistic Communication Unit (601) is then in charge of sending the retrieved data to the encountered device. Figure 7 (700) shows a block diagram representation of the relation among the various components of the proposed method. First, the user is required to select a service among all those offered by the portable device (701). Once the service is selected, the user is required to create and/or edit the personal profile according to her/his interests and preferences (702). Once the profile is saved the application starts waiting for incoming connections (703) and periodically searches for close- by neighbors running the same service (704). Once one neighbor running the same service is found, the application stops searching for other neighbors and opens a connection with the selected neighbor (705). At this point, the joint data discovery and exchange is executed (706) until all data matching the devices' interests are exchanged. Finally the connection is closed (707) and the application waits again for incoming connections from devices running the same service. It is worth remarking that, in this invention, all processes of selecting one neighbor, connecting to it, performing jointly data discovery and exchanging and closing the connection are transparent to the user. Indeed, the user is required only to select a service and create or edit her/his personal profile and save it in her/his portable computing device. All the methods mentioned in the description can also obviously be implemented in software running on the computing means of the portable or embedded devices.

Claims

1. A method for providing context information between at least two portable devices, each comprising at least a user profile and information related to the environment where said portable devices are located, characterized in that:
-said context information is obtained by correlating information related to said user profile of at least one of said portable devices and information related to the environment where said portable devices are located, said information related to the environment being present on at least one of said portable devices, and in that:
- one of devices in the active state contacts a device in passive state, giving a description information about said user profile or said information related to the environment
- said device in passive state enquires its local repository to check the presence of data matching said description information
- if said data matching said description information are present, then a detailed description of the information present on the passive device is sent to the active device and data are exchanged between the dev ices
2. The method of claim 1 wherein said information related to user profile or to the environment are expressed in the form of subject-predicate-object as in RDF or pars <attribute,value>
3. The method of claim 2 wherein the portable devices communicate employing a short range communication system and the exchange of information is realized by employing layer 2 protocols.
4. The method of claim 3 wherein the short range communication system is
Bluetooth and the exchange of information is realized by employing layer 2 protocols.
5. The method of claims 3-4 wherein the exchange of information is realized by employing the RFCOMM or BNEP protocols.
6. The method of claim 3 wherein the portable devices communicate via wifi and the exchange of information is realized by employing the OBEX protocol.
7. The method of claims 3-6 where the information exchanged relates to an update of the T9 dictionary, said update comprising additional words matching the interest of the user profile and the characteristics of the environment where said embedded devices are set
8. The method of claim 3-6 wherein the information exchange relates to advertisement matching the user profile
9. A system for providing context information between at least two portable devices each comprising at lest a user profile and information related to the environment where said portable devices are located, characterized in that said portable devices comprise: - computing means for obtaining context information by carrying out a correlation of information related to said user profile of at least one of said portable devices and information related to the environment where said portable devices are located, said information related to the environment being present on at least one of said portable devices,
- computing means operative connected to wireless communication means and user input means so that the device in the active state contacts a device in passive state, giving a description information about said user profile or said information related to the environment - computing means for executing enquires on its local repository to check the presence of data matching said description information
- computing means connected to said communication means for sending a detailed description of the information present on the passive device to the active device if said data matching said description information are present.
10. The system of claim 9 wherein said computing means and said communication means of said portable devices are configured to support BNEP or OBEX protocols
11. The system of claim 9 wherein said computing means of said portable devices are configured to update the T9 dictionary.
12. The system of claim 9 wherein said computing means of said portable devices are configured to exchange advertisements
13. A computer readable medium having computer executable instructions therein, which, when executed by a computer performs the method of claims 1-6.
PCT/IB2007/054065 2007-10-05 2007-10-05 Context aware wireless information system and method WO2009044234A1 (en)

Priority Applications (4)

Application Number Priority Date Filing Date Title
EP07826659A EP2204012A1 (en) 2007-10-05 2007-10-05 Context aware wireless information system and method
CN200780100973.0A CN101821994B (en) 2007-10-05 2007-10-05 Context aware wireless information system and method
PCT/IB2007/054065 WO2009044234A1 (en) 2007-10-05 2007-10-05 Context aware wireless information system and method
US12/681,770 US20100222080A1 (en) 2007-10-05 2007-10-05 Context aware wireless information system and method

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/IB2007/054065 WO2009044234A1 (en) 2007-10-05 2007-10-05 Context aware wireless information system and method

Publications (1)

Publication Number Publication Date
WO2009044234A1 true WO2009044234A1 (en) 2009-04-09

Family

ID=39415364

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/IB2007/054065 WO2009044234A1 (en) 2007-10-05 2007-10-05 Context aware wireless information system and method

Country Status (4)

Country Link
US (1) US20100222080A1 (en)
EP (1) EP2204012A1 (en)
CN (1) CN101821994B (en)
WO (1) WO2009044234A1 (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2011012120A1 (en) * 2009-07-30 2011-02-03 Daniel Meyer Method and mobile electronic device for wireless data exchange

Families Citing this family (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8805337B2 (en) * 2007-11-01 2014-08-12 Omnitracs, Llc Context aware message presentation system
CN101883107B (en) * 2010-06-18 2014-06-04 华为技术有限公司 Method and related device for realizing context perception service application
US9565708B2 (en) * 2011-05-20 2017-02-07 Microsoft Technology Licensing, Llc Auto-connect in a peer-to-peer network
KR101930510B1 (en) * 2011-09-16 2018-12-19 삼성전자주식회사 Method and system for searching object in network
US10523804B2 (en) 2011-09-16 2019-12-31 Samsung Electronics Co., Ltd. Method and system for searching for object in network
US9253282B2 (en) 2011-10-18 2016-02-02 Qualcomm Incorporated Method and apparatus for generating, using, or updating an enriched user profile
US9674819B2 (en) 2013-03-15 2017-06-06 Qualcomm Incorporated Systems and methods for sharing context information in a neighbor aware network
US20150135096A1 (en) * 2013-11-14 2015-05-14 Avaya Inc. System and method for displaying context-aware contact details
US10223093B2 (en) 2014-12-12 2019-03-05 Pcms Holdings, Inc. Method and system for context-based control over access to personal data

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE10357305A1 (en) 2003-12-05 2005-07-07 Jürgen RICHTER Method of configuring or adapting electronically stored personal profiles in mobile devices using Bluetooth (RTM) technology for data exchange between devices
US20050174975A1 (en) 2004-02-11 2005-08-11 Vicinity Messaging Corporation System and method for wireless communication between previously known and unknown users
US20060234631A1 (en) 2005-04-15 2006-10-19 Jorge Dieguez System and method for generation of interest -based wide area virtual network connections
WO2007081524A2 (en) 2006-01-03 2007-07-19 Apple Inc. Media data exchange, transfer or delivery for portable electronic devices
US7249182B1 (en) 2002-02-27 2007-07-24 Nokia Corporation Personal profile sharing and management for short-range wireless terminals

Family Cites Families (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7068294B2 (en) * 2001-03-30 2006-06-27 Koninklijke Philips Electronics N.V. One-to-one direct communication
EP1514382A2 (en) * 2002-06-07 2005-03-16 Koninklijke Philips Electronics N.V. Wireless technology co-existence
ATE441994T1 (en) * 2003-04-03 2009-09-15 Nokia Corp MANAGING CONTEXTUAL INFORMATION WITH A MOBILE STATION
US8832138B2 (en) * 2004-06-17 2014-09-09 Nokia Corporation System and method for social network search operations
US20050283724A1 (en) * 2004-06-18 2005-12-22 Research In Motion Limited Predictive text dictionary population
US8972444B2 (en) * 2004-06-25 2015-03-03 Google Inc. Nonstandard locality-based text entry
US7725112B2 (en) * 2005-02-08 2010-05-25 Nokia Corporation System and method for provision of proximity networking activity information
US7359674B2 (en) * 2005-05-10 2008-04-15 Nokia Corporation Content distribution & communication system for enhancing service distribution in short range radio environment
US8200681B2 (en) * 2007-08-22 2012-06-12 Microsoft Corp. Collaborative media recommendation and sharing technique

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7249182B1 (en) 2002-02-27 2007-07-24 Nokia Corporation Personal profile sharing and management for short-range wireless terminals
DE10357305A1 (en) 2003-12-05 2005-07-07 Jürgen RICHTER Method of configuring or adapting electronically stored personal profiles in mobile devices using Bluetooth (RTM) technology for data exchange between devices
US20050174975A1 (en) 2004-02-11 2005-08-11 Vicinity Messaging Corporation System and method for wireless communication between previously known and unknown users
US20060234631A1 (en) 2005-04-15 2006-10-19 Jorge Dieguez System and method for generation of interest -based wide area virtual network connections
WO2007081524A2 (en) 2006-01-03 2007-07-19 Apple Inc. Media data exchange, transfer or delivery for portable electronic devices

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
See also references of EP2204012A1 *

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2011012120A1 (en) * 2009-07-30 2011-02-03 Daniel Meyer Method and mobile electronic device for wireless data exchange

Also Published As

Publication number Publication date
CN101821994B (en) 2014-07-30
EP2204012A1 (en) 2010-07-07
CN101821994A (en) 2010-09-01
US20100222080A1 (en) 2010-09-02

Similar Documents

Publication Publication Date Title
US20100222080A1 (en) Context aware wireless information system and method
US8959187B2 (en) Method and system for proximity-based information retrieval and exchange in ad hoc networks
US8060590B2 (en) Distance-aware service discovery mechanism for determining the availability of remote services in wireless personal area networks
EP1542409B1 (en) Protocol for multi-hop ad-hoc networks
US8249605B2 (en) Systems and methods for optimizing the topology of a bluetooth scatternet for social networking
US20080267101A1 (en) Universal Browser
CN101094447A (en) Mobile communication terminal and method for managing special network using the same
US20110105024A1 (en) Transport independent service discovery
CN102939599A (en) Method and apparatus for handling peers with dynamic ip connectivity status in peer-to-peer networks
US8165130B2 (en) Method and system for data management in communication networks
Wang et al. BWMesh: a multi-hop connectivity framework on Android for proximity service
Alam Middleware implementation in MANET of Android Devices
US9301078B2 (en) Network-intelligent scanner
Campo et al. Service discovery in pervasive multi-agent systems
Chtcherbina et al. Peer-to-peer coordination framework (p2pc): Enabler of mobile ad-hoc networking for medicine, business, and entertainment
Lawrence LEAP into Ad-hoc Networks
De Pellegrini et al. R-P2P a Data Centric DTN Middleware with Interconnected Throwboxes
Zuo et al. Hychat: A hybrid interactive chat system for mobile social networking in proximity
Mahmood et al. Autonomous pull-push community construction technology for high-assurance
EP1919166B1 (en) Systems and methods for optimizing the topology of a Bluetooth scatternet for social networking
Zhang et al. Supporting context-aware mobile service adaptation with scalable context discovery platform
EP2317726A1 (en) Transport independent service discovery
Forsström et al. Location-based ubiquitous context exchange in mobile environments
Talipov et al. A context-rich and extensible framework for spontaneous smartphone networking
Nakai et al. Wi-Fi access point discovery system for mobile users

Legal Events

Date Code Title Description
WWE Wipo information: entry into national phase

Ref document number: 200780100973.0

Country of ref document: CN

121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 07826659

Country of ref document: EP

Kind code of ref document: A1

WWE Wipo information: entry into national phase

Ref document number: 12681770

Country of ref document: US

NENP Non-entry into the national phase

Ref country code: DE

WWE Wipo information: entry into national phase

Ref document number: 3109/DELNP/2010

Country of ref document: IN

REEP Request for entry into the european phase

Ref document number: 2007826659

Country of ref document: EP

WWE Wipo information: entry into national phase

Ref document number: 2007826659

Country of ref document: EP