+ All Categories
Home > Documents > PPS SMOI User Manual Body

PPS SMOI User Manual Body

Date post: 27-Oct-2014
Category:
Upload: muhammad-rabieh
View: 145 times
Download: 2 times
Share this document with a friend
93
User Manual PPS Prepaid Service Management Open Interface Table of Contents Huawei Technologies Proprietary i 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
Transcript
Page 1: PPS SMOI User Manual Body

User Manual PPS Prepaid Service Management Open Interface Table of Contents

Huawei Technologies Proprietary

i

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

Page 2: PPS SMOI User Manual Body

User Manual PPS Prepaid Service Management Open Interface Table of Contents

Huawei Technologies Proprietary

ii

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

Page 3: PPS SMOI User Manual Body

User Manual PPS Prepaid Service Management Open Interface Table of Contents

Huawei Technologies Proprietary

iii

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

Page 4: PPS SMOI User Manual Body

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

Huawei Technologies Proprietary

1-1

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

MD:SMOI /WEBSERVER

BankBrowserBusiness HallTerminal

MD:SMOI /BankInterface

SMP

MD:SMOI /LocalServer

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.

Page 5: PPS SMOI User Manual Body

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

Huawei Technologies Proprietary

1-2

SMP MD

SMOISM Interfaceprotocol layer

Physical layer

TCP/IP

SM Interfaceprotocol layer

TCP/IP

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.

Page 6: PPS SMOI User Manual Body

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

Huawei Technologies Proprietary

1-3

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 : identifier3identifier2identifier1 spsp

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 “

Page 7: PPS SMOI User Manual Body

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

Huawei Technologies Proprietary

1-4

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.

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.

Parameter name

Parameter name consists of a maximum of 16 characters.

It is not case sensitive.

Parameter value

Parameter value is composed of an information unit or a compound of information units.

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

Compound information unit

Page 8: PPS SMOI User Manual Body

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

Huawei Technologies Proprietary

1-5

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.

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).

The value of a default parameter shall be unique within the same command. A default parameter can take different values in different commands. The same default parameter in different commands can have different values. 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=]

Page 9: PPS SMOI User Manual Body

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

Huawei Technologies Proprietary

1-6

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.

Colon (:): To separate the first parameter from the command code or command name.

Equation (=): To separate the first value from the parameter name or parameter code.

Comma (,): To separate different parameters. Ampersand (&): To separate all of the values for a parameter. Double-ampersand (&&): To separate the lower limitation value from the upper

one in a parameter’s value range. Apostrophe (‘): To separate the valued-indicator from its value. 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

Double-quote (“): To separate a string from some context in a memo sign. Space: To separate command code and to improve readability as well. Enter: To be not used in the system, but can be adopted to improve readability. (*) mark: To be used in the system, yet without special meaning. (#) mark: To be used in the system, yet without special meaning. Hyphen (-): To be used in the system, yet without special meaning.

Page 10: PPS SMOI User Manual Body

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

Huawei Technologies Proprietary

1-7

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.

Alphabet/Underline

Digit

Alphabet orUnderline

Figure 1-6 Identifier

II. Number

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

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

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

Page 11: PPS SMOI User Manual Body

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

Huawei Technologies Proprietary

1-8

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”.

Page 12: PPS SMOI User Manual Body

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

Huawei Technologies Proprietary

1-9

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

No

End

Succeed?

Send LOGIN command

Establish SOCKETconnection w ith SMP

Yes

SMP returnedsuccessfully ?

Get session ID

Transaction ID+1

Yes

No moreoperation?

Ex ecute operation

Send LOGOUT command

Yes

No

No

Operation start

Send the first MMLcommand

Parellel operation

All sent out?

Transaction ov er?

Receiv e MML ACK

Send the nex t MMLcommand

No

No

Yes

Yes

Wait until all the branches are finished

Operation end

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

Page 13: PPS SMOI User Manual Body

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

Huawei Technologies Proprietary

1-10

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:

Configuration management layer

Log and alarm monitoring management layer

Scheduling mechanism layer

Communication mechanism layer

Session, transaction mechanism layer

Application layer

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

The brief introduction to each layer is as follows:

Scheduling mechanism layer: Completes the function of scheduling and providing clock, and provides parallel operation capability.

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.

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.

Page 14: PPS SMOI User Manual Body

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

Huawei Technologies Proprietary

1-11

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.

Log and alarm monitoring management layer : This layer is above the configuration management mechanism layer,

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.

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.

Service configuration management process mainly functions to achieve the dynamic configuration, operator login, and operator management of each service.

External entity agent process is the only path through which system interacts with external entities. External entities mainly include SCP, INFORMIX database, etc.

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

Page 15: PPS SMOI User Manual Body

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

Huawei Technologies Proprietary

1-12

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.

Page 16: PPS SMOI User Manual Body

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

Huawei Technologies Proprietary

2-1

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.

Messagestart flag

Message length

Session header

Messageheader

Transactionheader

Operative informationChecksum

Messagestart flag

Message sending sequence

Messagestart flag

Message length

Session header

Messageheader

Transactionheader

Operative informationChecksum

Messagestart 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:

Page 17: PPS SMOI User Manual Body

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

Huawei Technologies Proprietary

2-2

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

Page 18: PPS SMOI User Manual Body

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

Huawei Technologies Proprietary

2-3

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:

DlgLgn: Login request DlgCon: Session hold 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.

Bit sending sequence

Session IDSession control characterReserved field

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.

Page 19: PPS SMOI User Manual Body

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

Huawei Technologies Proprietary

2-4

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).

