webrtc与SIP通信,如何获取流,ice?

webrtc与SIP通信,如何获取流,ice?,sip,webrtc,Sip,Webrtc,现在我正在制作webrtc信号服务器,使用SIP。 我有个大问题。如何从远程SIP客户端获取流和ICE候选者 在webrtc客户端,调用getusermedia->peerconnection->createoffer->ReceiveStream webrtc客户端向信号服务器发送会话描述(SDP) 信号服务器创建SIP Invite消息,使用webrtc客户端会话描述(SDP) 信号服务器与SIP客户端(如jitsi)通信SIP消息 webrtc客户端需要接收ICE候选者和流。怎么去 我可以

现在我正在制作webrtc信号服务器,使用SIP。 我有个大问题。如何从远程SIP客户端获取流和ICE候选者

  • 在webrtc客户端,调用getusermedia->peerconnection->createoffer->ReceiveStream

  • webrtc客户端向信号服务器发送会话描述(SDP)

  • 信号服务器创建SIP Invite消息,使用webrtc客户端会话描述(SDP)

  • 信号服务器与SIP客户端(如jitsi)通信SIP消息

  • webrtc客户端需要接收ICE候选者和流。怎么去

    我可以从远程SDP消息生成ICE候选和流吗

  • 是SIP和WebRTC使用的自己的协议。您可以通过SDP交换发送大量信息

    SIP完全可以通过SDP发送连接信息。您必须确保连接信息在SIP端是可靠的(让它与STUN/TURN服务器协商),一旦它有了好的信息,您就可以简单地用该信息编写SDP并发送它

    至于媒体,您必须处理双方之间的DTLS-SRTP密钥交换过程,以便双方都可以对SRTP媒体进行加密/解密(双方都有主密钥)

    一旦双方都有主密钥、连接信息(IP/端口)和媒体协商(相同的编解码器),您就可以通过协商的IP/端口简单地流式传输商定的编解码器

    您可以在SIP客户端与Ice服务器通信时创建自己的Ice涓涓流和Ice候选对象,并将其发送到另一端,但在尝试协商连接本身之前,等待所有Ice协商完成可能更容易。您必须确定SIP端的协商何时完成,但RTPeerConnection对此有一个信号

    你可能想退房。你将不得不做一些类似的事情,他们正在做的,使所有这些活动部件的工作

    TL;博士说:

  • 您可以独立地与双方的ICE(stun或turn)服务器进行协商,从中获取良好连接信息,并将其写入SDP(您可以解析SIP端的ICE候选以获得良好连接,并将SIP端收集的所有候选数据写入SDP)
  • 小心使用RTP/RTCP多路复用。确保您的媒体端可以解复用这些数据包(如果与chrome通信)
  • 您应该仔细阅读DTLS-SRTP
  • 通读

  • 编辑:有一个网关声称它已经可以做到这一点了。也可能是一个很好的资源,看看你可以如何做到这一点。SIP插件似乎能够与SIP设备通信。这个源代码比SIPML5的

    更容易理解,WebRTC客户端需要从SIP客户端接收ICE吗?或者反过来呢?是的,WebRTC客户端需要从SIP客户端接收ICE。。。还有更多的问题,如果webrtc客户端没有收到ICE信息,这是否可以与sip客户端通信?可能吗?有人说sdp发送ip,端口信息,但我不知道