You are on page 1of 21

USSD CALL

BACK
By Engineer
RAWAND DLSHAD ALI
IREG ENG.
SOLUTION/INTERNATIONAL
ROAMING
Prepaid
There are many ways to implement
prepaid roaming. Currently, most of
the prepaid roaming implementations
utilize the capabilities provided by
1
USSD Call Back
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.
HOW USSD CALL BACK
WORK?
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
USSD CALL CALL FLOW
3. Out bound call
USSD
MSC/VLR HLR Gatewa
2. MAP/SS7 USSD y & Call
trigger
Call Reguest progess

4. Fixed or mobile
net

1.*1XY*0770
5.0770 XXX
RomerXXXX #
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
VPLMN HPLM
Internatio
nal USSD
Gatway Gatewa
MSC VLR HLR y & Call
N
CCS7/MA
P progess
USSD
Process
Reque USSD Process
st request USSD Process
request USSD Process
request USSD
request
Response
Response USSD
Response USSD
Response USSD
Respon USSD
se
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
HPLMN Application
VPLMN Server PrP SSP Local
USSD
MSC/VL Gatew Roaming Switch C
HLR ay Platform
R net

USSD
*155*C Process USS
request USSD
#
*155*C# *155*C#
USSD ACk
Process USS
USSD response Send rout
ACK Provide info MSISDN
Roaming
Number(IMSI)
MSRN
SRI
Initiate Call
ack(MSRN)
CgP=A
IAM (MSRN) CdP=MSRN
Setup

Alert
ANM
Initiate Call
CgP=A IAM (MSRN)
CdP=C
ACM
ANM
Speech
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
Or
rawandtxt@yahoo.com

You might also like