(Page 1 of 1 in this chapter)


Appendix C

Parameters and Protocol-Specific Features


Introduction

This appendix describes the TCP parameters that can be modified by users and any features (such as digit retrieval) that are unique for the protocol. Parameters and features are grouped according to the TCP with which they are associated.

TCP parameters are contained in the respective .pf file that is installed into your \nms\ag\cfg directory for Windows NT and OS/2, or your /opt/nms/ag/cfg directory for UNIX. Country-specific versions of these files will be installed in \nms\ag\cfg\country or your /opt/nms/ag/cfg/country directory for UNIX. The name of the file is as follows:

TCP

Protocol

Binary File Name

Country-specific
File Name

mfc0

MFC-R2

adimfc.pf

mfccty.pf

euc0

European Digital CAS

adieuc.pf

euccty.pf

eam0

Pulsed E and M

adieam.pf

eamcty.pf

iwk0

International Wink Start

adiiwk.pf

iwkcty.pf

ss50

Signalling System 5

adiss5.pf

ss5cty.pf

r150

System R1.5 (inbound)

adir15.pf

r15cty.pf

r151

System R1.5 (outbound)

adir15.pf

r15cty.pf

Note: cty represents the three character country designation.

If you install the same TCP for more than one country, you will have more than one xxxcty.pf file in the country-specific directory while the .pf file found in the common directory will represent the last country installed. Refer to Chapter 5 for information about loading Digital CAS country-specific parameter files, and starting Digital CAS TCPs.

The parameters that the user can modify to suit the application's requirements are defined in a text file with the extension .par. You can find these files in the \nms\ag\cfg directory for Windows NT and OS2, and in the /opt/nms/ag/cfg directory for UNIX. The names of the files are as follows:

TCP

Protocol

File Name

mfc0

MFC-R2

adimfc.par

euc0

European Digital CAS

adieuc.par

eam0

Pulsed E and M

adieam.par

iwk0

International Wink Start

adiiwk.par

ss50

Signalling System 5

adiss5.par

r150

System R1.5 (inbound)

adir15.par

r151

System R1.5 (outbound)

adir15.par

Modifying Parameters

Caution:

Most of the parameters that follow are signaling-specific: changing their value would not only invalidate any approval certificate for the used board, but could also cause the board to malfunction. These parameters are described for reference purposes only.

Multi-Frequency Compelled R2 (MFC-R2)

This section describes the MFC-R2 TCP parameters, and all operations that are specific to the MFC-R2 protocol within the framework of Natural Call Control.

The protocol known as MFC-R2 is defined by the CCITT (now ITU) Recommendations Q.421-Q.442, (CCITT Blue Book Volume VI, Fascicle VI.4, Geneva 1989). Many country-specific variations exist. The MFC0 TCP is programmed by the parameters described below to implement the specifications of all supported countries and network operators.

Caution:

Most of the parameters that follow are signaling-specific: changing their value would not only invalidate any approval certificate for the used board, but could also cause the board to malfunction. These parameters are described for reference purposes only.

Other parameters program the interaction the TCP has with the host, or act on features not regulated or that can change from switch to switch within the same network. These are changeable, and indeed, the application developer is often asked to do so. These parameters are in the first table below.

Editable Parameters

Users can modify the following MFC-R2 parameters:

Parameter name

Unit

Comments

Default

ADI.MFC.DIDnumber

number

Inbound: number of DID digits to expect

7

ADI.MFC.ANInumber

number

Inbound: number of ANI digits to expect

8

ADI.MFC.DIDBeforeANI

number

Inbound: DID number to receive before asking for category

2

ADI.MFC.optionflags

mask

Flags for the user to set for optional TCP behavior (inbound):

· bit 0 (& 0x1): does the TCP play busy when rejecting a call? If not, the switch does it instead.

1=do not play, 0=play (default)

· bit 1 (& 0x2): Set this bit if the trunk you are using is inbound only (no calls can be placed on it)

· bit 2 (& 0x4): Set this bit if the trunk you are using is outbound only (no calls can be received on it)

· bit 3 (& 0x8): Set this bit if a cleardown tone (busy tone) is necessary when the inbound side of the TCP hangs up a call first

· bit 4 (& 0x10): Set this bit if you need to play a message while rejecting a call. If the bit is set, the TCP will send to the network the backward Group B tone to accept the call, thus causing the network to establish the voice path. The TCP will then wait for the far end to hang up.

· bit 5 (& 0x20): Start call progress in any case after an outbound call has been accepted by the network, so that a message or SIT tone can be detected (complementary of the above). Note: call progress detection by default is not started, if the user sets the connect mask to connect on SIGNAL. This saves DSP resources.

· bit 6 (& 0x40): If this bit is set, the TCP will answer an incoming call from Group A, without asking the network for the caller's category (Group II forward tone). The caller's category will therefore be missing from the incoming call-related information delivered to the host.

0x0

ADI.MFC.debugmask

mask

Trace level specification, as follows:

· Show states: 0x01

· Show tones: 0x02

· Show line code: 0x04

· Show tone ends: 0x08

· Show compel errors: 0x10

· Show tone validity errors: 0x20

These values can be ORed for cumulative effect.

0x0

Non-editable parameters

The following parameters instead are country- or network-specific, and cannot be modified.

Parameter name

Unit

Comments

Example

ADI.MFC.compelledtimers

internal

All compelled timers, both for inbound and outbound, expressed in seconds and packed in a 16-bits word. The timers are the following:

Value Description

1 T1 (forward tones max on-time): lowest 5 bits. Example 01111 = 15 s

2 T2 (forward tones max off-time): middle 5 bits. Example 11011 = 27 s

3 T3 (inbound compelled cycle timer): highest 6 bits. Example 001111 = 15 s

0x3F6F

ADI.MFC.releaseguardtime

ms

Inbound, time to wait in release guard, if set (regulated time for the inbound protocol to remain in blocking state after mutual hang-up)

0

ADI.MFC.inboundqualtimers

internal

Group of three inbound line qualification timers (time for the inbound protocol to wait to recognize a line signaling change), expressed in units of 10 ms and packed in the following way:

Value Description

1 Qualification time during idle: lowest hexade, typical value 20 ms

2 Qualification time during the compelled sequence: middle hexade, typical value 20 ms

3 Qualification time during connected: middle hexade, typical value 20 ms

0x222

ADI.MFC.outboundqualtimers

internal

Group of three outbound qualification timers (time for the protocol to wait to recognize a line signaling change), expressed in units of 10 ms and packed in the following way:

Value Description

1 Qualification time during idle: lowest hexade, typical value 20 ms

2 Qualification time during the compelled sequence: middle hexade, typical value 20 ms

3 Qualification time during connected: middle hexade, typical value 20 ms

0x222

ADI.MFC.seizureacktime

ms

Outbound: time to wait for seizure acknowledge after seizure, before clearing forward. The CCITT Blue Book value is 200 ms, but the TCP must account for internal transmission time.

240

ADI.MFC.answertime

internal

Outbound: group of two timers used during the answering phase of call setup. Both timers are expressed in seconds.

Value Description

1 Lower byte: maximum time for the protocol to wait between receipt of the Group B backward tone until the phone is answered (line signaling event). After this timer expires, the TCP clears the line.

Higher byte: maximum time for the protocol to wait between the generation of the Group II forward tone and the detection of the Group B backward tone. This is usually the same as timer T1 from the parameter ADI.MFC.compelledtimers, but it can be different in some countries.

0x0F3C

ADI.MFC.inboundreleasetime

ms

Outbound: the time after which a clearback seen by outbound is treated as a remote hangup signal. If the signal lasts less than this value, it could be a billing pulse (only applicable during conversation).

0

The following parameters contain the specification of all the tones needed by the protocols to implement the country-specific variation of R2. Each parameter holds more than one tone. Each tone uses 4 bits (one hexade) of the 16 bit word. Hexades are listed from least to most significant inside each parameter.

ADI.MFC.tonesgroupA

internal

Backward Group A tones. The TCP uses these tones to send requests to the calling party during the compelled sequence. Each hexade of the parameter contains one request. Low to high hexade:

Value Description

1 Send next DID (A-1).

2 Send Group I category (A-5).

3 Send next ANI (A-5).

4 Send Group II tone (and switch to group
B tone reception) (A-3).

0x3551

ADI.MFC.tonesgroupB

internal

Some backward Group B tones. The TCP uses these tones to send the final indication of the compelled sequence to the calling party. Each hexade of the parameter contains one Group B indication. Low to high hexade:

Value Description

1 Indicate congestion (B-4). This is also
applicable during Group A transmission.

