【问题标题】:Incorret fmpt of telephone-event in received INVITE收到的 INVITE 中的电话事件格式不正确
【发布时间】:2019-03-24 10:46:46
【问题描述】:

我们有一个案例,我们必须在出口端应用条件编解码器策略。但是我的脚本有问题,在初始 INVITE 中发送有效载荷类型为 101 和 119 的电话事件,但没有收到任何电话事件的 fmtp,而我的脚本预计它会出现。我是 SIP 和 SDP 领域的新手,无法找出确切的问题。

我认为脚本期待它不应该的东西,所以删除了期待并且调用成功完成。下面是发送和接收的邀请。

使用以下 SDP 发送邀请:

v=0
o=user1 53655765 2353687637 IN IP4 192.168.205.193
s=-
c=IN IP4 192.168.205.193
t=0 0
m=audio 10000 RTP/AVP 96 97 119
a=rtpmap:96 AMR/8000
a=rtpmap:97 AMR/8000
a=rtpmap:119 telephone-event/8000
a=fmtp:97 octet-align=1

收到带有 SDP 的邀请:

v=0
o=user1 53655765 2353687637 IN IP4 192.168.205.195
s=-
c=IN IP4 192.168.205.195
t=0 0
m=audio 13008 RTP/AVP 102 100 0 96 97 101 119
a=rtpmap:102 AMR-WB/16000/1
a=fmtp:102 mode-set=0,1,2
a=rtpmap:100 AMR/8000
a=fmtp:100 mode-set=0,2,5,7
a=rtpmap:0 PCMU/8000
a=rtpmap:96 AMR/8000
a=rtpmap:97 AMR/8000
a=fmtp:97 octet-align=1
a=rtpmap:101 telephone-event/16000
a=rtpmap:119 telephone-event/8000

我的脚本期待 fmtp: 101 0-15 但从收到的 INVITE 中丢失,何时以及在何种情况下应该期待 DTMF 的 fmtp 以及我们应该收到哪种负载类型的动态编解码器?如果我从脚本中删除收到的 INVITE 中的电话事件的 fmtp 期望怎么办?

【问题讨论】:

  • 请编辑您的问题以明确说明:1/您实施的是哪一方面? 2/ 比较工作场景和非工作场景? 3/ 最后,在你的问题中给出一个确切的问题列表......?

标签: sip payload sdp


【解决方案1】:

在不知道要求的情况下,但根据 DTMF RFC,我也会取消期望。

https://www.rfc-editor.org/rfc/rfc2833 第 10-11 页

由于所有实现都必须能够接收事件 0 到 15,在 a=fmtp 行中列出这些事件是可选的。

https://www.rfc-editor.org/rfc/rfc4733 第 10-11 页

... 为了向后兼容,如果 没有收到“events”参数,发件人应该假设支持 对于 DTMF 事件 0-15,但没有其他事件。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2022-07-06
    • 2016-01-12
    • 2013-11-20
    • 1970-01-01
    • 2016-08-26
    • 2014-08-26
    相关资源
    最近更新 更多