AMD()
AMD([initialSilence
[,greeting
[,afterGreetingSilence
[,totalAnalysisTime
[,minWordLength
[,betweenWordsSilence
[,maxNumberOfWords
[,silenceThreshold
]]]]]]]])
AMD()
benutzt werden, um bei der Gegenstelle einen Anrufbeantworter zu erkennen.
Default-Parameter können in der Datei amd.conf
eingestellt werden.initialSilence
${AMDSTATUS}
auf MACHINE
gesetzt.greeting
${AMDSTATUS}
auf MACHINE
gesetzt.afterGreetingSilence
${AMDSTATUS}
auf HUMAN
gesetzt.totalAnalysisTime
HUMAN
oder MACHINE
zu
treffen.minWordsSilence
betweenWordsSilence
maxNumberOfWords
${AMDSTATUS}
auf MACHINE
gesetzt.silenceThreshold
AMDSTATUS
und AMDCAUSE
.AMDSTATUS
kann die folgenden Werte bekommen:MACHINE
HUMAN
NOTSURE
HANGUP
AMDCAUSE
kann die folgenden Werte bekommen:TOOLONG-
<%d
total_time>
INITIALSILENCE-
<%d
silenceDuration>
-
<%d
initialSilence>
HUMAN-
<%d
silenceDuration>
-
<%d
afterGreetingSilence>
MAXWORDS-
<%d
wordsCount>
-
<%d
maximumNumberOfWords>
LONGGREETING-
<%d
voiceDuration>
-
<%d
greeting>
; Von einem CallFile wird diese Extension aufgerufen: exten => 10,1,AMD() exten => 10,n,Goto(Status-${AMDSTATUS}) exten => 10,n(Status-HUMAN),Playback(spam) exten => 10,n,Hangup() exten => 10,n(Status-MACHINE),Hangup() exten => 10,n(Status-NOTSURE),Hangup() exten => 10,n(Status-HANGUP),Hangup()
| | | 1.4 |————————| 1.6 |————————
-= Info about application 'AMD' =-
[Synopsis]
Attempts to detect answering machines
[Description]
AMD([initialSilence][|greeting][|afterGreetingSilence][|totalAnalysisTime]
[|minimumWordLength][|betweenWordsSilence][|maximumNumberOfWords]
[|silenceThreshold])
This application attempts to detect answering machines at the beginning
of outbound calls. Simply call this application after the call
has been answered (outbound only, of course).
When loaded, AMD reads amd.conf and uses the parameters specified as
default values. Those default values get overwritten when calling AMD
with parameters.
- 'initialSilence' is the maximum silence duration before the greeting. If
exceeded then MACHINE.
- 'greeting' is the maximum length of a greeting. If exceeded then MACHINE.
- 'afterGreetingSilence' is the silence after detecting a greeting.
If exceeded then HUMAN.
- 'totalAnalysisTime' is the maximum time allowed for the algorithm to decide
on a HUMAN or MACHINE.
- 'minimumWordLength'is the minimum duration of Voice to considered as a word.
- 'betweenWordsSilence' is the minimum duration of silence after a word to
consider the audio that follows as a new word.
- 'maximumNumberOfWords'is the maximum number of words in the greeting.
If exceeded then MACHINE.
- 'silenceThreshold' is the silence threshold.
This application sets the following channel variable upon completion:
AMDSTATUS - This is the status of the answering machine detection.
Possible values are:
MACHINE | HUMAN | NOTSURE | HANGUP
AMDCAUSE - Indicates the cause that led to the conclusion.
Possible values are:
TOOLONG-<%%%%d total_time>
INITIALSILENCE-<%%%%d silenceDuration>-<%%%%d initialSilence>
HUMAN-<%%%%d silenceDuration>-<%%%%d afterGreetingSilence>
MAXWORDS-<%%%%d wordsCount>-<%%%%d maximumNumberOfWords>
LONGGREETING-<%%%%d voiceDuration>-<%%%%d greeting>
--- in Asterisk 1.4
+++ in Asterisk 1.6
@@ -4,9 +4,9 @@
Attempts to detect answering machines
[Description]
- AMD([initialSilence][|greeting][|afterGreetingSilence][|totalAnalysisTime]
- [|minimumWordLength][|betweenWordsSilence][|maximumNumberOfWords]
- [|silenceThreshold])
+ AMD([initialSilence],[greeting],[afterGreetingSilence],[totalAnalysisTime]
+ ,[minimumWordLength],[betweenWordsSilence],[maximumNumberOfWords]
+ ,[silenceThreshold],[|maximumWordLength])
This application attempts to detect answering machines at the beginning
of outbound calls. Simply call this application after the call
has been answered (outbound only, of course).
@@ -26,7 +26,8 @@
- 'maximumNumberOfWords'is the maximum number of words in the greeting.
If exceeded then MACHINE.
- 'silenceThreshold' is the silence threshold.
- This application sets the following channel variable upon completion:
+ - 'maximumWordLength' is the maximum duration of a word to accept. If exceeded then MACHINE
+ This application sets the following channel variables upon completion:
AMDSTATUS - This is the status of the answering machine detection.
Possible values are:
MACHINE | HUMAN | NOTSURE | HANGUP
@@ -37,3 +38,4 @@
HUMAN-<%%%%d silenceDuration>-<%%%%d afterGreetingSilence>
MAXWORDS-<%%%%d wordsCount>-<%%%%d maximumNumberOfWords>
LONGGREETING-<%%%%d voiceDuration>-<%%%%d greeting>
+ MAXWORDLENGTH-<%%%%d consecutiveVoiceDuration>