2 Indicate unallocated number (B-5).

3 Indicate busy (B-3).

4 Indicate line out of order (B-8).

0x8354

ADI.MFC.tonesendofinfo

internal

Forward tones that indicate the end or the non-availability of a certain type on information. The types of information are:

Value Description

1 In some countries a tone that signals the
end of the DID digits doesn't exist. In this
case the first hexade will be 0.

2 Caller's category. In some countries the
category must be available to the caller,
so the second hexade will be 0.

3 End of ANI digits- caller id available

4 End of ANI digits - called id restricted. In
most countries there is no distinction for
MFC-R2 between restricted and
non-restricted caller id. In this case the
fourth hexade is 0.

0x0FCF

ADI.MFC.tonesanswer

internal

Backward tones indicating acceptance of the call. Each hexade of the parameter contains one flavor of acceptance indication. Low to high hexade:

Value Description

1 Call accepted in Group B - charge (B-6).

2 C accepted in Group B - free call (B-7).

3 Call accepted in Group A
(A-6).Alternative tone for call accepted in
Group B (not in CCITT specifications,
but necessary in some countries)

0x0667

ADI.MFC.tonesmiscellaneous

internal

Request or indication tones used in different contexts by the TCP. They are (low to high hexade)

Value Description

1 The tone the outbound part of the TCP plays in Group II (toll category in some countries) (II-1, normal subscriber).

2 Default user category (Group I category) to be used if the application does not provide it (in some countries the outbound must play it in all cases) (I-1, normal subscriber).

3 Tone meaning that after the user category no ANIs are available (I-12, or 0xC).

4 Backward Group B tone used in some countries to reject an incoming call while requesting that the voice path be open for a special announcement.

0x0C11

ADI.MFC.tonesrepeatrequest

internal

Backward Group A tones inbound plays to request a digit repetition from outbound. Consider the DID that outbound played last to be DID N. Low to high hexade:

Value Description

1 Repeat DID N-1 (A-2).

2 Repeat DID N-2 (A-7).

3 Repeat DID N-3 (A-8).

4 Repeat all DIDs (restart dialing) (Not specified by the CCITT Blue Book, but used in many countries).

0x0872

ADI.MFC.tonesgroupC

internal

Backward tones that the inbound plays when it is collecting ANIs (the specifications of some countries identify a Group C in this case) Low to high hexades:

Value Description

1 Request the outbound to go back to sending DIDs, and send the next DID. This is typically the same as the normal send DID tone, hexade 1 of ADI.MFC.tonesgroupA, but it can be different in some countries.

2 Request the outbound to go back to sending DIDs, and repeat the last DID transmitted. (Not supported by the CCITT Blue Book).

In this parameter there are two more hexades, not related with the Group C tones. These are:

3 Tone that inbound sends to request that outbound specifies the nature of the circuit, either land-based or through a satellite link (A-13).

4 Tone that inbound sends to ask if a half-echo suppressor is needed (A-14).

0xED01

These parameters do not have a CCITT specification describing them, but rather they describe the target country's call progress tones. Their default values are set to a reasonable international standard.

ADI.MFC.ringfreq1

Hz

Inbound: Ring frequency #1.

425

ADI.MFC.ringfreq2

Hz

Inbound: Ring frequency #2 (if the ringing tone is composed of 2 frequencies: otherwise, 0).

0

ADI.MFC.ringontime

ms

Inbound: Time the ring tone is on in a ring cycle.

1000

ADI.MFC.ringofftime1

ms

Inbound: Time the ring tone is off in a ring cycle.

4000

ADI.MFC.ringofftime2

ms

Inbound: Ring off-time two (for UK-style ringing cycles, e.g. 400 on, 200 off, 400 on, 2000 off).

0

ADI.MFC.busyfreq1

Hz

Inbound: Busy frequency #1.

425

ADI.MFC.busyfreq2

Hz

Inbound: Busy frequency #2 (if the busy tone is composed of 2 frequencies: otherwise, 0).

0

ADI.MFC.busyontime

ms

Inbound: Time the busy tone is on in a busy cycle.

500

ADI.MFC.busyofftime

ms

Inbound: Time the busy tone is off in a busy cycle.

500

ADI.MFC.CPtoneslevel

IDU

Inbound: Amplitude of call progress tones (ring and busy).

350

Miscellaneous

ADI.MFC.compelledtoneslevel

IDU

R2 tones amplitude (forward and backward)

330

ADI.MFC.signalingflags

mask

Parameter containing flags describing signaling variations. These are:

· bits 0, 1 (& 0x3): Value of the C and D bits (usually, C=0, D=1).

· bit 2 (& 0x4): What to do if next DID does not come: pulse congestion (0) or pulse request for Group II tone (1). This addresses the problem of those protocol variations without a tone to signal the end of DID digits. In this case, the bit is set to 1, so the compelled sequence continues with the request to send the Group II tone and switch to reception of Group B tones.

· bit 3 (& 0x8): Ignore bit faults during ring (0), or detect and abort the call (1).

· bit 4 (& 0x10): Expect metering pulses on the A bit (1=yes, 0=no).

· bit 5 (& 0x20): Expect metering pulses on the B bit (1=yes, 0=no) (if no metering pulses, both these bits are set to zero).

· bits 6 and 7 (& 0xC0): Controls the length of delay after the outbound protocol hangs up before the application is able to place a new call. This is needed by some switches to clear the line and being able to be seized again. Values:

0x0 = no delay

0x1 = 400 ms delay

0x2 = 700 ms delay (default)

0x3 = 1000 ms delay

0x1021

ADI.MFC.signalingflags

mask

· bit 8 (& 0x100): Flag to determine if a inbound clearing back is signaled by a release guard (AB=11), value 1, or by a forced release (AB=00), value 0.

· bit 9 (& 0x200): Flag to determine if the bit detector should be set with a simultaneouity window of zero (if clear), or of 5 ms (if set). Having two bit transitions falling in the same 5 ms period is the definition of simultaneous bit transitions on the line. Double bit transitions are illegal in some countries.

· bit 10 (& 0x400): Expect metering pulses on the C bit (1=yes, 0=no)

· bit 11 (& 0x800): If set, a half-echo suppression is needed in international working (the outbound side answers with a I-14 to a A-14 request, in CCITT speech).

0x1021

ADI.MFC.validDIDmask

internal

The valid DID tones in the target country. If a DID is received by inbound, that is not valid, the compelled sequence is aborted with a congestion indication.

The mask is the following:

FEDC|BA98|7654|321-

1000|0111|1111|1110

0x87FE

ADI.MFC.validANImask

mask

The valid ANI tones in the target country. If a ANI is received by inbound, that is not valid, the compelled sequence is aborted with a congestion indication.

The mask is the following:

FEDC|BA98|7654|321-

1001|0111|1111|1110

0x97FE

ADI.MFC.validcategorymask

mask

The valid category tones in the target country. If an invalid category is received by inbound, the compelled sequence is aborted with a congestion indication.

The mask is the following:

FEDC|BA98|7654|321-

0000|0111|1111|1110

0x07FE

ADI.MFC.validGroupIImask

mask

The valid Group II tones in the country. If an invalid Group II tone is received by inbound, the compelled sequence is aborted with a congestion indication.

The mask is the following:

FEDC|BA98|7654|321-

0000|0111|1111|1110

0x07FE

ADI.MFC.catnoANImask

mask

The category tones that imply that no ANI follows. The mask is the following:

FEDC|BA98|7654|321-

0000|0000|0000|0000

0x0

ADI.MFC.tonesinternational

internal

Forward Group A tones that outbound plays to answer inbound's request for information about the presence or absence of a satellite link in the circuit, and the need for half-echo suppression. Low to high hexade:

Value Description

1 No satellite link in the circuit (I-13)

2 Satellite link in the circuit (I-14)

3 Half-echo suppression needed (I-14)
(if this is not the case, the outbound just
ignores the request and plays any other
tone)

0xEED

ADI.MFC.reanswerdelay

ms

Time to wait for re-answer pulse. This might be needed for special switches in certain countries. Set to zero to disable.

0

ADI.MFC.reanswerpulsetime

ms

Length of re-answer pulse. Disabled if ADI.MFC.reanswerdelay is set to zero.

0

Timers related to the AG Quad boards resource management

ADI.MFC.resourcegettimes

internal

This parameter addresses a special need of protocols running on a AG Quad board with resource management enabled. If this is the case, for certain operations it is necessary to acquire a resource from a resource pool on the board. The parameter defines to timeouts after which the operation is aborted if a resource is not available. This is a very unlikely occurrence though.

