Table of Contents Index NMS Glossary Previous Page Next Page Version


Chapter 5

Analog Loop Start Protocols


5.1 Introduction
5.1.1 Capability Mask
5.2 Signaling Overview
5.3 Parameters
5.3.1 Editable Parameters
5.3.2 Non-editable Parameters
5.4 Special TCP Behavior
5.4.1 Release Guard
5.4.2 Call Transfer on Loop Start lines
5.4.3 Loop Current Reversal Parameters
5.4.4 Caller ID

5.1 IntroductionTop of Page

This chapter describes the analog loop start signaling protocol and TCP parameters. It provides the following information:

Natural MicroSystems loop start protocols cover both analog and digital interfaces. The analog loop start protocol is implemented by the LPS0 TCP. The analog variations act much as a telephone terminal, connected to a local switch or PBX through a local loop. These variations run on NMS analog line interface boards, AG-8 and AG 2000.

5.1.1 Capability MaskTop of Page

With the NCC service, an application can call nccQueryCapability to determine the capabilities of a protocol. nccQueryCapability returns a capabilitymask.

For information about the capabilities supported for NMS CAS protocols with NCC call control, refer to Appendix A.

5.2 Signaling OverviewTop of Page

The following tables describe analog loop start signaling. Two tables are necessary, because the protocol changes depending on the side that started the call.

The following table describes the case where the switch presents the call to the terminal equipment:
State

Outbound Switch

Line

Inbound Terminal

Idle

No loop current

Ringing

Apply ringing voltage

Ringing voltage

(Telephone rings)

After the first ring, the network can send caller ID information on the line using modem tones. The LPS TCP can detect caller ID, following specifications for USA, France, and Japan. At this point, the incoming call is presented to the application, which can answer it or reject it. If the call is answered, the LPS TCP picks up the phone.

Answer - conversation state

Loop current

Off-hook

If the inbound side application rejects the call, the LPS TCP does not pick up the phone, and eventually the calling party abandons the call.

While the call is in conversation state, if it is connected to a PBX that supports this feature, the call can be transferred to a different extension. Different PBXs support transferring calls in different ways (the usual way is to send a flash, then dial the required extension). A parameterized sequence of actions is executed by the LPS TCP in order to transfer the call.

Clear

Loop current interruption, or cleardown tone

Idle

No loop current

The following table illustrates the case where the terminal equipment places the call:
State

Outbound terminal

Line

Inbound switch

Idle

No loop current

Seizure

Off-hook

Loop current

Seizure acknowledge

Dial tone

The outbound side starts to send the address information. This can be done by means of DTMF tones, or by decadic pulses. If the method is decadic pulses, the loop current is switched on (pulse on) and off (pulse off) repeatedly to signal the digits.

Call progress tones

Ring tone

If the called terminal rejects the call, the LPS TCP detects the busy tone on the line, and abandons the call. Or, if the called terminal does not answer, the TCP abandons the call after a parameterized number of rings.

Answer - conversation state

Voice

(Someone has answered)

While the call is in conversation state, if it is connected to a PBX that supports this feature, the call can be transferred to a different extension. Different PBXs support transferring calls in different ways (the usual way is to send a flash, then dial the required extension). A parameterized sequence of actions is executed by the LPS TCP in order to transfer the call.

Clear

Loop current interruption, or cleardown tone

Idle

No loop current

5.3 ParametersTop of Page

The analog loop start TCP is programmed for operation within different countries and networks by a number of TCP-specific parameters. These parameters are stored within the parameter category NCC.X.ADI_LPS.

Parameters in this category fall into two groups:

5.3.1 Editable ParametersTop of Page

The following table describes analog loop start parameters (within the parameter category NCC.X.ADI_LPS) that you may modify. Also listed are the equivalent ADI.LPS parameters, to assist with migration from ADI to NCC.

NCC Field Name

ADI Field Name

Type/Unit

Default

Description

cidsupport

cidsupport

mask

0

Flag to enable caller ID detection.

0 No caller ID

1 Caller ID detection enabled

Your AG configuration file must include the DSP file adsir.m54 when caller ID is enabled.

cleardownflag

cleardownflag

mask

1

Selects whether to run the cleardown tone detector in conversation state.

1 Cleardown enabled

0 Not enabled

connstring

connstring

string[6]

"!"

String for transfer back to the Connected state with the first call. It is dialed if a call transfer fails, where:

! Flash hook. *

nodialtoneaction

nodialtoneaction

integer

0

Selects what to do if no dial tone detected.

0 Hang up and abandon the call

1 Proceed to dial anyway

2 Generate an inbound call event

reversalmode

reversalmode

integer

0

Selects loop current reversal detection mode.

0 Disable detection

1 Reversal indicates remote answer

2 Reversal indicates remote hang up

3 Reversal indicates answer and hang up.

ringstoincoming

numrings

count

0

Number of rings to detect for an inbound call. If 0, the TCP generates an inbound call event upon beginning of the first ring, otherwise it sends the event at the end of the selected number of rings. Note that if caller ID is enabled (cidsupport = 1) then the inbound call is reported after at least one ring.

