You are on page 1of 21

There are many ways to implement prepaid

roaming. Currently, most of the prepaid roaming


implementations utilize the capabilities provided
by


USSD(unstructured
supplementary service data)
1
CAMEL (customized application
mobile enhanced logic)
2
USSD deploys a callback mechanism as you know ,For each
outgoing call initiated by a roamer, there will be two call
legsan international call leg back home and a follow-on call.
That make call cost v.high because it is surely not an efficient
way to handle the call.
For that you can use USSD call Back service,
But the user needs to initiate the service by using a special
service code. However, implementing prepaid roaming with
USSD is rather simple, fast, cheaper, and supported by almost
all existing networks, providing a global footprint.




1. The roamer keys in 1XY0770 XXX XXXX# and presses the
<SEND/OK> button to initiate a call to subscriber 0770 XXXX
in another network.
2. The VPLMN MSC/VLR transfers this USSD string to the
HPLMN HLR.
3. The HPLMN HLR passes this string to the prepaid roaming
platform
4. After the required precall checks, the prepaid roaming
platform initiates two outgoing calls (i.e., one to the roamer
and one to the requested Called party) and connects









Romer
1.*1XY*0770 XXXX #
MSC/VLR
HLR
USSD
Gateway
& Call
progess
5.0770 XXX
2. MAP/SS7 USSD trigger
Call Reguest
3. Out bound call
4. Fixed or mobile net
USSD string coding.
The length and content of a USSD string is very
flexible. USSD utilizes the characters , #, and all
the digits, If the user keys in a string coding scheme
the USSD handlers in the MS, the MSC, the VLR, and
the HLR treat it as a USSD request. The character
is used to indicate the beginning of a USSD
string. It is also used as a separator between two
parameters. The character # is used to terminate
a USSD string.








USSD string coding.
The formatting rules to create a USSD string are summarized
as follows.








Roamer initiated USSD operation
When a roamer invokes a USSD request (e.g., a prepaid
roamer initiates USSD callback) by keying in the appropriate
code (containing the HPLMN service code), the USSD handler
within the MS invokes the USSD request by sending a
REGISTER message to the network.
The REGISTER message contains a process unstructured SS
request invoke component. The serving MSC, on receiving a
USSD request containing an HPLMN service code, sets up a
transaction to the VLR and forwards the request unchanged.










Roamer initiated USSD operation
MSC will act in a transparent mode to any further
Requests/responses for this transaction, passing them
between the MS and the VLR without taking any action.
When a VLR receives a USSD request containing an HPLMN
service code, it sets up a transaction to the HLR and forwards
the request unchanged. The VLR then acts in a transparent
mode to any further requests/responses for this transaction.
Passing them between the MSC and the HLR without taking
Any action.








Roamer initiated USSD operation
When the HLR receives the USSD request, it processes
and invokes the appropriate application, i.e., a prepaid
roaming platform. The application, as an option, may
request further information in order to perform the
requested operation or terminate the dialogue. If the
application requests more information, it initiates a
USSD request , using the ongoing transaction. If the
application decides to terminate the dialogue, the
network side sends a release complete message. The
MS can also terminate a dialogue by sending a release
complete message.




Roamer initiated USSD operation
MSC HLR
USSD
Gateway
& Call
progess
VLR
Internation
al Gatway
CCS7/MAP
USSD
Request
Process USSD
request
Process USSD
request
Process USSD
request
Process USSD
request
Response
USSD
Response
USSD
Response
USSD
Response
USSD
Response
USSD
Process unstructured SS request.
The MAP process unstructured SS request
procedure is used to relay USSD information
between the:
MSC and the VLR
VLR and the HLR
HLR and the gsmSCF




Process unstructured SS request.
The process unstructured SS request message
contains the following parameters:
USSD data coding scheme: This parameter contains the alphabet and
the language information used for the unstructured information in a
USSD operation. The coding of this parameter is according to the cell
broadcast data coding scheme as specified in 3GPP TS 23.038.
USSD string :This parameter contains a string of unstructured
information The string is sent either by the mobile user or the network.
MSISDN :Originating subscriber international number. The MSISDN is an
optional parameter.






