The present invention relates to a method and a system for identifying a mobile electronic terminal through short-range communication links. It particularly concerns identifying a mobile electronic terminal at a Bluetooth access point, using Bluetooth service discovery mechanisms, for providing targeted services specifically tailored to the mobile electronic terminal in question.
Local connectivity interfaces are recently becoming a standard feature even in low-cost mobile phones and similar devices. This allows these interfaces such as Bluetooth to be used also for other use cases in addition to the traditional cases as the use of a wireless headset/hands free device. It is currently assumed that there are business cases for utilizing Bluetooth in scenarios previously not regarded as important with respect to business. Some of these scenarios require proprietary software in the handset such that a particular use case can be provided to the end-user. It might be an example to offer a local content download over Bluetooth, wherein the user needs client software for browsing the content that is offered. However, in order to provide suitable client software for the mobile terminal in question terminal specific details, such as, for example the terminal model/type/operating system version etc., need to be known.
In addition, if other possible use cases are considered, wherein a wireless short-range access point wants to provide targeted services to mobile terminals, it would be beneficial for the access point to know the device model/type to in order to provide suitable and specifically tailored services.
One could assume that technologies such as Java would have removed the need for creating different software versions of an application for a mobile device. Unfortunately that is actually not the case—e.g. even with different phone models of the same manufacturer, different client software versions are required to take advantages of most of the terminals capabilities.
Since such an application is used over local connection technologies such as Bluetooth, it would be preferable to deliver the required software client over Bluetooth as well. Unfortunately there exists no standard mechanism in Bluetooth to query for the terminal model or platform operating system of the target device.
Prior art solutions to this problem were performed by instructing the user to send an electronic business card over Bluetooth to a service point (i.e. servicing access point) providing the local content download functionality. Based on the information of the business card, the service point can recognize the terminal type/version etc., and is enabled to send back the specific client software for installation by the user.
With this prior art scheme the assumption is that the user will create an electronic business card based on the terminal type the user is utilizing. That is, that a different card will respectively be created for different terminals. The problem here is that for most users the only relevant thing they know about their terminal is that it is simply a Nokia phone, for example. In other words, if the user of the terminal is asked to provide information on the terminal's model/type, there always exists the possibility that the model/type information provided to the service point will be erroneous. This in turn would lead to a number of problems, when e.g. inappropriate software is sent to the terminal. Furthermore providing guidance for the user to select a correct terminal type is problematic.
Therefore it would be advantageous if the determination/recognition of the user's terminal type/version etc. could be performed automatically without requiring any kind of user interaction. This can help to make the service offering more error-proof and user-friendly.
According to an aspect of the present invention a method for determining an identification of a mobile electronic terminal comprising at least one wireless interface is provided. The method comprises the steps of
This method enables a requesting device, e.g. a servicing access point, to reliably determine the type/model etc. of a mobile terminal. The determination is performed in an automatic manner, without requiring user interaction, and without relying on specific versions/features of the actual implementation of the wireless interface in the mobile terminal. Determining the type etc. of a mobile device enables advanced services, as will be detailed in the further specification.
According to an exemplary embodiment the receiving step is preceded by
According to an exemplary embodiment the comparing is performed according to one or more parameters from the group comprising:
According to an exemplary embodiment the comparing step comprises:
The correspondence is selected, in case this is necessary, according to at least one of the group comprising:
The decision in case there are multiple correspondences is apparently important, and these are useful parameters to take this decision. The requesting device can e.g. choose to assume that the mobile terminal to be identified will most probably be one which has been sold/is in use in a big number, while another terminal having a correspondence may only be used very rarely. Or the servicing access point may be configured to offer specific services only to a limited number of devices, e.g. from a specific manufacturer or the like.
According to an exemplary embodiment the method further comprises:
According to an exemplary embodiment the method further comprises:
According to an exemplary embodiment the method further comprises:
According to an exemplary embodiment the received wireless interface capability data include a unique wireless interface identifier, said method further comprising:
According to another aspect of the invention a computer program product is provided, comprising program code means, stored on a computer-readable medium, for carrying out the method described above, when said computer program product is run on a computer or network device.
According to yet another aspect of the invention a device is provided, for determining an identification of a mobile electronic terminal which comprises at least one wireless interface, the device comprising:
According to an exemplary embodiment the controller is adapted for performing said comparison according to one or more parameters from the group comprising:
According to an exemplary embodiment the controller is adapted for finding at least one correspondence between said received wireless interface capability data and said data sets, wherein said correspondence is an identical match or a similarity exceeding a pre-determined threshold, and for basing said determining of an identification of said mobile electronic terminal on
According to an exemplary embodiment the controller is adapted for selecting said correspondence according to at least one of the group comprising:
According to an exemplary embodiment the wireless interface is a Bluetooth interface.
According to an exemplary embodiment the device further comprises a memory component adapted to be accessed by said database access component, wherein said memory component is adapted for storing said database comprising said plurality of data sets.
According to an exemplary embodiment the memory component is adapted for storing associations between mobile electronic terminal identifiers and client software suitable for respective mobile electronic devices, and wherein said controller is further adapted for selecting a client software from said stored associations in accordance with said identification of said mobile electronic terminal, and for transmitting said selected client software to said mobile electronic terminal using said wireless interface.
According to an exemplary embodiment the memory component is adapted for storing associations between mobile electronic terminal identifiers and data content suitable for respective mobile electronic devices, wherein said controller is further adapted for selecting content data in accordance with said identification of said mobile electronic terminal, and for transmitting said selected content data to said mobile electronic terminal using said wireless interface.
According to an exemplary embodiment the memory component is adapted for storing associations between mobile electronic terminal identifiers and data services suitable for respective mobile electronic devices, wherein said controller is further adapted for selecting a service in accordance with said identification of said mobile electronic terminal, and for enabling said selected service for said mobile electronic terminal.
According to an exemplary embodiment the received wireless interface capability data include a unique wireless interface identifier, and wherein said controller is further adapted for storing an association between said unique wireless interface identifier and said mobile electronic terminal in said memory component.
According to still another aspect of the invention a system is provided, comprising at least one device as described above, and further comprising:
According to an exemplary embodiment the memory component further stores associations between mobile electronic terminal identifiers and client software suitable for respective mobile electronic devices, and wherein said controller is further adapted for selecting a client software from said stored associations in accordance with said identification of said mobile electronic terminal, and for transmitting said selected client software to said mobile electronic terminal using said wireless interface.
According to an exemplary embodiment the memory component further stores associations between mobile electronic terminal identifiers and data content suitable for respective mobile electronic devices, wherein said controller is further adapted for selecting content data in accordance with said identification of said mobile electronic terminal, and for transmitting said selected content data to said mobile electronic terminal using said wireless interface.
According to an exemplary embodiment the memory component further stores associations between mobile electronic terminal identifiers and data services suitable for respective mobile electronic devices, and said controller is further adapted for selecting a service in accordance with said identification of said mobile electronic terminal, and for enabling said selected service for said mobile electronic terminal.
According to an exemplary embodiment the received wireless interface capability data include a unique wireless interface identifier, and said controller is further adapted for storing an association between said unique wireless interface identifier and said mobile electronic terminal in said memory component.
The invention can better be understood by referring to the enclosed drawings, which are provided solely for illustration purposes, and wherein:
a and 2b are examples of wireless interface capability data, as used by the invention; and
In step 106 the wireless interface capability data are then compared with data sets being indicative of capabilities of wireless interfaces. These data sets will usually be stored within a database, together with an associated identifier of a mobile electronic device (e.g. Nokia 6270). The comparing step 106 may be based on one or more of the criteria depicted below in step 106. That is, the received wireless interface capability data can be compared with the data sets with respect to the number of reported capabilities, the type of a particular capability (does the mobile terminal support “Nokia SyncML Server” or like?), the order in which the capabilities are reported within the wireless interface capability data, and also the position of a certain capability (is the capability “Nokia SyncML Server” arranged at second position?). Naturally these criteria can also be utilized in combinations:
Does the terminal support “Nokia SyncML Server” and is it reported on second position? If yes, determine that the terminal is for example a Nokia 6270 mobile phone. This determination is performed in step 108. The determined type/model of the mobile terminal can now be used to offer specific client software/data content/data services to the mobile terminal. That is, over the wireless interface e.g. browser/media player software can be offered to the terminal, then furthermore corresponding data content (e.g. video file or other multimedia file), and probably even a data service (life streaming of a football match or like). All of these offers can be specifically tailored to the actual mobile terminal model/OS version etc. Additionally the inventive method can be applied to any mobile terminal with a wireless interface capable of reporting its capabilities in the above described manner, irrespective of the particular supported wireless interface version.
That is, the present invention does not rely on any specific device identification schemes or protocols which may be a non-mandatory part of the particular wireless interface protocol. Instead the invention provides means for performing the device identification independent from such optional (and possibly even proprietary) protocols, such that interoperability with a large number of mobile terminals can be ensured without depending on the actual wireless interface implementation (e.g. Bluetooth version).
a and 2b depict examples of wireless interface capability data as they are used with the present invention. The data shown in
As can be seen here these received wireless interface capability data sets may be distinguished. Although these two examples comprise the same number of capabilities, in this case 14, in other examples already the number of reported capabilities can be used to distinguish two received data sets. Further criterions that can be used in accordance with the present invention comprise the position of a particular capability. In this example here e.g. the “Nokia SyncML Server” is arranged on the sixth (
These above mentioned examples are just to illustrate the present invention. Combinations can of course also be used, and the cited particular capabilities are also to be understood as being only exemplary. Other information may be used (additionally), like Class of Service of the mobile terminal, which can be found out by doing a Bluetooth inquiry.
The term “indicative of capabilities of a wireless interface” is to be understood, in the context of the present invention, as e.g. a data set comprising the information “14 capabilities reported”; “Nokia SyncML Server” arranged on sixth position; capability “SDP Server” present. This data set would then comprise an association with the corresponding terminal identification, in this example “Nokia E70”. By evaluating the capabilities of the wireless interface in the above described manner the present invention thus enables to determine the identification of a mobile terminal, in an interoperable manner independent from specific wireless interface implementation.
The controller 10 operates the wireless interface 8 such that a request for wireless interface capabilities of the mobile terminal 2 is issued (indicated by 14). The mobile terminal 2 will then respond (indicated by 16) with wireless interface capability data which are received from the wireless interface 8. The controller 10 is adapted to compare this received data with the data sets 6 within the database DB. According to what has already been detailed in conjunction with
In advanced embodiments the device/system of the invention further comprises another database DB2, which can store associations between identifiers of mobile electronic terminals 26, client software (versions) 20, content data 22 and also data services 24. The controller 10 can access this database DB2 via the database access component 4 and a database interface 18 in order to provide specific client software and data content to the identified mobile terminal 2, or for enabling a suitable data service for the mobile terminal. Also this database DB2 can be external to what is shown in the dashed box, e.g. somewhere remote on the other side of a wired or wireless network. It should be noted that the two databases DB and DB2 can also be integrated into one database, in further embodiments of the inventive device/system. Also any database can be external to, or be integrated to what is in the dashed box, depending on the specific demand.
This invention provides a mechanism for a requesting device (e.g. servicing Access Point) for receiving necessary information from a target device by way of conducting device discovery and connection set-up procedures and gathering the needed information by way of requesting wireless interface capability information from the target device during the processes, in order to determine the type/model of the target device, e.g. using a dedicated type/model software agent and a pre-stored device type/model capabilities database. This can be performed automatically without the active help of a user of a mobile device.
In other words, the servicing access point is enabled to gather capability information regarding the target terminal device during the connection set-up procedures (particularly Service Discovery Protocol (SDP) records of Bluetooth) and provides this information to a dedicated type/model software agent, which performs mapping of the results within the dedicated device type/model capabilities database that comprises information regarding capabilities of various different device models of various device manufacturers. Based on identified matches of the mapping between the received information from the target device and the pre-stored device type/model database, the software agent is capable of providing a determination of the type and/or model of the target device.
Using this information the servicing access point can provide suitable services/client software/content to the target device as e.g. stored in another dedicated database containing associations between the device type/model and operating system/software version and/or additional features list. An example of such an association may be the determined operating system/software of a certain mobile phone model, and also the definition whether a particular phone model is equipped with e.g. an MP3 player or other similar features, such as, for example, display capabilities or the supported audio interface. Using standard Bluetooth SDP alone the mobile terminal cannot provide the servicing access point with such information.
Thus one use case is the above-mentioned delivery of client software required to access a certain local connectivity service. Other use cases could be the transmission of relevant content to users with Bluetooth, based on the terminal model used. Examples for this could be security fixes of the operating software of a mobile phone, firmware updates and the like. Another example can be to only send Nokia related ads to a Nokia phone.
In some embodiments of the present invention the dedicated software agent makes the mapping based on only pre-defined rules. In alternative embodiments the dedicated software agent is capable of learning during the process, so that the agent may either learn various combinations and use that information in connection with future device type/model definitions, or even store the Bluetooth_ADDR wireless identifier of the target device to a substantially permanent or temporary storage that can be used later on to define the target terminal type/model rapidly using only the device discovery (Inquiry) for defining the target terminal type/model. For example, one way of such a learning process could be performed such that when an unknown terminal uses an application that was sent to the terminal, the server side can note, based on information received from the client application, the terminal model and store it for future usage.
For local connectivity services the most difficult step in the process of actually utilizing the service is how to bootstrap the required client software to the end-user's phone. The invention can assist in this step enormously, as there are no specific instructions required for every possible phone model, and the user does not have to know the real phone model he is using.
Filing Document | Filing Date | Country | Kind | 371c Date |
---|---|---|---|---|
PCT/IB2006/000512 | 3/9/2006 | WO | 00 | 12/22/2008 |