TxBeg: Transaction start TxCon: Transaction proceed 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.

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.

SMP disables the check of checksum when interfaces are tested.

Page 20: PPS SMOI User Manual Body

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

Huawei Technologies Proprietary

2-5

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.

Page 21: PPS SMOI User Manual Body

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

Huawei Technologies Proprietary

2-6

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.

Page 22: PPS SMOI User Manual Body

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

Huawei Technologies Proprietary

2-7

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

Format of message

SMP processing

(Downlink message: websmap->caa

Uplink message: caa -> websmap )

Message start flag (4B) It is fixedly configured to 60 53 43 60 (that is, `SC`)

Message length (4B) Total length of the interval between message header and operative information. Fill with blank spaces based on practical situation.

Version number (4B)

It is used to identify the version of SMP open interface protocols

Terminal identifier (8B)

It is used to identify the front end processor and terminal of BSS/OSS.

Service name (8B) It denotes the service that operators apply for.

Message header (20B in version 1.00, 28B in version 1.01 and later ones)

Language (8B) It is contained in version 1.01 and later ones. In current version, only Chinese and English are supported.

Session ID (8B) With its value larger than 0, it is a unique identifier of the session originated by BSS/OSS. It varies with the session.

Session control character (6B)

By the use of session control character, BSS/OSS fills in DlgLgn, DlgCon respectively for login, message transmission and logout.

When BSS/OSS send the logout message, SMP will return the Message filled with DlgEnd.

Session header (18B)

Reserved field (4B) It is used for subsequent extended services.

Transaction ID (8B)

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

Transaction control character (6B)

TxBeg: Transaction start; TxCon: Transaction proceed; TxEnd: Transaction end

Transaction header (18B)

Reserved field (4B) It is used for subsequent extended services.

Operative information It denotes MML command. See Section 3 for details.

Operative information

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

Page 23: PPS SMOI User Manual Body

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

Huawei Technologies Proprietary

2-8

Format of message

SMP processing

(Downlink message: websmap->caa

Uplink message: caa -> websmap )

Checksum 8B Perform XOR for "Message header + Session header + 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.

Page 24: PPS SMOI User Manual Body

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

Huawei Technologies Proprietary

2-9

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.

Page 25: PPS SMOI User Manual Body

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

Huawei Technologies Proprietary

2-10

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.

Page 26: PPS SMOI User Manual Body

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

Huawei Technologies Proprietary

2-11

Mandatory parameter: Indispensable to the execution of a command Optional parameter: Dispensable one in execution of a command 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

Page 27: PPS SMOI User Manual Body

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

Huawei Technologies Proprietary

2-12

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.

Letter/underline

Letter/underline

Figure

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.

Page 28: PPS SMOI User Manual Body

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

Huawei Technologies Proprietary

2-13

D

Figure

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".

Page 29: PPS SMOI User Manual Body

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

Huawei Technologies Proprietary

2-14

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.

Page 30: PPS SMOI User Manual Body

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

Huawei Technologies Proprietary

2-15

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.

Establish a SOCKETconnection

Send a LOGINmessage

LOGIN success

Send a MML message

Send to IN

Return a ACKmessage to SMP

Send a MMLACK message

Release SOCKETconnection

BSS/OSS SMP IN

LOGOUT success

Send a LOGOUTmessage

Figure 2-8 Interaction between SMP and BSS/OSS

Page 31: PPS SMOI User Manual Body

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

Huawei Technologies Proprietary

2-16

2.7.2 Information Flow

No

Yes

Concurrent operations

Wait for the end of all operations

No

Yes

Yes

No

Operation starts

Send the first MML command

Send all commands or not?

