0

Does anyone know, how to install an application on Elastix? In my case it is Answering Machine Detection(AMD). I need this application to detect outgoing calls, and if the answering machine is fax, hangup.
I tried to modify config files(modules.conf, extensions.conf, extensions_override_elastix.conf, amd.conf) as it is told in Asterisk documentation and forums, but non of it worked. CLI console doesn't show AMD output, and I think that AMD isn't even enabled there. I've been looking for the answer for 3 or 4 weeks now and found almost nothing.
There must be something I've overlooked.
Maybe I should change something in the database(asterisk) or Elastix PBX settings?

Here's what I did:

  • Modified /etc/asterisk/amd.conf file. Appended this to the end:
    [general]
    initial_silence = 2250
    greeting = 1500
    after_greeting_silence = 1250
    total_analysis_time = 5000
    min_word_length = 100
    between_words_silence = 50
    maximum_number_of_words = 8
    silence_threshold = 256

  • Modified /etc/asterisk/modules.conf. Appended this to the end:
    load = > app_amd.so

  • Modified /etc/asterisk/extensions_override_elastix.conf
    [outgoing] ;context
    exten => s,1,Answer()
    exten => s,n,AMD()
    exten => s,n,NoOp(${AMDSTATUS})
    exten => s,n,GotoIf($[${AMDSTATUS}=HUMAN]?humn:mach)
    exten => s,n(mach),WaitForSilence(3000,1,20)
    exten => s,n,Playback(${VOICEFILE})
    exten => s,n,Hangup()
    exten => s,n(humn),WaitForSilence(500)
    exten => s,n,Playback(${VOICEFILE})
    exten => s,n,Hangup()

  • Seeking for settings in database, in case if Elastix works through its database. Elastix writes logs into asterisk.cdr table - that's the only useful thing I've found.

I suppose, the CLI console should "say" something related to AMD application when I am calling, but it works as usual, without AMD enabled.

Thank you in advance!

Eduard Climov
  • 165
  • 1
  • 15

1 Answers1

1

You should add at options page to dialling param "M(amd)"

After that you should create macro-amd like described in manual.

That macro will be fired on call after call answered and before call bridged to other peer.

arheops
  • 15,544
  • 1
  • 21
  • 27