Low byte: time to wait for resource before placing a call (15 s)

High byte: time to wait for resource when a resource is needed by inbound to release a call (e.g. to play a cleardown tone).
(10 s)

0x0a0f

Inbound Calls: Retrieving Digits All at Once

For MFC-R2, after ADIEVN_INCOMING_CALL is received, the following fields of the ADI_CALL_STATUS structure contain information relevant to the call:

Field

Description

calledaddr

The called number. Also referred to as the Direct Inward Dial (DID) number.

callingaddr

The calling number (if available). Also referred to as the Automatic Number Identification (ANI) number.

usercategory

The calling party category (Group I), e.g., normal subscriber, operator, maintenance equipment.

callingpresentation

The ANI digits might not be available, because of interworking of different protocols with different features in the call path, or ANI presentation might be restricted. Possible values include:

0 = Calling number presentation allowed (default)

1 = Calling number presentation restricted

2 = Calling number not available

tollcategory

The category associated with the calling party in register signaling Group II. Usually this is the same as the user category, but in some countries it carries the toll category of the call.

Several parameters affect the way the MFC-R2 TCP accepts, processes and presents the incoming digits to the host:

Parameter

Description

ADI.MFC.DIDnumber

Determines the number of Direct Inward Dial (DID) digits the TCP should expect from the calling party. Default is 7.

ADI.MFC.ANInumber

Determines the number of Automatic Number Identification (ANI) digits the TCP should expect. Set this number to one more than the number of ANI digits to expect, to include the category digit. For example, if the TCP is to expect 7 digits, set this parameter to 8 (the default).

If this parameter is set to 0, no ANI digits are collected.

ADI.MFC.DIDBeforeANI

Determines the number of DID digits the TCP should receive before signaling the calling party to send ANI digits. It defaults to 1.

Note: When you call adiAnswerCall with MFC TCPs, the upper five bits of the number_of_rings argument are reserved, and should be set to zero. This means that the mfc0 TCPs can play a maximum of 0x7ff (2047) ring back tones when answering a call.

Inbound Calls: Retrieving Digits One at a Time

For MFC-R2, the digits appear in the following format:

d1 # c1 a1 a2 a3 am # d2 d3 dn # c2

where:

d1dn

DID digits received. n is determined by the ADI.MFC.DIDnumber parameter.

c1

Group I category of the calling party (user category).

a1 am

ANI digits received. m is determined by the ADI.MFC.ANInumber parameter.

c2

Group II category of the calling party (toll category).

#

NMS separator symbol.

Note: The number of DID digits received before the # separator depends on the parameter ADI.MFC.DIDbeforeANI.

Outbound Calls: Digit Format

MFC-R2 TCPs expect the digit string to be formatted as follows:

# c a1 . am # d1 dn [s]

where:

c

User category of the calling party.

a1 . am

ANI digits (the address of the calling party).

d1 dn

DID digits (the address of the called party).

#

NMS separator symbol.

[s] or [S]

Optional indicator that the cell is on a satellite circuit. This is used to allow the TCP to respond to requests for information about the nature of the circuit, on a call-by-call basis.

Category and ANIs can be omitted if the connection does not require them to be present. If they are omitted, the digit string should be formatted as follows:

d1 dn

In this case, the TCPs use a country-specific default user category. This default category is specified in the ADI.MFC.tonesmiscellaneous parameter.

Pulsed E and M (EAM)

In this section we describe the Pulsed E and M TCP parameters, and all operations that are specific to the Pulsed E and M protocol within the framework of Natural Call Control.

The protocol known as Pulsed E and M is defined by national specifications in a few countries. This protocol exploits MFC-R2 compelled register signaling (as defined by the CCITT in Recommendations Q.441, Q.442) while using only one bit for line signaling. This is so for compatibility with older analog equipment. The EAM TCP is programmed by the parameters described below to implement the specifications of all supported countries and network operators.

Caution:

Most of the parameters that follow are signaling-specific: changing their value would not only invalidate any approval certificate for the used board, but could also cause the board to malfunction. These parameters are described for reference purposes only.

Other parameters program the interaction the TCP has with the host, or act on features not regulated or that can change from switch to switch within the same network. These are changeable, and indeed, the application developer is often asked to do so. These parameters are in the following table:

Editable Parameters

Users can modify the following EAM parameters:

Parameter Name

Unit

Comments

Default

ADI.EAM.DIDnumber

number

Inbound: Number of DID digits to expect

7

ADI.EAM.ANInumber

number

Inbound: Number of ANI digits to expect

8

ADI.EAM.DIDBeforeANI

number

Inbound: DID number to receive before asking for category

2

ADI.EAM.optionflags

mask

flags for the user to set for optional TCP behavior (inbound):

bit 0 (& 0x1): Indicates if the TCP plays busy when rejecting a call. If not, the switch does it instead.

1 = Do not play

0 = Play (default)

· bit 1 (& 0x2): Set this bit if the trunk you are using is inbound only (no calls can be placed on it).

· bit 2 (& 0x4): Set this bit if the trunk you are using is outbound only (no calls can be received on it).

· bit 3 (& 0x8): Set this bit if a cleardown tone (busy tone) is necessary when the inbound side of the TCP hangs up a call first.

· bit 4(& 0x10): Set this bit if you need to play a message while rejecting a call. If the bit is set, the TCP will send to the network the backward Group B tone to accept the call, thus causing the network to establish the voice path. The TCP will then wait for the far end to hang up.

0x0

ADI.EAM.debugmask

mask

Trace level specification, as follow:

· Show states: 0x01

· Show tones: 0x02

· Show line code: 0x04

· Show tone ends: 0x08

· Show compel errors: 0x10

· Show tone validity errors: 0x20

· Show timers expiring: 0x40

These values can be ORed for cumulative effect.

0x0

ADI.EAM.timewaitdial

time (ms)

Outbound: Inactive time between the end of an outbound call and the next outbound call. Needed to synchronize the parties in those cases when a release guard signal is not in the protocol.

500

Non-editable Parameters

The following parameters instead are country- or network-specific, and cannot be modified.

Parameter name

Unit

Comments

Example

The following parameters specify the signaling timers

ADI.EAM.compelledtimers

internal

All compelled timers, both for inbound and outbound, expressed in seconds and packed in a 16-bits word. The timers are the following:

Value Description

1 T1 (forward tones max on-time): lowest 5 bits. Example 01111 = 15 s

2 T2 (forward tones max off-time): middle 5 bits. Example 11011 = 27 s

3 T3 (inbound compelled cycle timer): highest 6 bits. Example 001111 = 15 s

0x3F6F

ADI.EAM.shortpulsetimers

internal

Specification for the duration of short signaling pulses. The low byte contains the nominal duration (in 1/100's of second), the high byte contains the tolerance (in 1/100's of second). The pulses will be generated with the nominal time value, and detected within nominal value ± tolerance.

0x090F

ADI.EAM.longpulsetimers

internal

Specification for the duration of long signaling pulses. The low byte contains the nominal duration (in 1/100's of second), the high byte contains the tolerance (in 1/100's of second). The pulses will be generated with the nominal time value, and detected within nominal value ± tolerance.

0x090F

ADI.EAM.seizureacktime

time (ms)

Outbound: Time to wait for seizure acknowledge after seizure, before clearing forward. The seizure acknowledgment signal is defined only in the case of particular network variations.

0

ADI.EAM.answer_hangupack

internal

Outbound: Two timers, one per byte.

Low byte: time to wait for inbound to answer the call, after all digits have been delivered, before clearing forward.

High byte: time to wait for a release guard signal after clearing forward, before starting an alarm recovery sequence.

0x5A5A

ADI.EAM.alarmtimeout

counter

Outbound: Time in seconds to keep performing the alarm recovery sequence, before setting the alarm bit. The alarm recovery sequence is as follows: the TCP seizes the line with a short pulse, then clears forward with a long pulse, and waits for a release guard signal from inbound.

300

ADI.EAM.alarminterpulse

time (ms)

Outbound: Time between short and long pulse in the alarm recovery sequence.

300

The following parameters contain the specification of all the tones needed by the protocols to implement the country-specific register signaling variations. Each parameter holds more than one tone. Each tone uses 4 bits (one hexade) of the 16 bit word. Tones are listed from least to most significant inside each parameter.

ADI.EAM.tonesgroupA

internal

Backward Group A tones. The TCP uses these tones to send requests to the calling party during the compelled sequence. Each hexade of the parameter contains one request. Low to high hexade:

Value Description

1 Send next DID (A-1).

2 Send Group I category (A-5).

3 Send next ANI (A-5).