Send the next MML command

Receive MML ACK messages

Transaction ends or not?

Operation ends

Start

Establsh a SOCKET connectionbetween BSS/OSS and SMP

Success or not?

Send a login message

Whether SMP succeeds inreturning a message

TransactionID+1

Execute the operation

Whether operations are notrequired

Send a logout message

Release SOCKETconnection

End

Yes

No

No

Yes

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

Note:

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

field of a message.

Page 32: PPS SMOI User Manual Body

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

Huawei Technologies Proprietary

3-1

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 "&":

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).

No parameter is allowed to use this symbol except the description says so.

II. Description of the input parameter being an integer:

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).

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)

Page 33: PPS SMOI User Manual Body

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

Huawei Technologies Proprietary

3-2

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.

Page 34: PPS SMOI User Manual Body

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

Huawei Technologies Proprietary

3-3

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. -

Page 35: PPS SMOI User Manual Body

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

Huawei Technologies Proprietary

3-4

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

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

PSWD Password for operator login. Represented by a character 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

RETN Returned value of the ACK command. Decimal integer.

Page 36: PPS SMOI User Manual Body

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

Huawei Technologies Proprietary

3-5

Parameter Description Value range

DESC Description on the returned value.

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.

1005: Invalid operator state

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

USER

The login ID for the operator who wants to exit.

Only when the login of other operators is to be cleared, is this parameter necessary.

Represented by a character string of 1 through 9 digits.

DEFAULT The login ID of the operator in the current conversation.

Page 37: PPS SMOI User Manual Body

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

Huawei Technologies Proprietary

3-6

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

RETN Returned value of the ACK command. In decimal integer

DESC Description on the returned value.

A string of no more than 256 characters.

0: Success.

1001: The current operator is not authorized to log this operator off.

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=][,CREDITLIMIT=]

Page 38: PPS SMOI User Manual Body

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

Huawei Technologies Proprietary

3-7

Input parameters:

Parameter Description Value Range

MSISDN

Specifies the MSISDN to be activated.

It supports the discrete MSISDN and the number segment.

The value range is a number string of 9 digits.

The single numbers are connected by "&", while the number segments are connected by "&&".

SERVSTOP Service Stop Date

The parameter type is date, the format is: yyyymmdd, in which:

yyyy: Year. Range: From the current year till 100 years later

mm: Month. Range: 1-12

dd: Day. Range: 1-31

DEFAULT: Specified by the service level data table.

ACNTSTOP Latest date of first use

The parameter type is date, the format is: yyyymmdd, in which:

yyyy: Year. Range: From the current year till 100 years later

mm: Month. Range: 1-12

dd: Day. Range: 1-31

DEFAULT: Specified by the service level data table.

MAXCHR Max. charge amount.

Unit: Dollar.

Decimal integer type: an integer larger than 0.

DEFAULT: Specified by the service level data table in light of diverse subscriber types.

CMFLG Call Roaming Flag

Decimal integer type. Range:

0: Not Allowed

1: Allowed

LANG Language type Decimal integer

CGSRNFLG Outgoing call restriction Flag

Decimal integer. Range:

0: No barring

2: Domestic and international toll call not available

3: International toll call not available

DEFAULT: 0

Page 39: PPS SMOI User Manual Body

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

Huawei Technologies Proprietary

3-8

Parameter Description Value Range

SUBCOSID Subscriber service type Decimal integer. Range:

1-999

CREDITLIMIT Credit Limit Decimal integer type: an integer larger than 0.

MonthlyRentID This parameter specifies the monthly rent number of the monthly rent.

Decimal integer type

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

RETN Returned value of the ACK command. Decimal integer.

Page 40: PPS SMOI User Manual Body

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

Huawei Technologies Proprietary

3-9

Parameter Description Value range

DESC Description on the returned value

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 exist.

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.

Page 41: PPS SMOI User Manual Body

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

Huawei Technologies Proprietary

3-10

Parameter Description Value range

DESC Description on the returned value

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

1039: Invalid parameter GroupID

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

SUCCNUM Accumulated number of successfully-created MSISDNs.

Decimal integer type: an integer larger than 0.

SKIPNUM Accumulated number of skipped MSISDNs.

Decimal integer type: an integer larger than 0.

FINISHED Finish Flag

Decimal integer type. Range:

0: Not Finished

1: Finished

INEXISTNUM

Number of nonexistent MSISDNs

Decimal integer type: an integer larger than 0.

LASTMSISDN Last processed MSISDN The value range is a 9-digit number

string.

Instance:

