(Page 1 of 1 in this chapter)


Chapter 7

Analog Loop Start Protocols


7.1 Introduction
7.2 Signaling Overview
7.3 Parameters
7.3.1 Editable parameters
7.4 Special TCP Behavior
7.4.1 Release Guard
7.4.2 Call Transfer on Loop Start lines
7.4.3 Loop Current Reversal Parameters
7.4.4 Caller ID Protocol Parameters

7.1 Introduction

This chapter 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.

7.2 Signaling Overview

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. This is accomplished by 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, that can answer 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 instead, the LPS TCP doesn't pick up the phone, and eventually the calling party will abandon the call.

While the call is in conversation state, if connected to a PBX that supports this feature, the call can be transferred to a different extension. Different PBXs support transfering 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

Here 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 instead, the LPS TCP will detect the busy tone on the line, and abandon the call. Or, if nobody answers, the TCP will abandon the call after a parameterized number of rings.

Answer - conversation state

Voice

(Someone has answered)

While the call is in conversation state, if connected to a PBX that supports this feature, the call can be transferred to a different extension. Different PBXs support transfering 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

7.3 Parameters

Most of the parameters that follow are signaling-specific: changing their value would not only invalidate any approval certificate for the board, but would also most likely cause the board to malfunction. These parameters are described here 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.

7.3.1 Editable parameters

The following table describes analog loop start parameters (within the parameter category ADI.LPS) that users can modify:

Field Name

Type/Unit

Default

Description

cleardownflag

mask

1

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

Value Definition

1 Cleardown enabled

0 Not enabled

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.

Value Definition

0 1st ring begin

1 1st ring end

# n after n rings

nodialtoneaction

integer

0

Selects what to do if no dial tone detected.

Value Definition

0 Hang up and abandon the call

1 Proceed to dial anyway

2 Generate an inbound call event

xfersupport

mask

1

Flag to select whether PBX transfer is enabled.

Value Definition

0 Transfer commands are disabled

1 Transfer commands are enabled

cidsupport

mask

0

Flag to enable caller ID detection.

Value Definition

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.

reversalmode

integer

0

Selects loop current reversal detection mode.

Value Definition

0 Disable detection

1 Reversal indicates remote answer

2 Reversal indicates remote hang up

3 Reversal indicates answer and hang up.

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. *

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. *

* 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.

Country Regulatory Specifications
Field Name

Type/Unit

Value

Description

CIDalertmaxtime

ms

USA: 0

CAN: 0

JPN: 600

GER: *

GBR: *

FRA: 400

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

* Not supported for Germany and Britain.

CIDminmarktime

ms

USA: 100

CAN: 100

JPN: 50

GER: *

GBR: *

FRA: 50

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

CIDtype

integer

USA: 0

CAN: 0

JPN: 1

GER: *

GBR: *

FRA: 2

Type of Caller ID protocol, if CID is enabled:

Value Definition

0 BellCore CID Protocol

1 NTT Japan CID Protocol

2 ETSI Ringing Pulse Alerting Signal CID
Protocol.

* Not supported for Germany and Britain.

CIDmaxwaittime

ms

USA: 8000

CAN: 8000

JPN: 5000

GER: *

GBR: *

FRA: 4000

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

* Not supported for Germany and Britain.

dialtonemintime

ms

USA: 1000

CAN: 1000

JPN: 1000

GER: 3000

GBR: 3000

FRA: 3000

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 ADI.START parameters).

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

dialtonewaittime

ms

USA: 5000

CAN: 5000

JPN: 5000

GER: 6000

GBR: 6000

FRA: 6000

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

count

USA: 26

CAN: 26

JPN: 26

GER: 26

GBR: 26

FRA: 26

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

freqringhigh

Hz

USA: 54

CAN: 54

JPN: 54

GER: 60

GBR: 60

FRA: 60

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

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

freqringlow

Hz

USA: 16

CAN: 16

JPN: 12

GER: 21

GBR: 21

FRA: 21

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

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

freqringperiods

count

USA: 4

CAN: 4

JPN: 4

GER: 4

GBR: 4

FRA: 4

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

freqtolerance

percent

USA: 10

CAN: 10