4 Send Group II tone (and switch to group B
tone reception) (A-3).

0x3551

ADI.EAM.tonesgroupB

internal

Some backward Group B tones. The TCP uses these tones to send the final indication of the compelled sequence to the calling party. Each hexade of the parameter contains one Group B indication. Low to high hexade:

Value Description

1 Indicate congestion (B-4). This is also applicable during Group A transmission.

2 Indicate unallocated number (B-5).

3 Indicate busy (B-3).

4 Indicate line out of order (B-8).

0x8354

ADI.EAM.tonesendofinfo

internal

Forward tones that indicate the end or the non-availability of a certain type on information. Types of information include:

Value Description

1 In some countries a tone that signals the end of the DID digits doesn't exist. In this case the first hexade will be 0.

2 Caller's category. In some countries the category must be available to the caller, so the second hexade will be 0.

3 End of ANI - Caller ID available.

4 End of ANI - Called ID restricted. In most countries there is no distinction for
MFC-R2 between restricted and non-restricted Caller ID. In this case the fourth hexade is 0.

0x0FCF

ADI.EAM.tonesanswer

internal

Backward tones indicating acceptance of the call. Each hexade of the parameter contains one flavor of acceptance indication. Low to high hexade:

1 Call accepted in Group B - charge (B-6).

2 Call accepted in Group B - free call (B-7).

3 Call accepted in Group A (A-6).

4 Alternative tone for call accepted in Group B (not in CCITT specs, but necessary in some countries).

0x0667

ADI.EAM.tonesmiscellaneous

internal

Request or indication tones used in different contexts by the TCP. They are (low to high hexade):

Value Description

1 The tone the outbound part of the TCP plays in Group II (toll category in some countries) (II-1, normal subscriber).

2 Default user category (Group I category) to be used if the application does not provide it (in some countries the outbound must play it in all cases) (I-1, normal subscriber).

3 Tone meaning that after the user category no ANIs are available (I-12, or 0xC).

0x0C11

ADI.EAM.tonesrepeatrequest

internal

Backward Group A tones inbound plays to request a digit repetition from outbound. Consider the DID that outbound played last to be DID N. Low to high hexade:

Value Description

1 Repeat DID N-1 (A-2).

2 Repeat DID N-2 (A-7).

3 Repeat DID N-3 (A-8).

4 Repeat all DIDs (restart dialing)
(Not specified by the CCITT Blue Book,
but used in many countries).

0x0872

ADI.EAM.tonesgroupC

internal

Backward tones that the inbound plays when it is collecting ANIs (the specifications of some countries identify a Group C in this case) Low to high hexades:

Value Description

1 Request the outbound to go back to sending DIDs, and send the next DID. This is typically the same as the normal send DID tone, hexade 1 of ADI.MFC.tonesgroupA, but it can be different in some countries.

2 Request the outbound to go back to sending DIDs, and repeat the last DID transmitted. (Not supported by the CCITT Blue Book)

0x0001

These parameters describe the target country's call progress tones. Their default values are set to a reasonable international standard.

ADI.EAM.ringfreq

Hz

Inbound: Ring frequency #1

425

ADI.EAM.ringontime

ms

Inbound: Time the ring tone is on in a ring cycle

1000

ADI.EAM.ringofftime1

ms

Inbound: Time the ring tone is off in a ring cycle

4000

ADI.EAM.ringofftime2

ms

Inbound: ring off-time two (for UK-style ringing cycles, e.g. 400 on, 200 off, 400 on, 2000 off)

0

ADI.EAM.busyfreq

Hz

Inbound: Busy frequency #1

425

ADI.EAM.busyontime

ms

Inbound: Time the busy tone is on in a busy cycle

500

ADI.EAM.busyofftime

ms

Inbound: Time the busy tone is off in a busy cycle

500

ADI.EAM.Cptoneslevel

IDU

Inbound: Amplitude of call progress tones (ring and busy)

350

Miscellaneous parameters

ADI.EAM.compelledtoneslevel

IDU

R2 tones amplitude (forward and backward)

330

ADI.EAM.signalingflags

mask

Parameter containing flags describing signaling variations. These are:

· 0xF = Value of the A, B, C and D bits in the target country during idle line conditions.

· 0x30 = Value of the A and B bits in the target country during pulse-on line conditions.

· 0xC0 = Value of the A and B bits in the target country during alarm-on line conditions.

· 0x100 = Determines whether outbound signals alarms.

0 = No

1 = Yes

· 0x200 = Determines whether release guard is needed.

0 = No

1 = Yes

· 0x400 = Determines whether clear back is needed after clear forward.

0 = No

1 = Yes

· 0x800 = Determines whether the protocol sends more than one Clear Forward before setting alarm status.

0 = No

1 = Yes

· 0x1000 = Determines if seizure acknowledgment is needed.

0 = No

1 = Yes

· 0x2000 = Specifies no digit behavior.

0 = pulse congestion

1 = go to Group II

0x0

ADI.EAM.validDIDmask

internal

The valid DID tones in the target country. If a DID is received by inbound, that is not valid, the compelled sequence is aborted with a congestion indication.

The mask is the following:

FEDC|BA98|7654|321-

1000|0111|1111|1110

0x87FE

ADI.EAM.validANImask

mask

The valid ANI tones in the target country. If a ANI is received by inbound, that is not valid, the compelled sequence is aborted with a congestion indication.

The mask is the following:

FEDC|BA98|7654|321-

1001|0111|1111|1110

0x97FE

ADI.EAM.validcategorymask

mask

The valid category tones in the target country. If an invalid category is received by inbound, the compelled sequence is aborted with a congestion indication.

The mask is the following:

FEDC|BA98|7654|321-

0000|0111|1111|1110

0x93FE

ADI.EAM.noANIfollowmask

mask

Specifies the values of ANIs, implying that no ANIs follow. The mask is the following:

FEDC|BA98|7654|321-

1001|0000|0000|0000

0x9000

ADI.EAM.categorynoANImask

mask

Specifies the category tones that imply that no ANIs follow (a possibility for international calls). The mask is:

FEDC|BA98|7654|321-

0000|0000|0000|0000

0x0

ADI.EAM.clearbackdelay

time (ms)

If not equal to zero (0), specifies time to wait before "reject collect calls" clearback pulse.

0

ADI.EAM.reanswerdelay

time (ms)

Specifies time after "reject collect calls" clearback pulse and before reanswer.

0

Timers related to the AG Quad boards resource management

ADI.EAM.resourcegettimes

internal

this parameter addresses a special need of protocols running on a AG Quad board with resource management enabled. For certain operations it is necessary to acquire a resource from a resource pool on the board. The parameter defines two timeouts after which the operation is aborted if a resource is not available. (This is very unlikely).

Low byte: Time to wait for resource before placing a call (15 s)

High byte: Time to wait for resource when a resource is needed by inbound to release a call (e.g., to play a cleardown tone) (10 s)

0x0a0f

Inbound Calls: Retrieving Digits All at Once

For EAM, after ADIEVN_INCOMING_CALL is received, the following fields contain the received digits:

Field

Description

calledaddr

The called number. Also referred to as the Direct Inward Dial (DID) number.

callingaddr

The calling number (if available). Also referred to as the Automatic Number Identification (ANI) number.

usercategory

The calling party category (Group I), e.g. normal subscriber, operator, maintenance equipment.

callingpresentation

The ANIs may not be available because the application is using protocols where call path, or ANI presentation are restricted.

Possible values include:

0 = calling number presentation allowed (default)

1 = calling number presentation restricted

2 = calling number not available

tollcategory

The category associated with the calling party in register signaling Group II. Usually this is the same as the user category, but in some countries it carries the toll category of the call.

Several entries in the TCP parameter file affect the way pulsed E and M TCPs accept and process digits.

Note: When you call adiAnswerCall with EAM TCPs, the upper five bits of the number_of_rings argument are reserved and should be set to zero. This means that EAM TCPs support a maximum of 0x7ff (2047) rings.
EAM Parameter

Description

ADI.EAM.DIDnumber

This parameter determines the number of Direct Inward Dial (DID) digits the TCP should expect from the calling party. Default is 7.

ADI.EAM.ANInumber

This parameter determines the number of Automatic Number Identification (ANI) digits the TCP should expect. Set this number to one more than the number of ANI digits to expect, to include the category digit. For example, if the TCP is to expect 7 digits, set this parameter to 8 (the default).

If this parameter is set to 0, no ANI digits are collected. However, the TCP always tries to collect the user category of the calling party and present it to the application.

ADI.EAM.DIDBeforeANI

