Vous êtes sur la page 1sur 93

User Manual

PPS Prepaid Service Management Open Interface Table of Contents

Table of Contents

Chapter 1 SMOI Protocol .............................................................................................................. 1-1


1.1 Introduction ........................................................................................................................ 1-1
1.2 Networking Mode of SMP with MD .................................................................................... 1-1
1.3 Architecture of SM Interface .............................................................................................. 1-1
1.4 Program of SM Interface.................................................................................................... 1-2
1.5 MML Commands................................................................................................................ 1-2
1.5.1 MML Format ............................................................................................................ 1-2
1.5.2 Character Set for MML Commands ........................................................................ 1-6
1.5.3 MML Syntax ............................................................................................................ 1-7
1.6 Interaction of MD with SMP ............................................................................................... 1-9
1.7 Software with Standard Interface..................................................................................... 1-10
1.7.1 Software Architecture............................................................................................ 1-10
1.7.2 Relationship between the Standard Interface Soft wares..................................... 1-11
1.8 Security Management of SMP ......................................................................................... 1-11
1.8.1 Overview ............................................................................................................... 1-11
1.8.2 Access Security..................................................................................................... 1-11
1.8.3 Operation Security ................................................................................................ 1-12
1.8.4 Data Security......................................................................................................... 1-12

Chapter 2 SMOI Program Operation............................................................................................ 2-1


2.1 Connection......................................................................................................................... 2-1
2.2 Message ............................................................................................................................ 2-1
2.2.1 Service Message Code(V1.00) ............................................................................... 2-1
2.2.2 Service Message Code(V1.01) ............................................................................... 2-5
2.2.3 Heartbeat Message................................................................................................. 2-6
2.2.4 Timeout Judgment .................................................................................................. 2-6
2.3 Format of Message through SMP Interface....................................................................... 2-7
2.4 MML Command Format..................................................................................................... 2-8
2.4.1 MML Command....................................................................................................... 2-8
2.4.2 Command Code ...................................................................................................... 2-8
2.4.3 Parameter Block...................................................................................................... 2-9
2.4.4 Character Set in MML Command.......................................................................... 2-11
2.5 MML Grammar................................................................................................................. 2-12
2.5.1 Identifier................................................................................................................. 2-12
2.5.2 Numerical Value .................................................................................................... 2-12
2.6 MML Feature.................................................................................................................... 2-14
2.6.1 Batch Operation .................................................................................................... 2-14
2.6.2 Prompt of Confirmation ......................................................................................... 2-14

Huawei Technologies Proprietary

i
User Manual
PPS Prepaid Service Management Open Interface Table of Contents

2.7 Interaction between BSS/OSS and SMP......................................................................... 2-15


2.7.1 Procedure.............................................................................................................. 2-15
2.7.2 Information Flow.................................................................................................... 2-16

Chapter 3 Commonly-used MML Commands Set ...................................................................... 3-1


3.1 Interface Description.......................................................................................................... 3-1
3.1.1 Parameter description ............................................................................................. 3-1
3.1.2 Special Note ............................................................................................................ 3-2
3.2 Common Errors.................................................................................................................. 3-3
3.3 Service Center (SRVM) ..................................................................................................... 3-4
3.3.1 Logging in................................................................................................................ 3-4
3.3.2 ACK of Logging in ................................................................................................... 3-4
3.3.3 Logging out.............................................................................................................. 3-5
3.3.4 ACK of Logging out ................................................................................................. 3-6
3.4 PPS Services ..................................................................................................................... 3-6
3.4.1 Creating PPS Subscribers ...................................................................................... 3-6
3.4.2 ACK of Creating PPS Subscribers .......................................................................... 3-8
3.4.3 Deleting PPS Subscriber Individually.................................................................... 3-11
3.4.4 ACK of Deleting PPS Subscriber Individually ....................................................... 3-11
3.4.5 Deleting PPS Subscribers in Batch....................................................................... 3-12
3.4.6 ACK of Deleting PPS Subscribers in Batch .......................................................... 3-12
3.4.7 Modify PPS Subscriber CallingFlag ...................................................................... 3-13
3.4.8 ACK of Modify PPS Subscriber Calling Flag......................................................... 3-14
3.4.9 Modifying Subscriber Roaming Flag ..................................................................... 3-15
3.4.10 ACK of Modifying Subscriber Roaming Flag....................................................... 3-16
3.4.11 Querying PPS Subscribers Meeting the Deletion Conditions ............................. 3-17
3.4.12 ACK of Querying PPS Subscribers Meeting the Deletion Conditions................. 3-18
3.4.13 Querying PPS Subscriber Basic Information ...................................................... 3-19
3.4.14 ACK of Querying PPS Subscriber Basic Information.......................................... 3-20
3.4.15 Releasing Subscriber from Blacklist ................................................................... 3-21
3.4.16 ACK of Releasing Subscriber from Blacklist ....................................................... 3-22
3.4.17 Change Subscriber Type .................................................................................... 3-22
3.4.18 ACK of Change Subscriber Type ........................................................................ 3-23
3.4.19 Modifying Subscriber Balance............................................................................. 3-25
3.4.20 ACK of Modifying Subscriber Balance ................................................................ 3-25
3.4.21 Modifying Subscriber Validity Period .................................................................. 3-26
3.4.22 ACK of Modifying Subscriber Validity Period ...................................................... 3-27
3.4.23 Modifying MSISDN.............................................................................................. 3-28
3.4.24 ACK of Modifying MSISDN ................................................................................. 3-29
3.4.25 Modifying Subscriber Balance by Triggering Service ......................................... 3-30
3.4.26 ACK of Modifying Subscriber Balance by Triggering Service............................. 3-31
3.5 GPRS MML Command Set.............................................................................................. 3-33
3.5.1 Creating a Batch of GPRS Service Subscribers ................................................... 3-33

Huawei Technologies Proprietary

ii
User Manual
PPS Prepaid Service Management Open Interface Table of Contents

3.5.2 ACK of Creating a Batch of GPRS Service Subscribers ...................................... 3-33


3.5.3 Deactivating GPRS Service Subscribers .............................................................. 3-35
3.5.4 ACK of Deactivating GPRS Service Subscribers.................................................. 3-35
3.6 Recharge Card Management (RCMS) ............................................................................ 3-37
3.6.1 Manual Recharge by SCP..................................................................................... 3-37
3.6.2 ACK of Manual Recharge by SCP ........................................................................ 3-38
3.6.3 Querying Recharge Card Status ........................................................................... 3-41
3.6.4 ACK of Querying Recharge Card Status .............................................................. 3-42
3.6.5 Locking Recharge Card ........................................................................................ 3-43
3.6.6 ACK of Locking Recharge Card ............................................................................ 3-43
3.6.7 Unlocking Recharge Card ..................................................................................... 3-44
3.6.8 ACK of Unlocking Recharge Card......................................................................... 3-45
3.6.9 Verifying Recharge Card....................................................................................... 3-46
3.6.10 ACK of Verifying Recharge Card ........................................................................ 3-46
3.7 FNS MML Command Set................................................................................................. 3-47
3.7.1 Creating a Batch of FN Service Subscribers ........................................................ 3-47
3.7.2 ACK of Creating a Batch of FN Service Subscribers ............................................ 3-48
3.7.3 Deactivating FN Service Subscribers ................................................................... 3-50
3.7.4 ACK of Deactivating FN Service Subscribers ....................................................... 3-51
3.7.5 Setting Subscriber’s FN ........................................................................................ 3-52
3.7.6 ACK of Setting Subscriber’s FN ............................................................................ 3-53
3.7.7 Querying Subscriber’s FN ..................................................................................... 3-55
3.7.8 ACK of Querying Subscriber’s FN......................................................................... 3-55

Appendix ........................................................................................................................................A-1
A.1 Acronyms and Abbreviations............................................................................................A-1
A.2 SMOI Client Demo Code..................................................................................................A-2

Huawei Technologies Proprietary

iii
User Manual
PPS Prepaid Service Management Open Interface Chapter 1 SMOI Protocol

Chapter 1 SMOI Protocol

1.1 Introduction

This manual describes the interface protocol between Service Management Point
(SMP) and Medial Device (MD), and the Man-Machine Language (MML) commands
supported. SMP software provides an open interface protocol, whose main contents
consist of standard MML commands. Thus, MD can communicate with SMP via MML
commands and receive the operation result returned by SMP. Any third-party
manufactured access device abiding by this interface protocol can operate SMP.

1.2 Networking Mode of SMP with MD

The networking mode of SMP with MD and business hall terminal is illustrated in Figure
1-1.

SCP

SMP

MD:SMOI /Local MD:SMOI /WEB MD:SMOI /Bank


Server SERVER Interface

Business Hall
Browser Bank
Terminal

Figure 1-1 Networking mode of SMP with outer entities

The outer terminal can be connected to SMP via MD. SM interface protocol applies to
MD and SMP, whereas the protocol applying to MD and outer entities shall be defined
by the operator. In this case, MD is regarded by SMP as the terminal with SM interface.

1.3 Architecture of SM Interface

For the protocol about the interaction of SMP with the terminal, please refer to section
“1.6 Interaction of MD with SMP”. The lower layer of SM interface adopts TCP/IP
protocol. The interface protocol stack is shown in Figure 1-2.

Huawei Technologies Proprietary

1-1
User Manual
PPS Prepaid Service Management Open Interface Chapter 1 SMOI Protocol

MD
SMP
SMOI
SM Interface SM Interface
protocol layer protocol layer
TCP/IP TCP/IP

Physical layer Physical layer

Figure 1-2 SM interface protocol stack

Before MD and SMP send messages, the TCP/IP connection with SMP shall first be
established. When MD no longer needs to interact with SMP, the SOCKET connection
with SMP shall be released. In case of IDLE, it’s OK to remain the connection with SMP,
while sending only heartbeat messages.

The maximum number of connections that can be established between SMP and each
MD correlates to SMP hardware processing capability. The minimum number of
connections supported by SMP is 250.

1.4 Program of SM Interface

The interface program running on MD is SMOI, which is a console program and


functions to provide interface for command lines. Its prompt is a single great sign with
the current dialog ID and the current transaction ID. (For example, ‘1 3 SMOI>’). It can
read and transfer commands from standard input terminal and display the messages
returned by SMP on standard output terminal. SMOI program is operated in
asynchronous mode and multiple MML commands can be input at one time. The
sequence of input commands may differ from that of the returned messages.

Please refer to "Chapter 2 SMOI Program Operation” for the operation of SMOI
program interface.

1.5 MML Commands

1.5.1 MML Format

I. Overview

An MML command begins with a command code. It specifies what the system needs to
execute. Its additional information is expressed by its parameters tailed, which are
separated from the command code by colon (:) at the end of a command code.

Huawei Technologies Proprietary

1-2
User Manual
PPS Prepaid Service Management Open Interface Chapter 1 SMOI Protocol

Parameters are defined by parameter block. Multiple commands are separated by


semicolons (;), which can be omitted in the case of single command involved, as shown
in Figure 1-3.

Command Code ...

Parameter Block

Figure 1-3 Format of MML command

II. Command code

Command code consists of command prefix and body.

It is not case sensitive.

Prefix is used to identify whether this command is an ACK or not. Prefix is separated by
colon (:) from the command body. Prefix has other two forms: MON -meaning a
detecting command, and NOTIFY -meaning a notification message. Prefix MON has
not yet been provided currently.

Command body can only have a maximum of 3 identifiers, and each of them is
separated by space(s), as shown in Figure 1-4.

command : identifier1 sp identifier2 sp identifier3

Figure 1-4 Format of MML command code

Meaning of each command code:

Identifier 1: Identifier with a maximum length of 8-character. It stands for executive


action, such as ADD, DISP, MODI and CREATE.

Identifier 2: Identifier with a maximum length of 8-character. It stands for the service
name at which this executive action enforces, such as PPS.

Identifier 3: Identifier with a maximum length of 8-character. It stands for the object
entity of executive actions, such as ACNT and OPER.

For example, to list PPP accounts:

DISP PPS ACNTINFO: MSISDN=” 119900000 “

Huawei Technologies Proprietary

1-3
User Manual
PPS Prepaid Service Management Open Interface Chapter 1 SMOI Protocol

III. Parameter block

Parameter block contains the information required by the specific functions of the
executive commands. This information is specified by some specific parameters
according to a certain command.

Parameter blocks, including more than one parameter, are separated by commas (,).

All parameters are defined according to its name.

Also, the input sequence of the parameters by user will not influence the command’s
executing result.
z Definition of parameters
A parameter consists of a name and its value, separated by an equal mark (=).

In the case of omitting a given parameter, it’s considered that a default value has been
designated. Or, it’s OK to specify a given parameter value to represent the default
value.

If there is not any valid character between the equal mark and comma after the
parameter name, then default parameter will also be used.
z Parameter name
Parameter name consists of a maximum of 16 characters.

It is not case sensitive.


z Parameter value
Parameter value is composed of an information unit or a compound of information
units.
z Information unit
The composition of an information unit is shown in Figure 1-5

Identifier

Decimal

Date

Time

String

Figure 1-5 Composition of an information unit

z Compound information unit

Huawei Technologies Proprietary

1-4
User Manual
PPS Prepaid Service Management Open Interface Chapter 1 SMOI Protocol

Assemble several information units into a compound, and then we can input more than
one information unit to a single parameter. Here, the assembling of compound units will
not be considered. The assembling of information units mentioned hereafter all refer to
the combination of simple information units, instead of compound information units.

The way to specify several information units within one parameter is to delimit these
values by using “&”. For example, 5&9 represents the compounding of unit 5 and 9.

To represent an information unit of continuous sequence (increment=1), simply specify


the lowest and highest information units and insert mark “&&" in between. For example,
5&&9 stands for information units: 5,6,7,8,9.

N’ 11990000 &&N’ 11990999 stands for the number segment with 10,000 numbers.
Refer to relevant MML commands to determine whether && marks are supported.

The assembling number is decided by the size of a single message within a protocol.
The current size is 64KB.
z Default parameters
Parameters in an MML command can be requisite parameters, optional parameters
and default parameters. Requisite parameters can not be omitted when the command
is executed, optional parameters can be chosen to input by the user, and default
parameters will be provided automatically by the system in case there is no parameter
input.

Follow the rules below to use the default parameters:

As long as a default value can be given, the parameter shall be specified as a default
parameter (for example, when adding a user, even non-key parameter can be
designated with a default value).
z The value of a default parameter shall be unique within the same command.
z A default parameter can take different values in different commands.
z The same default parameter in different commands can have different values.
z Default value should be the one used in most cases.
Example of MML command

