[go: up one dir, main page]

WO2011063833A1 - Method and apparatus for enabling location based services - Google Patents

Method and apparatus for enabling location based services Download PDF

Info

Publication number
WO2011063833A1
WO2011063833A1 PCT/EP2009/065828 EP2009065828W WO2011063833A1 WO 2011063833 A1 WO2011063833 A1 WO 2011063833A1 EP 2009065828 W EP2009065828 W EP 2009065828W WO 2011063833 A1 WO2011063833 A1 WO 2011063833A1
Authority
WO
WIPO (PCT)
Prior art keywords
location
modem
library
platform independent
access network
Prior art date
Legal status (The legal status 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 status listed.)
Ceased
Application number
PCT/EP2009/065828
Other languages
French (fr)
Inventor
Peter Rogers
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Telefonaktiebolaget LM Ericsson AB
Original Assignee
Telefonaktiebolaget LM Ericsson AB
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 Telefonaktiebolaget LM Ericsson AB filed Critical Telefonaktiebolaget LM Ericsson AB
Priority to PCT/EP2009/065828 priority Critical patent/WO2011063833A1/en
Publication of WO2011063833A1 publication Critical patent/WO2011063833A1/en
Anticipated expiration legal-status Critical
Ceased legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/54Interprogram communication
    • 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
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/04Protocols specially adapted for terminals or networks with limited capabilities; specially adapted for terminal portability
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/50Network services
    • H04L67/52Network services specially adapted for the location of the user terminal
    • 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
    • H04W4/00Services specially adapted for wireless communication networks; Facilities therefor
    • H04W4/02Services making use of location information
    • H04W4/024Guidance services
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W4/00Services specially adapted for wireless communication networks; Facilities therefor
    • H04W4/18Information format or content conversion, e.g. adaptation by the network of the transmitted or received information for the purpose of wireless delivery to users or terminals
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W4/00Services specially adapted for wireless communication networks; Facilities therefor
    • H04W4/20Services signaling; Auxiliary data signalling, i.e. transmitting data via a non-traffic channel

