SIP 重新邀请后无音频

SIP 重新邀请后无音频

我正在尝试让 Gigaset C470 IP 在我的互联网连接上工作。我已经确定了设备和路由器(位于 DSL 调制解调器和 LAN 之间的 pfSense)的正确配置,以便我可以拨打电话和接听来电。

拨出电话没有任何问题。但是,来电时,音频仅在通话的第一秒有效 - 一秒过去后,两个方向都没有音频。通话保持畅通,直到一端挂断。

pfSense 外部接口上的数据包捕获显示发生了以下情况:

  • 我得到了一个 SIPINVITE
  • Gigaset 回应100 Trying180 Ringing
  • 我接听电话,Gigaset 回复道200 OK
  • 两个方向都有 RTP 流量
  • 通话一秒钟后,GigasetINVITE向呼叫方回复了一条新消息
  • 再增加 0.1 秒的双向 RTP 流量
  • 在这 0.1 秒之后,SIP 提供商会响应100 Trying,然后200 OK
  • 随后100 Trying不再有传入 RTP 流量。仍有传出 RTP 流量,但双方都听不到对方的声音。

查看所使用的编解码器,在第一个之后,双方都选择了 G.711 INVITE。据我从跟踪中得知,RDP 流量确实使用了 G.711。重新INVITE提出了一组与原始略有不同的编解码器INVITE,但双方显然同意继续使用 G.711。

然而,这INVITE似乎导致远端停止发送或接受此呼叫的任何进一步 RTP – 但为什么呢?我该怎么办呢?

答案1

确保在 200 OK 答案中获得一个单一的编解码器。

如果某些服务器收到带有 SDP 中的多个编解码器的 200 OK,它们将向您发送第二次重新邀请。

要解决此问题,请查看日志中的当前 OK。从列表中提取一个编解码器(您首选的编解码器)。然后在您的 Gigaset 设备中仅允许该编解码器。

这应该可以解决问题。

相关内容