ACK: CREATE PPS MULTISUB: RETN=0, DESC="Success", SUCCNUM=1, SKIPNUM=0, INEXISTNUM=0, LASTMSISDN="680110000", FINISHED=1;

Page 42: PPS SMOI User Manual Body

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

Huawei Technologies Proprietary

3-11

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

MSISDN Designated MSISDN of deleted subscriber.

Represented with numeric 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

RETN Returned value of the ACK command. Decimal integer

DESC Description on the returned value.

A string of no more than 256 characters.

0: Success

1001: MSISDN status is incorrect

1002: The MSISDN does not exist

1003: Service level data doesn't exist

1004: Service level data error

1005: MSISDN is a child-card.

Page 43: PPS SMOI User Manual Body

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

Huawei Technologies Proprietary

3-12

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

HOMEZONE

Home zone number.

For operators of the home zone level or above, this parameter must be specified.

The operators of the home zone level can only cancel subscribers of their own zone. The parameter specified should be identical with the zone where the operator belongs.

Represented by a character string of 1 through 4 digits.

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

RETN Returned value of the ACK command. Decimal integer.

Page 44: PPS SMOI User Manual Body

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

Huawei Technologies Proprietary

3-13

Parameter Description Value range

DESC Description on the returned value

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 deleted exceeds the limit.

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.

SUCCNUM Accumulated number of successfully-created MSISDNs

Decimal integer type: an integer larger than 0.

FINISHED Finish Flag

Decimal integer type. Range:

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:

Page 45: PPS SMOI User Manual Body

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

Huawei Technologies Proprietary

3-14

Parameter Description Value range

MSISDN MSISND parameter need to be modified handset number, must is single Account.

The length is changeless. At the same time the modified account must is active status.

[Example]

100000009

TYPE TYPE parameter handset number’s target calling limit type.

The value must not equal to the source type.

[Example]

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

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

Page 46: PPS SMOI User Manual Body

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

Huawei Technologies Proprietary

3-15

Parameter Description Value range

DESC Description on the returned value.

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 exist.

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:

Page 47: PPS SMOI User Manual Body

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

Huawei Technologies Proprietary

3-16

Parameter Description Value range

MSISDN MSISDN whose roaming flag need to be modified as specified by this parameter.

Represented with numeric strings.

[Example]

100000009

TYPE The new roaming flag of MSISDN.

[Example]

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

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

Page 48: PPS SMOI User Manual Body

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

Huawei Technologies Proprietary

3-17

Parameter Description Value range

DESC Description on the returned value.

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

1002: MSISDN does not exist

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:

Page 49: PPS SMOI User Manual Body

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

Huawei Technologies Proprietary

3-18

Parameter Description Value range

HOMEZONE

Home zone number.

For operators of the home zone level or above, this parameter must be specified.

The operators of the home zone level can only cancel subscribers of their own zone. The parameter specified should be identical with the zone where the operator belongs.

Represented by a character string of 1 through 4 digits

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

RETN Returned value of the ACK command. Decimal integer.

Page 50: PPS SMOI User Manual Body

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

Huawei Technologies Proprietary

3-19

Parameter Description Value range

DESC Description of error causes

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 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

TOTALNUM Total number of PPS subscribers that meet the deletion conditions

Decimal integer type

MSISDN

The list of PPS subscriber numbers that meet the deletion conditions, each separated by "&" from the other.

The value range is a 3-digit number string.

FINISHED Finish Flag

Decimal integer type. Range:

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

Page 51: PPS SMOI User Manual Body

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

Huawei Technologies Proprietary

3-20

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 MSISDN to be queried as specified by this parameter. Represent with numeric strings.

ATTR The subscriber basic service attributes to be queried as specified by this parameter.

The subscriber service attribute is a set of the following identifiers:

One of the following identifiers 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

RETN Returned value of the ACK command. Decimal integer.

Page 52: PPS SMOI User Manual Body

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

Huawei Technologies Proprietary

3-21

Parameter Description Value range

DESC Description on the returned value

A string of no more than 256 characters.

0: Success

1001:MSISDN does not exist

1002:MSISDN is a child-card, it's mother-card is

1003:Service level data doesn't exist

1004:System data lost

1005:Service level data error

ATTR The subscriber basic service attributes to be queried as specified by this parameter.

The subscriber service attribute is a set of the following identifiers:

One of the following identifiers can be specified or multiple identifiers can be specified with "&" to query multiple attributes.

RESULT The data query result. Each attribute is separated by '|'.

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

MSISDN This parameter specifies the MSISDN that needs to be released from the blacklist.

Represented with numeric strings.

Page 53: PPS SMOI User Manual Body

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

Huawei Technologies Proprietary

3-22

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