Definitions

  • the present invention relates to communications networks, in general, and in particular to providing location based service to an internet enabled device.
  • GPS Global Positioning System
  • GPS receivers are especially beneficial in navigation devices that help drivers getting to a desired location.
  • Mass market for these solutions drove their prices down and now GPS receivers are present also in mobile phones and other devices.
  • GPS systems have some drawbacks. First, they do not work inside buildings because the satellite signal is too weak. The same problem sometimes occurs in dense urban environment. Another drawback is that the GPS receiver uses power of the mobile phone battery.
  • Yet another drawback is a parameter called time to first fix that may not be that significant in the case of navigation applications, but when the GPS receiver is used to determine position on an ad hoc basis (i.e. when it was switched off to save battery or simply because it was not needed) the waiting time may be frustrating and in consequence of little use for location based internet services.
  • the invention seeks to preferably mitigate, alleviate or eliminate one or more of the disadvantages mentioned above singly or in any combination.
  • a method of providing a location based service to a device connected to a wireless access network via a modem comprises a client-side web scripting language library with a first application programmer interface and a platform independent software library with a second application programmer interface.
  • the platform independent software library is enabled to be called from the client-side web scripting language library.
  • the method comprises the steps of instructing the modem by the platform independent software library to obtain identification data relating to the access network that the modem is currently connected to and inspecting by the platform independent software library the file system of the modem in order to obtain configuration files containing data related to said access network and indicative of the location of the device.
  • data indicative of the location of the device is sent to the client-side web scripting language based library for use by a web application to provide location based services to the device.
  • a device connected to a wireless access network via a modem.
  • the device comprises a client-side web scripting language library with a first application programmer interface and a platform independent software library with a second application programmer interface.
  • the platform independent software library is connected to and enabled to be called from the client-side web scripting language library.
  • the platform independent software library is adapted to instruct the modem to obtain identification data related to the access network that the modem is currently connected to and to inspect 112 the file system of the modem to obtain configuration files containing data related to said access network and indicative of the location of the device.
  • the device further comprises a processing unit adapted to run the client-side web scripting language library and platform independent software library.
  • the client-side web scripting language based library is adapted to receive data indicative of the location of the device from the platform independent software library and to send it to a web application to provide a location based service to the device.
  • the present invention provides the benefits of:
  • FIG. 1 - Fig. ID are diagrams illustrating a method of providing a location based service in embodiments of the present invention
  • FIG. 2 is a diagram illustrating a device in one embodiment of the present invention. Detailed description
  • the present invention in its various embodiments is applicable to internet enabled devices that connect to an access network via a radio interface.
  • Various services available on the Internet could be enriched by information relevant to location of the user, but in order to provide this location based service the provider of the web site offering the service has to know the location of the user. This, however, is not easy as discussed in the background section.
  • the device 200 connects to the internet via a modem 212.
  • the modem 212 can be a built-in modem or an external modem connected via USB port, or via a Bluetooth connection or in any other way.
  • the web page sends 104 to the device 200 an instruction to determine location of the device 200.
  • the instruction from the web page is intercepted by a client-side web scripting language library 202 with a first API 204 operating in a processor 210 of the device 200.
  • API Application Programmer Interface
  • a software library is typically a set of software components designed to be used by third parties and so by definition it must offer some form of API.
  • the client-side web scripting language library 202 is used by web developers to add location features into websites.
  • the first API 204 can be used to display a map with the website user's location displayed on it.
  • the client-side web scripting language library 202 with the first API is a JavaScript API, which is the most common scripting language on the Web. In alternative embodiments other scripting APIs can be used. In the future it will be a W3C standard based around HTML 5 Location API.
  • the client-side web scripting language library 202 After receiving the instruction from the accessed web page the client-side web scripting language library 202 processes 106 this instruction and calls the platform independent software library 206. In response to this call the platform independent software library 206 instructs 108 the modem 212 to get identification data relating to the access network that the modem 212 is currently connected to. In one embodiment the instruction is given to the modem 212 using AT commands:
  • the modem 212 connects to the access network via a radio interface and receives 110 a response from the base station in the format:
  • the Location Area Code (LAC) and Cell ID are in hexadecimal format and denote the GSM radio cell that the modem is currently connected to. This information is saved in configuration files stored in a file system 214 of the modem 212.
  • the platform independent software library 206 with its low-level API 208 is written in any portable programming language that allows access to AT Commands, for example, Java SE. The language chosen must be portable, in order for the low-level API 208 to work on a wide variety of internet enabled devices. It is the responsibility of the platform independent software library 206 to do the grunt work of obtaining the Cell ID and resolving it into location data.
  • the modem 212 may be connected to a Wi-Fi hot spot (e.g. at an airport, in a shopping mall, office, etc.) or when there is no Wi-Fi available the connection may be via a radio access network of a GSM or 3 G or 4G network.
  • the radio link is to a base station.
  • the platform independent software library 206 uses HTTP GET or Telnet Log On instruction in order get access to the configuration files of the modem 212. Once the platform independent software library 206 has the access to the configuration files the platform independent software library 206 inspects 112 said configuration files containing data related to the access network.
  • a configuration file is an XML configuration file containing LAC the current Cell ID and Signal Strength. This XML configuration file is stored in the file system 214 of the modem/router 212. Another example is reading a local cache of a Cell ID look up map that has been stored on the file system 214 of a modem/router 212.
  • These configuration files typically are dynamically updated by the modem/router, so that they have real-time up to date information about the location of the user device.
  • the platform independent software library 206 preferably resolves 114 these identification data into recognisable location information.
  • the translation of the LAC and Cell ID into location data is performed by the platform independent software library 206 on the host processor 210 of the internet-enabled device 200.
  • the device 200 is a PC with a mobile broadband dongle and the low-level second API 208 (i.e. the one of the platform independent software library 206) is written as a Java SE application then the LAC and Cell ID will be translated with the Java SE application, within the Java SE Virtual Machine, running on the core processor of the PC.
  • the device 200 is not limited to personal computers and in other embodiments can be a mobile phone, PDA or any other device that accesses internet.
  • the step of resolving 114 can be carried out in one of at least two possible ways, as illustrated in Fig. 1 A.
  • the platform independent software library 206 makes a network call to a web service 122 that host a global Cell ID look up database.
  • the LAC and Cell ID codes are sent.
  • the platform independent software library 206 receives location information converted to a different format.
  • the available web based services that provide translation of cell identification data use Cell ID, LAC, MCC (Mobile Country Code) and MNC (Mobile Network Code) - however most systems work just with Cell ID.
  • the platform independent software library 206 may use 124 said database 216 to translate the Cell ID.
  • the local database 216 should be updated regularly to have up to date information about location of newly added base stations and removed information about base stations taken out of service.
  • the results of the translation are returned in one of the following formats:
  • NMEA 0183 'navigation sentences' as from real GPS hardware; custom HTTP header for use with location aware services, e.g. GPS:
  • the platform independent software library 206 sends 116 said data, preferably in an asynchronous fashion, to the client-side web scripting language based library 202 for use by a web application to provide location based services to the device 200.
  • any method call that is blocking or can potentially block for long periods of time has to be asynchronous. This is in relation to the program code running in both the low-level 208 and high-level 204 scripting API. In fact both APIs can also offer a blocking synchronous method call additionally, but it is not really recommended because the code will just freeze until the method call has returned - which with a location look up could be a few seconds.
  • the high level scripting API 204 can offer both synchronous and asynchronous method calls.
  • the location information When the location information is received by the client-side web scripting language based library 202 it is available to the JavaScript Virtual Machine running said client-side web scripting language based library 202 and can be easily accessed and used by a JavaScript API. In consequence the location is available to the accessed web site that initiated the method. Having the user's location information the web site can provide a service that is specific to the current location of the user.
  • the platform independent software library 206 does not resolve the LAC and Cell ID information, but sends 116 this data to the client-side web scripting language based library 202. This unprocessed information is then provided to the web application that initially sent the instruction 104 to determine the location of the device 200. Once the web application has the LAC and Cell ID data it resolves it to a required format. The web application uses for this operation either one of the available internet services or its own database.
  • Fig. 1 illustrates the step of resolving 114 carried out before the step of sending as optional (dashed line).
  • the difference between the two APIs is that the low-level API 208 never needs to expose its functionality directly to the web programmer. This means that it can work with the W3C HTML 5 Location API in the future. All the low-level API 208 does is to provide the information in to the JavaScript Virtual Machine running the high level API 204. Therefore, by having two separate APIs there is much more flexibility in the implementation and it eases integration with future scripting standards. The objective is to provide the location information directly into the JavaScript Virtual Machine and in this way allow any JavaScript API to access it. Providing the location information into the JavaScript VM ensures freedom for web programmers to design JavaScript APIs that can access it. Another way to view this is that there are two separate pieces of functionality and it has been chosen to locate these functionalities in different places for flexibility of integration.
  • the device 200 In determining location of the device for the purpose of providing location based service the location of the user does not have to be very precise and in many situations coarse location information will be sufficient. However, the more accurate the location information is the better the service can be. Additionally, improved precision can allow for offering services not known today. Therefore, as shown in Fig IB, in order to determine location with improved accuracy the device 200 should check what networks are available for connection. If the device 200 can connect from its current location to more than one base station of different networks or more than one base stations (access points) 130 of the same network then the steps leading to determining location are activated for the base station with the shortest range 132. This is, for example, for a situation that the device in the same place can be connected to a cellular telephone network and to a Wi-Fi hot spot.
  • the range of the Wi-Fi hotspot is much shorter than that of a cellular telephone network base station, location of the device determined based on the location of the Wi-Fi hotspot will be more accurate. Similarly, if the device 200 from its current location can connect to different base stations of the same cellular telephone network 130 the device should choose the base station with the shortest range 132 for the process of location fixing. It is known to classify cells of a cellular telephone network based on the radius of the cell. In one of the classifications macro-cells are cells with radius 1 km - 30 km, micro-cells are cells with radius 200 m - 2 km and pico-cells are cells with radius 4 m - 200 m.
  • the device 200 can connect from its current location to a micro-cell A and a pico-cell B the device should determine its position with reference to the pico-cell B.
  • the cells available for connection and in consequence for determination of the position of the device 200 in a preferred embodiment belong to the same operator, preferably the network to which the user device 200 is subscribed to.
  • the base stations belong to different operators.
  • the device when the device can connect from its current location to more than one base station 130 and the base stations offer radio interfaces operating in the same technology, and the signals received are from the same type of cells (macro, micro or pico-cells) the connection with the base station with the strongest signal is used 136 to determine location of the device 200.
  • the configuration files in the modem's 212 file system 214 contain not only the current Cell ID but also signal strength value. When inspecting 112 the configuration file the signal strength value can also be retrieved and compared with signal strength values from other base stations. If there is only one base station (access point) in the range of the device 200 this one base station is used 134 in determining the position of the device 200.
  • Fig. ID multilateration technique is used 142 to determine the position of the user device 200.
  • This embodiment requires connection to at least three base stations 140 and requires computing a time difference of arrival (TDOA) of signals transmitted from three or more base stations (transmitters) and received by the user device 200.
  • TDOA time difference of arrival
  • the detailed technique will not be discussed here as it is known in the art. It is important that in the embodiments of the present invention the calculations of the position are performed within the device 200 in order to make this service cheap (by minimising the use of network resources) and in consequence popular amongst users.
  • the device 200 can determine which of the available approaches should be used, wherein the user may configure the device to use the cheapest available service or the most accurate one, or in any other way.
  • the web service in the instruction that initiates the method, identifies the required accuracy level and this level determines which one of the described embodiments should be used.

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Mobile Radio Communication Systems (AREA)