0 1st ring begin

1 1st ring end

# n After n rings

xferstring

xferstring

string[6]

"!;"

Prefix dial string for call transfer. The string is dialed before dialing the number, where:

! Flash hook

; (semicolon) Wait for precise dial tone.1

xfersupport

xfersupport

mask

1

Flag to select whether PBX transfer is enabled.

0 Transfer commands are disabled

1 Transfer commands are enabled

1 A string parameter occupies more than one index in the parameters list. Since the parameter list unit is WORDs (two bytes each), a string of maximum 6 characters will occupy 3 indices.

5.3.2 Non-editable Parameters Top of Page

Caution:

Most of the parameters that follow are signaling-specific: changing their value will invalidate any approval certificate for the used board, and may cause the board to malfunction. These parameters are described here for reference purposes only.

NCC Field Name

ADI Field Name

Type/Unit

Default

Description

CIDalertmaxtime

CIDalertmaxtime

ms

0

Maximum duration of an alert signal in caller ID protocol (if CID is enabled).

CIDmaxwaittime

CIDmaxwaittime

ms

8000

Maximum time to wait for caller ID to arrive before concluding the caller has hung up (if CID is enabled).

CIDminmarktime

CIDminmarktime

ms

100

Minimum duration of the mark signal of the caller ID protocol that is interpreted as such.

CIDtype

CIDtype

integer

0

Type of caller ID protocol, if CID is enabled:

0 BellCore CID Protocol

1 NTT Japan CID Protocol

2 ETSI Ringing Pulse Alerting Signal CID
Protocol.

dialtonemintime

dialtonemintime

ms

1000

For outgoing calls, the minimum duration of non-precise dial tone required before dialing will begin. Set this to 0 to disable non-precise dial tone detection. (Precise dial tone detection is controlled by NCC.START parameters).

To comply with CTR21 standards, do not modify GER, GBR, or FRA parameters.

dialtonewaittime

dialtonewaittime

ms

5000

For outgoing calls, the maximum time to wait for initial dial tone.

To comply with CTR21 standards, do not modify GER, GBR, or FRA parameters.

freqdeglitchtime

freqdeglitchtime

count

26

For frequency-selective ring detection, deglitch time in 1/8 ms. Range is 2-80 (.25 to 10 ms).

freqringhigh

freqringhigh

Hz

54

For frequency-selective ring detection, the maximum frequency recognized.

To comply with CTR21 standards, do not modify GER, GBR, or FRA parameters.

freqringlow

freqringlow

Hz

16

For frequency-selective ring detection, the minimum frequency recognized.

To comply with CTR21 standards, do not modify GER, GBR, or FRA parameters).

freqringperiods

freqringperiods

count

4

For frequency-selective ring detection, number of periods of the ring frequency needed to qualify. Range is 1 - 8.

freqtolerance

freqtolerance

percentage

10

For frequency-selective ring detection, frequency tolerance.

interringmaxtime

interringmaxtime

ms

8000

The maximum length of an incoming ring period (on time + off time) that can elapse before the call is considered to be abandoned.

polaranswertime

polaranswertime

ms

0

Wait time after going off-hook answering a call before the TCP starts detecting the loop current polarity reversal on far-end disconnect (if reversalmode = 2 or 3).

polardialtime

polardialtime

ms

0

Wait time after dialing before starting the loop current polarity reversal detection
(if reversalmode = 1 or 3).

qualloopoff

qualloopoff

ms

10

Minimum duration of loop current interruption before a hang up will be recognized.

qualreversal

qualreversal

ms

200

Qualification time for loop current reversal event.

qualringoff

qualringoff

ms

100

For voltage-sensitive ring detection, the minimum duration of loss of detected voltage to be recognized as the end of a ringing signal.

qualringon

qualringon

ms

6

For voltage-sensitive ring detection, the minimum duration of detected voltage to be recognized as the start of a ringing signal.

releaseguardtime

releaseguardtime

ms

1000

If the host places a call immediately after releasing a call, the line is not taken off-hook until this time has elapsed, to ensure that the CO considers the line idle.

To comply with CTR21 standards, do not modify GER parameter.

ringdetectmode

ringdetectmode

mask

1

Selects whether the ring detector is voltage-sensitive or frequency-selective:

0 Voltage-sensitive

1 Frequency-selective.

ringsigmaxtime

ringsigmaxtime

ms

3000

The maximum duration of a detected incoming ringing signal before the ringing is considered to be too long.

ringsigmintime

ringsigmintime

ms

100

The minimum duration of a detected ring signal before the ring signal is considered valid.

5.4 Special TCP BehaviorTop of Page

The following sections describe operations that are specific to the loop start protocol within the framework of Natural Call Control.

5.4.1 Release GuardTop of Page

If you place a call immediately after releasing a call, the line is not taken off-hook until sufficient time has elapsed to ensure that the COs consider the line idle after the previous call. The release guard is controlled by the NCC.X.ADI_LPS.releaseguardtime parameter.

Note: The LPS0 TCP queues a command to place a call during this period and proceeds with dialing when the release guard time expires.

5.4.2 Call Transfer on Loop Start linesTop of Page