RETN Returned value of the ACK command. Decimal integer.

DESC Description on the returned value

A string of no more than 256 characters.

0: Releasing blacklist succeeded.

1002: Mobile subscriber is not blacklisted.

1005: Subscriber does not exist

1015: The current system date is 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=

Page 54: PPS SMOI User Manual Body

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

Huawei Technologies Proprietary

3-23

Input parameters:

Parameter Description Value range

MSISDN Only single MSISDN is allowed.

Mandatory, digit character string with fixed length.

SUBCOS Service type. Mandatory, non-negative 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

RETN Returned value of the ACK command. Decimal integer.

Page 55: PPS SMOI User Manual Body

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

Huawei Technologies Proprietary

3-24

Parameter Description Value range

DESC Description on the returned value, a string of no more than 256 characters.

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.

1007: MSISDN is child card.

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.

DESC Description on the returned value, a string of no more than 256 characters.

1014: Subscriber's balance is not enough and the mother-card's balance is not enough too.

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";

Page 56: PPS SMOI User Manual Body

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

Huawei Technologies Proprietary

3-25

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

MSISDN whose balance needs to be modified as specified by this parameter.

Represented with numeric strings.

INCRMENT Increment to be modified.Represented with decimal integers, 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

RETN Returned value of the ACK command. Decimal integer.

Page 57: PPS SMOI User Manual Body

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

Huawei Technologies Proprietary

3-26

Parameter Description Value range

DESC Description on the returned value

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

1004: Service level data doesn't exist

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

ORGBALANCE Original balance Decimal integer type

LASTBALANCE Last balance Decimal integer type

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:

Page 58: PPS SMOI User Manual Body

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

Huawei Technologies Proprietary

3-27

Parameter Description Value range

MSISDN

MSISDN whose validity period needs to be modified as specified by this parameter.

Represented with numeric strings.

INCRMENT Increment to be modified. Represented with decimal integers, which can be either positive numbers or negative numbers.

FLAG Base on 0 or 1 the validity be modified can be 0 or 1

Base on 0 or 1 the validity be 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

RETN Returned value of the ACK command. Decimal integer.

Page 59: PPS SMOI User Manual Body

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

Huawei Technologies Proprietary

3-28

Parameter Description Value range

DESC Description on the returned value

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.

1005: The modified validity period 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=

Page 60: PPS SMOI User Manual Body

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

Huawei Technologies Proprietary

3-29

Input parameters:

Parameter Description Value range

OLDMSISDN This parameter specifies the MSISDN to be modified,

Represented with numeric strings.

NEWMSISDN This parameter specifies the last MSISDN.

Represented with numeric 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

RETN Returned value of the ACK command. Decimal integer.

Page 61: PPS SMOI User Manual Body

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

Huawei Technologies Proprietary

3-30

Parameter Description Value range

DESC Description on the returned value, a string of no more than 256 characters.

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 is different from that of the old number.

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:

Page 62: PPS SMOI User Manual Body

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

Huawei Technologies Proprietary

3-31

CHANGE PPS BALANCE: MSISDN=,INCRMENT=

Input parameters:

Parameter Description Value range

MSISDN MSISDN whose balance needs to be modified as specified by this parameter.

Represented with numeric strings

INCRMENT Increment to be modified.

Represented with decimal integers, which can be either 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

RETN Returned value of the ACK command. In decimal integer

Page 63: PPS SMOI User Manual Body

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

Huawei Technologies Proprietary

3-32

Parameter Description Value range

DESC Description on the returned value.

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 missing.

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

ORGBALANCE The balance before modification. Decimal integer type.

LASTBALANCE The balance after modification. Decimal integer type.

Instance

ACK:CHANGE PPS BALANCE: RETN=0, DESC="Subscriber balance modification succeeds", ORGBALANCE=1, LASTBALANCE=2;

Page 64: PPS SMOI User Manual Body

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

Huawei Technologies Proprietary

3-33

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

MSISDN The subscribers’ numbers specified to be activated.

Uses numeric strings and designates multiple numbers or number ranges with "&" and "&&".

A single MSISDN is a numeric string.

TYPE The type of the GPRS subscriber.

1:GPRS-MMS

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

RETN Returned value of the ACK command. Decimal integer

Page 65: PPS SMOI User Manual Body

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

Huawei Technologies Proprietary

3-34

Parameter Description Value range

DESC

Description on the returned value, 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 allocated in HLRs

1004: MSISDN are not in one HLR

1005:No MSISDN will be activated

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: License is not enough

1012: Encrypting License failed

1013: Too many input number segments

SUCCESSNUM The amount of MSISDN created successfully Decimal long integer type

