The invention, together with further objects and advantages thereof, may best be understood by making reference to the following description taken together with the accompanying drawings, in which:
First, a few definitions of terms are made. In the present disclosure, terms such as Mobile Station (MS), Mobile Telephone, Mobile Phone, Mobile Terminal and Handset all refers to the device that is to be positioned. This device is typically a mobile telephone, hand held computer (PDA) or other device/apparatus equipped with a radio receiver for cellular/mobile network communication.
The term “position” is intended to mean a geographical position given as coordinates or degrees (e.g. the WGS-84 datum). It may also contain orientation and/or heading, speed, acceleration etc. A position may also be given as a relative measure. The position is always associated with a certain uncertainty. In such a way, a cell identity is equal to a position of the base station position with an accuracy corresponding to the surrounding cell area.
The term “location” is a more subjective position term defined by the type of (or relation to) facility or place. Examples of locations are: ‘military area/facility’, ‘hospital’, ‘office’, ‘theatre’, ‘near emergency exit’.
Both location and position may be used in the present invention to provide a particular requested service.
The positioning method according to the present invention is primarily targeting positioning in cellular mobile radio systems. GSM is the mobile radiotelephony standard used in the exemplary embodiments presented in the present disclosure. However, the present invention should not be restricted to GSM, since it is also applicable on other cellular mobile radio systems and their related standards. Non-exclusive examples of other radio standards that can be used together with the present invention are systems based on TDMA, CDMA, Wideband CDMA (WCDMA) and Time Division Duplex (TDD) technologies.
The basic idea with cellular networks 10, one of which is schematically illustrated in
A user of a mobile terminal 6 may want to utilise a position dependent service from a service provider. Such a system is illustrated in
The mobile terminal 6 is connected to a service provider 30 via the BS 2, the core network 14 and typically also a gateway 20. In order to be able to achieve position dependent services from the service provider 30, the actual position of the mobile terminal 6 has to be provided to the service provider 30.
The mobile terminal forwards the position request to the positioning node in the core network, which is made ready to make such positioning. BCCH signals are broadcast from different base stations and measured in the mobile terminal. A collection of these measurements are compiled in a measurement report, which is sent to the positioning node. The positioning node uses the measurement information from the mobile terminal in order to determine a position of the mobile terminal, and returns this position to the mobile terminal. This signalling takes place as time and resource consuming control signalling within the communications network.
When the mobile terminal receives the position, this position is forwarded in a data packet to the service provider, which utilises this information to provide appropriate services to the mobile terminal.
By this example, it is easily understood that there are a lot of signalling required to provide the position dependent service.
In most cellular systems, it is also possible to broadcast messages to all terminals within a cell. This is a message sent by the base station situated in the top of the present neighbour list. This message is typically broadcast in a similar way as the control signals that are used by the terminals to tune in to a certain base station. However, this broadcast signal transmits a message, typically a text message that all terminals in the cell can receive. It is in other words possible to send out information locally to the particular cell (or a number of cells if several cells send the same message) to all terminals in that cell.
In GSM, the channel for the cell broadcast message is called Short Message Service Cell Broadcast (SMSCB). The message broadcast on this channel is received and decoded by the handsets camping in the cell and set to decode the SMSCB message.
The SMSCB message consists of 88 octets segmented into four 22 octet blocks. The message header consists of a six octet number used to signal if the message is a new one or not. If the number is the same as the number of the already decoded message, the message is the same and the terminal will not decode the message again. If the number is a new one, it is a new message and the terminal will decode it.
This feature offers the possibility to build location-based services using this broadcast channel. Typically, this can be local weather or traffic information. The easiest example is simply sending local information as text message broadcast on this channel. This is, however, a quite limited opportunity, since all mobile terminals of a certain cell receives the same service. More advanced services, adapted to each individual mobile terminal, could be offered if the broadcast information is not the service itself, but rather information used by another service. One example of this could simply be to broadcast the position of the centre of the cell (the base station) and maybe the approximate radius of the cell. This would mean that all users in the cell would get an indication of the area where they are located. This information could then in turn be used in other services, such as maps etc.
However, unrestricted broadcasting of the position of the cell centre would mean that any service provider could use this as position input and build Location Based services using it. The positioning information is information basically provided by the cellular communications system operator, but in this way the operator has no possibilities in any way to charge for the service providing the position.
The basic principle in a preferred embodiment of the present invention is to broadcast a unique message in one cell or several cells (depending of the required accuracy). All terminals camping in the cell (or one of the cells) receive the broadcast message. To determine a position of a mobile, this message, or a message dependent therefrom, is re-used for providing the position determination in the network, by matching this message to a known position of a base station emitting it. In a particular embodiment, the broadcast message is intermittently changing. This means that the matching of a message to a position must be updated, synchronised with the message broadcast. If a database is used for such matching, this database has to change in the same manner as the broadcast message. The basic concept is thus to use cell broadcast messages for location-based services with a simple and fast procedure.
The accuracy of the positioning is equal to the cell size, the sector size, or the size of the area, where the message can be received. Typically this means that the best available accuracy equals the accuracy of Cell-ID (CGI, COO) methods. As indicated above, several base stations, i.e. a set of base stations, may broadcast the same message and the identifiable area is then equal to the combined cell areas. However, in a typical case, each base station constitutes its own “set” and the accuracy is then equal to the cell area. In the embodiments below, it is assumed that each base station has its own unique text message to broadcast at every instant. However, anyone skilled in the art realises that corresponding solutions are possible also with sets of base stations comprising more than one base station.
The antenna 3 of the base station 2 or any other transmitter capable of transmitting the message sends the broadcast message that has been provided to be used. The transmitter 3 sending the broadcast message may be connected to base stations, repeaters or other components, connected or not, to the mobile system with the capability to send broadcast messages decodable for the receiving terminals 6.
The mobile terminal 6 receives the broadcast text message, and uses this as an argument to retrieve other information. The text message can be used in the original form or it can be processed in different way, discussed further below, in order to give another amount of data being depending on the original text message. For keeping the present disclosure simple to follow, in the present embodiment, the “processed” text message is equal to the received one.
As before, a service provider 30 of position dependent services is connected to the core network 14 of the cellular communications system via a gateway 20. In this embodiment, the gateway 20 comprises a translation node 23 for associating a text or other data quantity to a certain position, from which it is sent. In the present embodiment, the translation node 23 is connected to a database 21. The database 21 has stored information, which is at least intermittently updated against the BSC database 11. The database 21 is preferably configured as a look-up database.
If the mobile terminal 6 now wants to utilise the service from the service provider 30, a service request has to be transmitted. In this embodiment, a data quantity comprising a service request and the received text message is sent to the gateway 20. In the gateway, the translation node 23 uses the text message as input for a comparison with known text messages that are presently used, e.g. with support by the database 21. If a match is found, the service request is forwarded to the application server 32 of the service provider, however, now provided with a position determination of the mobile terminal 6. If no match is found, an error message could be returned to the mobile terminal 6.
This approach gives a method to be used in applications and services to build applications/services using the positioning principle of Cell-ID (CGI, COO) but with a simplified signalling procedure. It also gives a way to enable applications using Cell-ID, re-using standard Cell Broadcast features.
Furthermore, the solution can be used by legacy handsets by applications, which can access e.g. the SMSCB message, received by the terminal. The applications can e.g. be Java or Symbian applications. Furthermore, the present solution opens up for the operator still to be in control of the positioning enabler, although using SMSCB and user plane signalling/traffic (e.g. IP, http, WAP etc. over GPRS or UMTS). This means that the operator can charge for the service of providing the actual position.
The method can also be described as a signalling diagram, as in
The actual way of requesting the service may differ from one implementation to another. As an example, one implementation can be to first creating a url (Uniform Resource Locator) address, which contains an identification of the gateway to the service provider and also of the text of the broadcast message (or a processed version thereof). An application 9 (
As an example, the mobile terminal runs a program, e.g. a Java program that shows the user local information. The application server with the content is located on the Internet. The program creates a url based on the message broadcast in the cell and uses http for the transport. The url can be put together like:
In the gateway the url is translated to:
The gateway has the control over the translation node and can therefore charge the user or the service provider for the service of providing the mobile terminal position.
The matching database may, as described above, be located in the operators network. However, it is also possible that the service provider itself provides the matching database. If the matching database is located at the service provider, the service provider must have an agreement with the network operator and get the information of how the broadcast messages will be varied by the operator.
The procedure is almost the same, except for that the data packet reaches the service provider still comprising the text message. The translation node 23 belonging to the service provider 30 performs the association to a position.
In this embodiment, the communications network operator has lost the total control over the number of positioning determinations made in this way. However, on the other hand, there exists an agreement between the communications network operator and the service provider, which typically also may include economical agreements.
As mentioned above, if the same text messages would be broadcast in the cells for longer times, it would be possible for any unauthorised party to map these text messages and create their own text message database. By continuously or at least intermittently changing the broadcast text message in the cells, there are fewer possibilities to make such mappings. The translation node must in such a case also be fairly well synchronised with the text message creating nodes, so that a change in broadcast text messages corresponds to a change in association information of the translation node.
The broadcast text message may e.g. change in each cell every 15 minutes, which means that it is not the same more than 15 minutes at a time. Since the message is synchronised with the gateway, the translation always translates the received message to the same position (location).
If an absolute synchronisation is difficult to obtain, one may also configure the translation node in such a manner that the “old” text message may be valid also a certain time after the introduction of a new text message. Likewise, a “new” text message may be permitted in the translation node somewhat before the intended start of use. The key for providing the text message associations may also comprise validity times for each text messages. A system time may be provided in the data quantity by the mobile terminal in addition to the text message, which will give a time stamp of the text message detection.
The procedure starts in step 200. In step 210, a translation node is provided with information or keys enabling the translation node to derive text messages and positions associated therewith. This information also contains the validity times for the different text messages. In step 211, a text message is created according to the present rules and broadcast from a base station, i.e. the text message is dependent on the time of the broadcast. The text message is detected in a mobile terminal in step 214. A data packet comprising a service request is created in step 215, and the detected text message and an indication of the detection time is included in the data packet. The data packet is transferred in step 218 to the translation node. In the translation node, the text message of the data packet is associated in step 220 with a base station position, i.e. the position, from which the original text message was broadcast. In the present embodiment, this association also takes the detection time into account. The service request together with the associated position is provided to the service provider in step 222 and in step 224, the service provider can provide the position dependent service based on the associated position. The procedure ends in step 299.
The provision of text messages may be implemented in different ways.
The base station controller of the embodiment in
Another embodiment is illustrated in
The text messages may be random combinations of signs, letters and figures, or the text messages could be selected as readable words that could be simultaneously used also for other purposes. The text messages could e.g. be different variations of greeting texts, e.g. “Welcome”, “Have a nice day”, “Thank you for using OPERATOR” etc.
The text messages could also be composed by different sections, where the different sections can be dedicated to different types of services or different of position resolution. In one embodiment, the text messages could be constructed in a hierarchical manner, such that every message within a larger area has a section that is identical with all other messages used in the same area, i.e. a certain state or operator coverage area. The messages could then also comprise other sections denoting sub-areas of smaller and smaller sizes, until the individual cell resolution is reached. As an example, text messages beginning with NEGJ could (for a certain time period) indicate that the message is broadcast somewhere in Europe. If the message further begins with NEGJKDYT, it means that the message is broadcast in Sweden, NEGJKDYTRRTE indicates a certain region around Stockholm and NEGJKDYTRRTEKROD defines a specific single cell. A service that is only dependent on the state, in which the mobile terminal is present, is then just based on the first eight characters and neglects the rest of the message.
Such a hierarchical structure can also be implemented in the time domain. This means that broadcast messages that are broadcast relatively close to each other in time may have certain sections in common, while other sections are differing. As an example, in a first time period, the message may end with the character combination KUHTLDHFPIYB, in a subsequent time period with JYTELDHFPIYB, but in a time period well separated from the first with UYNTOSDJNPEL. In such a way, a service operating with long validity time periods may only make use of e.g. the last 4 or 8 characters, while a service that requires frequent changes, takes all characters in account.
The text messages could also be composed in such a way that different services are supported by different sections of the text message. As an example, a map provision service uses the first 24 characters, a friend-finder application uses characters 25-64 in the text message and so forth.
A corresponding knowledge of text-to-base station location association has to be provided at the translation node.
If the service provider is intended to serve mobile stations also at places covered by other base station controllers, corresponding data from these base station controllers has to be provided. If the coverage is large and the intervals between changes of texts are short, the amount of data necessary to store may be very large. An alternative embodiment is then illustrated in
Here, the database comprises a list of base station positions and a list of possible text messages. The association, illustrated as arrows or pointers, is provided according to a certain algorithm, dependent on the present time. Such algorithm is loaded into the translation node 23, which controls the association between the different lists in the database. This reduces the need for very large databases and the need for frequent updates.
A further alternative embodiment of a translation node would be a processor which comprises an algorithm that directly produces the position based on an input of a text message and the present time.
In order to further reduce the possibilities to eavesdrop the information in the communications system to achieve usable information, the text messages sent together with the service request in the data packet may not necessarily be identical to the broadcast text message. The text message comprised in the data packet could be processed in one or another way to give some sort of encryption. In simple cases, the text message could be provided by extra characters at certain positions or the text message enclosed in the service request could be selected parts of the broadcast message. In more elaborate embodiments, a true encryption could be made. The encryption key has to be provided by the operator of the translation node. The encryption key is e.g. sent to the user when he or she pays for the service or for a subscription. The encryption key may be SIM dependent so that the user can not forward the key to another user. An example of a simple solution may be:
This also gives an authentication of the data sent from the mobile terminal to the service provider. The key may also be local, so that it is only usable in a particular cell or area.
The translation node has of course in such cases a corresponding decryption functionality. Either the translation node decrypts the received text message to obtain the original text message. Another alternative is to encrypt possible text messages in a corresponding manner and then compare the encrypted versions.
A number of similar approaches, based on the broadcast messages, can also be feasible. In a first embodiment, an application necessary to reach a certain service can be ordered from the service provider. Such an order can also be connected e.g. to payment for the service. When the application is provided to the mobile terminal, it can be accompanied by a database comprising text messages (or parts thereof defining the spatial area and/or time where the application is allowed to use. In order to start the application, a broadcast message has to be recorded and used as a “password” to execute the application. When the mobile terminal moves outside the permitted area or if the validity time expires, the text messages becomes useless in opening the application. Such use of the broadcast messages will also reduce the signalling, since necessary authorisation checks are performed already at the mobile terminal.
In a second embodiment, the broadcast message could be used for protection of downlink data. When e.g. sound or video data are to be downloaded to a mobile terminal, the authorisation to do so can be connected to a certain area and/or a certain time period. A decoding key can be downloaded in connection with payment or ordering of the service. That decoding key involves data identifying allowed broadcast messages and the times during which they can be used. When starting the downloading of the actual sound or video data, this data is encoded based on the broadcast message used at that instant. The receiving mobile terminal has access to the same broadcast message and can decode the data. If the broadcast message changes during the download procedure, both parties are aware of this and the data can continuously be decoded. However, if the authorisation time expires or the mobile terminal leaves the authorisation area, no successful decoding can be achieved any more.
The common knowledge of broadcast messages that are time and location dependent thus opens up for several different approaches to minimise control signalling.
As a summary of the present invention in other words, a first text message is broadcast to the mobile terminal. A second text message is included in the data packet also containing the service request. The second text message is dependent on the first text message, and may in simple embodiment even be identical to the first text message.
In the present invention, the text messages that are broadcast are typically of a type that can be detected also when the mobile terminal is in an idle mode. This means that detection and preparing of data packets can be performed without having to initiate an active connection to the base station.
The embodiments described above are to be understood as a few illustrative examples of the present invention. It will be understood by those skilled in the art that various modifications, combinations and changes may be made to the embodiments without departing from the scope of the present invention. In particular, different part solutions in the different embodiments can be combined in other configurations, where technically possible. The scope of the present invention is, however, defined by the appended claims.
Number | Date | Country | Kind |
---|---|---|---|
0402288-5 | Sep 2004 | SE | national |
Filing Document | Filing Date | Country | Kind | 371c Date |
---|---|---|---|---|
PCT/SE05/01257 | 9/1/2005 | WO | 00 | 7/13/2007 |