If the user enters an MMI string that, according to
TS 22.030, should be treated as USSD, the UE shall send this string to the network using the appropriate operation from
TS 24.080.
The mobile initiated operation shall contain an alphabet indicator and language indicator. The alphabet indicator shall indicate the alphabet used in the operation. The selection of values for these indicators is a matter for the user.
The UE may initiate an USSD operation either during a call or out of call.
A network supporting USSD shall examine the alphabet indicator. If the serving network does not recognize the alphabet indicated in the mobile initiated USSD operation, it shall send the operation to the HLR.
On recognition of the alphabet, the network shall examine the contents of the string, and take appropriate action, according to the following rules, depending of the format of the message.
Case a)
1, 2 or 3 digits from the set (*, #) followed by 1X(Y), where X=any number 0 4, Y=any number 0 9, then, optionally "* followed by any number of any characters", and concluding with # SEND:
This case is reserved for HPLMN use. When a serving network receives such a message from a visiting subscriber, it shall pass the USSD message directly to the HPLMN. If it receives it from a home subscriber, it is up to the network to decide whether to treat it locally or to pass it to the HLR.
Case b)
1, 2 or 3 digits from the set (*, #) followed by 1X(Y), where X=any number 5 9, Y=any number 0 9, then, optionally "* followed by any number of any characters", and concluding with # SEND:
This case is reserved for VPLMN use. It is up to the VPLMN to decide how to treat it.
Case c)
7(Y) SEND, where Y=any number 0 9:
This case is reserved for HPLMN use. When a serving network receives such a message from a visiting subscriber, it shall pass the USSD message directly to the HPLMN. If it receives it from a home subscriber, it is up to the network to decide whether to treat it locally or to pass it to the HLR.
Case d)
All other formats:
The visited network examines the message. If it is able, it acts upon it. Failing that, it passes the message to the HLR.
If the HLR does not support the alphabet indicated, it shall inform the UE.
The network shall terminate the mobile initiated operation by responding to the request from the mobile with either an error signal, or a text string indicating the outcome of the operation. The response string uses the characters available in the selected alphabet as defined in
TS 23.038. If no indication to the user is required, the response string may be empty.
The response to the mobile initiated USSD operation shall contain alphabet and language indicators. The selection of values for these indicators is a matter for the network operator.
In situations of incompatibility the mobile initiated USSD operation will be rejected by a non-supporting network and the attempt will fail. In this situation, if it is possible to encode the content of the USSD message in the IA5 alphabet, the UE shall attempt the operation again using the IA5 format without the alphabet and language indicators.
This procedure is not applicable if an operation failure is due to alphabet support problems, services not supported or network failure problems.
Service codes for use in control of Supplementary Services are standardized by international agreement, so must not be used by PLMNs unless authorized, except for those codes allocated for PLMN use.
If the message is of the format:
1, 2 or 3 digits from the set (*, #), followed by
NN(N), where N=0 9,
optionally followed by "* and any number of any characters",
and terminating in # SEND:
then NN(N) is known as the service code. Only codes specified in
TS 22.030 and those defined in cases a) and b) above may be used. All other values are reserved.
Similarly, if the message is of the format:
X(Y) SEND, where X=0 6 or 8 9 and Y=0 9:
the codes X(Y) are standardized. Only codes specified in
TS 22.030 subclause 4.5.5 may be used. All other values are reserved.