VoiceGuide IVR Software Main Page
Jump to content

Outgoing Voice Connections

Recommended Posts

Okay got all my scripts working but the problem I have now is that when VG dials it doesn't always detect a human answer. I would say 2 of 10 dials it will detect a human when each time it is a human answering. The funny thing is I have tried calling different mobiles, lan lines etc and only one mobile always works. My mobile sometimes and the same with lan lines.

 

Using Dialogic D/4PCI with 5.1.1

Voice Guide 5.1 Beta3

 

This how I test.

 

Use this sample XML file

<OutDialEntry>

<PhoneNumber>555111</PhoneNumber>

<OnAnswer>C:\Program Files\VoiceGuide\system\voice\VmSendSuccess.wav</OnAnswer>

<OnAnswerMachine>C:\Program Files\VoiceGuide\system\voice\SoundFileNotFound.wav</OnAnswerMachine>

<AnswerTimeout>20</AnswerTimeout>

<CallRetries>1</CallRetries>

<RetryDelay>1</RetryDelay>

</OutDialEntry>

 

When it calls I answer with "hello"

 

Any ideas on how I can make this more reliable

 

Logfile when VG thinks human has not answered when actually it was

 

165010.15 0 Loading from C:\Program Files\VoiceGuide\data\OutDial_New.xml

165010.15 0 dial callque insert tel:555111 scr:C:\Program Files\VoiceGuide\system\voice\VmSendSuccess.wav time:310301650 esc:none

165010.15 0 Loaded 1 entries.

165010.17 0 dial callque update id=70 next call time 0310301652

165010.17 0 dial callque DB update returned

165010.17 5 dial found entry: tel[555111] ann[NONE] vgs[C:\Program Files\VoiceGuide\system\voice\VmSendSuccess.wav] am[C:\Program Files\VoiceGuide\system\voice\SoundFileNotFound.wav]

165010.17 5 Calling MakeCallEx(555111)

165010.18 5 Dialing: 555111

165010.18 5 MakeCall => 65762

165010.18 5 TapiCbTrigSet 65762 7002

165010.93 5 tapi Reply (LineEvReply) ok 65762 0

165010.93 5 TapiCbTrigClear

165010.93 5 linedevstate 2048 0 0

165010.93 5 callstate DIALTONE 65796 0 0

165010.93 5 callstate DIALING 65796 0 0

165010.95 5 callstate PROCEEDING 65796 0 0

165010.95 5 callinfo CALLEDID

165010.95 5 callinfo REASON

165010.96 5 Lev_CallerID [0000,]

165010.96 5 callinfo ORIGIN

165019.50 5 callstate DISCONNECTED 65796,16,0

165019.50 5 LsWaitAfterDialingOut EV_REMOTEPARTY_DISCONNECT

165019.51 0 dial callque delete id=70

165019.53 5 AM - wait for end of welcome message...

165019.53 5 dial awaiting end of answering machine message (lvl:10 for 20)

165019.62 5 RecSoundStart file[C:\Program Files\VoiceGuide\data\RecAm_5.wav] ok

165022.71 5 LsDialoutRecAnswerMachineWelcMsg EV_SILENCE_DETECTED

165023.73 5 RecSoundStop ok

165023.79 5 LsDialoutRecAnswerMachineWelcMsg EV_REC_FINISHED

165023.81 5 Play Answer Machine message [C:\Program Files\VoiceGuide\system\voice\SoundFileNotFound.wav]

165023.84 5 PlaySoundStart ok [C:\Program Files\VoiceGuide\system\voice\SoundFileNotFound.wav]

165026.98 5 wb(1932800)

165028.03 5 Play End line[5] (id=19328)

165028.04 5 LsDialoutPlayOnAnswerMachine EV_PLAY_FINISHED

165028.04 5 Hanging up call... [LsDialoutPlayOnAnswerMachine 2 ]

165028.04 5 RecSoundStop ok

165028.06 5 PlaySoundStop ok

165028.06 5 Waiting for a call...

165028.12 5 fnHangupCall end

165028.14 5 linedevstate 2048 0 0

165028.15 5 callstate IDLE 65796 0 0

165028.15 5 WorkingMode@Idle=

165028.15 5 LineState(iLineId).iVgsIdx = 0

165028.17 5 tapi Reply (LineEvReply) ok 65625 0

165029.21 5 LsAwaitingCalls EV_TIMEOUT_TIMETOREINITLINE

165029.21 5 ReinitTelephony due to IDLE start

165029.21 5 tapic lineDeallocateCall(MainCall:65796) 0

165029.40 5 lineOpen(5) => 0

165029.40 5 Waiting for a call...

165029.40 5 lineOpen(5)LineHandle=65745

 

Logfile when VG thinks human has answered

170315.61 0 sys cleanup Start

170315.61 0 sys cleanup End

170320.79 0 Loading from C:\Program Files\VoiceGuide\data\OutDial_New.xml

170320.79 0 dial callque insert tel:555111 scr:C:\Program Files\VoiceGuide\system\voice\VmSendSuccess.wav time:310301703 esc:none

170320.81 0 Loaded 1 entries.

170320.81 0 dial callque update id=78 next call time 0310301705

170320.81 0 dial callque DB update returned

170320.81 5 dial found entry: tel[555111] ann[NONE] vgs[C:\Program Files\VoiceGuide\system\voice\VmSendSuccess.wav] am[C:\Program Files\VoiceGuide\system\voice\SoundFileNotFound.wav]

170320.82 5 Calling MakeCallEx(555111)

