Page 1 of 1

AMD detection, auto foward to VM delivery using manual dial

PostPosted: Thu May 27, 2010 11:12 am
by shmorgan
Using Manual Agent dial, we would like to have the system automatically detect answering machine/no answer and automatically disposition the call with no agent intervention. Because of the small number of agents we have, we do not want to use predictive dialing, but want the agents to initiate their own calls.
I wanted to find out if anyone has tried to get this to work and what is involved with making this possible or even if it would be possible. Is there a proper way from dialplan code to let the GUI know that the outbound call failed, was handled another way, etc. so the agent will know that call was complete?

PostPosted: Thu May 27, 2010 11:17 am
by mflorell
vicidial.php version and build?

PostPosted: Thu May 27, 2010 11:18 am
by shmorgan
Sorry, Version 2.2.1-237, build 100510-2015

PostPosted: Thu May 27, 2010 11:27 am
by mflorell
What you are looking for is in-line AMD, which Asterisk does not allow for, you could use Sangoma's CPA to do this, but we never programmed in to ViciDial the ability to detect the AMD signal that it sends while the agent is in manual dial mode. We really never thought anyone would want to do that. I'm sure that we could add that as a feature at some point.

PostPosted: Thu May 27, 2010 11:35 am
by shmorgan
Mike,

I did some code for an internal call notification IVR using a Macro call out and seemed to be able to do AMD. Would this work? This code was actually for asterisk 1.4 so the AMD result code are a bit different. The issue I was running into was returning the status of the call to the Web GUI some how so the agent knew what happened with the call.

(Carrier Definition)
exten => _91NXXNXXXXXX,1,AGI(agi://127.0.0.1:4577/call_log)
exten => _91NXXNXXXXXX,n,Set(obdc_dialinfo=sip/nycamtlsonus/890011${EXTEN:2})
exten => _91NXXNXXXXXX,n,Set(obdc_uniqueid=${UNIQUEID})
exten => _91NXXNXXXXXX,n,Goto(obdc_private,dial_number,1)
exten => _91NXXNXXXXXX,n,Hangup


(extensions.conf)
[macro-obdc_dial_private]
exten => s,1,UserEvent(${CONTEXT},${ARG1},${UNIQUEID},${CHANNEL},${ARG2},PREAMD )
exten => s,n,Set(MACRO_RESULT=CONTINUE)
exten => s,n,AMD()
exten => s,n,UserEvent(${CONTEXT},${ARG1},${UNIQUEID},${CHANNEL},${ARG2},POSTAMD-${AMDSTATUS},${AMDSTATUS} )
exten => s,n,ExecIf($["${AMDSTATUS}" = "MACHINE"],set,MACRO_RESULT=ABORT) ; Terminate the call
exten => s,n,ExecIf($["${AMDSTATUS}" = "NOTSURE"],set,MACRO_RESULT=ABORT) ; Terminate the call
exten => s,n,ExecIf($["${AMDSTATUS}" = "HANGUP"] ,set,MACRO_RESULT=ABORT) ; Terminate the call
exten => s,n,ExecIf($["${AMDSTATUS}" = "HUMAN"] ,set,MACRO_RESULT=) ; Bridge the call

; Out Bound Dial Context
[obdc_private]
exten => dial_number,1,UserEvent(${CONTEXT},${obdc_uniqueid},${UNIQUEID},${CHANNEL},${obdc_dialinfo},PREDIAL )

exten => dial_number,n,Dial(${obdc_dialinfo},${obdc_dialtimeout},gM(obdc_dial_private^${obdc_uniqueid}^${obdc_dialinfo}))
; DIALSTATUS - CHANUNAVAIL CONGESTION NOANSWER BUSY ANSWER CANCEL DONTCALL TORTURE INVALIDARGS

exten => dial_number,n,Noop(MACRO_RESULTS:(${MACRO_RESULT}) )

exten => dial_number,n,UserEvent(${CONTEXT},${obdc_uniqueid},${UNIQUEID},${CHANNEL},${obdc_dialinfo},POSTDIAL )

exten => dial_number,n,Hangup()

exten => h,1,Noop(Got Handup Event)
exten => h,n,UserEvent(${CONTEXT},${obdc_uniqueid},${UNIQUEID},${CHANNEL},${obdc_dialinfo},HANGUP )

exten => t,1,Noop(Got Timeout Event)

PostPosted: Thu May 27, 2010 11:52 am
by mflorell
Wow, that looks like a lot of dialplan magic.

And we do recommend Asterisk 1.4 by the way.

You really don't want your agents to hear the call as it is being dialed in Manual Dial mode?

You want customers to have to say "Hello, Hello..." before they are sent to an agent(.5 - 3 seconds of delay on every call)?

And you know that Asterisk AMD is only 70% accurate right?

PostPosted: Thu May 27, 2010 11:54 am
by shmorgan
Really, I thought I had read that you only support Asterisk 1.2. Right now, our test server is runing Vicidial NOW, with an upgraded version of vicidial and vtiger, have not upgraded asterisk at this point.