Control Plane Cell Position Attempt Fallback to SUPL

Using the network to provide a SUPL cell-based position should a request based on the Control Plane fail.

An application is able to receive a SUPL (Secure User Plane Location) cell-based position when a previous request using the Control Plane is unsuccessful. The client application is configured to use the Network Proxy PSY. However, when a request is made the network is unable to produce the position. Instead of the attempt failing completely the Location subsystem produces a fallback cell-based position.

The process is described in the steps below.

  1. The client must open a connection to the server by calling RPositionServer::Connect().
  2. The client must then open RPositioner by calling RPositioner::Open() and specify the UID of the Network Proxy PSY.
  3. The client application sends a location request to the Location subsystem by calling RPositioner::NotifyPositionUpdate().
  4. The Location subsystem forwards the location request to the Control Plane Protocol module by calling CLbsNetworkProtocolBase::RequestNetworkLocation() (if Control Plane is the default in the default configuration).
  5. The Control Plane protocol module communicates with the cellular network but the network is unable to provide a cell-based location.
  6. The Control Protocol Module completes the session by calling MLbsNetworkProtocolObserver::ProcessSessionComplete().
  7. The Location subsystem fallbacks to SUPL positioning and forwards the request to the SUPL Protocol module by calling CLbsNetworkProtocolBase::RequestNetworkLocation(). (In the default configuration SUPL is used for cell-based positioning).
  8. The SUPL Protocol module communicates with an external SUPL server and obtains a cell-based location.
  9. The SUPL Protocol Module returns the cell-based position by calling MLbsNetworkProtocolObserver::ProcessLocationUpdate().
  10. The Location subsystem completes the client request.

The application receives a cell-based position retrieved from the network using SUPL after the request using the Control Plane fails.