Tuning CPA templates for HMP

HMP Introduction

Dialogic HMP Interface Boards enable all the flexibility of host-based media resources (scalable and licensed in single-unit increments) to mate with the network interface, providing developers and system integrators with a new level of configuration flexibility and cost efficiency. These boards provide the interfaces for digital and analog networks. This is a departure from traditional media span products that require onboard digital signal processors (DSPs) to provide media and audio transcoding resources, which creates fixed costs and often fixed or limited configurations of media to complement the network interface density.

JCT Models which have HMP enabled are D/4PCIUF and D/4PCIU4S

OVERVIEW

Call Progress Analysis (CPA) is the process used to automatically detect whether an answering machine or live voice answered an outgoing call. Dialogic products have the ability to detect these conditions with audio streams that can come over PSTN connection or IP connection. Positive Answering Machine Detection (PAMD) and Positive Voice Detection (PVD) are classifications of the Call Progress Analysis feature that enables the application to determine whether a call has been answered by an answering machine or a live person. 

The original PAMD and PVD algorithms take into account variables such as the length of the greeting and the background noise level. The current business and home environment has shifted from analog phones to digital / IP phones so that the original algorithms no longer produce satisfactory results. This tech-note provides instructions for modifying the PAMD and PVD qualification template parameters on HMP, Springware and DM3 boards to accomplish higher successful PAMD and PVD rates. The same procedure should be followed for Windows and Linux service releases as well as the dx_dial or Global Call method of initiating Call Progress. 

QUALIFICATION TEMPLATES

The Call Progress Qualification Templates are a set of parameter definitions that control voice and answering machine detection. The same parameters are present through all the Dialogic product lines including HMP, DM3 and Springware and control detections regardless of using the DX or GC method. The Qualification Templates are broken down into two sections: PVD and PAMD. Tables 1 and 2 below contain all the parameters for both PVD and PAMD sections as well as the default and recommended values for each parameter. (Note: The default values may change in SU’s – check System Release Update Guide for more information). 
 

Table 1: PVD Qualification Template Parameters

Parameters

Default

Recommended

qminsnr

50

50

qmaxsnr

600

600

maxpk

2

2

maxring

5

5

ringthres

10000

10000

pvdwin

8

8

pvdthresh

30

5000

pvdrblow

380

380

pvdrhig

510

510

Table 2: PAMD Qualification Template Parameters

Parameters

Default

Recommended

maxansiz

125

159

maxans2

50

159

maxans3

220

159

lohiss

22

22

hihiss

16

16

bhparm

5

5

cvthr1

80

80

cvthr2

165

165

maxcvth

390

390

nmaxbrod

2

2

nmaxerg

65

65

maxsil

30

45

voice_thres

25

25

sil_thres

30

5000

bandf_low

0

0

bandf_high

0

0


MODIFYING QUALIFICATION TEMPLATES

Host Media Processing (HMP)

While using HMP, all PVD and PAMD qualification template modifications are ONLY available via config files and can NOT be modified without restarting the Dialogic service. The following steps will be used to modify HMP qualification templates: 

Note: 4r4v4e4c4s4f4i_hib_pur pcd/fcd/config file will be used as an example in this proceedure - your pcd/fcd/config file names will change based on license used and system release. 

  1. As a precaution, save a backup copy of the fcd, pcd and config files which you will be editing

  2. Open the Host's PCD file (4r4v4e4c4s4f4i_hib_pur.pcd) and search for "COMP sigdet" 

  3. Once you've found this section change the InitOption from YES to NO 

  4. Also, while here note the NumInstances, you will need to reference this in the config file.

    [COMP sigdet] 
    {

    Attribute :std_ComponentType:0x07 
    NumInstances :4                      <-------------Note this value
    StartInstanceNum :1 
    ConfigOption :YES 
    InitOption :NO                           <----------- Change from YES to NO
    DependentComp :waveAnalyser

     

    }

  5. Save and exit the PCD file and open the hosts config file (4r4v4e4c4s4f4i_hib_pur.config) 

  6. Search for the "[sigDet]" section of the config file - if the section does not exist add it at the bottom of the config file

  7. Add "init iNNN” immediately below the [sigDet] line where iNNN is the NumInstances noted in the pcd file

  8. On the next line add “DeletePvd 128193”. The number represents the default PVD qualification ID defined for HMP. 

  9. On the next line, add the new PVD qualification template parameters followed by "CreatePvd". 

  10. On the next line, add “DeletePamd 106561”. The number represents the default PAMD qualification ID defined for HMP. 

  11. On the next line, add the new PAMD qualification template parameters followed by "CreatePamd". 

    [sigDet] 
    init i4 
    !Delete the default PVD qualification template 
    DeletePvd 128193 

    !User defined Pvd template. 
    PvdDesc signalId 128193 
    PvdDesc signalLabel 0000 
    PvdDesc minSnr 50 
    PvdDesc maxSnr 600 
    PvdDesc maxPk 2 
    PvdDesc maxRing 5 
    PvdDesc ringThresh 10000 
    PvdDesc PvdWin 8 
    PvdDesc PvdVthresh 5000 
    PvdDesc PvdRbLow 380 
    PvdDesc PvdRbHigh 510 
    CreatePvd 

    !Delete the default PAMD qualification template 
    DeletePamd 106561 

    !User defined PAMD template. 
    PamdDesc signalId 106561 
    PamdDesc signalLabel 0000 
    PamdDesc minRing 190 
    PamdDesc mask 1 
    PamdDesc maxAnsiz1 159 
    PamdDesc maxAnsiz2 159 
    PamdDesc maxAnsiz3 159 
    PamdDesc loHiss 22 
    PamdDesc hiHiss 16 
    PamdDesc bhParm 5 
    PamdDesc cvThresh1 80 
    PamdDesc cvThresh2 165 
    PamdDesc maxCvThresh 390 
    PamdDesc nMaxBroad 2 
    PamdDesc nMaxErg 65 
    PamdDesc maxSilence 45 
    PamdDesc voiceThresh 25 
    PamdDesc silenceThresh 5000 
    PamdDesc rjFbandLow 0 
    PamdDesc rjFbandHigh 0 
    CreatePamd

  12. Save and exit the config file and run the fcdgen utiltiy to create an fcd file:

  13. Restart the Dialogic HMP services.

Please see attached config file  for completed template changes.

Glossary of Acronyms / Terms

Global Call CPA — Global Call API function calls perform CPA using an attached voice device and report CPA results via the GCEV_MEDIADETECTED and GCEV_DISCONNECTED events. 
Voice API CPA — The Voice API dx_dial() function performs CPA using a voice resource directly and reports results via the TDX_CALLP event. 
Qualification template -- Definitions used by the PAMD and PVD algorithms in detecting voice detections

Return to Documentation Home I Return to Sangoma Support