Modify the subscriber’s balance:

MODI PPS BALANCE: MSISDN=, INCRMENT=

ACK: MODI PPS BALANCE:RETN=,DESC=[ORGBALANCE=,LASTBALANCE=]

Huawei Technologies Proprietary

1-5
User Manual
PPS Prepaid Service Management Open Interface Chapter 1 SMOI Protocol

1.5.2 Character Set for MML Commands

I. Alphabet

All alphabet characters, upper case or lower case (a-z and A-Z), and characters, * and
#, are also included.

II. Digit

All decimal characters (0-9), are valid.

III. Delimiter

The following marks are used to separate different units of an input session.
z Colon (:): To separate the first parameter from the command code or command
name.
z Equation (=): To separate the first value from the parameter name or parameter
code.
z Comma (,): To separate different parameters.
z Ampersand (&): To separate all of the values for a parameter.
z Double-ampersand (&&): To separate the lower limitation value from the upper
one in a parameter’s value range.
z Apostrophe (‘): To separate the valued-indicator from its value.
z Semicolon (;): To separate different commands.

IV. Number scale

B Binary system

O Octal system

D Decimal system

H Hexadecimal system

N Numeric string

V. Special character

z Double-quote (“): To separate a string from some context in a memo sign.


z Space: To separate command code and to improve readability as well.
z Enter: To be not used in the system, but can be adopted to improve readability.
z (*) mark: To be used in the system, yet without special meaning.
z (#) mark: To be used in the system, yet without special meaning.
z Hyphen (-): To be used in the system, yet without special meaning.

Huawei Technologies Proprietary

1-6
User Manual
PPS Prepaid Service Management Open Interface Chapter 1 SMOI Protocol

1.5.3 MML Syntax

I. Identifier

Identifier is a string consisting of one or multiple characters. It is headed by an alphabet


or underline and followed by one or more digits, alphabets or underlines. For example,
UPDATE and NO7 are valid identifiers.

Digit

Alphabet/Underline Alphabet or
Underline

Figure 1-6 Identifier

II. Number

z Decimal number
Decimal number consists of an array of digital characters, which are preceded by
characters D' to identify themselves. If the default number scale is decimal, then
characters D' can be omitted.

D' Digit

Figure 1-7 Decimal number

z Numeric string
Numeric string can be used to express some information, which are composed of digital
characters, yet cannot be expressed by decimal numbers. For instance, MSISDN and
the PPS card No..

N' Digit

Figure 1-8 Numeric string

z Character string
Character string (or context) permits inputting literal characters, including any delimiter,
which will have its grammar meanings when input outside this character string.
Character string is composed of zero to several characters, and bracketed with one

Huawei Technologies Proprietary

1-7
User Manual
PPS Prepaid Service Management Open Interface Chapter 1 SMOI Protocol

double-quote (“) at both end. Character string includes all valid characters, and if
double-quote (“) appears in a sting, it shall follow a backslash.

Character
(excluding ")
" "

Figure 1-9 Character string

III. Date

Date is expressed by digits, with double-quote (“) at both ends. It shall follow such
sequence as year, month, and day. Year is a 4-digit decimal number, while month and
day are 2-digit decimal numbers. There shall be hyphens between year and month, and
between month and day.

For example: “1999-01-16”.

IV. Time

The 24-hour timing system is adopted here, with double-quote (“) at both ends of the
time. The sequence is from left to right: hour, minute, and second. Hour is a 2-digit
decimal number, ranging between 00 to 23 (23 included). Minute and second are both
2-digit decimal numbers, ranging between 00 to 59 (59 included).

For example: “12:25:01”.

V. Date and time

Date and time is expressed with a space between them.

For example: “1999-01-16 12:25:01”.

Huawei Technologies Proprietary

1-8
User Manual
PPS Prepaid Service Management Open Interface Chapter 1 SMOI Protocol

1.6 Interaction of MD with SMP

Figure 1-10 shows the complete procedure of the interaction of MD with SMP. To be
simple, the handling of abnormal circumstances and the process of setting up multiple
dialogs are omitted here.

Start

Establish SOCKET
connection w ith SMP

Succeed?

Yes Operation start

Send LOGIN command


Send the first MML
command

SMP returned
successfully ? Parellel operation
Yes
No
Get session ID
All sent out? Receiv e MML ACK

No

No Transaction ID+1 No Send the nex t MML Yes


Transaction ov er?
command
Yes
Ex ecute operation
No
Wait until all the branches are finished
No more
operation?
Operation end
Yes

Send LOGOUT command

End

Figure 1-10 Procedure of the interaction of MD with SMP

Huawei Technologies Proprietary

1-9
User Manual
PPS Prepaid Service Management Open Interface Chapter 1 SMOI Protocol

1.7 Software with Standard Interface

1.7.1 Software Architecture

The standard interface software consists of multiple processes, each of which is of


layer structure, such as mechanism layer and application layer. The mechanism is to
extract the public part of the system for the use of the application layer. To put it in
another way, the mechanism has little relationship with specific applications. The inside
of the mechanism can be divided into further layers according to requirements. Related
functions (category) can be packed into one package. Different packages may depend
on each other. Each layer of the mechanism may be composed of one or multiple
packages. The structure of each process is shown in Figure 1-11:

Application layer

Log and alarm monitoring management layer

Configuration management layer

Session, transaction mechanism layer

Communication mechanism layer

Scheduling mechanism layer

Figure 1-11 Sketch map of the layer structure of processes

The brief introduction to each layer is as follows:


z Scheduling mechanism layer: Completes the function of scheduling and providing
clock, and provides parallel operation capability.
z Communication mechanism layer: This layer is above the scheduling mechanism
layer, and achieves reliable communication.
Above the scheduling mechanism layer is the communication mechanism layer:
Mainly functions to achieve reliable communication.
z Session and transaction mechanism layer: This layer is above communication
mechanism layer: For business terminal, system will set up a session when the
operator logs in. Sessions will also be established among different services,
similar to an interaction environment between them Service-side session consists
of several transactions, and each transaction consists of several operations, and
each operation equals to an MML command.

Huawei Technologies Proprietary

1-10
User Manual
PPS Prepaid Service Management Open Interface Chapter 1 SMOI Protocol

z Configuration management mechanism layer: This layer is above the session and
transaction mechanism layer and completes the functions of registration,
application, and dynamic management of each service.
z Log and alarm monitoring management layer : This layer is above the
configuration management mechanism layer,
z Application layer: This layer is established above the mechanism and makes use
of the services provided by the mechanism.

1.7.2 Relationship between the Standard Interface Soft wares

To realize SM interface, the following system processes are necessary: client access
agent process, service configuration management process, external entity agent
process, and application service process.
z Client access agent process provides standard protocol interface to the outside,
and is the only path that peripheral access device with standard protocol interface
can operate on SMP.
z Service configuration management process mainly functions to achieve the
dynamic configuration, operator login, and operator management of each service.
z External entity agent process is the only path through which system interacts with
external entities. External entities mainly include SCP, INFORMIX database, etc.
z Application service process is in charge of completing the real tasks accomplished
by SMP, such as the various operations of PPS (the prepaid service).

1.8 Security Management of SMP

1.8.1 Overview

To ensure the security of system and convenience of operation, system shall provide
the security management function for device access and setting user operation
authority, which includes access security management, security management of
various operators, and security management of system supervisor (referred to as
operator hereafter).

The system will perform operator authority management both from operation authority
and from data authority. Relevant authority parameters will be set for each module and
function operation. In real cases, we shall determine the operator security before
setting the operation authority.

1.8.2 Access Security

SMP access security includes two indices: number of on-line subscriber and how busy
the system is. The system will decide whether to allow new user to log in or new

Huawei Technologies Proprietary

1-11
User Manual
PPS Prepaid Service Management Open Interface Chapter 1 SMOI Protocol

external device to access, depending on the number of currently logged-in users and
the occupancy of CPU and the IO of disk.

1.8.3 Operation Security

SMP shall perform authentication for the commands sent by the operator. And the
commands sent by operator without authority will be returned with error information.

1.8.4 Data Security

SMP shall not only perform authentication for the commands sent by the operator, but
also check the data security for the data processed by the operator. The latter also
concerns the function operation. To make judgment on the data security, operators of
higher authority can process the data that are able to be handled by operators of lower
authority.

Huawei Technologies Proprietary

1-12
User Manual
PPS Prepaid Service Management Open Interface Chapter 2 SMOI Program Operation

Chapter 2 SMOI Program Operation

2.1 Connection

TCP/IP SOCKET connection must be established when SMP client communicates with
SMP and then released after interaction. In idle state, heartbeat message is required to
connect SMP client and SMP.

2.2 Message

Service message over SMP open interface protocol is the smallest unit to transfer
operative information of users. When the connection is established, the client sends a
MML command to SMP in a message packet after transaction ID of the session is
determined, and then decodes packets received. Format of message involved in this
process is determined by SMP open interface protocol.

See the figure below for the structure of messages transmitted through SMP open
interface.

Message Operative Transaction Session Message Message Message


start flag Checksum header length
information header header start flag

Message sending sequence

Heartbeat message over SMP open interface protocol is used to detect the connection
between the client and SMP. It is sent 180 second (It can be configured.) later when the
connection is idle. See the figure below for the structure of heartbeat message.

Checksum Content Message length Message start flag

Message sending sequence

2.2.1 Service Message Code(V1.00)

This Version number is 1.00. Code of parameter configured over SMP open interface
protocol must conform to the following rules:

Huawei Technologies Proprietary

2-1
User Manual
PPS Prepaid Service Management Open Interface Chapter 2 SMOI Program Operation

For the integral of 16 or 32 bits in hexadecimal format, the upper significant Octet must
be the first, and then is the lower significant Octet. Fill with blank spaces when the
character string cannot reach the specified length.

I. Message start flag (4 Byte)

It denotes the start and end of a message.

Length: 4 Byte

Code: `SC `

II. Message length (4 Byte)

It denotes the total length of the interval between the message header and operative
message. Its value is denoted by an integral of 4 bits in hexadecimal format ranging
from 0-65535 (0000-FFFF).

III. Message header (20 Byte)

It contains the following parameters:

-----Version number: It denotes the version of SMP open interface protocol with the
code of 4 Octet character strings. The current version number is 1.00.

-----Terminal identifier: It is denoted by 8 Octet character strings to identify the front


end processor and terminal of BSS/OSS accessed to SMP. By the use of it, SMP can
judge whether the terminal user accessed is legal. For example, it can used to
configure terminals requiring precedent access.

Note: Terminal identifier of the front end processor in BSS/OSS must be contained in
the message header in case of initial access, because SMP performs authentication
only to the terminal identifier of front end processor. From then on, the terminal
identifier of a specific terminal must be filled in.

Coding rule of terminal identifier is determined by the network.

-----Service name: It denotes the service that the operator applies for, and its code is
composed of 8 Octet character strings. The service name is specified in MML
commands. See the following service names.

FS: File service

LOG: Log service

RPT: Report service

OPRM: Operator management

SRVM: SMP versatile services

Huawei Technologies Proprietary

2-2
User Manual
PPS Prepaid Service Management Open Interface Chapter 2 SMOI Program Operation

IV. Session header (18 Byte)

Session is a virtual connection (logical connection) between SMP and BSS/OSS


accessed and also a unique identifier of a valid login. With the identifier of session ID,
BSS/OSS originates a virtual connection to SMP. Session ID over the same SOCKET
connection cannot repeat.

Session ID is filled in with the value larger than 0 when BSS/OSS sends a message,
and it cannot repeat.

One or more sessions can be established based on one connection between BSS/OSS
and SMP. MML commands can be sent through the session newly established when
the message of login success is received from SMP. Execute the logout command to
notify SMP to clear information of the session when the session is not required.

Session header consists of session ID, session control characters and reserved field.

-----Session ID: It is denoted by an integral of 32 bits (8 Byte) in hexadecimal format


starting with 1. With its value larger than 0, session ID is the unique identifier of each
session originated by BSS/OSS. It varies with the session. In the front end processor of
BSS/OSS, TCP connection (physical connection) and session (logical connection) ID
are used to determine the path for sent messages (The login ID can be used as session
ID if one logical connection corresponds to one physical connection.).

-----Session control character: It is denoted by 6 Octet character strings (6 Byte).

Codes of session control character are shown as follows:


z DlgLgn: Login request
z DlgCon: Session hold
z DlgEnd: Session end
By the use of session control character, DlgLgn, DlgCon are filled respectively for login,
message transmission. When BSS/OSS sends the logout message, SMP return the
Message filled DlgEnd.

-----Reserved field: It is of 4 Byte used for subsequent extended services.

Reserved field Session control character Session ID

Bit sending sequence

V. Transaction header (18 Byte)

Transaction contained in a session refers to a deal between SMP and BSS/OSS


accessed. It involves one or more MML commands (contained in one or more
messages) and the result of it is contained in one or more MML ACK commands.

Huawei Technologies Proprietary

2-3
User Manual
PPS Prepaid Service Management Open Interface Chapter 2 SMOI Program Operation

Based on the session, BSS/OSS sends messages to SMP to execute various


operations, thereby implementing the function of service management. According to
the number of MML and MML ACK commands, the function can be classified as that
single or multiple messages can be returned when single command is sent.
Transaction ID is managed by BSS/OSS to identify MML command and MML ACK in
different operations (An operation is taken as a deal.), and it is unique when used in a
session.

Transaction header consists of the following parts:

------Transaction ID: It is denoted by an integral of 32 bits in hexadecimal format


starting with 1. Transaction ID with the value larger than 0 is allocated by the client
(BSS/OSS) to identify a transaction. In the same session, they are different from each
other.

------Transaction control character: It is denoted by 6 Octet character strings (6


Byte).
z TxBeg: Transaction start
z TxCon: Transaction proceed
z TxEnd: Transaction end
------Reserved field: It is of 4 Byte used for subsequent extended services.

Note:
SMP keeps the result obtained from an operation for certain a period that can be
configured.

VI. Operative information

It denotes MML commands executed. See Section 3 for the format of MML command.

Fill with blank spaces if the length of MML command is not the multiple of 4.

VII. Checksum (8 Byte)

It is denoted by an integral (8 Byte) of 32 bits in hexadecimal format. The calculation


algorithm of checksum is shown as follows.
z Perform XOR for "Message header + Session header + Transaction header +
Operative information" as 32 Byte, and the inverse of result obtained from XOR is
the checksum.
z SMP disables the check of checksum when interfaces are tested.

Huawei Technologies Proprietary

2-4
User Manual
PPS Prepaid Service Management Open Interface Chapter 2 SMOI Program Operation

2.2.2 Service Message Code(V1.01)

This Version number is 1.01. It keeps the same with version 1.00 except for added
languages in coding MML messages. And SMP can handle MML messages in version
1.00 and 1.01 simultaneously.

I. Message start flag (4 Byte)

It denotes the start and end of a message.

Length: 4 Byte

Code: `SC`

II. Message length (4 Byte)

It denotes the total length of the interval between the message header and operative
message.

III. Message header (28 Byte)

Message header contains the following parameters:

-----Version number: It denotes the version of SMP open interface protocol with the
code of 4 Octet character strings. Current version number is 1.01.

-----Terminal identifier: It is denoted by the code of 8 Octet character strings to identify


the front end processor and terminal of BSS/OSS accessed to SMP.

-----Service name: It denotes the service that the operator applies for, and its code is
composed of 8 Octet character strings.

------Language: It is designated by the client with the code of 8 Octet character strings
to describe information returned from SMP. For example, information returned from
SMP is in English if English is selected.

Chinese and English are supported in current version.

IV. Session header (18 Byte)

------Session ID: It is denoted by an integral (8 Byte) of 32 bits in hexadecimal format.

------Session control character: It is denoted by 6 Octet character strings (6 Byte).

------Reserved field: It is of 4 Byte used for subsequent extended services.

Huawei Technologies Proprietary

2-5
User Manual
PPS Prepaid Service Management Open Interface Chapter 2 SMOI Program Operation

V. Transaction header (18 Byte)

------Transaction ID: It is denoted by an integral (8 Byte) of 32 bits in hexadecimal


format starting with 1.

------Transaction control character: It is denoted by 6 Octet character strings.

------Reserved field: It is of 4 Byte used for subsequent extended services.

VI. Operative information

It remains the same with that in version 1.00.

VII. Checksum (8 Byte)

It remains the same with that in version 1.00.

2.2.3 Heartbeat Message

Start flag, message length and checksum of heartbeat message are identical with
those of service message. "HBHB" is used to identify the heartbeat message.

Heartbeat message is sent when no messages are transmitted within period C


between SMP and BSS/OSS. And when N heartbeat messages are not received, the
two is considered to be disconnected. Therefore, another login is required.

Parameters C and N can be configured in principle. C = 2 minutes and N = 3 are


recommended.

2.2.4 Timeout Judgment

SMP must return ACK message as the response of MML command sent from
BSS/OSS within period T. When multiple ACK messages are involved, they must be
sent with an interval of T until the transaction ends. SMP timeout occurs if BSS/OSS not
receives the ACK message sent from SMP within period T.

T can be configured in principle. T = 1 minute is recommended. However, T varies with


transaction.

Huawei Technologies Proprietary

2-6
User Manual
PPS Prepaid Service Management Open Interface Chapter 2 SMOI Program Operation

2.3 Format of Message through SMP Interface

Format of message through SMP interface is refer to Table 2-1.

Table 2-1 format of SMP message

SMP processing
Format of message (Downlink message: websmap->caa
Uplink message: caa -> websmap )
Message start flag (4B) It is fixedly configured to 60 53 43 60 (that is, `SC`)

Total length of the interval between message header and


Message length (4B) operative information. Fill with blank spaces based on
practical situation.
Version number It is used to identify the version of SMP open interface
(4B) protocols
Message
header (20B Terminal identifier It is used to identify the front end processor and terminal of
in version (8B) BSS/OSS.
1.00, 28B in
version 1.01 Service name
It denotes the service that operators apply for.
and later (8B)
ones)
It is contained in version 1.01 and later ones. In current
Language (8B)
version, only Chinese and English are supported.
With its value larger than 0, it is a unique identifier of the
Session ID (8B)
session originated by BSS/OSS. It varies with the session.
By the use of session control character, BSS/OSS fills in
DlgLgn, DlgCon respectively for login, message
Session Session control transmission and logout.
header (18B) character (6B)
When BSS/OSS send the logout message, SMP will return
the Message filled with DlgEnd.

Reserved field
It is used for subsequent extended services.
(4B)
It is allocated by the client (BSS/OSS) to identify a
Transaction ID
transaction. In the same session, they (value: larger than 0)
(8B)
are different from each other.
Transaction Transaction
TxBeg: Transaction start; TxCon: Transaction proceed;
header (18B) control character
TxEnd: Transaction end
(6B)

Reserved field
It is used for subsequent extended services.
(4B)
Operative
It denotes MML command. See Section 3 for details.
Operative information
information Fill with blank spaces if the length of MML command is not
Blank space
the multiple of 4.

Huawei Technologies Proprietary

2-7
User Manual
PPS Prepaid Service Management Open Interface Chapter 2 SMOI Program Operation

SMP processing
Format of message (Downlink message: websmap->caa
Uplink message: caa -> websmap )
Perform XOR for "Message header + Session header +
Checksum 8B
Transaction header + Operative information" as 32 Byte.

2.4 MML Command Format

2.4.1 MML Command

A command is started with a command code that specifies its function executed by the
system. And further information is contained in parameter part following the command
code. This part is separated from the command code with a colon and defined by the
parameter block. Among multiple commands, semicolon is adopted, while it is omitted
in one command. In addition, parameter part is always omitted.

Command code :

Parameter block

Figure 2-1 Format of MML command

Note:
Several commands are not listed.

2.4.2 Command Code

It consists of command prefix and body without match of upper/lower case.

Command prefix denotes the type of command. A command with the prefix of ACK is
an acknowledgement one, and the prefix is separated from the command body with a
colon, while a command started with MON refers to a detection command. In addition,
the command is a notice message when NOTIFY is taken as the prefix. Prefix "MON" is
not supported temporarily in current version.

Command body is composed of 3 identifiers at most, which are separated with blanks.

Huawei Technologies Proprietary

2-8
User Manual
PPS Prepaid Service Management Open Interface Chapter 2 SMOI Program Operation

Command prefix : Identifier 1 sp Identifier 2 sp Identifier 3

Figure 2-2 Format of command code

Meaning:

-Identifier 1: With a maximum length of 8 Byte, it denotes the operation to be executed.

QRY, DISP, MOD, CRE.

-Identifier 2: With a maximum length of 8 Byte, it denotes the service involving the
operation.

DGNK, VPN, IN800.

-Identifier 3: With a maximum length of 8 Byte, it denotes the target of operations.

ACNT, OPER.

For example:

Execute the command DISP VPN ACNT : MSISDN="13900001234" to list the VPN
account.

2.4.3 Parameter Block

Parameter block is indispensable to execution of the function specified by command


code. And a command determines parameters contained in the block. Two or more
parameters in one block are separated with commas. All parameters are defined based
on their names, so execution of command may not be affected when user inputs them
in a casual order.

I. Definition

A parameter consists of a name and a value, which are separated with "=".

If value of a parameter is omitted, the corresponding name, "=" and "," (between
parameters) must be omitted as well.

A default value is designated when the parameter is omitted. However, the default
value can be replaced with a specified parameter value.

II. Name

Parameter name is denoted by an identifier with 8 characters at most.

Upper and lower cases are not matched for a parameter name.

Huawei Technologies Proprietary

2-9
User Manual
PPS Prepaid Service Management Open Interface Chapter 2 SMOI Program Operation

III. Value

Parameter value refers to an information element or a combination of information


elements.

IV. Information element

Identifier

Decimal number

Date

Time

Character string

Figure 2-3 Format of information element

V. Combined information elements

Several information elements can be input in a parameter contained in the command


after they are combined into one. As mentioned above, only the combination of simple
information elements is taken into account in this document. SMP open interface
supports flexible combination modes of information elements.

To count the number of them, separate information elements in the parameter value
with "&". For example, 5 & 9 denotes 5 and 9.

Information elements of least and most significant bits as well as && (between the two)
are required to denote a sequence (Incremental = 1) of information elements. For
example, 5 & & 9 refers to 5, 6, 7, 8, and 9, while N'62280000 && N'62289999 denotes
a number segment with 10,000 numbers.

Note:
"&&" is supported in part of MML commands.

Number of information elements involved in a combination is limited by the size of a


message. In current version, the size is 65535 Byte.

VI. Default parameter

Parameter in a command can be divided into mandatory one, optional one and default
one.

Huawei Technologies Proprietary

2-10
User Manual
PPS Prepaid Service Management Open Interface Chapter 2 SMOI Program Operation

z Mandatory parameter: Indispensable to the execution of a command


z Optional parameter: Dispensable one in execution of a command
z Default parameter: It is configured by the system automatically.
Pay attention to the following rules about the default parameter:

1. A parameter configured with default value must be designated to be default.


(Non-critical parameters involved in a command to add a user can be configured with
the default value.)

2. Default value of parameters in a command is unique.

3. A default parameter can be configured with different values in different commands.

4. Default value must be the one commonly configured for this parameter.

2.4.4 Character Set in MML Command

I. Letter

It includes letters from a to z in upper and lower case.

II. Digit

It includes all decimal digits as well as those from 0 to 9.

III. List separator

It is used to separate information elements in the conversation.

(:): It is used to separate the command name or code from the first parameter.

(=): It is used to separate the parameter name or code from the first value of the
parameter.

(,): It is used to separate parameters.

&: It is used to separate equivalent characters in a parameter.

&&: It is used to separate the upper and lower limit of an equivalent character.

(‘): It is used to separate the value from its indicator.

(;): It is used to separate commands.

IV. Numerical system indicator

B: Binary

O: Octal

Huawei Technologies Proprietary

2-11
User Manual
PPS Prepaid Service Management Open Interface Chapter 2 SMOI Program Operation

D: Decimal

H: Hex

N: Numerical character string

V. Special character

("): It is used to emphasize character strings in a text as a mnemonic.

Blank: It is used to separate command codes as well as increase readability.

Carriage return: It is unavailable in this system, but it can be used to increase


readability.

Chinese character

(-)

2.5 MML Grammar

2.5.1 Identifier

Identifier refers to a character string containing one or more characters. Started with a
letter or an underline, it involves figure, "/", letter and underline. For example, UPDATE
and NO7.

Figure

Letter/underline

Letter/underline

Figure 2-4 Identifier format

2.5.2 Numerical Value

I. Decimal number

Decimal number is composed of "D'" and a group of characters involving one or more
figures. Numerical system is applied to information element, in which D’ can be omitted.

Huawei Technologies Proprietary

2-12
User Manual
PPS Prepaid Service Management Open Interface Chapter 2 SMOI Program Operation

Figure

D’

Figure 2-5 Format of decimal number

II. Numerical character string

Numerical character string is used to denote such numerical information as card


number or telephone number that decimal number fails to denote.

N’ Figure

Figure 2-6 Format of numerical character string

III. Character string

Character(excluding")

" "

Figure 2-7 Format of character string

Text and delimiter can be input in a character string (text string). The delimiter is of
grammatical meaning when input beyond the text string.

Text string is a string of characters with the number of 0 or more and contained between
quotation marks. All characters even double quotation marks ("\" must be input before
it.) can be input in a text string.

IV. Date

The date is denoted by putting the date in digital format into the quotation mark. It
conforms to the order of "Year, Month, Day", among which "Year" is denoted by a
decimal number of 4 digits, while "Month" and "Day" are denoted by a decimal number
of 2 digits. Between the three, hyphens are put.

For example: October 13 2003 must be "2003-10-13".

Huawei Technologies Proprietary

2-13
User Manual
PPS Prepaid Service Management Open Interface Chapter 2 SMOI Program Operation

V. Time

The time is denoted by putting the time expressed with digit and colon into double
quotation marks in the timing system of 24 hours. Time elements are ordered like that:
Hour, Minute, Second, which are denoted by a decimal number of 2 digits. Among them,
Hour is denoted by the number ranging from 00 to 23, while Minute and Second are
from 00 to 59 (59 is included).

For example: 25 minutes and 1 second past 12 can be denoted like that: "12:25:01".

VI. Date and time

Date and time are denoted based on formats mentioned above, between which there is
a blank space.

For example: 25 minutes and 1 second past 12 October 13 2003 can be denoted as
below:

2003-10-13 12:25:01"

2.6 MML Feature

2.6.1 Batch Operation

It indicates that only one command is executed to implement certain a process (such as
adding, deletion, modification and query) for objects of the same kind. For example,
subscription for multi-function card service.

Functions of batch operation are listed as follows:

1. Progress feedback function must be supported.

2. A result must be output when a small batch operation is completed and a statistical
result is output when all operations end.

3. Concurrent execution of batch command and common one must be allowed.

2.6.2 Prompt of Confirmation

A prompt of confirmation must be displayed for users in case of important operations.


For example, a timer is activated upon the execution of an important command so that
execution may be cancelled when timeout occurs.

Huawei Technologies Proprietary

2-14
User Manual
PPS Prepaid Service Management Open Interface Chapter 2 SMOI Program Operation

2.7 Interaction between BSS/OSS and SMP

2.7.1 Procedure

The complete procedure of interaction between BSS/OSS and SMP is illustrated in the
figure below. For a brief description, handling of abnormal cases and establishment of
multiple sessions are not involved.

BSS/OSS SMP IN

Establish a SOCKET
connection
Send a LOGIN
message

LOGIN success

Send a MML message


Send to IN

Return a ACK
message to SMP
Send a MML
ACK message

Send a LOGOUT
message

LOGOUT success

Release SOCKET
connection

Figure 2-8 Interaction between SMP and BSS/OSS

Huawei Technologies Proprietary

2-15
User Manual
PPS Prepaid Service Management Open Interface Chapter 2 SMOI Program Operation

2.7.2 Information Flow

Start

Establsh a SOCKET connection


between BSS/OSS and SMP

No
Operation starts
Success or not?

Yes

Send the first MML command


Send a login message

No
Whether SMP succeeds in Concurrent operations
returning a message

Yes

TransactionID+1 Yes
Send all commands or not? Receive MML ACK messages

Execute the operation


No

No
Transaction ends or not?
No Whether operations are not
Send the next MML command
required
Yes
Yes

Send a logout message

Wait for the end of all operations

Release SOCKETconnection

Operation ends
End

Figure 2-9 Procedure of Interaction between BSS/OSS and SMP

Note:
z Multiple sessions can be established concurrently based on one TCP connection.
z Each session starts with DlgLgn and ends with DlgEnd.
z Multiple transactions can be started concurrently in a session.
z Each transaction starts with TxBeg and ends with TxEnd.
z Each transaction can contain multiple messages.
z Only one MML or MML ACK command can be stored in the operative information
field of a message.

Huawei Technologies Proprietary

2-16
User Manual
PPS Prepaid Service Management Open Interface Chapter 3 Commonly-used MML Commands Set

Chapter 3 Commonly-used MML Commands Set

An MML command is sent from MD to SMP, while an MML command with prefix ‘ACK:’
is sent from SMP to MD.

3.1 Interface Description

3.1.1 Parameter description

All the parameters of character string should be put in the double quotation marks.

I. Description of the usage of "&":

z This symbol has special meaning in MML command: It represents one parameter
corresponds to multiple values. For example:
To create a subscriber: CREATE PPS MULTISUB:

MSISDN=135000000&&135000500 (represents all the numbers from 135000000 to


135000500) CREATEPPS MULTISUB: MSISND=135000001&138000001 (It
represents the two numbers of 135000001 and 138000001)

To query the basic subscriber information:

DISP PPS ACNTINFO: MSISDN=13500000, ATTR=BALANCE & SUBSPID &


SUBCOSID (It represents querying the three fields including BALANCE, SUBSPID,
and SUBCOSID respectively).
z No parameter is allowed to use this symbol except the description says so.

II. Description of the input parameter being an integer:

z If the input parameter is larger than or equal to zero, it cannot include any symbols.
For example:

SUBCOS=2 (legal), PackageID=0 (legal), SUBCOS=+2 (illegal), PackageID=-0


(illegal), PackageID=+0 (illegal).
z If the input parameter is smaller than zero, then the input format is "negative
symbol plus a digit" (no symbol can be input except the negative symbol).
For example:

DMFDINCREMENT=-100 (legal), DMFDINCREMENT=10-60 (illegal),


DMFDINCREMENT=-+60 (illegal)

Huawei Technologies Proprietary

3-1
User Manual
PPS Prepaid Service Management Open Interface Chapter 3 Commonly-used MML Commands Set

3.1.2 Special Note

The universal returned information of parameters RETN and DESC in the ACK of MML
command is as follows:

0: Succeeded

1: Illegal data packet

2: Session control word error

3: Transaction control word error

4: Syntax error or illegal command code

5: Session created

6: Access agent connecting to the system failed

7: System internal error

8: Parameter input error

9: Command code mismatched

10: Incorrect number of operations

11: Operation timeout

12: No authority to access the data

13: Operation authentication failure

14: SMP database operation failure

15: SCP execution error

16: SCP connection failure

17: SCP no response

18: Recharging system execution error

19: Recharging system connection failure

20: Recharging system no response

21: Querying SCP failed

22: Querying SDP failed

23: Mapping between MSISDN and SCP does not exist.

24: MSISDN does not in SCP.

Huawei Technologies Proprietary

3-2
User Manual
PPS Prepaid Service Management Open Interface Chapter 3 Commonly-used MML Commands Set

25: Service name error

26: Message forwarding failure

27: System forcibly terminates the current session.

28: Operation code does not exist.

29: Max. subscriber license in the province has been reached.

30: Max. traffic in the province has been reached.

31: Max. subscriber license of the system has been reached.

32: Max. operation license of the system has been reached.

33: Terminal ID error

34: Client transaction ID error

35: Canceling transaction failed

36: Session ID error

37: File operation failure

38: IP connection failure

39: System overloaded, operation request is prohibited.

90: Service area is not allocated to the MSISDN or HLR does not exist.

3.2 Common Errors

On receipt of the operator command, if the input command has grammatical errors, or
the message format is illegal, an error-indicating message will be returned.

Output format:

ACK: GENERAL ERROR: RETN = , DESC=

Output parameters:

Parameter Description Value range


RETN Error code. -
DESC Description of the error. -

Huawei Technologies Proprietary

3-3
User Manual
PPS Prepaid Service Management Open Interface Chapter 3 Commonly-used MML Commands Set

3.3 Service Center (SRVM)

3.3.1 Logging in

It is used for the operator to log in to the SMS system.

Input format:

LOGIN: USER= , PSWD=

Input parameters:

Parameter Description Value Range


Represented by a character
USER ID for operator login.
string of 1 through 8 digits.

Represented by a character
PSWD Password for operator login.
string of 1 through 8 digits.

3.3.2 ACK of Logging in

This prompt returns to receipt of the login command from the operator.

Output format:

ACK: LOGIN: RETN= , DESC=

Output parameters:

Parameter Description Value range


Returned value of the ACK
RETN Decimal integer.
command.

Huawei Technologies Proprietary

3-4
User Manual
PPS Prepaid Service Management Open Interface Chapter 3 Commonly-used MML Commands Set

Parameter Description Value range


A string of no more than 256
characters.
0: Success.
1001: Operator does not exist.
1002: Password is not correct.
1003: Operator login ID has
expired.
1004: Operator password has
expired.
Description on the returned 1005: Invalid operator state
DESC
value.
1006: The operator is denied at
the present time.
1007: Terminal ID does not
exist.
1008: The terminal is denied to
access at present.
1009: The max login failure
times are reached.
1010: Login authentication
failed.

3.3.3 Logging out

End the conversation between the operator and the SMS system.

Input format:

LOGOUT :[ USER=]

Input parameters:

Parameter Description Value range


The login ID for the operator Represented by a character
who wants to exit. string of 1 through 9 digits.
USER Only when the login of other DEFAULT The login ID of the
operators is to be cleared, is operator in the current
this parameter necessary. conversation.

Huawei Technologies Proprietary

3-5
User Manual
PPS Prepaid Service Management Open Interface Chapter 3 Commonly-used MML Commands Set

3.3.4 ACK of Logging out

This prompt returns on receipt of the command of logging out.

Output format:

ACK: LOGOUT: RETN= , DESC=

Output parameters:

Parameter Description Value Range


Returned value of the ACK
RETN In decimal integer
command.
A string of no more than 256
characters.
0: Success.
1001: The current operator is not
Description on the returned
DESC authorized to log this operator off.
value.
1002: The specified operator has not
logged in.
1003: The specified operator does
not exist.

3.4 PPS Services

3.4.1 Creating PPS Subscribers

Create PPS subscribers, loads them to SCP where they are activated.

Input format:

CREATE PPS MULTISUB: MSISDN=[,SERVSTOP=][,ACNTSTOP=][, MAXCHR=][,


CMFLG=][,CGSRNFLG=][,LANG=][,SUBCOSID=][,MonthlyRentID=][,CREDITLIMI
T=]

Huawei Technologies Proprietary

3-6
User Manual
PPS Prepaid Service Management Open Interface Chapter 3 Commonly-used MML Commands Set

Input parameters:

Parameter Description Value Range


Specifies the MSISDN to The value range is a number string
be activated. of 9 digits.
MSISDN It supports the discrete The single numbers are connected
MSISDN and the number by "&", while the number segments
segment. are connected by "&&".
The parameter type is date, the
format is: yyyymmdd, in which:
yyyy: Year. Range: From the current
year till 100 years later
SERVSTOP Service Stop Date
mm: Month. Range: 1-12
dd: Day. Range: 1-31
DEFAULT: Specified by the service
level data table.

The parameter type is date, the


format is: yyyymmdd, in which:
yyyy: Year. Range: From the current
year till 100 years later
ACNTSTOP Latest date of first use
mm: Month. Range: 1-12
dd: Day. Range: 1-31
DEFAULT: Specified by the service
level data table.

Unit: Dollar.
Decimal integer type: an integer
larger than 0.
MAXCHR Max. charge amount.
DEFAULT: Specified by the service
level data table in light of diverse
subscriber types.
Decimal integer type. Range:
CMFLG Call Roaming Flag 0: Not Allowed
1: Allowed

LANG Language type Decimal integer


Decimal integer. Range:
0: No barring
Outgoing call restriction 2: Domestic and international toll
CGSRNFLG
Flag call not available
3: International toll call not available
DEFAULT: 0

Huawei Technologies Proprietary

3-7
User Manual
PPS Prepaid Service Management Open Interface Chapter 3 Commonly-used MML Commands Set

Parameter Description Value Range


Decimal integer. Range:
SUBCOSID Subscriber service type
1-999
Decimal integer type: an integer
CREDITLIMIT Credit Limit
larger than 0.

This parameter specifies


MonthlyRentID the monthly rent number of Decimal integer type
the monthly rent.

Instance:

CREATE PPS MULTISUB: MSISDN=680110000, CREDITLIMIT =10000

3.4.2 ACK of Creating PPS Subscribers

This prompt return on receipt of the command of creating PPS subscribers.

Output format:

ACK: CREATE PPS MULTISUB: RETN=, DESC= [,SUCCNUM=] [,SKIPNUM=]


[,INEXISTNUM=] [,LASTMSISDN=] [,FINISHED=]

Output parameters:

Parameter Description Value range


Returned value of the ACK
RETN Decimal integer.
command.

Huawei Technologies Proprietary

3-8
User Manual
PPS Prepaid Service Management Open Interface Chapter 3 Commonly-used MML Commands Set

Parameter Description Value range


A string of no more than 256
characters.
0: Success
23: The reference relationship
between the mobile phone number
and SCP does not exist.
1002: Service level data have not
been set.
1005: Number segment is not
allocated.
1006: Number of subscriber defined
exceeds SMP capacity limit.
1007: Number of subscriber defined
exceeds SCP capacity limit.
1009: SMP_LICENSE is unavailable.
1010: Too many input discrete
number segments.
1011: Input numbers do not
correspond to the same SUBCOS.
1012: Number resource does not
Description on the returned
DESC exist.
value
1013: Input MonthlyPRMID does not
exist
1014: PPS subscriber’s Debt Class
must be 0.
1015: Input DebtClass does not exist
1016: Input PackageID does not
exist
1024: Input GroupID does not exist
1025: The payment type
corresponds to MonthRentID does
not match subscriber payment type.
1027: Input MonthRentID does not
exist
1028: The input MSISDNs are not in
the same SCP.
1029: The input MSISDNs are not in
the same HLR.
1030: The subscribers are not in
the same bill date. Please input the
specified bill date.

Huawei Technologies Proprietary

3-9
User Manual
PPS Prepaid Service Management Open Interface Chapter 3 Commonly-used MML Commands Set

Parameter Description Value range


1032: The input CMFLG is invalid
1033: The input CGSRNFLG is
invalid
1034: The input LANG is invalid
1035: Invalid parameter
MonthRentID
1036: System configuration data lost
1037: Invalid parameter Creditlimit
1038: Invalid parameter PackageID
Description on the returned
DESC 1039: Invalid parameter GroupID
value
1040: Invalid parameter BillDate
1041: Invalid parameter
MonthlyPRMID
1042: Invalid parameter DebtClass
1043: Invalid parameter VIPFlag
1044: Invalid parameter FreeChange
1045: Invalid parameter SUBCOSID
1046: The input SUBCOSID does not
exist
Accumulated number of
Decimal integer type: an integer
SUCCNUM successfully-created
larger than 0.
MSISDNs.
Accumulated number of Decimal integer type: an integer
SKIPNUM
skipped MSISDNs. larger than 0.

Decimal integer type. Range:


FINISHED Finish Flag 0: Not Finished
1: Finished
INEXISTN Number of nonexistent Decimal integer type: an integer
UM MSISDNs larger than 0.
LASTMSIS The value range is a 9-digit number
Last processed MSISDN
DN string.

Instance:

ACK: CREATE PPS MULTISUB: RETN=0, DESC="Success", SUCCNUM=1,


SKIPNUM=0, INEXISTNUM=0, LASTMSISDN="680110000", FINISHED=1;

Huawei Technologies Proprietary

3-10
User Manual
PPS Prepaid Service Management Open Interface Chapter 3 Commonly-used MML Commands Set

3.4.3 Deleting PPS Subscriber Individually

The operation is to delete designated overdue subscriber from the SMS and SCP
systems. Overdue subscribers refer to those who exceed the Disable period, account
service stop date and latest date of first use.

Input format:

DEL PPS SPECSUB: MSISDN=

Input parameters:

Parameter Description Value range


Designated MSISDN of Represented with numeric
MSISDN
deleted subscriber. strings

3.4.4 ACK of Deleting PPS Subscriber Individually

This prompt is returned on receipt of the command of deleting PPS subscriber


individually.

Output format:

ACK:DEL PPS SPECSUB:RETN=,DESC=

Output parameters:

Parameter Description Value range


Returned value of the ACK
RETN Decimal integer
command.
A string of no more than 256
characters.
0: Success
1001: MSISDN status is
incorrect
Description on the returned
DESC 1002: The MSISDN does not
value.
exist
1003: Service level data
doesn't exist
1004: Service level data error
1005: MSISDN is a child-card.

Huawei Technologies Proprietary

3-11
User Manual
PPS Prepaid Service Management Open Interface Chapter 3 Commonly-used MML Commands Set

3.4.5 Deleting PPS Subscribers in Batch

The operation is to delete overdue PPS subscribers from the SMS and SCP systems.
Overdue subscribers refer to those who exceed the Disable period, account service
stop date and latest date of first use.

Input format:

BATDEL PPS MSUB: [HOMEZONE=]

Input parameters:

Parameter Description Value range


Home zone number.
For operators of the home zone level
or above, this parameter must be
specified. Represented by a
HOMEZONE character string of 1
The operators of the home zone level through 4 digits.
can only cancel subscribers of their
own zone. The parameter specified
should be identical with the zone
where the operator belongs.

Instance:

BATDEL PPS MSUB: HOMEZONE=1001

3.4.6 ACK of Deleting PPS Subscribers in Batch

Output format:

ACK: BATDEL PPS MSUB: RETN=[, SUCCNUM=] , DESC= [,FINISHED=]

Output parameters:

Parameter Description Value range


Returned value of the ACK
RETN Decimal integer.
command.

Huawei Technologies Proprietary

3-12
User Manual
PPS Prepaid Service Management Open Interface Chapter 3 Commonly-used MML Commands Set

Parameter Description Value range


A string of no more than 256
characters.
0: Success.
1001: There is no HLR number
corresponding to province area code
of the operator.
1004: No number to be deleted.
1005: Number of subscribers to be
Description on the returned deleted exceeds the limit.
DESC
value
1007: MSISDNTOSCP list is null.
1008: The number of subscriber to
be deleted can not be found in the
corresponding SCP.
1010: Operator has the area zone
attribute, and parameter homezone
cannot be input.
1011: Input homezone does not
exist.

Accumulated number of
Decimal integer type: an integer
SUCCNUM successfully-created
larger than 0.
MSISDNs
Decimal integer type. Range:
FINISHED Finish Flag 0: Not Finished
1: Finished

Instance:

ACK: BATDEL PPS MSUB: RETN=0, DESC="Success", SUCCNUM=10,


FINISHED=1;

3.4.7 Modify PPS Subscriber CallingFlag

Modify the calling privilege of the subscriber according to entered MSISDN and TYPE
parameters.

Input format:

MODI PPS CallingFlag: MSISDN=, TYPE=

Input parameters:

Huawei Technologies Proprietary

3-13
User Manual
PPS Prepaid Service Management Open Interface Chapter 3 Commonly-used MML Commands Set

Parameter Description Value range


The length is changeless. At
the same time the modified
MSISND parameter need to be account must is active status.
MSISDN modified handset number,
must is single Account. [Example]
100000009
The value must not equal to
TYPE parameter handset the source type.
TYPE number’s target calling limit
[Example]
type.
1

Instance:

MODI PPS CALLINGFLAG: MSISDN=700000001, TYPE=1;

3.4.8 ACK of Modify PPS Subscriber Calling Flag

Return this message on receipt of the command of modifying subscriber calling limit
Type.

Output format:

ACK:MODI PPS CallingScreenFlag: RETN= , DESC=

Output parameters:

Parameter Description Value range


Returned value of the ACK
RETN In decimal integer.
command.

Huawei Technologies Proprietary

3-14
User Manual
PPS Prepaid Service Management Open Interface Chapter 3 Commonly-used MML Commands Set

Parameter Description Value range


A string of no more than 256
characters.
0: Modifying CallingFlag
succeeded.
23: SDU corresponds to the
subscriber number does not
exist.
1001: Input CallingScreenFlag
does not exist.
1002: Subscriber does not
Description on the returned exist.
DESC
value. 1003: Subscriber state error.
1004: The original calling limit
type is same as the target
type.
1005: Subscriber data does
not exist.
1006: The Child card
subscriber cannot conduct this
operation.
1007: Service data does not
exist.

Instance:

ACK:MODI PPS CALLINGFLAG: RETN=0, DESC="Modifying calling flag succeeded";

3.4.9 Modifying Subscriber Roaming Flag

Modify the Roaming flag of PPS subscribers according to the subscriber MSISDN and
TYPE parameters.

Input format:

MODI PPS ROAMINGFLAG: MSISDN=, TYPE=

Input parameters:

Huawei Technologies Proprietary

3-15
User Manual
PPS Prepaid Service Management Open Interface Chapter 3 Commonly-used MML Commands Set

Parameter Description Value range


Represented with numeric
MSISDN whose roaming flag strings.
MSISDN need to be modified as
[Example]
specified by this parameter.
100000009

The new roaming flag of [Example]


TYPE
MSISDN. 1

Instance:

MODI PPS ROAMINGFLAG: MSISDN=100000009, TYPE=1

3.4.10 ACK of Modifying Subscriber Roaming Flag

Return this message on receipt of the command of modifying subscriber roaming flag.

Output format:

ACK: MODI PPS ROAMINGFLAG: RETN= , DESC=

Output parameters:

Parameter Description Value range


Returned value of the ACK
RETN In decimal integer.
command.

Huawei Technologies Proprietary

3-16
User Manual
PPS Prepaid Service Management Open Interface Chapter 3 Commonly-used MML Commands Set

Parameter Description Value range


A string of no more than 256
characters.
0: Success
23: SDU corresponds to the
subscriber number does not
exist
1001: Input Roaming flag is
invalid
Description on the returned 1002: MSISDN does not exist
DESC
value.
1003: Subscriber state error
1004: The new Roaming flag
is same as the old one.
1005: Service-level data lost
1006: The Child card
subscriber cannot conduct this
operation
1007: Service level data error

Instance:

ACK: MODI PPS ROAMINGFLAG: RETN=0, DESC=”Success”;

3.4.11 Querying PPS Subscribers Meeting the Deletion Conditions

Query the overdue PPS subscribers meeting the deletion conditions. Overdue
subscribers refer to those who exceed the term of validity, account expiry date and
latest date of first use.

Input format:

DISP PPS EXPDACNT:[HOMEZONE=]

Input parameters:

Huawei Technologies Proprietary

3-17
User Manual
PPS Prepaid Service Management Open Interface Chapter 3 Commonly-used MML Commands Set

Parameter Description Value range


Home zone number.
For operators of the home zone level or
above, this parameter must be specified.
Represented by a
HOMEZONE The operators of the home zone level can character string of 1
only cancel subscribers of their own zone. through 4 digits
The parameter specified should be
identical with the zone where the operator
belongs.

Instance:

DISP PPS EXPDACNT:HOMEZONE=1

3.4.12 ACK of Querying PPS Subscribers Meeting the Deletion Conditions

This prompt returns on receipt of the command of querying PPS subscribers meeting
the deletion conditions.

Output format:

ACK: DISP PPS EXPDACNT: RETN= [, DESC=] [, TOTALNUM=] [, MSISDN=]


[,FINISHED=]

Output parameters:

Parameter Description Value range


Returned value of the ACK
RETN Decimal integer.
command.

Huawei Technologies Proprietary

3-18
User Manual
PPS Prepaid Service Management Open Interface Chapter 3 Commonly-used MML Commands Set

Parameter Description Value range


Represented by a character string
of 1 through 256 digits.
0: Success
1001: There is no number for
subscription deletion.
1002: There is no HLR number
corresponding to province area
DESC Description of error causes code of the operator.
1003: Input homezone does not
exist
1004: Operator has the area zone
attribute, and parameter homezone
cannot be input
1007: Subscription deletion number
can not find corresponding SCP

Total number of PPS


TOTALNUM subscribers that meet the Decimal integer type
deletion conditions

The list of PPS subscriber


numbers that meet the
The value range is a 3-digit number
MSISDN deletion conditions, each
string.
separated by "&" from the
other.

Decimal integer type. Range:


FINISHED Finish Flag 0: Not Finished
1: Finished

Instance:

ACK: DISP PPS EXPDACNT: RETN=0,DESC="Success",TOTALNUM=2 ,


MSISDN="980&981",FINISHED=1;

3.4.13 Querying PPS Subscriber Basic Information

Query PPS subscriber basic service data on the SMS system. The PPS subscriber
basic information includes MSISDN, account state, account balance, credit amount,
max. balance, score for volume discount, end date of volume discount, MSISDN type,
blacklist, language type, end date of active state, end date of suspend state, end date
of disable state, end date of service, calling authority, roaming authority, subscriber
class, service class, home AreaZone, score for bonus promotion, end date of bonus
promotion, promotion talk duration, accumulated recharge amount, recharge failure

Huawei Technologies Proprietary

3-19
User Manual
PPS Prepaid Service Management Open Interface Chapter 3 Commonly-used MML Commands Set

times before blacklist, call fee preference, number of SM in accumulation period and
expired date of SM accumulation period.

The return of attributes set can be specified in the command parameters.

Input format:

DISP PPS ACNTINFO: MSISDN=[,ATTR=]

Input parameters:

Parameter Description Value range


MSISDN to be queried as
MSISDN Represent with numeric strings.
specified by this parameter.
The subscriber service attribute
is a set of the following
The subscriber basic service identifiers:
ATTR attributes to be queried as One of the following identifiers
specified by this parameter. can be specified or multiple
identifiers can be specified with
"&" to query multiple attributes.

Instance:

DISP PPS ACNTINFO: MSISDN=680110009,


ATTR=CALLSCREENFLAG&INTERROAMFLAG

3.4.14 ACK of Querying PPS Subscriber Basic Information

This prompt returns on receipt of the command of querying PPS subscriber basic
information.

Output format:

ACK: DISP PPS ACNTINFO: RETN= , DESC=[, ATTR= , RESULT=]

Output parameters:

Parameter Description Value range


Returned value of the ACK
RETN Decimal integer.
command.

Huawei Technologies Proprietary

3-20
User Manual
PPS Prepaid Service Management Open Interface Chapter 3 Commonly-used MML Commands Set

Parameter Description Value range


A string of no more than 256
characters.
0: Success
1001:MSISDN does not exist
Description on the returned 1002:MSISDN is a child-card,
DESC
value it's mother-card is
1003:Service level data
doesn't exist
1004:System data lost
1005:Service level data error
The subscriber service
attribute is a set of the
following identifiers:
The subscriber basic service
ATTR attributes to be queried as One of the following identifiers
specified by this parameter. can be specified or multiple
identifiers can be specified
with "&" to query multiple
attributes.

Each attribute is separated by


RESULT The data query result.
'|'.

Instance:

ACK: DISP PPS ACNTINFO: RETN=0, DESC="User service information query


succeeds", ATTR=MSISDN & CALLSCREENFLAG & INTERROAMFLAG,
RESULT="680110009|0|0|";

3.4.15 Releasing Subscriber from Blacklist

Release the blacklist status of PPS subscribers.

Input format:

RELEASE PPS BLACKLST: MSISDN=

Input parameters:

Parameter Description Value range


This parameter specifies the
MSISDN MSISDN that needs to be Represented with numeric strings.
released from the blacklist.

Huawei Technologies Proprietary

3-21
User Manual
PPS Prepaid Service Management Open Interface Chapter 3 Commonly-used MML Commands Set

Instance:

RELEASE PPS BLACKLST: MSISDN=680110001

3.4.16 ACK of Releasing Subscriber from Blacklist

This prompt returns on receipt of the command of releasing subscriber from blacklist.

Output format:

ACK: RELEASE PPS BLACKLST: RETN= , DESC=

Output parameters:

Parameter Description Value range


Returned value of the ACK
RETN Decimal integer.
command.
A string of no more than 256
characters.
0: Releasing blacklist succeeded.
1002: Mobile subscriber is not
blacklisted.
1005: Subscriber does not exist
Description on the returned 1015: The current system date is
DESC
value not within the period of service start
date and service stop date
1016: MSISDN account isn't
opened.
1017: Service level data error
1018: The Child card subscriber
cannot conduct this operation

Instance:

ACK: RELEASE PPS BLACKLST: RETN=0, DESC="Releasing blacklist succeeded";

3.4.17 Change Subscriber Type

The manual recharge is to change user type.

Input format:

MODI PPS SUBCOS: MSISDN=, SUBCOS=

Huawei Technologies Proprietary

3-22
User Manual
PPS Prepaid Service Management Open Interface Chapter 3 Commonly-used MML Commands Set

Input parameters:

Parameter Description Value range


Only single MSISDN is Mandatory, digit character
MSISDN
allowed. string with fixed length.

Mandatory, non-negative
SUBCOS Service type.
integer (SUBCOSID).

Instance:

MODI PPS SUBCOS: MSISDN=333000001, SUBCOS=2;

3.4.18 ACK of Change Subscriber Type

This prompt returns on receipt of the command of changing user type.

Output format:

ACK: MODI PPS SUBCOS: RETN= , DESC=

Output parameters:

Parameter Description Value range


Returned value of the ACK
RETN Decimal integer.
command.

Huawei Technologies Proprietary

3-23
User Manual
PPS Prepaid Service Management Open Interface Chapter 3 Commonly-used MML Commands Set

Parameter Description Value range


0: Success.
1001: User's state is incorrect.
1002: User does not exist.
1003: The input SUBCOSID is
the same with the original
SUBCOSID.
1004: Original subcosid and
the input subcosid do not exist.
1005: Original subcosid does
not exist.
1006: Input subcosid does not
exist.
Description on the returned
DESC value, a string of no more than 1007: MSISDN is child card.
256 characters.
1008: Pps_changecosrate
table is not configured.
1009: Balance is not enough.
1010: The 'functionlist' in the
table 'Smap_config' is false.
1011: The postpaid subscriber
does not supply this function.
1012: Subscriber's balance is
not enough and the
mother-card does not exist.
1013: Subscriber's balance is
not enough and the
mother-card's state is invalid.

1014: Subscriber's balance is


not enough and the
mother-card's balance is not
Description on the returned enough too.
DESC value, a string of no more than
256 characters. 1015: Subscriber's balance is
not enough and the
mother-card's data on service
level doesn't exist.

Instance:

ACK: MODI PPS SUBCOS: RETN=0, DESC="Success";

Huawei Technologies Proprietary

3-24
User Manual
PPS Prepaid Service Management Open Interface Chapter 3 Commonly-used MML Commands Set

3.4.19 Modifying Subscriber Balance

Modify the balance of PPS subscribers according to the subscriber MSISDN. The
balance of subscribers in pool status is not allowed to be modified. Balance
modification does not involve status modification.

Input format:

MODI PPS BALANCE: MSISDN=,INCRMENT=

Input parameters:

Parameter Description Value range


MSISDN whose balance
needs to be modified as
MSISDN Represented with numeric strings.
specified by this
parameter.

Represented with decimal integers,


INCRMENT Increment to be modified. which can be either positive
numbers or negative numbers.

Instance:

MODI PPS BALANCE: MSISDN=680110000, INCRMENT=1

3.4.20 ACK of Modifying Subscriber Balance

Return this message on receipt of the command of modifying subscriber balance.

Output format:

ACK: MODI PPS BALANCE:RETN=,DESC=[, ORGBALANCE=, LASTBALANCE=]

Output parameters:

Parameter Description Value range


Returned value of the ACK
RETN Decimal integer.
command.

Huawei Technologies Proprietary

3-25
User Manual
PPS Prepaid Service Management Open Interface Chapter 3 Commonly-used MML Commands Set

Parameter Description Value range


A string of no more than 256
characters.
0: Success
1001: MSISDN is in pool status, the
balance can not be modified.
1002: MSISDN does not exist.
1003: MSISDN account isn't opened
Description on the returned 1004: Service level data doesn't exist
DESC
value
1005: Exceed maximum recharge
sum
1007: Service level data error
1008: MSISDN is a child-card, the
balance can not be modified
1009 The current system date is not
within the period of service start date
and the service stop date

ORGBALAN
Original balance Decimal integer type
CE

LASTBALA
Last balance Decimal integer type
NCE

Instance:

ACK:MODI PPS BALANCE: RETN=0, DESC="Subscriber balance modification


succeeds", ORGBALANCE=1, LASTBALANCE=2;

3.4.21 Modifying Subscriber Validity Period

Modify the validity stop date (Active Stop) of PPS subscribers. The validity period of the
subscribers in an IDLE status is not allowed to be modified.

Input format:

MODI PPS VALIDITY: MSISDN=,INCRMENT=[, FLAG=]

Input parameters:

Huawei Technologies Proprietary

3-26
User Manual
PPS Prepaid Service Management Open Interface Chapter 3 Commonly-used MML Commands Set

Parameter Description Value range


MSISDN whose validity
period needs to be modified
MSISDN Represented with numeric strings.
as specified by this
parameter.
Represented with decimal integers,
INCRMENT Increment to be modified. which can be either positive
numbers or negative numbers.
Base on 0 or 1 the validity be Base on 0 or 1 the validity be
FLAG
modified can be 0 or 1 modified can be 0 or 1

Instance:

MODI PPS VALIDITY: MSISDN=680110001,INCRMENT=1, FLAG=1;

3.4.22 ACK of Modifying Subscriber Validity Period

Return this message on receipt of the command of modifying subscriber validity period.

Output format:

ACK:MODI PPS VALIDITY:RETN=,DESC=

Output parameters:

Parameter Description Value range


Returned value of the ACK
RETN Decimal integer.
command.

Huawei Technologies Proprietary

3-27
User Manual
PPS Prepaid Service Management Open Interface Chapter 3 Commonly-used MML Commands Set

Parameter Description Value range


A string of no more than 256
characters.
0:Success
1001: MSISDN is in idle status, the
validity can not be modified.
1002: MSISDN does not exist.
1003: MSISDN account isn't
opened.
1004 The current system date is not
within the period of service start
date and service stop date.
Description on the returned 1005: The modified validity period
DESC
value exceeds the max. Validity period of
continuous recharging.
1006:Service level data error
1007: MSISDN is a child-card; the
validity can not be modified.
1008: Service level data doesn't
exist.
1009: Modification will lead the
multilevel jump of subscriber state.
1010: MSISDN balance is less than
0, so target state after modification
can't be active.

Instance:

ACK: MODI PPS VALIDITY: RETN=0, DESC="Success";

3.4.23 Modifying MSISDN

Modify subscriber MSISDN.

Input format:

MODI PPS MSISDN: OLDMSISDN=,NEWMSISDN=

Huawei Technologies Proprietary

3-28
User Manual
PPS Prepaid Service Management Open Interface Chapter 3 Commonly-used MML Commands Set

Input parameters:

Parameter Description Value range


This parameter specifies the Represented with numeric
OLDMSISDN
MSISDN to be modified, strings.

This parameter specifies the Represented with numeric


NEWMSISDN
last MSISDN. strings.

Instance:

Instance:

MODI PPS MSISDN: OLDMSISDN=680110001, NEWMSISDN=680110009;

3.4.24 ACK of Modifying MSISDN

Return this message on receipt of the command of modifying MSISDN.

Output format:

ACK: MODI PPS MSISDN: RETN=,DESC=

Output parameters:

Parameter Description Value range


Returned value of the ACK
RETN Decimal integer.
command.

Huawei Technologies Proprietary

3-29
User Manual
PPS Prepaid Service Management Open Interface Chapter 3 Commonly-used MML Commands Set

Parameter Description Value range


0:Success
1002: Old or new number
does not exist.
1003: New MSISDN resource
is unavailable.
1004: The area zone for the
new number is different from
that of the old number.
1006: New number or old
number state error.
1007: Service type for the new
number is different from that of
the old.
1008: SDU for the new number
Description on the returned
is different from that of the old
DESC value, a string of no more than
number.
256 characters.
1021: The area zone that
corresponds to the new
number or old number does
not exist
1022: SDU that corresponds to
the new number or old number
does not exist
1023: System data error
1024: Service-level data does
not exist
1025: System data
configuration error
1026: Cannot change
Parent-Child card

Instance:

ACK: MODI PPS MSISDN: RETN=0, DESC="Success";

3.4.25 Modifying Subscriber Balance by Triggering Service

By trigger service, Modify the balance of PPS subscribers according to the subscriber
MSISDN. The balance of subscribers in Idle or Pool status is not allowed to be modified.
Balance modification does not involve status modification.

Input format:

Huawei Technologies Proprietary

3-30
User Manual
PPS Prepaid Service Management Open Interface Chapter 3 Commonly-used MML Commands Set

CHANGE PPS BALANCE: MSISDN=,INCRMENT=

Input parameters:

Parameter Description Value range


MSISDN whose balance
Represented with numeric
MSISDN needs to be modified as
strings
specified by this parameter.
Represented with decimal
integers, which can be either
INCRMENT Increment to be modified.
positive numbers or negative
numbers.

Instance:

CHANGE PPS BALANCE: MSISDN=680110000, INCRMENT=1

3.4.26 ACK of Modifying Subscriber Balance by Triggering Service

Return this message on receipt of the command of modifying subscriber balance.

Output format:

ACK: CHANGE PPS BALANCE:RETN=,DESC=[, ORGBALANCE=,


LASTBALANCE=]

Output parameters:

Parameter Description Value range


Returned value of the ACK
RETN In decimal integer
command.

Huawei Technologies Proprietary

3-31
User Manual
PPS Prepaid Service Management Open Interface Chapter 3 Commonly-used MML Commands Set

Parameter Description Value range


A string of no more than 256
characters.
0: Modifying balance
succeeded.
1002: Subscriber’s basic
information error.
1003: Subscribers not in
ACTIVE mode, balance can't
be modified.
1004: Balance is not enough.
1006: Subscriber does not
exist.
1008: Exceed maximum
recharge sum.
1011: service level data is
Description on the returned
DESC missing.
value.
1013: MSISDN information
modification failed.
1021: The current system
date is not within the period of
service start date and service
stop date
1022: Subscriber account isn’t
opened.
1023: Subscriber is in
IDLE/POOL mode.
1024: Service level data
doesn’t exist.
1025: Service level data is
false.
1026: MSISDN is a child-card
The balance before
ORGBALANCE Decimal integer type.
modification.
LASTBALANCE The balance after modification. Decimal integer type.

Instance

ACK:CHANGE PPS BALANCE: RETN=0, DESC="Subscriber balance modification


succeeds", ORGBALANCE=1, LASTBALANCE=2;

Huawei Technologies Proprietary

3-32
User Manual
PPS Prepaid Service Management Open Interface Chapter 3 Commonly-used MML Commands Set

3.5 GPRS MML Command Set

3.5.1 Creating a Batch of GPRS Service Subscribers

Creates GPRS service subscriber, loads them to SCP where they are activated.

Input format:

CREATE PPS GPRSMSUB: MSISDN=,TYPE=

Input parameters:

Parameter Description Value range


Uses numeric strings and
designates multiple numbers
The subscribers’ numbers or number ranges with "&" and
MSISDN "&&".
specified to be activated.
A single MSISDN is a numeric
string.

The type of the GPRS 1:GPRS-MMS


TYPE
subscriber. 2:GPRS-PPS

Instance:

CREATE PPS GPRSMSUB: MSISDN=680110000&&680110009, TYPE=2;

3.5.2 ACK of Creating a Batch of GPRS Service Subscribers

This prompt is returned on receipt of the command of creating a batch of GPRS service
subscriber.

Output format:

ACK: CREATE PPS GPRSMSUB: RETN=, DESC=[, SUCCNUM=, SKIPNUM=,


INEXISTNUM=, LASTMSISDN=, FINISHED=]

Output parameters:

Parameter Description Value range


Returned value of the ACK
RETN Decimal integer
command.

Huawei Technologies Proprietary

3-33
User Manual
PPS Prepaid Service Management Open Interface Chapter 3 Commonly-used MML Commands Set

Parameter Description Value range


0: Success
1001: MSISDN are not allocated in
SDUs
1002: MSISDN are not in one SDU
1003: MSISDN are not allocated in
HLRs
1004: MSISDN are not in one HLR
1005:No MSISDN will be activated
Description on the
returned value, a string of 1006:The subcosid or subspid of
DESC the input numbers are not unique
no more than 256
characters. 1007: System data lost
1008: License data is missing
1009: License lines too many
1010: Decoding License failed
1011: License is not enough
1012: Encrypting License failed
1013: Too many input number
segments
The amount of MSISDN
SUCCESSNUM Decimal long integer type
created successfully
The amount of MSISDN
skipped.

SKIPNUM This number indicates how Decimal long integer type


many MSISDNs have
already been activated
before this operation.
Nonexistent MSISDN
INEXISTNUM Decimal long integer type
amount
Finished flag
FINISHED 1: Finished
0: Unfinished
Last successfully handled
LASTMSISDN Represented by a numeric string.
MSISDN.

Instance:

ACK: CREATE PPS GPRSMSUB: RETN=0, DESC="Success", SUCCNUM=100,


SKIPNUM=0, INEXISTNUM=0, LASTMSISDN=680110009, FINISHED=1

Huawei Technologies Proprietary

3-34
User Manual
PPS Prepaid Service Management Open Interface Chapter 3 Commonly-used MML Commands Set

3.5.3 Deactivating GPRS Service Subscribers

Deactivate GPRS service subscriber.

Input format:

DELE PPS GPRSMSUB: MSISDN=,TYPE=

Input parameters:

Parameter Description Value Range


The subscriber’s number
Only single MSISDN is
MSISDN specified to be deactivated,
allowed.
represented by numeric string.

TYPE 1:GPRS-MMS 2:GPRS-PPS

Instance:

DELE PPS GPRSMSUB: MSISDN=680110001&&680110009, TYPE=2;

3.5.4 ACK of Deactivating GPRS Service Subscribers

This prompt is returned on receipt of the command of deactivating GPRS service


subscriber.

Output format:

ACK: DELE PPS GPRSMSUB: RETN=, DESC=[, SUCCNUM=, SKIPNUM=,


INEXISTNUM=, LASTMSISDN=, FINISHED=]

Output parameters:

Parameter Description Value range


Returned value of the ACK
RETN Decimal integer
command.

Huawei Technologies Proprietary

3-35
User Manual
PPS Prepaid Service Management Open Interface Chapter 3 Commonly-used MML Commands Set

Parameter Description Value range


A string of no more than 256
characters.
0: Success
1001: MSISDN are not
allocated in SDUs
1002: MSISDN are not in one
SDU
1003: MSISDN are not
1004: MSISDN are not in one
HLR

Description on the returned 1005:No MSISDN will be


DESC deactivated
value allocated in HLRs
1006:The subcosid or subspid
of the input numbers are not
unique
1007: System data lost
1008: License data is missing
1009: License lines too many
1010: Decoding License failed
1011: Encrypting License failed
1012: Too many input number
segments

The amount of MSISDN


SUCCESSNUM Decimal long integer type
deactivated successfully
This number indicates how
Skipped MSISDN amount many MSISDNs have already
SKIPNUM
Decimal long integer type been deactivated before this
operation.
INEXISTNUM Nonexistent MSISDN amount Decimal long integer type
0: Unfinished
FINISHED Finished flag.
1: Finished
Last successfully handled Represented by a numeric
LASTMSISDN
MSISDN string.

Instance:

ACK: DEL PPS GPRSMSUB: RETN=0, DESC="Success", SUCCNUM=100,


SKIPNUM=0, INEXISTNUM=0, LASTMSISDN=680110009, FINISHED=1

Huawei Technologies Proprietary

3-36
User Manual
PPS Prepaid Service Management Open Interface Chapter 3 Commonly-used MML Commands Set

3.6 Recharge Card Management (RCMS)

3.6.1 Manual Recharge by SCP

The manual recharge is to recharge the amount of the recharge card via the SMP-MD
interface to a handset account.

Input format:

CHGTRIG CHRG ACNT: MSISDN=, CHRGTYPE=[, VALUE=, BATCHNO=,


SERIALNO=][, CARDPIN=]

Input parameters:

Parameter Description Value range


Represented with numeric
This parameter specifies the strings.
MSISDN handset numbers to be
charged. This parameter should not be
a complex parameter.
Represented with numeric
This parameter specifies the strings from 1 to 2147483647,
VALUE account to be added to including 1 and 2147483647.
subscriber’s balance. This parameter should not be
a complex parameter.

Represented with 10-digit or


This parameter specifies the alphabetic strings.
BATCHNO
batch number of charge cards. This parameter should not be
a complex parameter.
Represented with 10-digit
This parameter specifies the numeric strings.
SERIALNO
serial number of charge card. This parameter should not be
a complex parameter.
It represented with numeric
This parameter specifies the string.
CARDPIN passwords of the charge cards
to be charged. This parameter should not be
a complex parameter.

Huawei Technologies Proprietary

3-37
User Manual
PPS Prepaid Service Management Open Interface Chapter 3 Commonly-used MML Commands Set

Parameter Description Value range


Represented with 1-digit
numeric string.
3: PPS subscriber manual
recharge
4: ATM recharge
5: STK recharge
6: Tele-banking recharge
This parameter specifies the
CHRGTYPE
type of the charge. 7: Spare
8: Online promotion
ChrgType 1 is reserved for
mobile phone recharge and it
cannot be used within SMOI
program.
This parameter should not be
a complex parameter.

Note:
If CHRGTYPE=3, then the three parameters VALUE, BATCHNO, SERIALNO can’t be
input, otherwise these three parameters must be input.
If CHRGTYPE=3, then the parameter CARDPIN must be input, otherwise this
parameter is an optional one.

Instance:

CHGTRIG CHRG ACNT: MSISDN=680000001, CHRGTYPE=5, VALUE=10,


BATCHNO=12346, SERIALNO=3324, CARDPIN=88812345678888;

3.6.2 ACK of Manual Recharge by SCP

This prompt returns on receipt of the manual recharge command.

Output format:

ACK: CHGTRIG CHRG ACNT: RETN=, DESC=[, ATTR=,RESULT=]

Output parameters:

Huawei Technologies Proprietary

3-38
User Manual
PPS Prepaid Service Management Open Interface Chapter 3 Commonly-used MML Commands Set

Parameter Description Value range


Returned value of the ACK
RETN In decimal integer.
command.
A string of no more than 256
characters.
0: Success
1001:Encryption file is not
found
1002: Encryption failure
1003: Charge card has expired
1004: Charge card does not
exist or is invalid
1005: Charge card information
is not found
1006: MSISDN does not exist
1007: MSISDN has been in
pool status

Description on the returned 1008: Exceed maximum


DESC recharge sum
value.
1009: MSISDN first used or
invalid
1010: MSISDN is not activated
1011: There is no user service
information
1012: Exceed maximum valid
period of continuous
recharging
1013: MSISDN information
modification failed
1014: Modify the charge card
information failed
1015: Manual recharging
succeeds, and the information
fails after subscriber
recharging query

Huawei Technologies Proprietary

3-39
User Manual
PPS Prepaid Service Management Open Interface Chapter 3 Commonly-used MML Commands Set

Parameter Description Value range


1016: MSISDN has been in
blacklist
1017: Mobile phone password
not correct
1018: MSISDN's type is wrong
Description on the returned 1019: Balance of recharging
DESC
value. card is abnormal
1020: SIM card is lost
1025: MSISDN service is
stopped
1100: SCP agent sends back
an undefined error code.
Each separated from the other
with “&”.
The valid field name is
BALANCE, CSVSTOP,
VALUE, VALUEADD,
VALIDITY and VALIDITYADD.
BALANCE: Subscriber’s
balance after charge.
CSVSTOP: Term of validity
after charge
VALUE: Value of recharge
card if CHRGTYPE is 3.
Otherwise it means the
List of queried information account specified to be added.
ATTR
attribute names.
VALUEADD: The promotion
value added to the
subscriber’s balance
VALIDITY: The validity period
of recharge card if
CHRGTYPE is 3; otherwise, it
is the validity accumulated.
VALIDITYADD: The promotion
number of days added to the
subscriber’s validity
This parameter exists only
when RETN is a success.
When RETN is other values,
the parameter does not exist.

Huawei Technologies Proprietary

3-40
User Manual
PPS Prepaid Service Management Open Interface Chapter 3 Commonly-used MML Commands Set

Parameter Description Value range


Each attribute value is
separated from the other with
"|".
RESULT Data query result. This parameter exists only
when RETN is a success.
When RETN is other values,
the parameter does not exist.

Instance:

ACK: CHGTRIG CHRG ACNT: RETN=0, DESC=”Success”, ATTR=”BALANCE&


ACTIVESTOP&VALUE&VALUEADD&VALIDITY&VALIDITYADD”,RESULT=”55|20041
201|10|10|20| 20|”;

3.6.3 Querying Recharge Card Status

Query recharge card status.

Input format:

QUERY CHRG CARDSTAT: SEQUENCE=[,ATTR=]

Input parameters:

Parameter Description Value range


Made up of 11-digit character
SEQUENCE SNs.
strings
Each list area is separated
from the other with “&”.
DEFAULT: All database fields.
The field name is
The database list area fields AccountNumber, Sequence,
(or a default value) to be BatchNo, RunningNo,
ATTR returned SerialNo, Object, CreateDate,
ExpireDate, FaceValue,
CurrencyType, ValidityPeriod,
HotCardFlag, TradeTime,
MSISDN, AccountPinNumber,
TradeType, Distributor,
CardSpId, CardCosId,
ShippedDate.

Huawei Technologies Proprietary

3-41
User Manual
PPS Prepaid Service Management Open Interface Chapter 3 Commonly-used MML Commands Set

Instance:

QUERY CHRG CARDSTAT: SEQUENCE=12345665432, ATTR=”MSISDN&


Sequence&TradeTime&TradeType&BatchNo&SerialNo&FaceValue&ValidityPeriod&C
ardSpId&CardCosId”

3.6.4 ACK of Querying Recharge Card Status

Output format:

ACK: QUERY CHRG CARDSTAT: RETN=,DESC=[,ROWNUM=, ATTR=,


RESULT=]

Output parameters:

Parameter Description Value range


RETN Returned value of the ACK command in decimal integer.
A string of no more than 256
characters.
0: Query success
Description on the returned
DESC 1002: Charge card does not
value
exist
1003: Recharge card hasn’t
corresponding SDP
Each attribute name is
separated from the other with
List of the query result of “&”.
ATTR attribute names Only when RETN is a success
does this parameter exist.
When RETN is other values,
this parameter does not exist.
Each record is separated from
the other with “&” and each
attribute value in the record is
separated from the other with
Data query result “|”.
RESULT
Only when RETN is a success
does this parameter exist.
When RETN is other values,
this parameter does not exist.
Only when RETN is a success
Number of records returned in
does this parameter exist.
ROWNUM one time
When RETN is other values,
Short integer type
this parameter does not exist.

Huawei Technologies Proprietary

3-42
User Manual
PPS Prepaid Service Management Open Interface Chapter 3 Commonly-used MML Commands Set

Instance:

ACK: QUERY CHRG CARDSTAT: RETN=0, DESC=”Query success”,


ATTR=”MSISDN&Sequence&TradeTime&TradeType&BatchNo&SerialNo&FaceValue
&ValidityPeriod&CardSpId&CardCosId”,RESULT="870001234|11|20041110|0|15|20|1
0| 20051010|0|1|";

3.6.5 Locking Recharge Card

To lock the same batch of specified recharge card.

Input format:

LOCK RCMS CARD: BATCHNO=, STARTNO=, ENDNO=

Input parameters:

Parameter Description Value range


This parameter specifies the batch
number to be locked. Represented with 6-digit
BATCHNO
This parameter should not be a or alphabetic strings.
complex parameter.
This parameter specifies the start
serial number of recharge card. Represented with 5-digit
STARTNO
This parameter should not be a numeric strings.
complex parameter.

This parameter specifies the end


serial number of recharge card. Represented with 5-digit
ENDNO
This parameter should not be a numeric strings.
complex parameter.

Instance:

LOCK RCMS CARD: BATCHNO=123456, STARTNO=00001, ENDNO=00200

3.6.6 ACK of Locking Recharge Card

This prompt is returned on receipt of the command of locking recharge card.

Output format:

ACK: LOCK RCMS CARD: RETN=, DESC=

Huawei Technologies Proprietary

3-43
User Manual
PPS Prepaid Service Management Open Interface Chapter 3 Commonly-used MML Commands Set

Output parameters:

Parameter Description Value range


Returned value of the ACK
RETN Decimal integer.
command.
A string of no more than 256
characters.
0: Recharge card lock
success
1001: This batch of recharge
cards does not exist.
Description on the returned 1002: This batch of recharge
DESC
value. cards has not been loaded
into SCP.
1003: This batch of recharge
cards has not been
activated.
1004: Recharge card already
locked.

Instance:

ACK: LOCK RCMS CARD: RETN=0, DESC="Success", CURRENTNO=00200,


FINISHED=1;

3.6.7 Unlocking Recharge Card

To unlock the same batch of specified recharge card.

Input format:

UNLOCK RCMS CARD: BATCHNO=, STARTNO=, ENDNO=

Input parameters:

Parameter Description Value range


This parameter specifies the batch
number to be locked. Represented with 6-digit or
BATCHNO
This parameter should not be a alphabetic strings.
complex parameter.

Huawei Technologies Proprietary

3-44
User Manual
PPS Prepaid Service Management Open Interface Chapter 3 Commonly-used MML Commands Set

Parameter Description Value range


This parameter specifies the start
serial number of recharge card. Represented with 5-digit
STARTNO
This parameter should not be a numeric strings
complex parameter.

This parameter specifies the end


serial number of recharge card. Represented with 5-digit
ENDNO
This parameter should not be a numeric strings
complex parameter.

Instance:

UNLOCK RCMS CARD:BATCHNO=123456,STARTNO=00001,ENDNO=00200

3.6.8 ACK of Unlocking Recharge Card

This prompt is returned on receipt of the command of unlocking recharge card.

Output format:

ACK: UNLOCK RCMS CARD: RETN=, DESC=

Output parameters:

Parameter Description Value range


Returned value of the ACK
RETN Decimal integer.
command.
A string of no more than
256 characters.
0: Recharge card lock
success
1001: Recharge card has
not been locked.

DESC Description on the returned value 1002: This batch of


recharge cards has not
been loaded into SCP.
1003: This batch of
recharge cards has not
been activated.
1004: Batch number does
not exist.

Huawei Technologies Proprietary

3-45
User Manual
PPS Prepaid Service Management Open Interface Chapter 3 Commonly-used MML Commands Set

Instance:

ACK: UNLOCK RCMS CARD: RETN=0, DESC="Success", CURRENTNO=00200,


FINISHED=1;

3.6.9 Verifying Recharge Card

It is to verify whether the recharge card password is correct.

Input format:

VERIFY RCMS CARD: PINNUMBER=

Input parameters:

Parameter Description Value range


A numeric string within the range of [12, 16].
PINNUMBER Recharge card PIN. [Example]
1234567890123456

Instance:

VERIFY RCMS CARD: PINNUMBER=1234567890123456

3.6.10 ACK of Verifying Recharge Card

Return this command on receipt of the command of verifying recharge card.

Output format:

ACK: VERIFY RCMS : RETN= ,DESC=


[,SERIALNO=],[USEDTIME=],[FACEVALUE=],[EXPIREDATE=],[CARDSTATUS=]
,[MSISDN=]

Output parameters:

Parameter Description Value range


Returned value of the
RETN Decimal integer.
ACK command.

Huawei Technologies Proprietary

3-46
User Manual
PPS Prepaid Service Management Open Interface Chapter 3 Commonly-used MML Commands Set

Parameter Description Value range


A string of no more than 256 characters.
0: Success
Description on the
DESC 1001: The recharge card does not exist.
returned value.
1002: Encryption failed.
1003: Failed to verify PIN.

The batch number+ serial number of this


SERIALNO The batch serial No..
batch.
USEDTIME Recharge time. The format is YYYYMMDD.
FACEVALU Face value of
Integer.
E recharge card.

EXPIREDA Expired date of


The format is YYYYMMDD.
TE recharge card.

0-Idle (Created)

CARDSTAT The state flags of 1-Active (Activated)


US recharge card. 2-Used
3-Disqualified (Locked)
A numerical string with fixed length.
The recharged PPS
MSISDN [Example]
MSISDN.
680000002

Instance:

ACK: VERIFY RCMS CARD: RETN=0, DESC=”Success”;

3.7 FNS MML Command Set

3.7.1 Creating a Batch of FN Service Subscribers

Creates FN service subscriber, loads them to SCP where they are activated.

Input format:

CREATE PPS FNSUB: MSISDN=

Input parameters:

Huawei Technologies Proprietary

3-47
User Manual
PPS Prepaid Service Management Open Interface Chapter 3 Commonly-used MML Commands Set

Parameter Description Value range


Uses numeric strings and
designates multiple numbers
The subscribers’ numbers or number ranges with "&" and
MSISDN "&&".
specified to be activated.
A single MSISDN is a numeric
string.

Instance:

CREATE PPS FNSUB: MSISDN=680080001

3.7.2 ACK of Creating a Batch of FN Service Subscribers

This prompt is returned on receipt of the command of creating a batch of FN service


subscriber.

Output format:

ACK: CREATE PPS FNSUB: RETN=, TOTALNUM=, SN=, SUCCESSNUM=,


SKIPNUM=, INEXISTNUM=, FAILNUM=,FAILMSISDN=
[,DESC=][,FINISHED=][,LASTMSISDN=]

Output parameters:

Parameter Description Value range


Returned value of the ACK
RETN Decimal integer.
command.

Huawei Technologies Proprietary

3-48
User Manual
PPS Prepaid Service Management Open Interface Chapter 3 Commonly-used MML Commands Set

Parameter Description Value range


A string of no more than 256
characters.
0: Success
1002: MSISDN are not in one
HLR
1003: MSISDN are not in one
SDU
1005: No MSISDN will be
activated
1006: The homezone,
subcosid or subspid of the
input numbers are not unique
1007: The homezone of the
input numbers doesn't provide
FN service
Description on the returned 1008: Service data doesn't
DESC
value. exist
1009: MSISDN are not
allocated in HLRs
1010: License data is missing
1011: License lines too many
1012: Decoding License failed
1013: MSISDN are not
allocated in SDUs
1014: Encrypting License
failed
1015: Too many input number
segments
1016: Service data error
1017: License is not enough
TOTALNUM Total MSISDN amount Decimal long integer type
SN Start serial No. of current batch Decimal long integer type
The amount of MSISDN
SUCCESSNUM Decimal long integer type
created successfully
The amount of MSISDN
skipped

SKIPNUM This number indicates how Decimal long integer type


many MSISDNs have already
been activated before this
operation.

Huawei Technologies Proprietary

3-49
User Manual
PPS Prepaid Service Management Open Interface Chapter 3 Commonly-used MML Commands Set

Parameter Description Value range


INEXISTNUM Nonexistent MSISDN amount Decimal long integer type
The amount of MSISDNs that
FAILNUM Decimal integer type
fails during the creating process

The list of MSISDN which


Separated with each other by
FAILMSISDN failure of creating in current
"&".
batch.
0: Unfinished
FINISHED Finished flag
1: Finished
Last successfully handled Represented by a numeric
LASTMSISDN
MSISDN. string.

Instance:

ACK: CREATE PPS FNSUB: RETN=0, DESC="Success", TOTALNUM=2, SN=0,


SUCCESSNUM=1, SKIPNUM=0, INEXISTNUM=0, FAILNUM=1, FINISHED=1,
FAILMSISDN=680000412, LASTMSISDN=680000413;

3.7.3 Deactivating FN Service Subscribers

Deactivate FN service subscriber.

Input format:

DELE PPS FNSUB: MSISDN=

Input parameters:

Parameter Description Value range


Represented with numeric
The subscriber’s number string.
MSISDN
specified to be deactivated. Only single MSISDN is
allowed.

Instance:

DELE PPS FNSUB: MSISDN=680000041

Huawei Technologies Proprietary

3-50
User Manual
PPS Prepaid Service Management Open Interface Chapter 3 Commonly-used MML Commands Set

3.7.4 ACK of Deactivating FN Service Subscribers

This prompt is returned on receipt of the command of deactivating FN service


subscriber.

Output format:

ACK: DELE PPS FNSUB: RETN=, TOTAL=, SN= , SUCCESSNUM=,SKIPNUM=,


INEXISTNUM, FAILNUM=, FAILMSISDN=
[,DESC=][,FINISHED=][,LASTMSISDN=]

Output parameters:

Parameter Description Value range


Returned value of the
RETN Decimal integer.
ACK command.
A string of no more than 256
characters.
0: Success
1005: No MSISDN will be deactivated
1006: The homezone, subcosid or
subspid of the input numbers are not
unique
1007: The homezone of the input
numbers doesn't provide FN service
1008: Service data doesn't exist
1009: MSISDN are not in one HLR
Description on the 1010: MSISDN are not allocated in
DESC
returned value. HLRs
1011: License lines too many
1012: Decoding License failed
1013: MSISDN are not allocated in
SDUs
1014: MSISDN are not in one SDU
1015: Service data error
1016: License data is missing
1017: Encrypting License failed
1018: Too many input number
segments

TOTAL Total MSISDN amount Decimal long integer type

Huawei Technologies Proprietary

3-51
User Manual
PPS Prepaid Service Management Open Interface Chapter 3 Commonly-used MML Commands Set

Parameter Description Value range


Start serial No. of current
SN Decimal long integer type
batch
SUCCESSNU The amount of MSISDN
Decimal long integer type
M deactivated successfully
Skipped MSISDN amount
This number indicates
SKIPNUM how many MSISDNs Decimal long integer type
have already been
deactivated before this
operation.
Nonexistent MSISDN
INEXISTNUM Decimal long integer type
amount
The amount of MSISDNs
FAILNUM that fails during the Decimal integer type
deactivating process.

The list of MSISDNs that


FAILMSISDN fails during the Separated with each other by "&".
deactivating process.
0: Unfinished
FINISHED Finished flag
1: Finished
Last successfully handled
LASTMSISDN Represented by a numeric string.
MSISDN.

Instance:

ACK: DELE PPS FNSUB: RETN=0, DESC="Success", TOTAL=2, SN=0,


SUCCESSNUM=1, SKIPNUM=0, INEXISTNUM=0, FAILNUM=1, FINISHED=1,
FAILMSISDN=680000412, LASTMSISDN=680000413;

3.7.5 Setting Subscriber’s FN

Set PPS subscriber’s familiarity numbers.

Input format:

SET PPS FNTELNO: MSISDN= [, FN1=] [, FN2=] [, FN3=] [, FN4=] [, FN5=] [, FN6=]
[, FN7=] [, FN8=] [, FN9=]

Huawei Technologies Proprietary

3-52
User Manual
PPS Prepaid Service Management Open Interface Chapter 3 Commonly-used MML Commands Set

Input parameters:

Parameter Description Value range


Represented by numeric
MSISDN The subscriber’s number
string

The n-th familarity number,


where n is from 1 to 9.
The FN can be MSISDN or
local PSTN number or DDD
number or IDD number. The
Each FN is represented by
format of FN is COUNTRY
FNn 1~18 digits numeric character
CODE + AREA CODE(only for
string.
local PSTN or DDD) + PHONE
NUMBER.
If this parameter is set to null ,
For example, FN1='', then this
FN will be deleted.

Instance:

SET PPS FNTELNO: MSISDN=680000001, FN1=681234567

3.7.6 ACK of Setting Subscriber’s FN

This prompt is returned on receipt of the command of setting subscriber’s FNs.

Output format:

ACK:SET PPS FNTELNO:RETN=,DESC=,USERFREE=, CHGTIMES=, CHGFEE=

Output parameters:

Parameter Description Value range


Returned value of the ACK
RETN Decimal integer.
command.

Huawei Technologies Proprietary

3-53
User Manual
PPS Prepaid Service Management Open Interface Chapter 3 Commonly-used MML Commands Set

Parameter Description Value range


A character string of 0-256 digits.
0: Success
1001: The MSISDN not belong to any
SCPNO and SDPNO.
1002: The MSISDN does not exist .
1003: The MSISDN state is valid ..
1004: The Subscriber's service of FN
not be opened.
1005: Data of the FN service does
not config .
1006: The service area does not
support FN service .
1007: The input FNs beyond limit .
1008: SUBCOSID does not exist .
1009: MSISDN is a child-card.
1010: system data is error .
1012: The input FN was already
setted,please input another FN
DESC Description of error causes number
1013: Set FN was failure, please add
money for subscribers manually .
1016: The input FNS is illegal
1020: Set FN was failure.
1102: MSISDN basic information
error.
1103: MSISDN is not in ACTIVE
mode, balance can't be modified.
1104: Balance is not enough
1106: MSISDN does not exist .
1108: Exceed maximum recharge
sum .
1111: No MSISDN Service
Information.
1113: MSISDN information
modification failed .
1200: SCU agent send back an
undefined error code

Huawei Technologies Proprietary

3-54
User Manual
PPS Prepaid Service Management Open Interface Chapter 3 Commonly-used MML Commands Set

Parameter Description Value range


The subscriber’s remain
times of modifying FN free
USERFREE Decimal integer type
of charge after this
operation

The times of modifying FN


CHGTIMES Decimal integer type
in this operation

The charge that the


CHGFEE subscriber paid for Decimal integer type
modifying FN

Instance:

ACK: SET PPS FNTELNO: RETN=0, DESC="Success", USERFREE=0,


CHGTIMES=1, CHGFEE=100;

3.7.7 Querying Subscriber’s FN

Query the specified PPS subscriber’s FNs.

Input format:

DISP PPS FNTELNO: MSISDN=

Input parameters:

Parameter Description Value range


Represented by numeric
MSISDN The subscriber’s number
string

Instance:

DISP PPS FNTELNO: MSISDN=680000000

3.7.8 ACK of Querying Subscriber’s FN

This prompt is returned on receipt of the querying subscriber’s FNs command.

Output format:

ACK: DISP PPS FNTELNO: RETN= [, DESC=] [, ATTR=, RESULT=]

Output parameters:

Huawei Technologies Proprietary

3-55
User Manual
PPS Prepaid Service Management Open Interface Chapter 3 Commonly-used MML Commands Set

Parameter Description Value range


Returned value of the ACK
RETN Decimal integer.
command
A string of no more than 256
characters.
0: Success
1006:MSISDN does not exist
1102: The system current date is not
within the period between service
start date and service stop date
1103: MSISDN account isn't opened
Description on the returned
DESC
value 1104:MSISDN doesn't open FN
service
1105: FN configuration data error
1106: The homezone of the input
numbers doesn't provide FN service
1107: Service data doesn't exist
1108: Service data error
1109: MSISDN is a child-card
The range is :
st
FN1: The 1 familiarity number
nd
FN2: The 2 familiarity number
rd
FN3: The 3 familiarity number
List of attribute, each th
FN4: The 4 familiarity number
ATTR separated from the other with
th
"&". FN5: The 5 familiarity number
USERFREE: The subscriber’s
remaining time of modifying FN free
of charge
FNAMOUNT: The maximum amount
of FN the subscriber can set
RESULT The data query result Each attribute is separated by ‘|’.

Instance:

ACK: DISP PPS FNTELNO: RETN=0, DESC="Success",


ATTR=FN1&FN2&FN3&FN4&FN5&USERFREE&FNAMOUNT,RESULT="100|101|10
2|103|104|105|3|5|";

Huawei Technologies Proprietary

3-56
User Manual
PPS Prepaid Service Management Open Interface Appendix

Appendix

A.1 Acronyms and Abbreviations


D

DP Disconnect-Pending

FN Familiarity Number

MD Medial Device
MF Monthly Fee
MML Man-Machine Language

PPS Pre-paid Service

RBT Ring Back Tone

SCP Service Control Point


SM Service Management
SMOI Service Management Open Interface
SMP Service Management Point
SMS Service Management System

TELLIN Telecommunication Intelligent Network


V
VIP Very Important Person

Huawei Technologies Proprietary

A-1
User Manual
PPS Prepaid Service Management Open Interface Appendix

A.2 SMOI Client Demo Code


/* Example program to test SMP open interface.
Author: yuqian
Date: 2001.6.20
Compile:
SUN: cc -g -lsocket -lnsl -o test-caa test-caa.c
HP: cc -lnsl -o test-caa test-caa.c
Description:
Step 1: define terminal 'GDSZ0001' in SMP
Step 2: create operator 'testcaa' with password 'testcaa' in SMP
Step 3: modify caa_ip in main function to fit with actual IP of SMP
Step 4: compile this program and run it.
*/

#define CAA_IP "10.70.115.86"


#define CAA_PORT 29999
#define TERMINAL "GDSZ0001"
#define USER "testcaa"
#define PSWD "testcaa"

#include <stdio.h>
#include <sys/socket.h>
#include <sys/types.h>
#include <netinet/in.h>
#include <arpa/inet.h>
#include <errno.h>

struct msg_head
{
char flag[4];
char len[4];
char ver[4];
char terminal[8];
char serv[8];
char dlg_id[8];
char dlg_ctrl[6];
char dlg_ext[4];
char tx_id[8];
char tx_ctrl[6];
char tx_ext[4];
} *msg;

Huawei Technologies Proprietary

A-2
User Manual
PPS Prepaid Service Management Open Interface Appendix

int make_msg(char *buf,int buflen,char *term,char *srv,


int dlgid,char *dlgctrl, int txid,char *txctrl, char *mml)
{
int msg_len,chksum_len,mml_len,i,sum_c[4];
char *p_mml,*p_chksum,*p_calc;
char *hex_asc="0123456789ABCDEF";

memset(buf,0,buflen);
msg=(struct msg_head*)buf;
mml_len=(strlen(mml)+3)&~3;
printf("mml_len=%d\n",mml_len);
msg_len=sizeof(struct msg_head)+mml_len+8;
printf("msg_len=%d\n",msg_len);
i=((char*)&msg->ver)-((char*)&msg->flag);
chksum_len=msg_len-i-8;
printf("chksum_len=%d\n",chksum_len);

if(msg_len>buflen)
return(-1);

p_mml=buf+sizeof(struct msg_head);
p_chksum=&p_mml[mml_len];
p_calc=(char*)&msg->ver;
sprintf((char*)&msg->flag ,"%-4.4s" ,"`SC`" );
sprintf((char*)&msg->len ,"%04.4x" ,chksum_len );
sprintf((char*)&msg->ver ,"%-4.4s" ,"1.00" );
sprintf((char*)&msg->terminal,"%-8.8s" ,term );
sprintf((char*)&msg->serv ,"%-8.8s" ,srv );
sprintf((char*)&msg->dlg_id ,"%08.8lx" ,dlgid );
sprintf((char*)&msg->dlg_ctrl,"%-6.6s" ,dlgctrl );
sprintf((char*)&msg->dlg_ext ,"%-4.4s" ,"0000" );
sprintf((char*)&msg->tx_id ,"%08.8lx" ,txid );
sprintf((char*)&msg->tx_ctrl ,"%-6.6s" ,txctrl );
sprintf((char*)&msg->tx_ext ,"%-4.4s" ,"0000" );
sprintf(p_mml,"%s ",mml);
for(i=0;i<4;i++) sum_c[i]=0;
for(i=0;i<chksum_len;i+=4)
{
sum_c[i%4 ]^=p_calc[i+0];
sum_c[i%4+1]^=p_calc[i+1];
sum_c[i%4+2]^=p_calc[i+2];
sum_c[i%4+3]^=p_calc[i+3];
}

Huawei Technologies Proprietary

A-3
User Manual
PPS Prepaid Service Management Open Interface Appendix

for(i=0;i<4;i++)
{
sum_c[i]=(~sum_c[i])&0x0ff;
p_chksum[i*2] = hex_asc[sum_c[i]>>4];
p_chksum[i*2+1] = hex_asc[sum_c[i]&0x0f];
}

return(msg_len);
}

int main(int argc,char *argv[])


{
int s,i,len,result;
long cur_dlg_id=1L, cur_tx_id=1L;
struct sockaddr_in saddr;
char buf[800];
char caa_ip[100];
int caa_port=CAA_PORT;
char user[100];
char pswd[100];
char terminal[100];
char mml_cmd1[100];
char *mml_cmd2="DISP PPS ACNTINFO:MSISDN=680110000";
char *mml_cmd3="LOGOUT:";

if(argc<2)
{
printf("\nCAA-TEST for SMP Open Interface"
"\nCopyright@, 1999-2001, Huawei Tech. Co., Ltd.\n"
"\nUsage: %s [-i CAA_IP] [-p CAA_PORT] [-u USER] [-s PASSWORD]
[-t TERMINAL]\n",argv[0]);
}

strcpy(caa_ip,CAA_IP);
strcpy(user,USER);
strcpy(pswd,PSWD);
strcpy(terminal,TERMINAL);

for(i=1;i<argc;i++)
{
if(strcmp(argv[i],"-i")==0) strcpy(caa_ip,argv[++i]);
else if(strcmp(argv[i],"-p")==0) caa_port=atoi(argv[++i]);
else if(strcmp(argv[i],"-u")==0) strcpy(user,argv[++i]);

Huawei Technologies Proprietary

A-4
User Manual
PPS Prepaid Service Management Open Interface Appendix

else if(strcmp(argv[i],"-s")==0) strcpy(pswd,argv[++i]);


else if(strcmp(argv[i],"-t")==0) strcpy(terminal,argv[++i]);
else
{
printf("\nInvalid parameter!"
"\nExample: %s -i 192.168.1.1 -u test -s test -t
GZSZ0001\n",argv[0]);
return(-1);
}
}

printf("\nTest Info: IP:port=%s:%d,USER=%s,PSWD=%s,TERM=%s\n",


caa_ip,caa_port,user,pswd,terminal);

s=socket(AF_INET, SOCK_STREAM, 0 );
saddr.sin_family=PF_INET;
saddr.sin_addr.s_addr=inet_addr(caa_ip);
saddr.sin_port=htons(caa_port);
result=connect(s,(struct sockaddr_in*)(&saddr),sizeof(saddr));
if(result==0)
{
sprintf(mml_cmd1,"LOGIN:USER=%s,PSWD=%s",user,pswd);
printf("\nmml1=%p,%s\n",mml_cmd1,mml_cmd1);
len=make_msg(buf,sizeof(buf),terminal,"SRVM",
cur_dlg_id,"DLGLGN",cur_tx_id++,"TXBEG",mml_cmd1);
printf("send msg1:buf=%s\nlen=%d\n",buf,len);
result=write(s,&buf,len);
if(result!=len)
{
printf("Send error!\n");
close(s);
return;
}

result=read(s,&buf,sizeof(buf));
buf[sizeof(buf)-1]='\0';
printf("result=%d,\n[%s]\n",result,buf);
if(strstr(buf,"RETN=0,")==NULL)
{
printf("Login fail!\n");
close(s);
return;
}

Huawei Technologies Proprietary

A-5
User Manual
PPS Prepaid Service Management Open Interface Appendix

printf("mml2=%p,%s\n",mml_cmd2,mml_cmd2);
len=make_msg(buf,sizeof(buf),terminal,"PPS",
cur_dlg_id,"DLGCON",cur_tx_id++,"TXBEG",mml_cmd2);
printf("send msg2:buf=%s\nlen=%d\n",buf,len);
result=write(s,&buf,len);
if(result!=len)
{
printf("Send error!\n");
close(s);
return;
}

result=read(s,&buf,sizeof(buf));
buf[sizeof(buf)-1]='\0';
printf("result=%d,\n[%s]\n",result,buf);

printf("mml3=%p,%s\n",mml_cmd3,mml_cmd3);
len=make_msg(buf,sizeof(buf),terminal,"SRVM",
cur_dlg_id,"DLGCON",cur_tx_id++,"TXBEG",mml_cmd3);
printf("send msg3:buf=%s\nlen=%d\n",buf,len);
result=write(s,&buf,len);
if(result!=len)
{
printf("Send error!\n");
close(s);
return;
}

result=read(s,&buf,sizeof(buf));
buf[sizeof(buf)-1]='\0';
printf("result=%d,\n[%s]\n",result,buf);
}
else
printf("connect result=%d,socket=%d,errno=%d\n",result,s,errno);
close(s);
}

Huawei Technologies Proprietary

A-6

Vous aimerez peut-être aussi