# isdndemo overview

isdndemo uses the NMS ISDN Messaging API to place and receive calls on an ISDN trunk. It demonstrates:

- A digital trunk application that uses the layer 3 ISDN signaling interface.

- How to use the NMS ISDN Messaging API to perform call control on a primary rate ISDN trunk.

- An application that uses non-facility associated signaling (NFAS) group configurations.

The program supports multiple T1, E1, or BRI trunks or NFAS groups. You can specify the ISDN country and signaling system variant to use with a command line option.

The default behavior of the program is to accept inbound calls. Outbound calls can be generated by specifying the appropriate command line option.

#### Featured functions

isdnReleaseBuffer, isdnSendMessage, isdnStartProtocol

#### Requirements

- One or more digital trunk interface boards

- Natural Access

- nocc.tcp file

#### Usage

isdndemo [options]

where options are one or more of the following:

Option | Meaning | Defaults
--- | --- | ---
-0 | Disables the OAM service. | OAM service is enabled.
-? | Displays the Help screen and terminates. | N/A
-a | Specifies the network access identifier (NAI) of the trunk to use. | 0
-b boardno | Specifies the board number. | 0
-d dialstring | Specifies the digit string to dial. | 1234567
-D | Specifies configurations with two or more D channels per program. Any options following -D on the command line apply to the next D channel. You can use this option several times. | One D channel is assumed.
-g group_number | Specifies the NFAS group number. Use this option instead of the -a option to run in NFAS configuration mode. | Non-NFAS configuration
-I time | Specifies the time (in milliseconds) to wait after releasing an outbound call before placing the next one. | 1000
-l | Displays log statistics. Statistics are logged to either: isdndemo_b B a A.log, where B is the board number, and A is the NAI number, or isdndemo_b B g G.log, where B is the board number and G is the NFAS group number. The log file used depends on whether the trunk is part of an NFAS group. If the trunk is part of an NFAS group, isdndemo_b B g G.log is used. If the trunk is not part of an NFAS group, isdndemo_b B a A.log is used. | No logging.
-L time | Specifies statistics logging time in seconds. | 60
-n | Runs ISDN protocol stack as NT, not as TE. | TE
-o outlines | Specifies the number of lines on which to place outbound calls. | 0
-O channel | Specifies the first B channel on which outbound calls are placed. (For example, if -O is set to 10 and -o is set to 5, outbound calls are placed on channels 10 through 14.) | 0
-p protocol | Specifies the protocol variant to run. See Protocol option allowed values for a list of valid values. | T1 boards: 24 (AT&T 4ESS) E1 and BRI boards: 11 (EuroISDN)
-Q | Receives a buffer with a message containing raw Q.931 version of the message. | No extra buffer received.
-S | Runs the demonstration program in localhost. | inproc.
-t | Demonstrates the transparent IE sending feature. Builds a codeset 7 IE (user-specific IE) and attaches it to the next ACU_CLEAR_CO (Connect message). | No indicator.
-T | Specifies the timer for the duration of an outbound call (in milliseconds), once the call has reached the CONNECTED state. | 15000
-v hex_mask | Controls which information will be printed by isdndemo. Possible values: 0x01: Program configuration 0x02: Call status messages 0x04: ACU messages 0x08: Call statistics to the screen | 3
-V | Plays voice files in CONNECTED state. | Does not play voice files.

For example, the following command line specifies USA National ISDN 2 on the second board in a system and places calls on the first 10 channels:

isdndemo -b 1 -p 20 -o 10

When isdndemo is run with no command line options, the program defaults to board 0. (The board number for each board is specified in the system configuration file.) The program automatically determines the board type, and runs one of the following protocols:

Board type | Default protocol
--- | ---
T1 | AT&T 4ESS
E1 | EuroISDN
BRI | EuroISDN

When no command-line options are specified, the program assumes that it is not placing any outbound calls but is only accepting inbound calls.

#### Protocol option allowed values

Value | Protocol
3 | France Telecom VN6
8 | Northern Telecom DMS 100
9 | INS-1500 NTT
11 | EuroISDN
15 | Australian Telecom 1
16 | QSIG
17 | Hong Kong Telephone
20 | US National ISDN 2
23 | AT&T 5ESS10
24 | AT&T 4ESS
25 | Korea
50 | Taiwan

Note: Use EuroISDN for the following countries: Austria, China, Denmark, Finland, Greece, Iceland, Ireland, Italy, Liechtenstein, Luxembourg, Netherlands, Norway, Portugal, Russia, Singapore, Spain, and Switzerland.