3CX 传真机制说明

使用 T.38 接收传真

在 3CX 服务器上接收传真,只需要将一个 DID 号码通过 “Send Fax to” 分配给分机的有效邮箱。

传真服务器会收到传真,并将它转换为 .pdf 文档发送给选中分机的邮箱。

传真服务器

3CX 的传真服务器默认使用 T.38 作为默认的传真协议。当传真服务器收到 INVITE 信令后会发送包含音频编码的 200OK 作为初始的响应。然而没过多久,就会发送在 SDP 中只包含 T.38 编码的 re-INVITE 信令给被叫。如果被叫正确响应,呼叫建立,那么两个终端直接的通信将会使用 T.38 协议。

在 re-INVITE 信令中 3CX 会携带 T.38 编码,SDP 会请求一个与初次协商不同的端口。供应商必须切换到一个新的端口并将媒体都送到这个端口。否则将会导致传真通信失败。

下面是 3CX 发给供应商的 200OK 样例

下面是 T.38 的 re-INVITE 信令例子(注意切换了端口)

G711 to T.38 Fallback

在不支持 T.38 的情况下,3CX 有一个选项可以开启通过 G711 音频传真。

这个选项可以在管理控制台 -> 高级 -> 传真服务器找到。开启后需要重启 3CX 的 IVR 服务。

该选项开启后,3CX 传真服务器在通话建立后的预定时间内将会监听传真音。如果检测到了传真音,传真服务器将会尝试使用 G711 编码通过音频接收传真。3CX 传真服务默认等待的监听时间是 10 秒。要改变这个值,在设置 -> 参数搜索 “FAX_PCMU_T38_FALLBACK_TIMEOUT“。

如果 3CX 传真服务器没有在时间内检测到 in-band 传真音,就会在 SDP 中携带 T.38 发送 re-INVITE ,并进行上一步说明的操作。

传真网关(ATA)

如果使用支持的 FXS/ATA 网关就可以通过传真设备接收传真。第一件要做的事就是创建一个传真分机。你可以在 3CX 管理控制台的传真节点完成这一步。

FXS/ATA 网关必须注册为 3CX 的传真分机,并创建一条呼入规则将传真呼叫送到指定的传真分机。

在该场景下,SIP 中继和 FXS/ATA 网关直接的协商都是通过 3CX 代理,不会对信令修改(3CX 扮演无状态代理)。

传真设备除了接收传真,也可以发送传真。需要给它创建一条外呼规则来启用传真。与接收传真相同,3CX 不会对数据包进行处理或修改。