SKIPNUM

The amount of MSISDN skipped.

This number indicates how many MSISDNs have already been activated before this operation.

Decimal long integer type

INEXISTNUM Nonexistent MSISDN amount Decimal long integer type

FINISHED Finished flag

0: Unfinished 1: Finished

LASTMSISDN Last successfully handled MSISDN. Represented by a numeric string.

Instance:

ACK: CREATE PPS GPRSMSUB: RETN=0, DESC="Success", SUCCNUM=100, SKIPNUM=0, INEXISTNUM=0, LASTMSISDN=680110009, FINISHED=1

Page 66: PPS SMOI User Manual Body

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

Huawei Technologies Proprietary

3-35

3.5.3 Deactivating GPRS Service Subscribers

Deactivate GPRS service subscriber.

Input format:

DELE PPS GPRSMSUB: MSISDN=,TYPE=

Input parameters:

Parameter Description Value Range

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

Only single MSISDN is allowed.

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

RETN Returned value of the ACK command. Decimal integer

Page 67: PPS SMOI User Manual Body

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

Huawei Technologies Proprietary

3-36

Parameter Description Value range

DESC Description on the returned value allocated in HLRs

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

1005:No MSISDN will be deactivated

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

SUCCESSNUM The amount of MSISDN deactivated successfully Decimal long integer type

SKIPNUM Skipped MSISDN amount

Decimal long integer type

This number indicates how many MSISDNs have already been deactivated before this operation.

INEXISTNUM Nonexistent MSISDN amount Decimal long integer type

FINISHED Finished flag. 0: Unfinished

1: Finished

LASTMSISDN Last successfully handled MSISDN

Represented by a numeric string.

Instance:

ACK: DEL PPS GPRSMSUB: RETN=0, DESC="Success", SUCCNUM=100, SKIPNUM=0, INEXISTNUM=0, LASTMSISDN=680110009, FINISHED=1

Page 68: PPS SMOI User Manual Body

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

Huawei Technologies Proprietary

3-37

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

MSISDN This parameter specifies the handset numbers to be charged.

Represented with numeric strings.

This parameter should not be a complex parameter.

VALUE This parameter specifies the account to be added to subscriber’s balance.

Represented with numeric strings from 1 to 2147483647, including 1 and 2147483647.

This parameter should not be a complex parameter.

BATCHNO This parameter specifies the batch number of charge cards.

Represented with 10-digit or alphabetic strings.

This parameter should not be a complex parameter.

SERIALNO This parameter specifies the serial number of charge card.

Represented with 10-digit numeric strings.

This parameter should not be a complex parameter.

CARDPIN This parameter specifies the passwords of the charge cards to be charged.

It represented with numeric string.

This parameter should not be a complex parameter.

Page 69: PPS SMOI User Manual Body

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

Huawei Technologies Proprietary

3-38

Parameter Description Value range

CHRGTYPE This parameter specifies the type of the charge.

Represented with 1-digit numeric string.

3: PPS subscriber manual recharge

4: ATM recharge

5: STK recharge

6: Tele-banking recharge

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:

Page 70: PPS SMOI User Manual Body

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

Huawei Technologies Proprietary

3-39

Parameter Description Value range

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

DESC Description on the returned value.

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

1008: Exceed maximum recharge sum

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

Page 71: PPS SMOI User Manual Body

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

Huawei Technologies Proprietary

3-40

Parameter Description Value range

DESC Description on the returned value.

1016: MSISDN has been in blacklist

1017: Mobile phone password not correct

1018: MSISDN's type is wrong

1019: Balance of recharging card is abnormal

1020: SIM card is lost

1025: MSISDN service is stopped

1100: SCP agent sends back an undefined error code.

ATTR List of queried information attribute names.

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 account specified to be added.

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.

Page 72: PPS SMOI User Manual Body

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

Huawei Technologies Proprietary

3-41

Parameter Description Value range

RESULT Data query result.

Each attribute value is separated from the other with "|".

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|20041201|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

SEQUENCE SNs. Made up of 11-digit character strings

ATTR

The database list area fields (or a default value) to be returned

Each list area is separated from the other with “&”.

DEFAULT: All database fields. The field name is AccountNumber, Sequence, BatchNo, RunningNo, SerialNo, Object, CreateDate, ExpireDate, FaceValue, CurrencyType, ValidityPeriod, HotCardFlag, TradeTime, MSISDN, AccountPinNumber, TradeType, Distributor, CardSpId, CardCosId, ShippedDate.

Page 73: PPS SMOI User Manual Body

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

Huawei Technologies Proprietary

3-42