Abstract

A method of providing a location based service to a device connected to a wireless access network via a modem. Said device comprises a client-side web scripting language library and a platform independent software library enabled to be called from the client-side web scripting language library. The method comprises the steps of instructing (108) the modem by the platform independent software library to obtain (HO) identification data related to the access network that the modem is currently connected to; inspecting (112) the file system of the modem to obtain configuration files containing data related to said access network and sending (116) data indicative of the location of the device to the client-side web scripting language based library for use by a web application to provide location based services to the device.

Description

Method and Apparatus for Enabling Location Based Services
Technical Field
The present invention relates to communications networks, in general, and in particular to providing location based service to an internet enabled device.
Background
When location needs to be determined systems like GPS (Global Positioning System) or its equivalents using constellation of satellites to calculate position of a receiver of the satellites' signals are successfully used. Using GPS receivers is especially beneficial in navigation devices that help drivers getting to a desired location. Mass market for these solutions drove their prices down and now GPS receivers are present also in mobile phones and other devices. Although very good for in-car navigation the GPS systems have some drawbacks. First, they do not work inside buildings because the satellite signal is too weak. The same problem sometimes occurs in dense urban environment. Another drawback is that the GPS receiver uses power of the mobile phone battery. Yet another drawback is a parameter called time to first fix that may not be that significant in the case of navigation applications, but when the GPS receiver is used to determine position on an ad hoc basis (i.e. when it was switched off to save battery or simply because it was not needed) the waiting time may be frustrating and in consequence of little use for location based internet services.
There are also known solutions in which when an emergency call is made from a mobile phone the network infrastructure determines position of the mobile phone based on signal pattern matching, observed timing differences between received signals. All these methods are implemented at the network side and require information available only in the network infrastructure. Because these methods are implemented on the network side and consume computing resources of the network any non-emergency service based on these solutions is a paid service. Summary
It is the object of the present invention to obviate at least some of the above disadvantages and provide an improved method for providing location based service to an internet enabled device.
Accordingly, the invention seeks to preferably mitigate, alleviate or eliminate one or more of the disadvantages mentioned above singly or in any combination.
According to a first aspect of the present invention there is provided a method of providing a location based service to a device connected to a wireless access network via a modem. The device comprises a client-side web scripting language library with a first application programmer interface and a platform independent software library with a second application programmer interface. The platform independent software library is enabled to be called from the client-side web scripting language library. The method comprises the steps of instructing the modem by the platform independent software library to obtain identification data relating to the access network that the modem is currently connected to and inspecting by the platform independent software library the file system of the modem in order to obtain configuration files containing data related to said access network and indicative of the location of the device. In the following step data indicative of the location of the device is sent to the client-side web scripting language based library for use by a web application to provide location based services to the device.
According to a second aspect of the present invention there is provided a device connected to a wireless access network via a modem. The device comprises a client-side web scripting language library with a first application programmer interface and a platform independent software library with a second application programmer interface. The platform independent software library is connected to and enabled to be called from the client-side web scripting language library. The platform independent software library is adapted to instruct the modem to obtain identification data related to the access network that the modem is currently connected to and to inspect 112 the file system of the modem to obtain configuration files containing data related to said access network and indicative of the location of the device. The device further comprises a processing unit adapted to run the client-side web scripting language library and platform independent software library. The client-side web scripting language based library is adapted to receive data indicative of the location of the device from the platform independent software library and to send it to a web application to provide a location based service to the device.
Further features of the present invention are as claimed in the dependent claims.
The present invention provides the benefits of:
fast provision of location based service;
- reduced power consumption compared to GPS based solutions;
- reliability of service inside buildings;
- reduced use of network resources.
Brief description of the drawings
The present invention will be understood and appreciated more fully from the following detailed description taken in conjunction with the drawings in which:
FIG. 1 - Fig. ID are diagrams illustrating a method of providing a location based service in embodiments of the present invention;
FIG. 2 is a diagram illustrating a device in one embodiment of the present invention. Detailed description
The present invention in its various embodiments is applicable to internet enabled devices that connect to an access network via a radio interface. Various services available on the Internet could be enriched by information relevant to location of the user, but in order to provide this location based service the provider of the web site offering the service has to know the location of the user. This, however, is not easy as discussed in the background section.
With reference to Fig. 1 one embodiment of a method of providing a location based service to a device connected to a wireless access network is presented. The device 200, illustrated in Fig. 2, connects to the internet via a modem 212. The modem 212 can be a built-in modem or an external modem connected via USB port, or via a Bluetooth connection or in any other way. When the user accesses 102 a web page that offers a location based service the web page sends 104 to the device 200 an instruction to determine location of the device 200. The instruction from the web page is intercepted by a client-side web scripting language library 202 with a first API 204 operating in a processor 210 of the device 200. There is also a second library operating in the processor 210 - a platform independent software library 206 with a second API 208 which can be called from the client-side web scripting language library 202.
Application Programmer Interface (API) normally means that a software programmer has a freely available interface to the software component(s). The interface is well documented and allows a third party to interface with it. A software library is typically a set of software components designed to be used by third parties and so by definition it must offer some form of API. In the case of both libraries operating in the device in embodiments of the present invention two different APIs 204 and 208 are implemented. The client-side web scripting language library 202 is used by web developers to add location features into websites. For example, the first API 204 can be used to display a map with the website user's location displayed on it. In one embodiment the client-side web scripting language library 202 with the first API is a JavaScript API, which is the most common scripting language on the Web. In alternative embodiments other scripting APIs can be used. In the future it will be a W3C standard based around HTML 5 Location API.
After receiving the instruction from the accessed web page the client-side web scripting language library 202 processes 106 this instruction and calls the platform independent software library 206. In response to this call the platform independent software library 206 instructs 108 the modem 212 to get identification data relating to the access network that the modem 212 is currently connected to. In one embodiment the instruction is given to the modem 212 using AT commands:
AT+CREG=?
AT+CREG=2
The modem 212 connects to the access network via a radio interface and receives 110 a response from the base station in the format:
+CREG: <CREG Setting>,<Registration Code>,<LAC>, <Cell ID>, e.g. +CREG: 2,1,048A,58B2
The Location Area Code (LAC) and Cell ID are in hexadecimal format and denote the GSM radio cell that the modem is currently connected to. This information is saved in configuration files stored in a file system 214 of the modem 212. The platform independent software library 206 with its low-level API 208 is written in any portable programming language that allows access to AT Commands, for example, Java SE. The language chosen must be portable, in order for the low-level API 208 to work on a wide variety of internet enabled devices. It is the responsibility of the platform independent software library 206 to do the grunt work of obtaining the Cell ID and resolving it into location data.
To simplify the drawings only the transmitter/receiver and antenna block 218 is presented in Fig. 2. Depending on the location the modem 212 may be connected to a Wi-Fi hot spot (e.g. at an airport, in a shopping mall, office, etc.) or when there is no Wi-Fi available the connection may be via a radio access network of a GSM or 3 G or 4G network. In a basic embodiment the radio link is to a base station.
Data in the configuration files is not directly available/visible to the client-side web scripting language based library 202. Therefore the platform independent software library 206 uses HTTP GET or Telnet Log On instruction in order get access to the configuration files of the modem 212. Once the platform independent software library 206 has the access to the configuration files the platform independent software library 206 inspects 112 said configuration files containing data related to the access network. One example of a configuration file is an XML configuration file containing LAC the current Cell ID and Signal Strength. This XML configuration file is stored in the file system 214 of the modem/router 212. Another example is reading a local cache of a Cell ID look up map that has been stored on the file system 214 of a modem/router 212. These configuration files typically are dynamically updated by the modem/router, so that they have real-time up to date information about the location of the user device.
Although the LAC and Cell ID codes define the location of the user device the format of these codes makes them unusable in providing the location based services. In order to get a useable location data the platform independent software library 206 preferably resolves 114 these identification data into recognisable location information. The translation of the LAC and Cell ID into location data is performed by the platform independent software library 206 on the host processor 210 of the internet-enabled device 200. For example if the device 200 is a PC with a mobile broadband dongle and the low-level second API 208 (i.e. the one of the platform independent software library 206) is written as a Java SE application then the LAC and Cell ID will be translated with the Java SE application, within the Java SE Virtual Machine, running on the core processor of the PC. The device 200 is not limited to personal computers and in other embodiments can be a mobile phone, PDA or any other device that accesses internet.
The step of resolving 114 can be carried out in one of at least two possible ways, as illustrated in Fig. 1 A. In a first method the platform independent software library 206 makes a network call to a web service 122 that host a global Cell ID look up database. In this call to said web service the LAC and Cell ID codes are sent. In response from the web service the platform independent software library 206 receives location information converted to a different format. The available web based services that provide translation of cell identification data use Cell ID, LAC, MCC (Mobile Country Code) and MNC (Mobile Network Code) - however most systems work just with Cell ID. Alternatively, if the device 200 comprises a local database 216 having information about location of base stations 120, the platform independent software library 206 may use 124 said database 216 to translate the Cell ID. The local database 216 should be updated regularly to have up to date information about location of newly added base stations and removed information about base stations taken out of service. Preferably the results of the translation are returned in one of the following formats:
<latitude>,<longitude> form of GPS co-ordinates;
- named location and address;
NMEA 0183 'navigation sentences' as from real GPS hardware; custom HTTP header for use with location aware services, e.g. GPS:
<latitude>,<longitude>.
Once the platform independent software library 206 have the translated location data it sends 116 said data, preferably in an asynchronous fashion, to the client-side web scripting language based library 202 for use by a web application to provide location based services to the device 200. Normally, in programming terms, any method call that is blocking or can potentially block for long periods of time has to be asynchronous. This is in relation to the program code running in both the low-level 208 and high-level 204 scripting API. In fact both APIs can also offer a blocking synchronous method call additionally, but it is not really recommended because the code will just freeze until the method call has returned - which with a location look up could be a few seconds. The high level scripting API 204 can offer both synchronous and asynchronous method calls.
When the location information is received by the client-side web scripting language based library 202 it is available to the JavaScript Virtual Machine running said client-side web scripting language based library 202 and can be easily accessed and used by a JavaScript API. In consequence the location is available to the accessed web site that initiated the method. Having the user's location information the web site can provide a service that is specific to the current location of the user.
In yet another alternative embodiment the platform independent software library 206 does not resolve the LAC and Cell ID information, but sends 116 this data to the client-side web scripting language based library 202. This unprocessed information is then provided to the web application that initially sent the instruction 104 to determine the location of the device 200. Once the web application has the LAC and Cell ID data it resolves it to a required format. The web application uses for this operation either one of the available internet services or its own database. Fig. 1 illustrates the step of resolving 114 carried out before the step of sending as optional (dashed line).
The difference between the two APIs is that the low-level API 208 never needs to expose its functionality directly to the web programmer. This means that it can work with the W3C HTML 5 Location API in the future. All the low-level API 208 does is to provide the information in to the JavaScript Virtual Machine running the high level API 204. Therefore, by having two separate APIs there is much more flexibility in the implementation and it eases integration with future scripting standards. The objective is to provide the location information directly into the JavaScript Virtual Machine and in this way allow any JavaScript API to access it. Providing the location information into the JavaScript VM ensures freedom for web programmers to design JavaScript APIs that can access it. Another way to view this is that there are two separate pieces of functionality and it has been chosen to locate these functionalities in different places for flexibility of integration.
In determining location of the device for the purpose of providing location based service the location of the user does not have to be very precise and in many situations coarse location information will be sufficient. However, the more accurate the location information is the better the service can be. Additionally, improved precision can allow for offering services not known today. Therefore, as shown in Fig IB, in order to determine location with improved accuracy the device 200 should check what networks are available for connection. If the device 200 can connect from its current location to more than one base station of different networks or more than one base stations (access points) 130 of the same network then the steps leading to determining location are activated for the base station with the shortest range 132. This is, for example, for a situation that the device in the same place can be connected to a cellular telephone network and to a Wi-Fi hot spot. Because the range of the Wi-Fi hotspot is much shorter than that of a cellular telephone network base station, location of the device determined based on the location of the Wi-Fi hotspot will be more accurate. Similarly, if the device 200 from its current location can connect to different base stations of the same cellular telephone network 130 the device should choose the base station with the shortest range 132 for the process of location fixing. It is known to classify cells of a cellular telephone network based on the radius of the cell. In one of the classifications macro-cells are cells with radius 1 km - 30 km, micro-cells are cells with radius 200 m - 2 km and pico-cells are cells with radius 4 m - 200 m. Therefore, if the device 200 can connect from its current location to a micro-cell A and a pico-cell B the device should determine its position with reference to the pico-cell B. The cells available for connection and in consequence for determination of the position of the device 200 in a preferred embodiment belong to the same operator, preferably the network to which the user device 200 is subscribed to. However, in alternative embodiments the base stations belong to different operators. In another embodiment, shown in Fig. 1C, when the device can connect from its current location to more than one base station 130 and the base stations offer radio interfaces operating in the same technology, and the signals received are from the same type of cells (macro, micro or pico-cells) the connection with the base station with the strongest signal is used 136 to determine location of the device 200. This is applicable in the situation when the device 200 can connect to two (or more) different base stations 130 or even networks (e.g. GSM or 3G networks) and signal from one base station is stronger than the signal from the other base stations. This means that the user is closer to the base station giving the stronger signal and therefore this should be taken as its location 136. The problem with this approach is that accuracy of this embodiment would be reduced in the cities where the buildings reduce signal strength. As discussed earlier, the configuration files in the modem's 212 file system 214 contain not only the current Cell ID but also signal strength value. When inspecting 112 the configuration file the signal strength value can also be retrieved and compared with signal strength values from other base stations. If there is only one base station (access point) in the range of the device 200 this one base station is used 134 in determining the position of the device 200.
If no short-range cell is available for connection and the accuracy of location determined based only on the available cell is not good enough in one embodiment of the present invention, Fig. ID, multilateration technique is used 142 to determine the position of the user device 200. This embodiment requires connection to at least three base stations 140 and requires computing a time difference of arrival (TDOA) of signals transmitted from three or more base stations (transmitters) and received by the user device 200. Alternatively, it is also possible to locate a transmitter (user device 200) by measuring the TDOA of a signal emitted from the user device 200 to three or more base stations (receivers) 140. The detailed technique will not be discussed here as it is known in the art. It is important that in the embodiments of the present invention the calculations of the position are performed within the device 200 in order to make this service cheap (by minimising the use of network resources) and in consequence popular amongst users.
Depending on the accuracy required by the web service the device 200 can determine which of the available approaches should be used, wherein the user may configure the device to use the cheapest available service or the most accurate one, or in any other way. Alternatively, the web service, in the instruction that initiates the method, identifies the required accuracy level and this level determines which one of the described embodiments should be used.

