# ISDN Software components

ISDN is implemented differently around the world. For this reason, Dialogic provides several variants of its ISDN Software for different countries or regions. The package for a variant contains the software modules you need to allow a board to communicate on a T1, E1, or BRI trunk in the countries that use that variant.

The ISDN Software package for a given variant contains:

- A readme file.

- ISDN Software function libraries for NaturalAccess.

- Header files.

- Downloadable object modules containing the ISDN protocol stack software.

- Board keyword files.

- Demonstration programs, with their source code files and makefiles.

- A trunk control program (TCP).

- Several parameter files, in binary format (.pf files) and in ASCII format (.par files). These files contain ISDN Software parameters. Certain parameters in these files are set to values specific to a certain country or variant.

## readme file

The readme file is an ASCII text file that contains release information that does not appear in other documentation. The file is named readme_isdn.txt. Refer to this file to learn where the ISDN Software components are located after installation.

## ISDN Software function libraries

The ISDN Software function libraries run on the host computer. The application program uses them to interact with the ISDN protocol stacks running on the board and to communicate with the NCC API. The following table lists the NaturalAccess library names for Windows and UNIX:

Operating system | Libraries
--- | ---
Windows | isdnapi.lib, isdnapi.dll, nccisdn.lib, nccisdn.dll
UNIX | libnccisdn.so, libisdnapi.so

## Header files

The following header files are supplied with ISDN Software and are used in a channelized configuration:

File name | Description
--- | ---
isdnval.h | Defines for Q.931 messages created by the stack.
isdndef.h | Event code definitions and ISDN API function prototypes.
isdnparm.h | Parameter structure definitions and manifest constants for parameter structure fields.
isdntype.h | Type definitions, basic and derived types, and entity identifiers.
nccxadi.h | NCC parameter structures.
nccadi.h | NCC values for mediamask, connectmask, and disconnectmask.
nccxisdn.h | ISDN parameter structures and values for the NCC API.

## ISDN protocol stack downloadable object modules

The downloadable object module files contain the basic low-level software that a board requires to support ISDN. The modules are transferred from the host into on-board memory when the board boots.

Different module files are supplied for different configurations. The file you use depends upon the board type you are using. For more information about downloadable object modules, see the Dialogic® NaturalAccess™ ISDN Software Installation Manual.

## Board keyword files

Use a board keyword file to specify configuration information for all boards in a system. This information includes whether a board performs switching, which board is the clock master
, and which software modules to transfer to the board's memory on startup including which TCPs to load. A board keyword file also contains country-specific information and defines what trunks are assigned to which D channels.

Several sample board keyword files are provided that describe ISDN Software configurations for different boards. Use these files to create a file that describes the system hardware and software setup. For more information, refer to the Dialogic® NaturalAccess™ ISDN Software Installation Manual.

Use the NaturalAccess OAM API utilities to assign parameters to a board. The OAM API is installed with NaturalAccess. For more information about OAM, see the Dialogic® NaturalAccess™ OAM System Developer’s Manual.

## Demonstration programs

Several demonstration programs are included with their source code files and makefiles. For more information, see Demonstration programs overview.

## Trunk control program (TCP)

isd0.tcp is used with the ISDN Software in channelized configuration. This TCP is also used with the DPNSS protocol stack.

The TCP is transferred to on-board memory when the board is started. An instance of the TCP is associated with each context. A TCP mediates transactions between NaturalAccess, DSP resources, and the protocol stack.

## Parameter files

Parameter files contain parameters and values that configure the ISDN Software TCP. Some of these parameters are country-specific. Different values are supplied for them based upon the target country.

Note: Parameter files are useful only if you are configuring the ISDN Software for channelized configuration.

Warning: | Changing the values of country-specific parameters can affect the regulatory approvals in the target country.

For more information about parameters and how to load and change them, refer to the ISDN TCP parameters overview.

The following table lists the parameter files relevant to your application if you are using the NCC API for call control:

File type/name | Description
--- | ---
nccxadi cty.pf nccstartcty.pf cty is the three character code of the target country. For example, the code for Australia is aus. The versions of these files for Australia are nccxadiaus.pf and nccstartaus.pf. | Binary parameter files containing a set of country-specific values for NCC API parameters. Most of the values in these files should not be changed. Changing certain values may affect the regulatory approvals in the target country.
nccxisdn.pf | A binary parameter file containing a set of ISDN Software parameters and default values. Changing these parameters directly affects all control messages (for example, messages associated with NCC functions). To change them correctly, you must have knowledge of the ISDN specifications for the target country.
nccxadi cty.par nccstart cty.par nccxisdn.par | ASCII versions of nccxadi cty.pf, nccstart cty.pf, and nccxisdn.pf.