Symbian
Symbian Developer Library

SYMBIAN OS V9.4

Feedback

[Index] [Previous] [Next]


How to control ALR for SIP Profiles

ALR (Application Level Roaming) is a facility which allows a SIP Profile to switch between different service providers by using different IAPs (Internet Access Points). By default, all SIP clients allow the SIP profiles they are using to roam across different IAPs. You can restrict roaming for a SIP profile to a set of IAPs by configuring the profile with an SNAP (Service Network Access Point) ID. The SIP profile store must include the SNAP ID which is a unique identifier for a set of IAPs that can be used by the SIP profile while roaming.

In addition to configuring a SIP profile with an SNAP ID, it is also necessary to use the classes, CSipProfileAlrController and MSipProfileAlrObserver to control ALR.

You must use an instance of the CSipProfileAlrController class and implement the MSipProfileAlrObserver interface to be able to register for ALR events. After registering for the ALR event, the MSipProfileAlrObserver interface notifies the client as and when a SIP profile used by the client tries to migrate to another IAP. Then the client can allow or disallow the migration request using the CSipProfileAlrController::AllowMigrationL() or CSipProfileAlrController::DisallowMigrationL() functions.

The following sequence diagram shows the call flow of enabling a SIP profile configured with an SNAP ID:

Call flow of enabling a SIP profile with...


Call flow of enabling a SIP profile with an SNAP ID

Once you register the SIP profile with an SNAP ID, you can allow the SIP profile to migrate to another IAP within the SNAP.

The following diagram shows the call flow of SIP profile migration:

Call flow of migrating a SIP profile to...


Call flow of migrating a SIP profile to another IAP within the SNAP

As per the sequence diagram above, the SIP profile is deregistered after migrating to another IAP. To be able to use it again, you must register the profile again.