170320.82 5 Dialing: 555111

170320.82 5 MakeCall => 65933

170320.82 5 TapiCbTrigSet 65933 7002

170321.57 5 tapi Reply (LineEvReply) ok 65933 0

170321.57 5 TapiCbTrigClear

170321.57 5 linedevstate 2048 0 0

170321.57 5 callstate DIALTONE 65865 0 0

170321.57 5 callstate DIALING 65865 0 0

170321.59 5 callstate PROCEEDING 65865 0 0

170321.59 5 callinfo CALLEDID

170321.59 5 callinfo REASON

170321.61 5 Lev_CallerID [0000,]

170321.61 5 callinfo ORIGIN

170332.09 5 callstate CONNECTED 65865,1,0

170332.11 5 WorkingModeTAPI@Connected=

170332.11 5 WorkingModeScript@Connected=

170332.18 0 dial callque delete id=78

170332.21 5 Live person answered, playing C:\Program Files\VoiceGuide\system\voice\VmSendSuccess.wav

170332.26 5 PlaySoundStart ok [C:\Program Files\VoiceGuide\system\voice\VmSendSuccess.wav]

170333.76 5 wb(80773400)

170334.81 5 Play End line[5] (id=807734)

170334.81 5 LsDialoutPlayHumanMsg EV_PLAY_FINISHED

170334.82 5 Hanging up call... [dial live answer: outgoing sound file completed.]

170334.82 5 RecSoundStop ok

170334.82 5 PlaySoundStop ok

170334.84 5 Waiting for a call...

170334.89 5 fnHangupCall end

170334.92 5 linedevstate 2048 0 0

170334.92 5 callstate IDLE 65865 0 0

170334.93 5 WorkingMode@Idle=

170334.93 5 LineState(iLineId).iVgsIdx = 0

170334.93 5 tapi Reply (LineEvReply) ok 65712 0

170336.04 5 LsAwaitingCalls EV_TIMEOUT_TIMETOREINITLINE

170336.04 5 ReinitTelephony due to IDLE start

170336.06 5 tapic lineDeallocateCall(MainCall:65865) 0

170336.26 5 lineOpen(5) => 0

170336.26 5 Waiting for a call...

170336.28 5 lineOpen(5)LineHandle=65968

Share this post


Link to post

Forgot to mention that this is Euro version of the Dialogic card in Australia and the location properties for the card has ben set to Australia.

Share this post


Link to post
it doesn't always detect a human answer.

I would expect pretty good detection reliability on land lines - some mobile connections are sometimes so poor that Dialogic thinks that an answering machine has answered the call... it just depends on the mobile network... on good quality lines the detection reliability is very high...

 

There is no way to alter any levels etc to change the way in which the Dialogic card detects Answering Machines vs Human answer... it's all hard wired into the Dialogic card.

Share this post


Link to post

Did some further testing. The lan lines used where cordless phones. When switched to hard wired phones detection improved 90%

 

Okay I think I found out why mobiles are not working correctly. In VG I believe the detection of answering machines is done by analysing the noise level on the line. When continoues sound is heard it assumes a AM has answered it. Most people answer the phone with "hello" and AM's "You have reached bill and ted.." The reason my mobile was not working is I had the radio on next to me. Since mobiles have a very receptive mic it was picking up background noise. Turned off the radio and now works every time or close enough when answered with hello.

 

Is there anyway I can change the detection level in VG so that background noise is ignored. Is there a setting in vg.ini I can change

 

Cheers,

Michael

Share this post


Link to post

Background radio noise (when loud enough) has been known to confuse the Human / Answering Machine detection process...

Is there anyway I can change the detection level in VG so that background noise is ignored. Is there a setting in vg.ini I can change

There is no way to alter any levels etc to change the way in which the Dialogic card detects Answering Machines vs Human answer... it's all hard wired into the Dialogic card.

Share this post


Link to post

I found this is my travels. It is a snippet from a Dialogic engineer

 

My experience with predictive dialers led to this conclusion: with

Dialogic`s PAMD (Positive Answering Machine Detection) enabled, you do get

very good answering machine detection. (About as good as you can get,

considering the vagaries involved) However, you can fine tune the results by

disabling PAMD and using "cadence detection". With cadence detection, you

basically enable "positive voice detection" (which merely determines that

the line was answered by a human voice) and then time the salutation

(greeting). Most everyone answers their phone with "Hello......" - about

500msec of noise followed by at least 500 msec of silence, whereas most

answering machines are answered with "Hi, this Tom and Mary.........." -

basically continuous noise for several seconds. Crude, but surprisingly

effective.

 

Both methods are supported by Dialogic`s API on a call-by-call basis.

 

This was the info that led to my previous post. I'm probaly going in circles with my posts since you have already mentioned that there is no way since the functions are hard wired into the Dialogic card.

 

But you never know there is always hope.. Yes I know it is slim :)

Share this post


Link to post

The quoted text in previous post suggests turning off Answering Machine detection altogether... and then basing the decision of whether an Answering Machine answered the call based solely on how long speech can be heard after call is answered...

In our experience this approach overall does not work as well as Dialogic's PAMD (Positive Answering Machine Detection) system.

The suggested approach would result in incorrect AM detections if there was loud background noise (of any type, not just radio), if the line quality was poor and you could hear static on the line, and it would also fail if a call was answered with a: "Welcome to Acme Enterprises, this is Melissa speaking, how can I help you today?"..

 

VoiceGuide just enables PAMD on all outgoing calls when Dialogic cards are used.

Share this post


Link to post

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
×