FreeSWITCH的传真发送
詳細的學習請參考:https://wiki.freeswitch.org/wiki/Mod_spandsp
我只說說WIKI上沒有直接寫出來卻又很實用的東西。
一、傳真收發(fā)
環(huán)境大致如下:
FreeSWITCH<------------>訊時網(wǎng)關(mx8)<------------->電話外線(模擬線)<---------------->公網(wǎng)交換網(wǎng)絡<-------------->電話外線(模擬線)<------------------>傳真機
實現(xiàn)傳真的發(fā)送:
1 originate sofia/gateway/tomx8/010xxxxxxxx &txfax(/home/123.tiff)實現(xiàn)傳真的接收:
1 <?xml version="1.0" encoding="UTF-8"?>2 <include>3 <extension name="fax_receive">4 <condition expression="^999$" field="destination_number"> 5 <action application="answer"/> 6 <action application="playback" data="silence_stream://2000"/> 7 <action application="rxfax" data="/home/recvFax/${caller_id_number}_${uuid}.tif"/> 8 <action application="hangup"/> 9 </condition> 10 </extension> 11 </include>很快就實現(xiàn)了兩地的傳真相互收發(fā)。
二、哪里有這么簡單
環(huán)境改變了,只是小小的改變,卻引出一大片問題。
出局的網(wǎng)關換了,由訊時的換成了另外一款產(chǎn)品。
然而既不能收也不能發(fā)!
三、原因分析
抓包分析,流程大大出乎我的意料啊!
此處需要流程圖(新版本的Wireshark截的太小了!)
?
花費了近2天的時間,抓包,測試,甚至下載了ITU的T.38標準來查看!
最后只需要增加簡單幾個參數(shù),就實現(xiàn)了標準的T.38協(xié)議收發(fā)。
?
四、T.38的傳真發(fā)送
1 originate {fax_enable_t38=true,fax_enable_t38_request=true}sofia/gateway/tomx8/010xxxxxxxx &txfax(/home/123.tiff)五、T.38的傳真接收
在步驟一的路由配置中增加兩行條件。
1 <action application="set" data="fax_enable_t38=true"/> 2 <action application="set" data="execute_on_answer=t38_gateway peer"/>六、結(jié)束語
增加了這幾處參數(shù),流程終于和預期的一樣了。
但是之前的“怪異”流程是怎么回事呢?似乎又要暫時放一放了,
或者,有傳真領域的專家能分享一下嗎?
再或者,訊時網(wǎng)關mx8的傳真功能開發(fā)者在哪里?
總結(jié)
以上是生活随笔為你收集整理的FreeSWITCH的传真发送的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 【火炉炼AI】机器学习031-KNN回归
- 下一篇: vscode 的setting.json