Answering Machine Detect (AMD)


Someone know how to make app amd work in an outbound call? Some example or explanation please friends :unamused:

Here’s my dialplan for AMD. This dialplan gets called via an Asterisk call file.

exten => 101,1,AMD
exten => 101,n,GotoIf($[${AMDSTATUS}=HUMAN]?humn:mach)

exten => 101,n(mach),WaitForSilence(1500)
exten => 101,n,Playback(message-for-machine)
exten => 101,n,Hangup

exten => 101,n(humn),WaitForSilence(500)
exten => 101,n,Read(digit,message-for-human,1)
exten => 101,n,Gotoif($[${digit}=1]?queue:hangup)
exten => 101,n,Hangup

exten => 101,n(queue),Queue(agent_queue)

It dials a number via a call file. When the called party answers, AMD is done. If AMD says “machine”, it plays a message after waiting for 1.5 of silence and then hangs up. If AMD says “human”, it plays a message saying ‘press 1 to connect to an agent’. If 1 is pressed, it goes to the agent queue, if not, hangup.