Claims

1. A method of providing a location based service to a device connected to a wireless access network via a modem, wherein said device comprises a client-side web scripting language library with a first application programmer interface and a platform independent software library with a second application programmer interface enabled to be called from the client-side web scripting language library; the method comprising the steps of:
instructing (108) the modem by the platform independent software library to obtain (110) identification data related to the access network that the modem is currently connected to;
inspecting (112) by the platform independent software library the file system of the modem to obtain configuration files containing identification data related to said access network and indicative of the location of the device;
sending (116) data indicative of the location of the device to the client-side web scripting language based library for use by a web application to provide location based services to the device.
2. The method according to claim 1 comprising a step of resolving (114) the identification data related to said access network into recognisable location information before the step of sending (116).
3. The method according to claim 2, wherein in the step of resolving (114) a network based database is used (124) to translate the information data into the recognisable location information.
4. The method according to claim 2 wherein the step of resolving (114) uses (122) a database stored locally within the device to translate the information data into the recognisable location information.
5. The method according to any one of claims 1 - 4, wherein if the device can connect from its current location to more than one base station (130) the steps of the method are activated for the network with the shortest range (132).
6. The method according to any one of claims 1 - 4, wherein if the device can connect from its current location to more than one base station (130) and the base stations offer radio interfaces operating in the same technology the steps of the method are activated for the connection with the base station with the strongest signal (136).
7. The method according to any one of claims 1 - 4, wherein if the device can connect from its current location to at least three base stations (140) the steps of the method leading to resolving the identification data are activated for at least three of these base stations and further comprise determining the position of the device by multilateration (142).
8. The method according to any one of claims 1 - 7, initiated by an instruction (104) received by the device from an internet site accessed by the device.
9. A device (200) connected to a wireless access network via a modem (212), wherein said device (200) comprises a client-side web scripting language library (202) with a first application programmer interface (204) and a platform independent software library (206) with a second application programmer interface (208) connected to and enabled to be called from the client-side web scripting language library (202) and the platform
independent software library (206) being adapted to instruct the modem (212) to obtain identification data related to the access network that the modem (212) is currently connected to and to inspect the file system (214) of the modem (212) to obtain
configuration files containing data related to said access network and indicative of the location of the device; the device (200) further comprises a processing unit (210) adapted to run the two libraries (202, 206), wherein the client-side web scripting language based library (202) is adapted to receive from the platform independent software library (206) data indicative of the location of the device (200) and to send it to a web application to provide a location based service to the device (200).
10. The device (200) according to claim 9, wherein the processing unit (210) is adapted to be used in resolving the identification data related to said access network into recognisable location information.
11. The device (200) according to claim 10 adapted to use in resolving the
identification data a network based database to translate the information data into the recognisable location information.
12. The device (200) according to claim 10 comprising a data database (216) stored locally within the device (200) adapted to be used in translating the information data into the recognisable location information.
13. The device (200) according to any one of claims 9 - 12, wherein if the device (200) can connect from its current location to more than one access network the platform independent software library (206) is adapted to instruct the modem (212) to obtain identification data of the network with the shortest range.
14. The device (200) according to any one of claims 9 - 12, wherein if the device can connect from its current location to more than one base station and the base stations offer radio interfaces operating in the same technology the platform independent software library is adapted to instruct the modem (212) to obtain identification data for the connection with the base station having the strongest signal.
15. The device (200) according to any one of claims 9 - 12, wherein if the device can connect from its current location to at least three base stations the platform independent software library (206) is adapted to instruct the modem (212) to obtain identification data based on connections with at least three of these base stations and the processor (210) is adapted to determine the position of the device by multilateration.
PCT/EP2009/065828 2009-11-25 2009-11-25 Method and apparatus for enabling location based services Ceased WO2011063833A1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
PCT/EP2009/065828 WO2011063833A1 (en) 2009-11-25 2009-11-25 Method and apparatus for enabling location based services

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/EP2009/065828 WO2011063833A1 (en) 2009-11-25 2009-11-25 Method and apparatus for enabling location based services