Instance:

QUERY CHRG CARDSTAT: SEQUENCE=12345665432, ATTR=”MSISDN& Sequence&TradeTime&TradeType&BatchNo&SerialNo&FaceValue&ValidityPeriod&CardSpId&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.

DESC Description on the returned value

A string of no more than 256 characters.

0: Query success

1002: Charge card does not exist

1003: Recharge card hasn’t corresponding SDP

ATTR List of the query result of attribute names

Each attribute name is separated from the other with “&”.

Only when RETN is a success does this parameter exist.

When RETN is other values, this parameter does not exist.

RESULT Data query result

Each record is separated from the other with “&” and each attribute value in the record is separated from the other with “|”.

Only when RETN is a success does this parameter exist.

When RETN is other values, this parameter does not exist.

ROWNUM Number of records returned in one time

Short integer type

Only when RETN is a success does this parameter exist.

When RETN is other values, this parameter does not exist.

Page 74: PPS SMOI User Manual Body

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

Huawei Technologies Proprietary

3-43

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|10| 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

BATCHNO

This parameter specifies the batch number to be locked.

This parameter should not be a complex parameter.

Represented with 6-digit or alphabetic strings.

STARTNO

This parameter specifies the start serial number of recharge card.

This parameter should not be a complex parameter.

Represented with 5-digit numeric strings.

ENDNO

This parameter specifies the end serial number of recharge card.

This parameter should not be a complex parameter.

Represented with 5-digit numeric strings.

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=

Page 75: PPS SMOI User Manual Body

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

Huawei Technologies Proprietary

3-44

Output parameters:

Parameter Description Value range

RETN Returned value of the ACK command. Decimal integer.

DESC Description on the returned value.

A string of no more than 256 characters.

0: Recharge card lock success

1001: This batch of recharge cards does not exist.

1002: This batch of recharge 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

BATCHNO

This parameter specifies the batch number to be locked.

This parameter should not be a complex parameter.

Represented with 6-digit or alphabetic strings.

Page 76: PPS SMOI User Manual Body

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

Huawei Technologies Proprietary

3-45

Parameter Description Value range

STARTNO

This parameter specifies the start serial number of recharge card.

This parameter should not be a complex parameter.

Represented with 5-digit numeric strings

ENDNO

This parameter specifies the end serial number of recharge card.

This parameter should not be a complex parameter.

Represented with 5-digit numeric strings

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

RETN Returned value of the ACK command. Decimal integer.

DESC Description on the returned value

A string of no more than 256 characters.

0: Recharge card lock success

1001: Recharge card has not been locked.

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.

Page 77: PPS SMOI User Manual Body

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

Huawei Technologies Proprietary

3-46

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

PINNUMBER Recharge card PIN.

A numeric string within the range of [12, 16].

[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

RETN Returned value of the ACK command. Decimal integer.

Page 78: PPS SMOI User Manual Body

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

Huawei Technologies Proprietary

3-47

Parameter Description Value range

DESC Description on the returned value.

A string of no more than 256 characters.

0: Success

1001: The recharge card does not exist.

1002: Encryption failed.

1003: Failed to verify PIN.

SERIALNO The batch serial No.. The batch number+ serial number of this batch.

USEDTIME Recharge time. The format is YYYYMMDD.

FACEVALUE

Face value of recharge card. Integer.

EXPIREDATE

Expired date of recharge card. The format is YYYYMMDD.

CARDSTATUS

The state flags of recharge card.

0-Idle (Created)

1-Active (Activated)

2-Used

3-Disqualified (Locked)

MSISDN The recharged PPS MSISDN.

A numerical string with fixed length.

[Example]

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:

Page 79: PPS SMOI User Manual Body

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

Huawei Technologies Proprietary

3-48

Parameter Description Value range

MSISDN The subscribers’ numbers specified to be activated.

Uses numeric strings and designates multiple numbers or number ranges with "&" and "&&".

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

RETN Returned value of the ACK command. Decimal integer.

Page 80: PPS SMOI User Manual Body

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

Huawei Technologies Proprietary

3-49

Parameter Description Value range

DESC Description on the returned value.

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

1008: Service data doesn't 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

SUCCESSNUM The amount of MSISDN created successfully Decimal long integer type

SKIPNUM

The amount of MSISDN skipped

This number indicates how many MSISDNs have already been activated before this operation.

Decimal long integer type

Page 81: PPS SMOI User Manual Body

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

Huawei Technologies Proprietary

3-50

Parameter Description Value range

INEXISTNUM Nonexistent MSISDN amount Decimal long integer type

FAILNUM The amount of MSISDNs that fails during the creating process Decimal integer type

FAILMSISDN The list of MSISDN which failure of creating in current batch.

Separated with each other by "&".

FINISHED Finished flag 0: Unfinished

1: Finished

LASTMSISDN Last successfully handled MSISDN.

Represented by a numeric 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

MSISDN The subscriber’s number specified to be deactivated.

Represented with numeric string.

Only single MSISDN is allowed.

Instance:

DELE PPS FNSUB: MSISDN=680000041

Page 82: PPS SMOI User Manual Body

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

Huawei Technologies Proprietary

3-51

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

RETN Returned value of the ACK command. Decimal integer.

DESC Description on the returned value.

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

1010: MSISDN are not allocated in 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

Page 83: PPS SMOI User Manual Body

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

Huawei Technologies Proprietary

3-52

Parameter Description Value range

SN Start serial No. of current batch Decimal long integer type

SUCCESSNUM

The amount of MSISDN deactivated successfully Decimal long integer type

SKIPNUM

Skipped MSISDN amount

This number indicates how many MSISDNs have already been deactivated before this operation.

Decimal long integer type

INEXISTNUM Nonexistent MSISDN amount Decimal long integer type

FAILNUM The amount of MSISDNs that fails during the deactivating process.

Decimal integer type

FAILMSISDN The list of MSISDNs that fails during the deactivating process.

Separated with each other by "&".

FINISHED Finished flag 0: Unfinished

1: Finished

LASTMSISDN Last successfully handled MSISDN. Represented by a numeric string.

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=]