JPN: 10

GER: 10

GBR: 10

FRA: 10

For frequency-selective ring detection, frequency tolerance in percent.

interringmaxtime

ms

USA: 8000

CAN: 8000

JPN: 3500

GER: 9000

GBR: 8000

FRA: 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

ms

USA: 0

CAN: 0

JPN: 0

GER: 0

GBR: 0

FRA: 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

ms

USA: 0

CAN: 0

JPN: 0

GER: 0

GBR: 0

FRA: 0

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

qualloopoff

ms

USA: 10

CAN: 10

JPN: 10

GER: 10

GBR: 10

FRA: 250

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

qualreversal

ms

USA: 200

CAN: 200

JPN: 200

GER: 200

GBR: 200

FRA: 200

Qualification time for loop current reversal event.

qualringoff

ms

USA: 100

CAN: 100

JPN: 100

GER: 100

GBR: 100

FRA: 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

ms

USA: 6

CAN: 6

JPN: 6

GER: 6

GBR: 6

FRA: 6

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

relaytype

integer

Obsolete. Kept for applications runtime compatibility.

releaseguardtime

ms

USA: 1000

CAN: 1000

JPN: 1000

GER: 1500

GBR: 1000

FRA: 1000

If the hosts commands to place a call immediately after releasing a call, the line is not taken off-hook until this time has elapsed, to ensure that the CO consider the line idle.

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

ringdetectmode

mask

USA: 1

CAN: 1

JPN: 1

GER: 1

GBR: 1

FRA: 1

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

Value Definition

0 Voltage-sensitive

1 Frequency-selective.

ringsigmaxtime

ms

USA: 3000

CAN: 3000

JPN: 3000

GER: 7000

GBR: 3000

FRA: 3000

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

ringsigmintime

ms

USA: 100

CAN: 100

JPN: 100

GER: 100

GBR: 100

FRA: 70

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

CT Access Default Parameter Changes

Certain CT Access default parameters are assigned different values in different country-specific parameter files. The following tables list CT Access default parameter changes for:

7.4 Special TCP Behavior

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

7.4.1 Release Guard

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 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.

7.4.2 Call Transfer on Loop Start lines

Call transfer operations use mostly the same parameters as outbound call placement operations. These parameters are stored in the ADI_PLACECALL_PARMS and ADI_CALLPROG_PARMS structures. For more details about the parameters stored in these structures, refer to the ADI Service Function Reference Manual.

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

When in the Connected state, if an attempt is made to transfer a call, and transfer is enabled (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 adiTransferCall or adiPlaceSecondCall.

If the dial fails, ADIEVN_CALL2_DISCONNECTED is sent up to the host, with reason ADI_DIS_DIAL_FAILURE (or ADI_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.

7.4.3 Loop Current Reversal Parameters

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 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 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 ADI.LPS.polaranswertime parameter with the appropriate value.

7.4.4 Caller ID Protocol Parameters

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

Note: Caller ID is not supported on AG 2000 boards under CT Access 2.1 beta, but will be supported in the CT Access 2.1 release.

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

    
    AG2DSPfile = adsir.m54
  2. Enable Caller ID TCP functionality by setting ADI.LPS.cidsupport = 1.

    
    
  3. Do not to change the ADI.LPS.CIDtype parameter. This parameter is set in the following for different countries:

    • ADI.LPS.CIDtype = 0: BellCore CID Protocol. Data transmission occur during the first long silent period between two ring patterns. Both multiple and single message formats are supported by the protocol.)

      
      
    • ADI.LPS.CIDtype = 1: NTT Japan CID Protocol . Line reversal followed by CAR Alerting Signal precede FSK modulation transmission. Normal rings start after data transmission. The protocol supports the multiple message format.

      
      
    • ADI.LPS.CIDtype = 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, regardless of the setting of the ADI.LPS.numrings parameter, the ADIEVN_INCOMING_CALL event is not generated until the caller ID information is received.
      
      
    • Invoke the adiGetCallStatus function to retrieve the Caller ID information.

    See Appendix B for information about country-specific Caller ID fields that can be recognized by the software (if the user is subscribed to the CID service).



    (Page 1 of 1 in this chapter)


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