Table Of Contents
MML Command Overview
MML Command Guidelines
MML Basics
Starting an MML Session
Saving an MML Session for Review
Stopping an MML Session
Killing an MML Session
Killing an Orphan Configuration Session
Getting Help
MML on High-Availability Systems
MML Command Conventions
Backus-Naur Conventions
Bellcore TL1 Conventions
Wildcards in MML Commands
MML Messages
MML Status Messages
MML Error Codes
Impact of MML Commands on Cisco PGW 2200 Softswitch Call Processing
MML Command Overview
Revised: October 19, 2009, OL-1116-10
This guide describes each of the Man-Machine Language (MML) commands you can use with the Cisco PGW 2200 Softswitch . Use MML to configure your Cisco PGW 2200 Softswitch, add components to your system, retrieve information about system components, and perform logging and tracing.
•
For information on using MML commands for provisioning, see the Cisco PGW 2200 Softswitch Release 9 Provisioning Guide at
http://www.cisco.com/en/US/docs/voice_ip_comm/pgw/9/provisioning/guide/prvgde.html
or the Cisco PGW 2200 Softswitch Release 9.8 Provisioning Guide at
http://www.cisco.com/en/US/docs/voice_ip_comm/pgw/9.8/Provisioning/Guide/9provGde.html
•
For more information on using MML commands for maintenance and troubleshooting, see the Cisco PGW 2200 Softswitch Release 9 Operations, Maintenance, and Troubleshooting Guide at
http://www.cisco.com/en/US/partner/docs/voice_ip_comm/pgw/9/maintenance/guide/omtguide.html
This chapter describes MML command syntax, conventions used with MML commands, and responses expected from MML. It includes the following sections:
•
MML Command Guidelines
•
MML Basics
•
MML on High-Availability Systems
•
MML Command Conventions
•
Wildcards in MML Commands
•
MML Messages
•
Impact of MML Commands on Cisco PGW 2200 Softswitch Call Processing
MML Command Guidelines
MML commands use the following syntax:
command_name:[target][, target][, target. . .][:Parameter_List][;comments]
When entering MML commands, remember the following:
•
MML component names must be 16 characters or shorter.
•
In general, MML commands are not case sensitive, but some are (ExtCOT is an example of a case-sensitive command). However, property values are case sensitive.
•
Neither keywords nor value strings need to be enclosed in quotation marks, except where specified in this guide.
•
Use only one MML command on each line.
•
Anything entered after a semicolon (;) is treated as a comment. This is primarily useful for MML command scripts.
•
Do not use punctuation (such as the period character) for target names; for example, do not use test.log as a logging destination.
•
Create an ASCII text file for batch processing of provisioning commands. For more information about performing batch provisioning, see the Cisco PGW 2200 Softswitch Release 9 Provisioning Guide at
http://www.cisco.com/en/US/partner/docs/voice_ip_comm/pgw/9/provisioning/guide/prvgde.html
Timesaver
MML maintains a history buffer of all MML commands you enter during an MML session. To repeat your last MML command, press the up arrow at the MML prompt to redisplay the command, and press Enter. Press the up and down arrow keys to scroll through all commands in the history buffer. To modify and re-enter a command, use the up arrow to display the command, and then edit the command using the keyboard. Press Enter to execute the command.
While viewing a lengthy response to an MML command, press the spacebar to display the next screen of output text, or press Enter to display the next line.
MML Basics
You must start an interactive MML session before you can use MML commands for provisioning, information retrieval, or troubleshooting. As many as 12 MML sessions can be open at a time, but only one provisioning session is permitted.
If an MML provisioning session is inactive for 30 minutes, a warning is issued by the Cisco PGW 2200 Softswitch. After 5 additional minutes of inactivity, the session is terminated.
Note
It is possible to run only one current MML provisioning session on the Cisco PGW 2200 Softswitch, but other administrative commands can be run from one or more additional MML sessions. However, you should avoid running simultaneous MML sessions because doing so can affect performance.
Starting an MML Session
Perform the following steps to start an MML session:
Step 1
Log in to the Cisco PGW 2200 Softswitch host computer from a terminal.
Caution 
Do not log in as UNIX root; if you attempt to start an MML session as the root user, the Cisco PGW 2200 Softswitch displays a message and MML fails to start.
Step 2
At a UNIX command prompt, type:
The Cisco PGW 2200 Softswitch responds with the status of your MML session.
If your UNIX prompt looks similar to the following, your session has started successfully, and you can begin entering MML commands.
If another MML session is running, you receive a message similar to the following:
MGC% mml1: Already in use
Failure to run MML, reason=Entry was already present.
Step 3
To start another MML session, enter the following command:
The Cisco PGW 2200 Softswitch responds with an MML session prompt.
Note
The MML command mml -s 2 starts the second MML session, and mml -s 3 starts the third session. There can be as many as 12 MML sessions open at a time.
Saving an MML Session for Review
To save a provisioning session for later review, perform the following procedure:
Step 1
Create a log file of the provisioning session, cie3, for later review, by entering the following command:
mml> diaglog:pom-log-session-cie3:start
All MML commands entered are now logged to the mml.log file located in /opt/CiscoMGC/var/log directory.
Step 2
Stop logging the provisioning session, cie3, by entering the following command:
mml> diaglog:pom-log-session-cie3:stop
The log file of the provisioning session can now be reviewed using an ASCII text editor.
Step 3
Create a new configuration, cie3-prov, by entering the following command:
mml> prov-sta::srcver="new",dstver="cie3-prov"
Stopping an MML Session
To stop an MML session, enter the quit command:
Killing an MML Session
If an MML session cannot be stopped with the quit command, or if another MML session is running, you can kill the session by performing the following steps:
Step 1
Close MML by entering the quit command, or telnet to the host server where the MML session is running.
Step 2
To kill an MML session started by another user, log in as root.
Step 3
At the UNIX prompt, enter the following command:
va-purple% ps -ef | grep mml
The host server responds with information similar to the following:
MGCUSR 17999 17989 0 13:30:44 pts/2 0:00 mml
Step 4
Locate the process entry for the MML session you want to kill, and determine the process number of the session. In the above example, the process number is 17999. Enter the following command:
where: xxxxx is the process number of the MML session.
Step 5
To kill multiple MML sessions, enter a UNIX kill command for each MML session. Each session will have a unique process number.
Killing an Orphan Configuration Session
To kill a nonfunctioning configuration session, enter the prov-stp command at the MML prompt.
Note that this command does not activate the new configuration.
Getting Help
To display a list of all MML commands, enter HELP at the MML prompt.
To get help for a specific command, enter help:<command> at the MML prompt. The following example shows the help available for clr-tcap-trans:
MGC mml> help:clr-tcap-trans
CLR-TCAP-TRANS -- Clear TCAP Transactions
-----------------------------------------
Purpose: This MML command clears all transaction capabilities
application part (TCAP) transactions that are older than
Format: clr-tcap-trans::T=<number>
Description: * number -- The time period, in seconds, after which you
want to clear TCAP transactions.
Example: The MML command shown in the following example clears all
TCAP transactions that are older than 60 seconds:
mml> CLR-TCAP-TRANS::T=60
Media Gateway Controller - MGC-01 2000-01-12 15:19:51
MML on High-Availability Systems
To check the state of a high-availability system, you must be using MML on the active server. Although MML on the standby system shows checkpointed information, the updating is not instantaneous, and it is not obvious which information gets checkpointed and which does not.
To determine which server is active and which is standby, use the rtrv-ne command.
MML Command Conventions
Conventions used in MML commands are described in this section.
Backus-Naur Conventions
MML commands use the Backus-Naur symbols shown in Table 1-1.
Table 1-1 MML Backus-Naur Conventions
Symbol
|
Description
|
|
|
A pipe indicates that the preceding symbol or the succeeding symbol can occur, but not both in succession.
|
[ ]
|
These brackets enclose an optional parameter.
|
{ | }
|
Either the preceding symbol or the succeeding symbol can occur, but not both in succession. There can be more than two symbols and pipes.
|
< >
|
This symbol encloses an identifier to be replaced by the user with appropriate data.
|
Bellcore TL1 Conventions
The structure of MML is based on the Telcordia (Bellcore) TL1 standard (TR-NWT-831, Operations Application Message-Operations Applications Messages, Issue 3). Therefore, MML commands can be interpreted and monitored through a network's TL1 interface. The TL1 symbols shown in Table 1-2 are used in MML.
Table 1-2 MML Bellcore TL1 Conventions
Symbol
|
Description
|
:
|
A parameter separator.
|
::
|
An empty parameter block.
|
&
|
Arguments are grouped together so that one parameter can convey several arguments.
|
;
|
End of command (optional). Anything on the same line after this symbol is treated as a comment.
|
Wildcards in MML Commands
Some MML commands support the use of wildcards. For software Release 7.4 and earlier, wildcards are available only as either postfix or prefix to MML names. The syntax for using wildcards with MML commands is as follows:
<MML command name>:<*><part of TID MML name><*>:[optional parameters]
For example, there are two ways to retrieve administrative states of trunk groups using wildcards:
•
RTRV-ADMIN-STATE:TG* retrieves the administrative state of all trunk groups with MML names starting with "TG".
•
RTRV-ADMIN-STATE:*GP retrieves the administrative state of all trunk groups with MML names ending with "GP".
The following commands support wildcards:
•
ACK-ALM
•
RTRV-ADMIN-STATE
•
RTRV-DEST
•
RTRV-DCHAN
•
RTRV-C7LNK
•
RTRV-IPLNK
•
RTRV-TC
•
SET-ADMIN-STATE
•
SET-DEST-STATE
MML Messages
Messages that MML can display are described in this section.
MML Status Messages
After you enter an MML command, the system performs the task you requested and returns a status message. Table 1-3 lists the MML status messages and descriptions.
.
Table 1-3 MML Status Messages
Status
|
Meaning
|
Definition
|
COMPLD
|
Completed
|
MML received a response from the subsystem on which it performed the action.
Note A completed response does not always signify successful completion. A completed response can be returned on invalid components, such as alarms.
|
RTRV
|
Retrieve
|
MML is attempting to retrieve the contents specified.
|
SUCC
|
Successful
|
Successful completion.
|
SWDC
|
Waiting for dependent processes to start
|
Status message—Waiting for dependent processes to start.
|
SWDT
|
Waiting for dependent processes to stop
|
Status message—Waiting for dependent processes to stop. This is not an error. Enter the rtrv-softw command to see if the dependent processes have stopped.
|
MML Error Codes
MML displays error codes if a command cannot be performed. Table 1-4 lists the MML error codes and descriptions.
Table 1-4 MML Error Message Descriptions
Error Code
|
Meaning
|
Definition
|
DENY
|
Command denied
|
The command is recognized, but the system does not allow you to perform the requested function.
|
ICNV
|
Input command not valid
|
The MML command is not recognized.
|
IDNV
|
Input data not valid
|
An unknown parameter was entered.
Example:
Media Gateway Controller 2000-01-03 15:22:48
/* Input, Data Not Valid */
|
IIDV
|
Invalid data parameter
|
An unknown parameter was entered. An incorrect parameter name has been used in the command, or a value has been entered incorrectly.
Note A string value must be surrounded by quotes, and an integer value must not be surrounded by quotes.
Example:
Media Gateway Controller 2000-01-03 15:22:48
/* Input, Data Not Valid */
|
IISP
|
Input syntax error
|
Incorrect syntax was used. A semicolon or comma has been used incorrectly when entering the command.
Example:
mml> reset-cic:dpc9,cic22
Media Gateway Controller - MGC-01 2000-01-12
/* Input, Syntax Error */
|
IITA
|
Invalid target
|
The requested operation cannot be performed on the network element component, or the component does not exist in the system.
Example:
mml> reset-cic:dpc9:CIC=10
Media Gateway Controller - MGC-01 2000-01-12
15:19:51
/* Input, Invalid Target */
|
IPRM
|
Input parameter missing
|
An expected parameter cannot be found.
|
SABT
|
Status abort
|
The command did not finish in the time allocated.
|
SCNF
|
Status not found
|
There are problems with the engine.
|
SNVS
|
State not in valid state
|
The requested operation failed because the component is not configured to accept the operation. It is possible that the component is already performing the operation or is already in the desired state.
|
SNSP
|
State not supported
|
This operation is not supported by the component.
|
SROF
|
Status requested operation failed
|
The requested operation failed on the component.
Example:
mml> query-cic:dpc1:CIC=1,rng=1
Media Gateway Controller - MGC-01 2002-04-26
11:35:51
/* Range is not allowed*/
|
Impact of MML Commands on Cisco PGW 2200 Softswitch Call Processing
Some MML commands impact Cisco PGW 2200 Softswitch call processing when executed. A small number of these commands can cause the system to go into an overload condition and limit the number of incoming calls the Cisco PGW 2200 Softswitch is able to process. For this reason, some MML commands should be issued only during periods of minimal call traffic. The performance impact of some MML commands also varies with the number of data objects being accessed.
MML commands have been divided into categories depending on their impact on system performance. See the "Performance Impact Category" section of a specific MML command for its performance category and for additional guidelines designed to minimize performance impact. MML performance impact categories are defined as follows:
•
Category A—These commands have minimal impact on system performance. Multiple MML sessions are acceptable, and a maximum of four concurrent MML sessions is recommended.
•
Category B—These commands have a moderate impact on system performance, because CPU utilization is high while these commands are executing. A maximum of one active MML session is recommended.
•
Category C—These commands are similar to those in Category B and have a moderate impact on system performance. However, CPU utilization is higher than for Category B because these commands are executed while the system is simultaneously handling call traffic.
•
Category D—These commands have a severe impact on system performance and should be issued only during a maintenance period when call traffic is minimal.