Page 84: PPS SMOI User Manual Body

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

Huawei Technologies Proprietary

3-53

Input parameters:

Parameter Description Value range

MSISDN The subscriber’s number Represented by numeric string

FNn

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 format of FN is COUNTRY CODE + AREA CODE(only for local PSTN or DDD) + PHONE NUMBER.

If this parameter is set to null , For example, FN1='', then this FN will be deleted.

Each FN is represented by 1~18 digits numeric character string.

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

RETN Returned value of the ACK command. Decimal integer.

Page 85: PPS SMOI User Manual Body

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

Huawei Technologies Proprietary

3-54

Parameter Description Value range

DESC Description of error causes

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 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

Page 86: PPS SMOI User Manual Body

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

Huawei Technologies Proprietary

3-55

Parameter Description Value range

USERFREE

The subscriber’s remain times of modifying FN free of charge after this operation

Decimal integer type

CHGTIMES The times of modifying FN in this operation Decimal integer type

CHGFEE The charge that the subscriber paid for modifying FN

Decimal integer type

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

MSISDN The subscriber’s number Represented by numeric 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:

Page 87: PPS SMOI User Manual Body

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

Huawei Technologies Proprietary

3-56

Parameter Description Value range

RETN Returned value of the ACK command Decimal integer.

DESC Description on the returned value

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

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

ATTR List of attribute, each separated from the other with "&".

The range is :

FN1: The 1st familiarity number

FN2: The 2nd familiarity number

FN3: The 3rd familiarity number

FN4: The 4th familiarity number

FN5: The 5th 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|102|103|104|105|3|5|";

Page 88: PPS SMOI User Manual Body

User Manual PPS Prepaid Service Management Open Interface Appendix

Huawei Technologies Proprietary

A-1

Appendix

A.1 Acronyms and Abbreviations

D

DP Disconnect-Pending

F

FN Familiarity Number

M

MD Medial Device

MF Monthly Fee

MML Man-Machine Language

P

PPS Pre-paid Service

R

RBT Ring Back Tone

S

SCP Service Control Point

SM Service Management

SMOI Service Management Open Interface

SMP Service Management Point

SMS Service Management System

T

TELLIN Telecommunication Intelligent Network

V

VIP Very Important Person

Page 89: PPS SMOI User Manual Body

User Manual PPS Prepaid Service Management Open Interface Appendix

Huawei Technologies Proprietary

A-2

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;

Page 90: PPS SMOI User Manual Body

User Manual PPS Prepaid Service Management Open Interface Appendix

Huawei Technologies Proprietary

A-3

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];

}

Page 91: PPS SMOI User Manual Body

User Manual PPS Prepaid Service Management Open Interface Appendix

Huawei Technologies Proprietary

A-4

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]);

Page 92: PPS SMOI User Manual Body

User Manual PPS Prepaid Service Management Open Interface Appendix

Huawei Technologies Proprietary

A-5

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;

}

Page 93: PPS SMOI User Manual Body

User Manual PPS Prepaid Service Management Open Interface Appendix

Huawei Technologies Proprietary

A-6

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);

}


Recommended