Freeswitch 以编程方式检测传真

Freeswitch detect Fax programmatically

我目前正在使用 "ESL with Python library" 和 originate 命令生成拨出。 由于一些拨出电话是 传真 我需要对这些电话中哪些是传真进行分类,否则我会记录通常由人工、语音邮件或自动助理接听的电话。

我正在使用:

execute_on_fax_detect

如下:

originate {ignore_early_media=true,originate_timeout=20,media_bug_answer_req=True,origination_uuid=4cb6665a-1e2a-4e24-ad71-1602870960d2,origination_caller_id_number=+18623079305,RECORD_STEREO=true,execute_on_fax_detect='txfax /tmp/sample.tif',execute_on_answer='record_session /usr/local/freeswitch/recordings/E6248DD147_8884732963_4ab6665f-1e2a-4e24-ab71-1602870960d2.wav'}sofia/gateway/twilio/+13193412303 &park()

电话已接听,但我没有看到任何传真检测启动。 我还尝试使用 +18884732963,这是 HP 测试传真号码。 在录音中我可以听到传真音。

FreeSWITCH (Version 1.7.0 git c9abf45 2016-06-27 22:23:25Z 64bit) is ready

日志:

http://pastebin.com/WE4cMdaB

拓扑结构:

python --- ESL --> Freeswitch -- sip-- Twilio ---> PSTN ---> 传真

当我使用:

originate loopback/9178 &txfax(/tmp/surface3d.tiff)

我确实看到正在调用传真模块:

http://pastebin.com/9P2yJFWS

execute_on_fax_detect只对来电检测传真。 originate loopback/9178 &txfax(/tmp/surface3d.tiff) 您正在调用环回并在应答时开始传输 tiff 文件。所以你看到调用了传真模块。 试试tone_detect看看你能不能做到。