Process unstructured SS request.
The receiving entity, on unsuccessful outcome of the
service, returns a user error. The possible error types are
as follows:

System failure: This indicates that the requested task could not be completed
because of a problem in another entity.

Data missing: This indicates that the context is missing in the received
message.

Unexpected data value: This error is returned if the receiver is not able to deal
with the contents of the USSD string.

Call barred: This indicates that the receiving entities cannot process the
request because of barring of the initiated service.

Unknown alphabet: This indicates that the receiving entity does not support
the alphabet indicated in the USSD operation.








Process unstructured SS request.
Illegal subscriber: The receiving entity indicates that the
delivery of the USSD failed because the destination MS failed
authentication.
Illegal equipment: The receiving entity indicates that the
delivery of the USSD failed because the destination MS failed
the IMEI check.
Illegal equipment: The receiving entity indicates that the
delivery of the USSD failed because the destination MS failed
the IMEI check.












Prepaid roamingUSSD callback
scenario

.
How the USSD call back work when a roamer from B PLMN
visit APLMN make a USSD call back to call C number (fixed
line belong to C network?
Ans:
See the next call flow











MSC/VLR
HLR
USSD
Gateway
PrP Roaming
Platform
SSP Local
Switch C net
USSD
*155*C#
Process USS
request *155*C#
USSD *155*C#
USSD ACk
Process USS
response
USSD ACK
Send rout info
MSISDN
Provide Roaming
Number(IMSI)
MSRN
SRI ack(MSRN)
Initiate Call
CgP=A CdP=MSRN
IAM (MSRN)
Setup
Alert
ANM
Initiate Call
CgP=A CdP=C
ACM
ANM
Speech
Application Server
IAM (MSRN)
Call Flow Description
The USSD handler at the MS, on recognizing a valid USSD string,sends a
register message with an invoke process unstructured SS request to the
serving MSC. This message contains the USSD data coding scheme and
USSD string.
The USSD handler within MSC analyzes the service code on realising that
the service code is not meant for its own applications, passes the USSD
request to the VLR, using the MAP process unstructured SS request
procedure.
As the service code 111 is reserved for the HPLMN, the VLR invokes the
MAP process unstructured SS request procedure toward the HPLMN
HLR. If the alphabet used for the message is understood by the HLR, then
the message is fed to an application contained locally in the HLR, or to
the gsmSCF, or to a secondary HLR where the USSD application is
located. If the alphabet is not understood. then the error message
unknown alphabet is returned.





A USSD acknowledgment is sent by the HLR to the roamer by the
same transaction.
The application performs precall checks. For example, it checks if
the caller is authorized to make such a call and if there is enough
credit balance in the callers account. If the caller does not qualify,
an appropriate notification is sent by using the unstructured SS
notify procedure. If the caller qualifies, the application initiates a
mobile terminating call to the calling party first. The MAP send
routing information (SRI) procedure is invoked toward the HLR to
get the routing information necessary to establish the call. The
HLR, on receiving the SRI message, invokes the provide roaming
number (PRN) procedure toward the serving MSC/VLR to get the
MSRN assigned to the roamer.
Once the MSRN is known, the application using the ISUP
procedure initiates an outgoing call. (The application server
implementation is vendor dependent. As a minimum, it should
have call processing capabilities and should be connected to a
MSC/STP by CCS7 ISUP links. It should also have the capability to
send SMS notification to a roamer via SMSC.)





Call Flow Description
On answer from the roamer, a suitable announcement or tone is
fed to the roamer indicating the call progress.
The prepaid roaming platform then initiates a second outgoing call
toward called party C, using ISUP procedures.
On answer from called party C, a circuit-switched call is
established between the roamer and the called party.
The application server monitors the call. On disconnection from
any
of the parties, it releases the call and frees up resources. In cases
where the credit balance is exhausted during the call, an
appropriate notification is sent to the roamer before call
disconnection.





QUESTIONS?
For questions or more details or any idea to make this
presentation more useful for all.
Send emial to:


www.rawand.ali@asiacell.com
rawandtxt@yahoo.com

You might also like