Location Monitor Overview

The Location Monitor is responsible for storing position fixes calculated by the LBS subsystem. It provides the stored fixes to LBS components that request them.

Purpose

The Location Monitor monitors internal communications between LBS components and with the network in order to maintain its database of stored position fixes. Whenever the Location Monitor obtains a position fix it adds it to the database, together with the Global Cell ID received from the network.

When the Location Monitor receives a request for location information, it uses the current network Global Cell ID to search the database for the closest stored position.

If the database search is successful the Location Monitor returns the stored position with an indication of its accuracy, based on the current information received from the network. A stored position's accuracy can be estimated to be at the country level (least accurate), down to street level in urban areas (most accurate).

If the database search is unsuccessful the Location Monitor simply returns the most recently stored position.

Required background

A knowledge of the material covered in the following is useful to understanding how this component fits into the LBS architecture:

Key concepts and terms

The Location Monitor uses the Global Cell ID broadcast by the network.

The Global Cell ID is made up of four values:

MCC

Mobile Country Code. A unique three digit number used to identify a country.

MNC

Mobile Network Code. A unique three digit number used to identify a mobile phone operator.

LAC

Location Area Code. A unique number used to identify a group of cells within a cellular network.

CID

Cell ID. The unique number used to identify an individual cell within a cellular network.

A Location Monitor client can get these values from the Location Monitor, or a simple single value that is an estimate of the stored position accuracy.

Architecture

The Location Monitor is a server with a client interface. Currently the Location Monitior does not have a published API.

Client applications use the Location Monitor indirectly via the Location Server (eposserver.exe). Figure 1 shows the Location Monitor architecture.

Figure 1. Figure 1. Location Monitor architecture

APIs

The Location Monitor does not have a published API at this time. It has an internal API which is used by other LBS components.

Typical uses

Client applications use the Location Monitor indirectly through the Location Acquisition API.

An Location Acquisition API client calls RPositioner::GetLastKnownPositionArea() to get a stored position with an accuracy estimate. The Location Server delegates this function call to the Location Monitor.