Publications (1)

Publication Number Publication Date
WO2011063833A1 true WO2011063833A1 (en) 2011-06-03

Family

ID=42635180

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/EP2009/065828 Ceased WO2011063833A1 (en) 2009-11-25 2009-11-25 Method and apparatus for enabling location based services

Country Status (1)

Country Link
WO (1) WO2011063833A1 (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8812705B1 (en) 2013-10-15 2014-08-19 Google Inc. Accessing location-based content

Citations (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
GB2364617A (en) * 2000-02-03 2002-01-30 Smartone Mobile Comm Ltd Locating system
WO2002078375A1 (en) * 2001-03-22 2002-10-03 Wavecom Sa Radiocommunication module hosting and executing a client software, and corresponding method for implementing a driving client software
US20030148771A1 (en) * 2002-02-07 2003-08-07 De Verteuil Andre Laurent Efficient location determination for mobile units
USRE38267E1 (en) * 1994-06-22 2003-10-07 Verizon Laboratories, Inc. Cellular network-based geographic coverage area reporting method and apparatus
US20030224806A1 (en) * 2002-06-03 2003-12-04 Igal Hebron System and method for network data quality measurement
EP1494387A1 (en) * 2003-06-30 2005-01-05 Research In Motion Limited Methods and apparatus for processing radio modem commands during network data sessions
US20080070572A1 (en) * 2006-09-19 2008-03-20 Roy Shkedi Signal Comparison-Based Location Determining Method
US7463188B1 (en) * 2007-04-03 2008-12-09 Eride, Inc. Wireless CPU GPS application
US20090106778A1 (en) * 2007-06-29 2009-04-23 France Telecom Method, interface and apparatus for discovering a location of a device
US20090143018A1 (en) * 2007-11-30 2009-06-04 Trueposition, Inc. Automated Configuration of a Wireless Location System
WO2009067766A1 (en) * 2007-11-26 2009-06-04 Seeker Wireless Pty Limited Methods and systems for zone creation and adaption

Patent Citations (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
USRE38267E1 (en) * 1994-06-22 2003-10-07 Verizon Laboratories, Inc. Cellular network-based geographic coverage area reporting method and apparatus
GB2364617A (en) * 2000-02-03 2002-01-30 Smartone Mobile Comm Ltd Locating system
WO2002078375A1 (en) * 2001-03-22 2002-10-03 Wavecom Sa Radiocommunication module hosting and executing a client software, and corresponding method for implementing a driving client software
US20030148771A1 (en) * 2002-02-07 2003-08-07 De Verteuil Andre Laurent Efficient location determination for mobile units
US20030224806A1 (en) * 2002-06-03 2003-12-04 Igal Hebron System and method for network data quality measurement
EP1494387A1 (en) * 2003-06-30 2005-01-05 Research In Motion Limited Methods and apparatus for processing radio modem commands during network data sessions
US20080070572A1 (en) * 2006-09-19 2008-03-20 Roy Shkedi Signal Comparison-Based Location Determining Method
US7463188B1 (en) * 2007-04-03 2008-12-09 Eride, Inc. Wireless CPU GPS application
US20090106778A1 (en) * 2007-06-29 2009-04-23 France Telecom Method, interface and apparatus for discovering a location of a device
WO2009067766A1 (en) * 2007-11-26 2009-06-04 Seeker Wireless Pty Limited Methods and systems for zone creation and adaption
US20090143018A1 (en) * 2007-11-30 2009-06-04 Trueposition, Inc. Automated Configuration of a Wireless Location System

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
"Digital cellular telecommunications system (Phase 2+); AT command set for GSM Mobile Equipment (ME) (3GPP TS 07.07 version 7.7.0 Release 1998); ETSI TS 100 916", ETSI STANDARDS, LIS, SOPHIA ANTIPOLIS CEDEX, FRANCE, vol. 3-T2;SMG4, no. V7.7.0, 1 December 2001 (2001-12-01), XP014005684, ISSN: 0000-0001 *

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8812705B1 (en) 2013-10-15 2014-08-19 Google Inc. Accessing location-based content

Similar Documents

Publication Publication Date Title
US11503564B2 (en) Measurement systems and methods for fingerprinting positioning
US7495608B1 (en) Position determination using almanac for virtual base stations
US10278016B2 (en) Systems and methods for position estimation using proximity devices
US8897807B2 (en) Using mobile messaging service message(s) as bearer for location related communications during voice call
US7218275B2 (en) Test apparatus and control method thereof for use with location based service system capable of optimizing location based service by adjusting maximum antenna range
US8670785B2 (en) Method and system for acquiring position of terminal
US8391893B2 (en) Devices, systems and methods for SMS-based location querying
US10212546B2 (en) Collaborative positioning method and wireless terminal
CN103119966A (en) Language Dependent Positioning and Signaling
CN113784276A (en) Positioning method, relay device, IoT device and network device
CN103969670A (en) Mobile terminal satellite positioning method and mobile network terminal
JP2017500589A (en) Method and apparatus for delivering assistance data from a server to a device identifying a virtual access point
CN101442729A (en) Method and system for locating device
FI110895B (en) Assisted GPS positioning
US9210680B2 (en) Method and apparatus for selecting a real time location service provider
WO2011063833A1 (en) Method and apparatus for enabling location based services
KR100703189B1 (en) Safe driving helper service method and system using Ms-pedest gps method
KR100590678B1 (en) Method and system for providing terminal-based PS service for updating location information of mobile communication terminal
KR100573181B1 (en) Location-based information service method using an MSSPAPDPSPS
KR20060010961A (en) Method and system using position data of GPS mobile communication terminal in navigation device
US20180227703A1 (en) Systems and methods for position estimation using proximity devices
KR101087664B1 (en) Method and system for providing navigation service using short message service
KR100682281B1 (en) Mobile station based GPS terminal and its method to secure positioning accuracy by controlling quality of service level according to movement speed
KR20060033661A (en) Method and system for providing a fare information service using the GPS method when using a bus
KR20050083494A (en) Method and system for position determination of mobile communication terminal by using mobile communication network and assisted-global positioning system in in-building environment

Legal Events

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

Ref document number: 09759735

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 09759735

Country of ref document: EP

Kind code of ref document: A1