This parameter determines the number of DID digits the TCP should receive before signaling the calling party to send ANI digits. It defaults to 1.

Refer to Chapter 5 for instructions about loading parameter files.

Inbound Calls: Retrieving Digits One at a Time

For Pulsed E and M, the digits appear in the following format:

d1 # c1 a1 a2 a3 am # d2 d3 dn # c2

where:

d1dn

DID digits received. n is determined by the ADI.EAM.DIDnumber parameter.

c1

Group I category of the calling party (user category).

a1 am

ANI digits received. m is determined by the ADI.EAM.ANInumber parameter.

c2

Group II category of the calling party (toll category).

#

NMS separator symbol.

Note: The number of DID digits received before the # separator depends on the parameter ADI.EAM.DIDbeforeANI.

Outbound Calls: Digit Format

Pulsed E and M TCPs expect the digit string to be formatted as follows:

# c a1 . am # d1 dn

where:

c

User category of the calling party.

a1 . am

ANI digits (the address of the calling party).

d1 dn

DID digits (the address of the called party).

#

NMS separator symbol.

User category and ANIs can be omitted if the connection does not require them to be present. If these are omitted, the digit string should be formatted as follows:

d1 dn

In this case, the TCPs use a country-specific default category. This default category is specified in the ADI.EAM parameter. This parameter should not be changed.

European Digital CAS (EUC) Parameters

In this section we describe the European Digital CAS TCP parameters, and all operations that are specific to the EUC TCP within the framework of Natural Call Control.

The EUC TCP implements the national CAS specifications of two European countries, Italy and The Netherlands, both of which define protocols that use two bits line signaling and DTMF digit spill register signaling. The two protocols are similar enough to be implemented by the same trunk control program.

The EUC TCP is programmed by the parameters described below to implement the specifications of the supported countries and network operators.

Caution:

Most of the parameters that follow are signaling-specific: changing their value would not only invalidate any approval certificate for the used board, but could also cause the board to malfunction. These parameters are described for reference purposes only.

Other parameters program the interaction the TCP has with the host, or act on features not regulated or that can change from switch to switch within the same network. These are changeable, and indeed, the application developer is often asked to do so. These parameters are in the first table below.

Editable Parameters

Users can modify the following EUC parameters:

Parameter name

Unit

Comments

Default

ADI.EUC.digitnumber

number

Inbound: specifies number of incoming digits to expect

7

ADI.EUC.optionflags

number

Inbound: flags controlling optional TCP behavior:

· bit 0 (& 0x1): Play busy on timeout

· bit 1 (& 0x2): Play fast busy on timeout

· bit 2 (&0x4): Play silence on timeout

· bit 3 (& 0x8): Play busy after clearing back and waiting for idle

· bit 4 (& 0x08): Set this bit if the trunk you are using is inbound only (no calls can be placed on it)

· bit 5 (& 0x10): Set this bit if the trunk you are using is outbound only (no calls can be received on it)

· bit 6 (& 0x20): when a call is rejected with user audio, if this bit is set the TCP signals to the network that the call is accepted, so that the voice path is established and the message can reach the caller.

· bit 7 (& 0x40): start call progress in any case after an outbound call has been accepted by the network, so that a message or SIT tone can be detected (complementary of the above).

Note: Call progress detection is not started for Italy, if the user sets the connect mask to connect on SIGNAL. This saves DSP resources.

0x9

ADI.EUC.debugmask

mask

Specifies generated trace messages are generated (run agtrace 1000 or higher to see them):

· 0x01: Show all states as they are entered

· 0x02: Show sent and received digits

· 0x04: Show signaling bits

· 0x08: Print a description of timeout- related errors

These values can be ORed for cumulative effect.

0x0

Non-editable Parameters

The following parameters are country or network-specific, and cannot be modified:

Parameter name

Unit

Comments

Example

ADI.EUC.seizureacktime

ms

Relevant to outbound protocols. Specifies time to wait for seizure acknowledgment after seizing the line.

10000

ADI.EUC.seizurewaittime

ms

Relevant to outbound protocols. Specifies the time to wait to be seized in a two-way trunk, after the TCP seized the line.

200

ADI.EUC.answerwaittime

internal

Relevant to outbound protocols. Specifies the maximum time for the protocol to wait after the call accepted indication until the phone is answered (seconds).

90

ADI.EUC.acceptwaittime

ms

Relevant to outbound protocols. Specifies the maximum time for the protocol to wait after dialing before being notified that either the call has been accepted and the phone is ringing, or that the call has been rejected.

20000

ADI.EUC.digitspilltime

ms

Relevant to inbound protocols. Specifies the total time the dialing process is allowed to take.

40000

ADI.EUC.waitforPCtime

ms

Relevant to inbound protocols. Specifies the time the protocol waits for the host to decide if an inbound call should be accepted or rejected.

10000

ADI.EUC.bitqualtime

ms

Specifies the qualification time for bit changes.

20

ADI.EUC.interdigitreceivetime

ms

Relevant to inbound protocols. While receiving decadic pulses, if the number of expected incoming digits is not known, this parameter specifies the time between two trains of pulses to conclude that the incoming dial string is finished.

5000

ADI.EUC.winktime

ms

Relevant to inbound protocols. Specifies the duration of an inbound wink. Depending on the target country, the wink has a different meaning and occurs at different phases of call setup.

150

ADI.EUC.toneontime

ms

Specifies the time a DTMF tone should be ON while dialing.

80

ADI.EUC.toneofftime

ms

Specifies the time a DTMF tone should be OFF while dialing.

80

ADI.EUC.pulseontime

ms

Specifies the time a pulse should be ON while dialing with decadic pulses.

50

ADI.EUC.pulseofftime

ms

Specifies the time a pulse should be OFF while dialing with decadic pulses.

50

ADI.EUC.hightoneamplitude

IDU

Specifies the amplitude of the higher frequency of the DTMF tones while dialing.

352

ADI.EUC.lowtoneamplitude

IDU

Specifies the amplitude of the lower frequency of the DTMF tones while dialing.

440

ADI.EUC.interdigitsendtime

ms

Relevant to outbound protocols. Specifies the time between two trains of pulses while dialing with decadic pulses.

700

ADI.EUC.ringfreq

Hz

Relevant to inbound protocols. Specifies the ring tone frequency.

425

ADI.EUC.ringontime

ms

Relevant to inbound protocols. Specifies the time the ring tone is on in a ring cycle.

1000

ADI.EUC.ringofftime

ms

Relevant to inbound protocols. Specifies the time the ring tone is off in a ring cycle.

4000

ADI.EUC.busyfreq

Hz

Relevant to inbound protocols. Specifies the busy tone frequency.

425

ADI.EUC.busyontime

ms

Relevant to inbound protocols. Specifies the time the busy tone is on in a busy cycle.

500

ADI.EUC.busyofftime

ms

Relevant to inbound protocols. Specifies the time the busy tone is off in a busy cycle.

500

ADI.EUC.fastbusyontime

ms

Relevant to inbound protocols. Specifies the time the congestion tone is on.

250

ADI.EUC.fastbusyofftime

ms

Relevant to inbound protocols. Specifies the time the congestion tone is off.

250

ADI.EUC.CPtoneslevel

IDU

Relevant to inbound protocols. Specifies the amplitude of call progress tones (ring and busy).

350

ADI.EUC.signalingflags

mask

Two bytes devoted to the protocol's signaling flags. They are 0x1 DTMF (1) or decadic (0) dialing. AND the value of the parameter with this value to extract them.

0x1

ADI.EUC.NMScountry

internal

NMS code for the target country.

25
(
Italy)

Timers related to the AG Quad board resource management

ADI.EUC.resourcegettimes

internal

This parameter addresses a special need of protocols running on a AG Quad board with resource management enabled. If this is the case, for certain operations it is necessary to acquire a resource from a resource pool on the board. The parameter defines to timeouts after which the operation is aborted if a resource is not available. This is a very unlikely occurrence though.

· Low byte: time to wait for resource before placing a call (15 s)

· High byte: time to wait for resource when a resource is needed by inbound to release a call (e.g. to play a cleardown tone) (10 s)

0x0a0f

Inbound Calls: Retrieving Digits All at Once

With EUC TCPs, after ADIEVN_INCOMING_CALL is received, the calledaddr field in the ADI_CALL_STATUS structure contains all received digits. The callingaddr, usercategory and tollcategory fields are NULL.

The parameter ADI.EUC.digitnumber determines the number of digits the TCP should expect from the calling party. Default is 7.

Inbound Calls: Retrieving Digits One at a Time

