0

アスタリスクサーバーを実装しています。

私はPJSUAを使用してwavファイルを電話に送信し、アスタリスクサーバーを通過しています。

これが私のextension.confです

[appel-sortant] ; Initialisation                                                                                                                                                                                                             
exten => _X.,1,Set(LOOP=0)
exten => _X.,2,Set(MAX=3)                                                                                                                                                                                                  
exten => _X.,n,Set(ASTREINTE=${EXTEN})
exten => _X.,n,Goto(astreinte,${EXTEN},10)                                                                                                                                                                               
exten => _X.,500,Hangup

[astreinte]
exten => _X.,10,Dial(SIP/${ASTREINTE}@forfait-ovh,20,gS(10))
exten => _X.,n,AMD()
exten => _X.,n,NoOp(${DIALSTATUS}) ; Here got ANSWER status
exten => _X.,n,NoOp(${AMDSTATUS}) ; Here got MACHINE or NOTSURE
exten => _X.,n,Hangup

私の問題は:

1 / PJSUAからwavファイルを送信しているときに電話番号に電話をかけると、通話の最後にAMDSTATUSがMACHINEになります

2 / wavファイルなしでpjsuaを使用して呼び出すと、AMDSTATUS=NOTSUREになります。

AMD()は留守番電話または発信者のマシンを検出していますか?

これが私のPjsuaラインファイルです:

pjsua --null-audio --local-port=5061 --id sip:username@192.168.X.X --registrar sip:192.168.X.X --realm * --username username --password password --auto-play --play-file=./sounds/sound.wav sip:0123456789@192.168.X.X

現在、アスタリスク1.6.2.9-2squeezeを使用しています。

4

2 に答える 2

1

はい-AMD()は、留守番電話がピックアップされたかどうかを検出します。返される可能性のある値は次のとおりです。人間| わからない| 電話を切る

関数の内部動作はわかりませんが、wavファイルを再生している場合、amd()はおそらくそれが留守番電話であると考えています。

あなたのシナリオは正しい結果を提供しているようです。あなたのダイヤルプランとPjsuaラインは私には問題ないようです。

于 2012-08-14T15:04:55.813 に答える
1

AMD機能の設定をいじる必要があります。次のパラメータがあります。

AMD([initialSilence[,greeting[,afterGreetingSilence[,totalAnalysis Time[,miniumWordLength[,betweenWordSilence[,maximumNumberOfWords[,silenceThreshold[,maximumWordLength]]]]]]]]])

initialSilence - Is maximum initial silence duration before greeting.
    If this is exceeded set as MACHINE
greeting - is the maximum length of a greeting.
    If this is exceeded set as MACHINE
afterGreetingSilence - Is the silence after detecting a greeting.
    If this is exceeded set as HUMAN
totalAnalysis Time - Is the maximum time allowed for the algorithm
    to decide HUMAN or MACHINE
miniumWordLength - Is the minimum duration of Voice considered to be a word
betweenWordSilence - Is the minimum duration of silence after a word to consider the audio that follows to be a new word
maximumNumberOfWords - Is the maximum number of words in a greeting
    If this is exceeded set as MACHINE
silenceThreshold - How long do we consider silence
maximumWordLength - Is the maximum duration of a word to accept.
    If exceeded set as MACHINE

pjsuaアプリケーションから検出された無音、音、および音の長さのパターンに基づいて、これらのパラメーターの正しい値を確認して、目的の結果を得ることができるはずです。

于 2012-08-16T01:48:15.920 に答える