Call transfer operations use mostly the same parameters as outbound call placement operations. These parameters are stored in the NCC_ADI_PLACECALL_PARMS and NCC_ADI_CALLPROG_PARMS structures. For more details about the parameters stored in these structures, refer to the Natural Call Control Service Developer's Reference Manual.

Additional parameters you can specify with the loop start protocol are prefix dial strings for transfer and reconnect by modifying the NCC.X.ADI_LPS.connstring or NCC.X.ADI_LPS.xferstring parameters.

When in the Connected state, if an attempt is made to transfer a call, and transfer is enabled (NCC.X.ADI_LPS.xfersupport = 1), the TCP executes the commands contained in the string specified by the xferstring parameter before dialing the called address that was passed to nccAutomaticTransfer.

If the dial fails, NCCEVN_CALL_DISCONNECTED is sent up to the host, with reason NCC_DIS_DIAL_FAILURE (or NCC_DIS_NO_DIALTONE if dialtone was expected but not present). The protocol then returns to the Connected state. When returning to the Connected state, the second string specified by the connstring parameter is dialed.

5.4.3 Loop Current Reversal ParametersTop of Page

Some networks reverse the tip and ring polarity on the line when the far-end party hangs up. You can enable detection of loop current reversal events indicating
far-end disconnects by setting the reversalmode parameter in the protocol parameter file.

If detection of loop current reversal on far-end hang-up is enabled, the TCP will send the NCCEVN_CALL_DISCONNECTED event to the application after the called party hangs up. Then the application should call nccReleaseCall to return to the Idle state.
Caution:

Enable loop current reversal events only if the network provides this service. Otherwise the TCP may behave incorrectly.

If you are connected to the network that is equipped to reverse the tip and ring polarity to indicate the far end positive answer and/or disconnect events you may make these events available to the protocol by setting the NCC.X.ADI_LPS.reversalmode parameter to one of the following:
Value

Description

0

Disable the loop current polarity reversal detection.

1

Indicate remote answer if the switch reverses polarity.

2

Indicate remote hang-up if the switch reverses polarity.

3

Indicate both remote answer and hang-up if the switch reverses polarity twice.

If the polarity reversal detection is used as a far-end answer indication (reversalmode is set to 1 or 3), you need to wait for some time after the dialing period before starting the detector. Since the wait time duration depends on the switch you are connected to, you may need to modify the NCC.X.ADI_LPS.polardialtime parameter to adjust to the switch conditions.

If you use the polarity reversal to indicate the far-end hang-up (reversalmode is set to 2 or 3) some time should elapse after establishment of the loop condition and before starting the detector. This time interval may need to be adjusted to the switch conditions by setting the NCC.X.ADI_LPS.polaranswertime parameter with the appropriate value.

5.4.4 Caller IDTop of Page

Users of loop start trunks can subscribe to caller ID service. Caller ID information transfer is performed by using modem tones on the line at different times during the call set up. Different protocols are used in different countries to transfer caller ID information.

Note: Protocol parameters that control this behavior are set in the CAS protocol country-specific parameter file. These should not be modified.

Refer to Appendix B for more information on caller ID protocols and setup. Refer to Appendix B for information about the CID files supported for particular countries.

To enable your application to receive caller ID information, complete the following steps:

  1. Edit your ag.cfg file to include the following statement:

    
    DSPfile = adsir.dsp      (AG-8 boards)
    AG2DSPfile = adsir.m54 (AG 2000 boards)
  2. Enable caller ID TCP functionality by setting
    NCC.X.ADI_LPS.cidsupport = 1.

    
    
  3. Do not change the NCC.X.ADI_LPS.CIDtype parameter. This parameter is set to the following values for different countries:
    NCC.X.ADI_LPS.CIDtype Setting

    Description

    0

    BellCore CID Protocol. Data transmission occurs during the first long silent period between two ring patterns. Both multiple and single message formats are supported by the protocol.

    1

    NTT Japan CID Protocol. Line reversal followed by CAR Alerting Signal precedes FSK modulation transmission. Normal rings start after data transmission. The protocol supports the multiple message format.

    2

    ETSI Ringing Pulse Alerting Signal CID Protocol. (Ringing Pulse Alert Signal precedes FSK modulation transmission. Normal rings start after data transmission. The protocol supports the multiple message format.) Used in France.

    
    Note:  If caller ID is enabled, the NCCEVN_INCOMING_CALL event is sent on the second ring only if ringstoincoming <=2 and no CID is received.
    
    
  4. To retrieve caller ID data, respond to NCCEVN_INCOMING_CALL events by invoking nccGetCallStatus. Because the caller ID data is stored in the NCC_CALL_STATUS structure (on a call-by-call basis), applications must analyze the call status of every incoming call to retrieve caller ID information.

See Appendix A for information about country-specific caller ID fields that the software can recognize (if the user is subscribed to the CID service).



Table of Contents Index NMS Glossary Previous Page Next Page Version


Want to send us feedback on our documentation? Email: Tech_Pubs@nmss.com
Copyright © 2001, Natural MicroSystems, Inc. All rights reserved.