EUC TCPs do not recognize ANI or category digits. Digits are presented in the order in which they arrive. The ADI.EUC.digitnumber parameter determines how many digits to expect.

Outbound Calls: Digit Format

EUC TCPs expect the digit string to be formatted as follows:

d1 dn

ANI and category indicators are not used in EUC TCPs.

International Wink Start (IWK)

In this section we describe the International Wink Start TCP parameters, and all operations that are specific to the IWK TCP within the framework of Natural Call Control.

The IWK TCP implements the national CAS specifications of the Republic of China (Taiwan) and Hong Kong, both of which define protocols derived from the US T1 Wink Start protocol. This protocols use one- or two-bits line signaling and DTMF or MF digit spill register signaling. The two protocols are similar enough to be implemented by the same trunk control program.

The IWK TCP is programmed by the parameters described below to implement the specifications of all supported countries and network operators.

Caution:

Most of the parameters that follow are signaling-specific: changing their value would not only invalidate any approval certificate for the used board, but could also cause the board to malfunction. These parameters are described for reference purposes only.

Other parameters program the interaction the TCP has with the host, or act on features not regulated or that can change from switch to switch within the same network. These are changeable, and indeed, the application developer is often asked to do so. These parameters are in the first table below.

Editable Parameters

Users can modify the following IWK parameters:

Parameter name

Unit

Comments

Default

ADI.IWK.numdigits

number

Relevant to inbound protocol. Specifies the number of incoming digits to expect.

7

ADI.IWK.optionflags

number

· Relevant to inbound protocols. Flags controlling optional TCP behavior:

· Bit 0 (&0x1): variable number of incoming digits: notify the host of an inbound call if a timeout occurs during digit reception (if 1), or reject the call (if 0)?

· Bit 1 (&0x2): relevant for Hong Kong only.

if 1: Use pulse on idle line signaling.

if 0: Use pulse on busy line signaling.

· Bit 2 (&0x4): If 1, use MF dialing, if 0, use DTMF.

· Bit 3 (&0x8): If 1, dial with decadic pulses (overriding the previous bit).Bit 4 (&0x10): If 1, play cleardown tone while hanging up (inbound).

0x1

ADI.IWK.debugmask

mask

Specifies what trace messages are generated (run agtrace 1000 or higher to see them):

· 0x01: Show all states as they are entered.

· 0x02: Show sent and received digits.

· 0x04: Show signaling bits.

· 0x08: Print a description of timeout- related errors.

These values can be ORed for cumulative effect.

0x0

Non-editable Parameters

The following parameters are country or network-specific, and cannot be modified.

Parameter name

Unit

Comments

Example

Bit changes qualification timers - during different phases of the protocol.

ADI.IWK.qualaddron

ms

Qualification time for signaling bit going to ON, during register signaling phase of call setup.

50

ADI.IWK.qualaddroff

ms

Qualification time for signaling bit going to OFF, during register signaling phase of call setup.

50

ADI.IWK.qualdisconnect

ms

Qualification time for signaling bit during disconnect.

150

ADI.IWK.qualpermsignal

number (s)

Duration of blocking signal, before signaling out of service to the host.

60

Signaling defaults

ADI.IWK.signalingflags

ms

Specify:

· Bit 0 (&0x01): register signaling - if 1, prefix with/expect compelled KP tone.

· Bit 1 (&0x02): line signaling - if 1, inbound doesn't send a wink (immediate start).

0

ADI.IWK.defaulttone

internal

Inbound: default tone the TCP plays on host timeout while receiving inbound call:

· 0 = reorder (fast busy)

· 1 = ringing

· 2 = busy

100

ADI.IWK.winktime

ms

Inbound: Specifies the duration of the wink used by the TCP to signal seizure acknowledgement.

200

ADI.IWK.waitforPCtime

ms

Inbound: Specifies the time to wait for the host to answer after an inbound call event has been sent.

10000

ADI.IWK.prewinktime

ms

Inbound: Time to wait before sending the wink that acknowledges the seizure.

100

Call progress tones parameters. These are the tones inbound puts on the line after register signaling, to accept or reject a call.

ADI.IWK.ringfreq1

Hz

Inbound: Specifies the first ring tone frequency.

440

ADI.IWK.ringfreq2

Hz

Inbound: Specifies the second ring tone frequency.

480

ADI.IWK.ringontime

ms

Inbound: Specifies the time the ring tone is on in a ring cycle.

400

ADI.IWK.ringofftime1

ms

Inbound: Specifies the duration of the first or only time the ring tone is off in a ring cycle.

200

ADI.IWK.ringofftime2

ms

Inbound: specifies the duration of the second time the Specifies tone is off in a ring cycle.

3000

ADI.IWK.busyfreq1

Hz

Inbound: Specifies the first busy tone frequency.

480

ADI.IWK.busyfreq2

Hz

Inbound: Specifies the second busy tone frequency.

620

ADI.IWK.busyontime

ms

Inbound: Specifies the time the busy tone is on in a busy cycle.

500

ADI.IWK.busyofftime

ms

Inbound: Specifies the time the busy tone is off in a busy cycle.

500

ADI.IWK.reorderontime

ms

Inbound: Specifies the time the congestion tone is on.

250

ADI.IWK.reorderofftime

ms

Inbound: Specifies the time the congestion tone is off.

250

ADI.IWK.CPtoneslevel

IDU

Inbound: Amplitude of the call progress tones.

350

More timers for the inbound protocol

ADI.IWK.wait1stdigittime

ms

Inbound: Time to wait after seizure acknowledge for the first digit to arrive.

350

ADI.IWK. waitfordigitstime

ms

Inbound: Time to wait for every next digit.

350

Outbound protocol parameters

ADI.IWK. winkwaittime

ms

Outbound: Time to wait for seizure acknowledge after seizing the line

350

ADI.IWK. minwinktime

ms

Outbound: Minimum duration of the seizure acknowledgement wink.

100

ADI.IWK. maxwinktime

ms

Outbound: Maximum duration of the seizure acknowledgement wink.

4900

ADI.IWK. predialtime

ms

Outbound: Time to wait after the wink to start dialing.

70

ADI.IWK. mfkpstontime

ms

Outbound: Duration of the KP and ST tones, if transmitted.

80

ADI.IWK. mfkpstofftime

ms

Outbound: Duration of the silence after the KP and ST tones.

80

ADI.IWK. mfkpstampl

IDU

Outbound: Amplitude of the KP and ST tones.

352

ADI.IWK. pulseontime

ms

Outbound: Duration of a decadic dialing pulse.

50

ADI.IWK. pulseofftime

ms

Outbound: Duration of the period between decadic dialing pulses.

50

ADI.IWK. releaseguardtime

ms

Outbound: Time after an outbound call in which the TCP will not place another call.

1000

Timers related to the AG Quad board resource management

ADI.IWK.resourcegettimes

internal

This parameter addresses a special need of protocols running on a AG Quad board with resource management enabled. If this is the case, for certain operations it is necessary to acquire a resource from a resource pool on the board. The parameter defines to timeouts after which the operation is aborted if a resource is not available. This is a very unlikely occurrence though.

Low byte: time to wait for resource before placing a call (15 s)

High byte: time to wait for resource when a resource is needed by inbound to release a call (e.g. to play a cleardown tone) (10 s)

0x0a0f

Inbound Calls: Retrieving Digits All at Once

With IWK TCPs, after ADIEVN_INCOMING_CALL is received, the calledaddr field in the ADI_CALL_STATUS structure contains all received digits. The callingaddr, usercategory and tollcategory fields are NULL.

The parameter ADI.IWK.digitnumber determines the number of digits the TCP should expect from the calling party. The default is 7.

Inbound Calls: Retrieving Digits One at a Time

IWK TCPs do not recognize ANI or category digits. Digits are presented in the order in which they arrive. The ADI.IWK.digitnumber parameter determines how many digits to expect.

Outbound Calls: Digit Format

IWK TCPs expect the digit string to be formatted as follows:

d1 dn

ANI and category indicators are not used in IWK TCPs.

Signaling System Number 5 (SS5)

In this section we describe the Signaling System Number 5 TCP parameters, and all operations that are specific to the SS5 TCP within the framework of Natural Call Control.

The SS5 TCP implements the CCITT Recommendations Q.140-Q.164, "Specifications of Signaling System No. 5", CCITT Red Book, Volume VI, Fascicle VI.2, Geneva 1985.

This protocol uses compelled in-band single- or dual-frequency line signaling, and MF digit spill register signaling. Since no bit signaling is used, this is not strictly a digital CAS protocol, but can be used on analog trunks as well. However, Natural MicroSystems implementation is for digital boards.

