私はアスタリスクの初心者です。ファクスを送ろうとしたところ、うまくいきませんでした。たくさんの研究をした後、ここで質問することにしました。
誰かが私の構成を修正するためのアイデアをくれたらいいのにと思います。最後に、システムがt.38経由でFAXを送信できるようにしたい。
どうもありがとう!
私のシステム:ubuntu 14.04 +アスタリスク11.7
Apt-getを使用して、ubuntuのデフォルトバージョンのアスタリスク11.7をインストールします。デバッグを簡単にするために、いくつかのパラメータ値をデフォルトバージョンに変更するだけです
t38pt_udptl = yes,redundancy,maxdatagram=400
faxdetect = yes
[sendFAX]
exten => s,1,VERBOSE(sending fax...)
exten => s,n,Set(FAXOPT(headerinfo)=Fax from a Demo test)
exten => s,n,SendFAX(/tmp/demo.tiff,f)
;I get demo.tiff file from "$ gs -q -dNOPAUSE -dBATCH -sDEVICE=tiffg4 -sPAPERSIZE=letter -sOutputFile=<dest> <src>"
exten => s,n,VERBOSE(ok!)
exten => s,n,Hangup
AMIを使用してFAX通話を発信しています。 CLIでは、すべてがうまく見えます。エラーメッセージは表示されませんでした。この通信の詳細をwiresharkを使用して確認したところ、Asteriskが予想されるT.38を使用する代わりにG711を使用していることがわかりました。
しかし、受信側でファックスを受信せず、「DcnNoDis」というエラーが表示されました。
T.30ファックス信号メッセージVoipファックス通話では、T.38パケットの前後にT.30ファックス信号メッセージがあります。これらのメッセージは次のとおりです。
- DIS:ファックス機能の終了を示すデジタル識別信号(データレートなど)
- DCS:発信ファックスで使用される送信モードを示すデジタルコマンド信号(転送速度など)
- TCF:トレーニングチェックシーケンス(1.5秒間送信)
- CFR:受信ファックスがドキュメントを受信する準備ができていることを示す受信確認
- MPS:マルチページシグナル(複数のページが送信される場合は、各ページの後に送信されます)
- MCF:ページが受信されたことを示すメッセージ確認
- EOP:送信するページがこれ以上ないことを示す手順の終了メッセージ
- DCN:メッセージを切断します
追加のオプションメッセージ:
1.CSI:呼び出された加入者ID
2.TSI:加入者識別情報の送信
しかし、「DcnNoDis」が私のアスタリスクシステムの何が問題なのかを意味するのかまだ混乱しています。
私はこれらを確信しています:
demo.jpg は私のwiresharkのスクリーンショットです。フォーム19から1841では、すべてのトラフィックはRTPパッケージです。
t.38 png の図は、典型的なファックス通話を示しています。
T.38の主な問題は次のとおりです
1)デフォルトでは、アスタリスクはspandspをサポートせずにコンパイルされているため、t.38はありません。
2)それをコンパイルしたとしても、t38udpl行はプロバイダーが期待するものとまったく同じです。単一のパラメータの間違いは、t.38で機能しなくなる可能性があります
3)アウトバウンドコールでは、t.38はCALLED側によって開始されています。したがって、プロバイダーがファックスを検出しない場合、またはアスタリスクをt.38に切り替えるように要求しない場合、アスタリスクはそれを行いません。
4)t.38の発信は、いくつかの変数(アスタリスク1.8ではT38CALL = 1、11バージョンではチェックされていません)を使用し、IPではなくプロバイダーのセクションを使用して行われました。
http://www.voip-info.org/wiki/view/Asterisk+T.38
DISCALIMER:T38呼び出しは、アスタリスクの最も複雑な部分の1つであり、h323ビデオ通話とwebrtcの2つのトピックのみがより複雑です。