我正在尝试为我的SIP呼叫请求创建一个Web客户端。我已经从浏览器成功完成了邀请。但是,我没有得到如何通过Javascript引用第三方电话。我正在使用WebRTC和SIPML5。
在尝试session.transfer()
时,在成功推荐之后,指向推荐人的链接已被破坏......但是,我能够听到来自裁判的推荐人的音频。 '我没有得到通知。只需参考ACK sip消息然后单向呼叫。'
例如:
A
是指B
。成功引用后,我无法从A
发送/接收SIP数据包。但是,我可以从B
做同样的事情。因此,当B
进行谈话时,A
可以听到。但反之亦然。
SIP参考通过SIPP完美运行。并且可以使用双向数据包。
P.S。:我不想打电话转移。
如果SIPML5不支持此功能,我可以通过Java执行相同的操作。我向SIP服务小组发送推荐请求,通过doRefer()
处理它?</ p>
这些是我提到的链接:
答案 0 :(得分:0)
我自己找到的。
SIPML5不支持呼叫参考,但支持呼叫转移。 因此,它使用REFER转接呼叫,但是被叫方断开了连接。
因此,找到一种解决方法, 我在session.send()中以字符串形式发送了REFER消息详细信息。我必须解析字符串以获取数据,这当然不是SIP消息,而是简单的字符串。
关于处理,我能够接收来自被呼叫者和呼叫者的数据包。
问题仍然存在,
问题在于邀请呼叫的会话的类型为“呼叫”,而消息会话的类型为“消息”。
因此,我在消息会话中添加了呼叫会话的CALL-ID并对其进行了解析。 这样就可以成功地在同一通道上获取数据包。