The SS5 TCP is programmed by the parameters described below to implement the specifications of all supported countries and network operators.

Caution:

Most of the parameters that follow are signaling-specific: changing their value would not only invalidate any approval certificate for the used board, but could also cause the board to malfunction. These parameters are described for reference purposes only.

Other parameters program the interaction the TCP has with the host, or act on features not regulated or that can change from switch to switch within the same network. These are changeable, and indeed, the application developer is often asked to do so. These parameters are in the first table below.

Editable Parameters

Users can modify the following SS5 parameters:

Parameter name

Unit

Comments

Default

ADI.SS5.numdigits

number

Relevant to inbound protocol. Specifies the number of incoming digits to expect.

Note: this is overridden if the outbound party sends a ST (end of dialing) tone. A ST tone is foreseen in the CCITT specifications, but can be missing.

7

ADI.SS5.optionflags

mask

Relevant to inbound protocols. Flags controlling optional TCP behavior:

· bit 0 (&0x1): Variable number of incoming digits: notify the host of an inbound call if a timeout occurs during digit reception (if 1), or reject the call (if 0). Note that this is only valid if the ST tone is missing.

· bit 1(& 0x2): Set this bit if you need to play a message while rejecting a call. If the bit is set, the TCP will not send to the network the "busy flash" clearback signal to reject the call, but will wait for a clear forward signal instead.

0x1

ADI.SS5.debugmask

mask

Specifies what trace messages are generated (run agtrace 1000 or higher to see them):

· 0x01: Show all states as they are entered

· 0x02: Show sent and received digits

· 0x04: Show signaling bits

· 0x08: Print a description of timeout- related errors

These values can be ORed for cumulative effect.

0x0

Non-editable Parameters

The following parameters are country or network-specific, and cannot be modified:

Parameter name

Unit

Comments

Example

Line signaling timers - during different phases of the protocol.

ADI.SS5.intersignaltime

ms

The minimum time between two line signals in the same direction. Must be kept for signal qualification reasons.

100

ADI.SS5.longqualtime

ms

Qualification time almost all signaling tones. A tone must be present on the line for at least this duration to be recognized.

125

ADI.SS5.shortqualtime

ms

Qualification time for the seizure / proceed to send compelled signal. It is shorter to minimize the possibility of glare.

40

ADI.SS5.connectqualtime

ms

Qualification time during the connected phase of a call. It is longer to minimize the possibility of talkoff (voice being erroneously recognized as a line signal).

1000

ADI.SS5.glarewaittime

ms

Time to wait for the seizure signal to stop, if glare occurs. If an outbound protocol seizes the line by playing a seizure tone, and subsequently recognizes a tone on the line that is not the proceed-to-send tone, it must wait for this time for the other tone to stop.

850

ADI.SS5.signalcompelledtime

ms

First compelled signal maximum duration.

10000

ADI.SS5.ackcompelledtime

ms

Acknowledgment compelled signal maximum duration.

4000

ADI.SS5.compelledtoneslevel

IDU

Amplitude of compelled line signaling tones.

250

Inbound answer phase parameters

ADI.SS5.waitforPCtime

ms

Inbound: Specifies the time to wait for the host to answer after an inbound call event has been sent.

30000

ADI.SS5.ringfreq1

Hz

Inbound: Specifies the first ring tone frequency.

440

ADI.SS5.ringfreq2

Hz

Inbound: Specifies the second ring tone frequency.

480

ADI.SS5.ringontime

ms

Inbound: Specifies the time the ring tone is on in a ring cycle.

1000

ADI.SS5.ringofftime1

ms

Inbound: Specifies the duration of the first or only time the ring tone is off in a ring cycle.

4000

ADI.SS5.ringofftime2

ms

Inbound: Specifies the duration of the second time the ring tone is off in a ring cycle (if there is a second period of silence).

0

ADI.SS5.busyfreq1

Hz

Inbound: Specifies the first busy tone frequency.

480

ADI.SS5.busyfreq2

Hz

Inbound: Specifies the second busy tone frequency.

620

ADI.SS5.busyontime

ms

Inbound: Specifies the time the busy tone is on in a busy cycle.

500

ADI.SS5.busyofftime

ms

Inbound: Specifies the time the busy tone is off in a busy cycle.

500

ADI.SS5.fastbusyontime

ms

Inbound: Specifies the time the congestion tone is on.

250

ADI.SS5.fastbusyofftime

ms

Inbound: Specifies the time the congestion tone is off.

250

ADI.SS5.CPtoneslevel

IDU

Inbound: Amplitude of the call progress tones.

350

Register signaling timers for the inbound protocol

ADI.SS5.waitKPtime

ms

Inbound: Max time to wait after seizure acknowledge for the KP "start of dialing" digit to arrive.

7000

ADI.SS5.waitdigittime

ms

Inbound: Max time to wait for every next digit.

8000

Register signaling parameters for the outbound protocol

ADI.SS5.outdialdelay

ms

Outbound: Time to wait after receiving the proceed-to-send signal, before starting to dial

100

ADI.SS5.KPandSTontime

ms

Outbound: Duration of the KP and ST tones

100

ADI.SS5.MFtoneontime

ms

Outbound: Duration of MF tones

55

ADI.SS5.MFtoneofftime

ms

Outbound: Duration of silence between MF tones

55

ADI.SS5.MFtoneslevel

IDU

Outbound: Amplitude of MF tones

352

ADI.SS5.outboundguardtime

ms

Outbound: Time after an outbound call in which the TCP will not place another call

300

Inbound Calls: Retrieving Digits All at Once

With SS5 TCPs, after ADIEVN_INCOMING_CALL is received, the calledaddr field in the ADI_CALL_STATUS structure contains all received digits. The callingaddr, usercategory and tollcategory fields are NULL.

The parameter ADI.SS5.digitnumber determines the number of digits the TCP should expect from the calling party. The default is 7.

Inbound Calls: Retrieving Digits One at a Time

The SS5 TCP does not recognize ANI or category digits. Digits are presented in the order in which they arrive. The ADI.SS5.digitnumber parameter determines how many digits to expect, but is active only if the outbound party does not send a "ST" tone (end of dial) at the end of register signaling.

Outbound Calls: Digit Format

Two "KP" digits are possible in the SS5 protocol. These are KP1 ("D", the starting digit for national calls), and KP2 ("E", the starting digit for international calls).

KP1 is the default KP tone, so if the application wants to use KP1 as the starting digit, SS5 TCPs expect the digit string to be formatted as follows:

d1 dn

However, if the application wants to send a different KP digit, the digit string must be formatted as follows:

# KP# d1 dn

Note: ANI and category indicators are not used in SS5 TCPs.

System R1.5 (R15)

In this section we describe the System R1.5 TCP parameters, and all operations that are specific to the R15 TCPs within the framework of Natural Call Control.

The R15 TCPs implement a number of different protocols that are in use in the Russian telephone network. The protocols run on E1 trunks. Two separate TCPs are used for inbound and outbound calls, since the protocols structure exclude the possibility of two-way trunks. They are named r150.tcp and r151.tcp. Separate call setup schemes are used for local and long distance calls as well; both TCPs support both schemes.

The R15 inbound and outbound TCPs have common parameters structures though. They are programmed by the parameters described below.

Caution:

Most of the parameters that follow are signaling-specific: changing their value would not only invalidate any approval certificate for the used board, but could also cause the board to malfunction. These parameters are described for reference purposes only.

Other parameters program the interaction the TCP has with the host, or act on features not regulated or that can change from switch to switch within the same network. These are changeable, and indeed, the application developer is often asked to do so. These parameters are shown in the first table below.

Editable Parameters

Users can modify the following R15 parameters:

Parameter name

Unit

Comments

Default

ADI.R15.DIDnumber

number

Inbound. Specifies the number of incoming DID digits to expect.

7

ADI.R15.ANInumber

number

Inbound. Number of ANI digits to expect. If this parameter is set to 0, then the inbound protocol would not attempt to request the ANIs. If this parameter is set to any other number, the inbound protocol will request the ANIs, and will receive as many as the outbound side will provide.

8

ADI.R15.optionflags

mask

inbound and outbound. Flags controlling optional TCP behavior:

(MF-Pulse Shuttle protocol is the default register signaling for both inbound and outbound protocols and can be combined or replaced with some other types of register signaling).

· bit 0 (& 0x1): Set this bit to do Decadic dialing (for both inbound and outbound protocols).

· bit 1 (& 0x2): Set this bit for long distance inbound protocol.

· bit 2 (& 0x4):Set this bit to make the transmission of ANIs mandatory (relevant to the outbound protocol).

