邀请更多客户加入对话时,SIP 请求会是什么样子
我已经完成了我的 SIP 客户端并且它可以工作,只要它是一对一的,或者如果参与者是在呼叫开始时定义的,则可以是 x 对 x。
我想在通话过程中附加呼叫者或被呼叫者,我知道主要问题在于媒体会话加入实施,但我确实需要告诉新参与者所有涉及参与者的详细信息,该怎么做最好实施这个?
谢谢, 亚当.
I've finished my SIP client and it works, as long as it comes to one on one, or x on x if the participants are defined in the beginning of the call.
I would like to attach a caller or a callee in the middle of the call, I understand the main issue is in the media session joining implementation, but I do need to tell the new participant the details of all the participants involved, how would it be best to implement this?
Thanks,
Adam.
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(2)
就像 ChrisW 所说,RFC 4353 是你的朋友。
在实际实现会议逻辑之前,您需要一些细节。您需要支持 Join 标头,REFER 方法(基于 事件包。您可能还需要替换< /a> 标头,并支持呼叫转移
。 //www.rfc-editor.org/rfc/rfc4579" rel="nofollow noreferrer">呼叫控制 RFC 将向您展示添加/删除参与者等的实际呼叫流程。
另外,请查看 < a href="https://www.rfc-editor.org/rfc/rfc5411#section-16" rel="nofollow noreferrer">《SIP 漫游指南》的相关部分
并且,一如既往, sip-implementors 列表是一个很好的帮助来源。
Like ChrisW says, RFC 4353 is your friend here.
Before you actually implement the logic around conferencing, you need several bits and pieces. You need to support the Join header, the REFER method (which builds on the events package. You may also need the Replaces header, and support call transfer.
The Call Control RFC will show you the actual call flows around adding/removing participants etc.
Also, take a look at the relevant section of the Hitchhiker's Guide to SIP.
And, as always, the sip-implementors list is a good source of help.
我不认为你告诉新参与者所有参与者的详细信息;相反,我认为您让参与者与媒体服务器交谈,该服务器混合了来自多个呼叫分支的媒体:
原始参与者之一(邀请第 3 方的参与者)充当媒体服务器:因此,此 UAC 有两个单独的调用,分别调用另外两方,并混合媒体。
或者,原始参与者转移到一个单独的专用媒体服务器:随后进行 3 个呼叫(三方各一个),并混合媒体。
编辑:
以下是前一种方法的示例:三方会议(第三方加入)
以下是后一种方法的示例:A使用会话发起协议 (SIP) 进行会议的框架
I don't think you tell the new participant the details of all the participants involved; instead, I think that you have participants talking to a media server, which mixes the media from the several call-legs:
Either, one of the original participants (the one which invites the 3rd party) acts as the media server: this UAC therefore has two separate calls, one to each of the other two parties, and mixes the media.
Or, the original participants transfer to a separate, dedicated media server: which subsequently has 3 calls (one to each of the three parties), and mixes the media.
Edit:
Here's an example of the former method: Three-Way Conference (Third Party Joins)
Here are examples of the latter method: A Framework for Conferencing with the Session Initiation Protocol (SIP)