· bit 3 (& 0x8): Set this bit to make the reception of ANIs mandatory (relevant to the inbound protocol).

· bit 4 (& 0x10): (default) Play busy on timeout.

· bit 5 (& 0x20): Play fast busy on timeout.

· bit 6 (& 0x40): Play silence on timeout.

· bit 7 (& 0x80): Enable the detection of ANIs one at a time.

These values can be ORed for cumulative effect.

0x10

ADI.R15.debugmask

mask

Specifies what trace messages are generated (run agtrace 1000 or higher to see them):

· 0x01: Show all states as they are entered

· 0x02: Show sent and received digits

· 0x04: Show signaling bits

· 0x08: Print a description of timeout- related errors

These values can be Ored for cumulative effect.

0x0

ADI.R15.firstcommand

number

inbound. First command for inbound protocol.

Acceptable values: 1, 2, 3

If the value is set to 2 or 3, make sure that the ADI.R15.DIDnumber is set to a correct value.

1 = Send first digit.

2 = Send next digit.

3 = Send previous digit.

1

ADI.R15.anirequestattempts

number

inbound. The parameter specifies the number of attempts to obtain ANIs. If the parameter is set to 0, no attempts will be made.

When the reception of ANIs is mandatory (bit 0x8 in ADI.R15.optionflags is set) and no ANIs are received after the first attempt, this parameter can be used to perform additional ANI requests before clearing back.

1

ADI.R15.dialstartposition

number

outbound. The value of this parameter is used to define the starting position within a dial string; i.e. when the first request from the inbound, defined by ADI.R15.firstcommand, is B2 (send next digit) or B3 (send the previous digit) the first DID that is presented by the outbound side is located in the "ADI.R15.dialstartposition" position.

4

Non-editable Parameters

The following parameters instead are country- or network-specific, and cannot be modified.

Parameter name

Unit

Comments

Example

ADI.R15.qualtime

ms

Specifies the qualification time for bit changes.

20

ADI.R15.waitbegintime

ms

Specifies the delay before starting to play the forward and backward tones.

60

Outbound Timers

ADI.R15.seizetime

ms

Specifies the maximum time to receive the seizure acknowledge.

400

ADI.R15.waitbacksignaltime

ms

Specifies the maximum time to receive a backward request.

4000

ADI.R15.pausefrstdigittime

ms

Specifies the initial wait before dialing the first decadic pulse.

300

ADI.R15.interdigittime

ms

Specifies the time between two trains of pulses while dialing with decadic pulses.

750

ADI.R15.confirmanswertime

ms

Specifies the timeout for differentiating answer vs. ANI request which is the same line code but accompanied by a 500 Hz tone.

275

Inbound Timers

ADI.R15.waitfrwdsignaltime

ms

Specifies the maximum time to receive a forward signal.

350

ADI.R15.waitfrwddeksignaltime

ms

Specifies the maximum time to receive a decadic digit.

4000

ADI.R15.inbinterdigittime

ms

Specifies the time to wait before deciding that a train of decadic pulses is over.

200

ADI.R15.waitforPCtime

ms

Specifies the time for the TCP to wait for the host to answer or reject the call.

10000

Inbound ANI Detector Timers

ADI.R15.anitonetimeout

ms

Specifies the time to wait before deciding that the transmission of ANIs is over.

100

ADI.R15.anirequesttimeout

ms

Specifies the timeout to get the first ANI.

1000

ADI.R15.answersignalontime

ms

Specifies the duration of line signal AB-10 (answer) when requesting ANIs.

500

ADI.R15.requestdelaytime

ms

Specifies the delay between A-12 and the ANI request line signal AB-10.

2000

ADI.R15.tonedelaytime

ms

Specifies the delay between signaling answer during the ANI request and sending the 500 Hz tone.

230

ADI.R15.anirequestontime

ms

Specifies the duration of 500 Hz tone during an ANI request.

110

Dialing Control

ADI.R15.toneontime

ms

Specifies the duration of the MF tone used to convey DID information (backward and forward).

45

ADI.R15.toneofftime

ms

Specifies the silence between the MF tones used to convey DID information (backward and forward) - also used for echo cancellation.

45

ADI.R15.pulseontime

ms

Relevant to the outbound protocol. Specifies the time a pulse should be ON while dialing with decadic pulses.

50

ADI.R15.pulseofftime

ms

Relevant to the outbound protocols. Specifies the time a pulse should be OFF while dialing with decadic pulses.

50

ADI.R15.anitoneontime

ms

Relevant to outbound protocols. Specifies the duration of the MF tone used to convey ANI information .

40

ADI.R15.toneslevel

IDU

Specifies the amplitude of MF (call setup) tones (forward and backward).

315

Ring/Busy Control

ADI.R15.ringfreq

Hz

Relevant to inbound protocols. Specifies the ring tone frequency.

425

ADI.R15.ringontime

ms

Relevant to inbound protocols. Specifies the time the ring tone is on in a ring cycle.

1000

ADI.R15.ringofftime

ms

Relevant to inbound protocols. Specifies the time the ring tone is off in a ring cycle.

3000

ADI.R15.busyfreq

Hz

Relevant to inbound protocols. Specifies the busy tone frequency.

425

ADI.R15.busyontime

ms

Relevant to inbound protocols. Specifies the time the busy tone is on in a busy cycle.

300

ADI.R15.busyofftime

ms

Relevant to inbound protocols. Specifies the time the busy tone is off in a busy cycle.

300

ADI.R15.fastbusyontime

ms

Relevant to inbound protocols. Specifies the time the congestion tone is on.

150

ADI.R15.fastbusyofftime

ms

Relevant to inbound protocols. Specifies the duration of the first period of time the congestion tone is off.

150

ADI.R15.Cptoneslevel

IDU

Specifies the amplitude of call progress tones.

315

Miscellaneous

ADI.R15.resourcerequesttime

mask

Specifies the time to wait for resources.

0x0a0f

Inbound Calls: Retrieving Digits All at Once

When the application receives the ADIEVN_INCOMING_CALL event, not all information regarding the inbound call is available. The missing information is the caller's category and ANI digits. This is because the R1.5 protocol sends the category and ANI digits only after the call has been accepted by the inbound party. So the ADI_CALL_STATUS has only one relevant field that is filled if the application calls adiGetCallStatus after a ADIEVN_INCOMING_CALL event:

Field

Description

calledaddr

The called number. Also referred to as the Direct Inward Dial (DID) number.

If the application accepts the call, the TCP collects the caller's category and ANI digits. Once they are available, the application receives a ADIEVN_STATUSINFO_UPDATE, with a value of CALL_STATUS_CALLINGADDR (1).

Note: The application must explicitly enable the reception of this event before starting the protocol, by setting the ADI_CC_REPTSTATUSINFO bit in the ADI.START.callctl.eventmask parameter.

A subsequent call to adiGetCallStatus yields the following new fields:

Field

Description

callingaddr

The calling number (if available). Also referred to as the Automatic Number Identification (ANI) number.

usercategory

The calling party category, e.g. normal subscriber, operator, maintenance equipment.

Two parameters affect the way the R15 TCPs accept and process digits:

Parameter

Description

ADI.R15.DIDnumber

This parameter determines the number of Direct Inward Dial (DID) digits the TCP should expect from the calling party. Default is 7.

ADI.R15.ANInumber

This parameter determines the number of ANI and category digits the TCP should expect from the calling party. For local inbound calls, if the parameter is set to 0, the ANI request will not be attempted; otherwise the TCP retrieves all the digits the calling party will send. This parameter is not relevant for long distance inbound calls.

Inbound Calls: Retrieving Digits One at a Time

The R15 TCP sends the incoming DID digits to the application one at a time in the following sequence:

d1 dn

where n is determined by the adi.r15.DIDnumber parameter.

If the application sets bit 7 (& 0x80) of the parameter ADI.R15.optionflags, the TCP also provides the ANI digits and the caller category as they arrive. This happens after the call is accepted by the application. Due to the working of the protocol, ANI digits may be:

Outbound Calls: Digit Format

R15 TCPs expect the digit string to be formatted as follows:

# c a1 . am # d1 dn

where:

c

User category of the calling party.

a1 am

ANI digits (the address of the calling party).

d1dn

DID digits (the address of the called party).

#

NMS separator symbol.

User category and ANIs can be omitted if the connection does not require them to be present. If these are omitted, the digit string should be formatted as follows:

d1 dn



(Page 1 of 1 in this chapter)


tech_support@nmss.com
Copyright © 1998, Natural MicroSystems, Inc. All rights reserved.