ICE消息触发是由 webrtc 原生API RTCPeerConnection 中onicecandidate事件传出,在经过rtcpeerconnection做了一定的记录处理,然后触发’ice’事件将ice内容传到Peer 对象中,Peer对象再调用信令服务器接口将candidate消息发送出去。 而onicecandidate事件触发来自 icecandidate事件,而icecandidate 是由RTCPeerConnection API 中setLocalDescription调用内部触发。
代码流程:
从信令服务器发出的消息:
{
"to": "NlTiOI7ux4ch-iuHAAGw",
"sid": "1561345405219",
"roomType": "video",
"type": "candidate",
"payload": {
"candidate": {
"candidate": "candidate:3 1 UDP 92217087 52.83.116.127 64339 typ relay raddr 52.83.116.127 rport 64339",
"sdpMid": "0",
"sdpMLineIndex": 0
}
},
"prefix": "moz"
}
在Peer.js 中’ice’事假触发处理函数onIceCandidate中的消息:
{
"candidate": {
"candidate": "candidate:3 1 UDP 92217087 52.83.116.127 64339 typ relay raddr 52.83.116.127 rport 64339",
"sdpMid": "0",
"sdpMLineIndex": 0
}
WebRTC原生API RTCPeerConnection 中onicecandidate事件传出的消息:
{
"candidate": "candidate:4 2 TCP 2105524478 192.168.31.195 9 typ host tcptype active",
"sdpMid": "1",
"sdpMLineIndex": 1,
"usernameFragment": null
}
当加入房间时SimpleWebrtc会调用webrtc.js中的createPeer函数,而createPeer函数会调用Peer.js构造函数生成peer,之后Peer对象创建成功后,Simplewebrtc.js中会调用Peer.start(),主动调用PeerConnection.prototype.offer,该方法内部会调用原生webrtc RTCPeerConnection API的createOffer 方法,该方法会返回offer内容。经过PeerConnection offer函数一定处理和记录后,触发PeerConnection的’offer’事件处理函数,处理函数中Peer对象再调用信令服务器接口将offer消息发送出去。
RTCPeerConnection API调用createOffer 生成的消息:
{
"type": "offer",
"sdp": "v=0\r\no=mozilla...THIS_IS_SDPARTA-67.0.3 261439577281072343 0 IN IP4 0.0.0.0\r\ns=-\r\nt=0 0\r\na=fingerprint:sha-256 03:91:36:85:CB:CC:2E:23:81:A0:F9:61:B0:83:6D:FC:EF:02:8D:6C:EF:46:FB:39:32:DF:9F:75:7A:1F:36:CA\r\na=group:BUNDLE 0 1 2\r\na=ice-options:trickle\r\na=msid-semantic:WMS *\r\nm=audio 9 UDP/TLS/RTP/SAVPF 109 9 0 8 101\r\nc=IN IP4 0.0.0.0\r\na=sendrecv\r\na=extmap:1 urn:ietf:params:rtp-hdrext:ssrc-audio-level\r\na=extmap:2/recvonly urn:ietf:params:rtp-hdrext:csrc-audio-level\r\na=extmap:3 urn:ietf:params:rtp-hdrext:sdes:mid\r\na=fmtp:109 maxplaybackrate=48000;stereo=1;useinbandfec=1\r\na=fmtp:101 0-15\r\na=ice-pwd:565cdc22158330ee56404978e4ca73ec\r\na=ice-ufrag:3c76faca\r\na=mid:0\r\na=msid:{afe1671f-f6df-4034-945f-46f4e5cb29ea} {a2a3fdeb-ecae-4353-8d30-7b88c363d17c}\r\na=rtcp-mux\r\na=rtpmap:109 opus/48000/2\r\na=rtpmap:9 G722/8000/1\r\na=rtpmap:0 PCMU/8000\r\na=rtpmap:8 PCMA/8000\r\na=rtpmap:101 telephone-event/8000/1\r\na=setup:actpass\r\na=ssrc:3803496387 cname:{4a1c315a-f73a-4d42-84a2-963af52d4fd5}\r\nm=video 9 UDP/TLS/RTP/SAVPF 120 121 126 97\r\nc=IN IP4 0.0.0.0\r\na=sendrecv\r\na=extmap:3 urn:ietf:params:rtp-hdrext:sdes:mid\r\na=extmap:4 http://www.webrtc.org/experiments/rtp-hdrext/abs-send-time\r\na=extmap:5 urn:ietf:params:rtp-hdrext:toffset\r\na=fmtp:126 profile-level-id=42e01f;level-asymmetry-allowed=1;packetization-mode=1\r\na=fmtp:97 profile-level-id=42e01f;level-asymmetry-allowed=1\r\na=fmtp:120 max-fs=12288;max-fr=60\r\na=fmtp:121 max-fs=12288;max-fr=60\r\na=ice-pwd:565cdc22158330ee56404978e4ca73ec\r\na=ice-ufrag:3c76faca\r\na=mid:1\r\na=msid:{afe1671f-f6df-4034-945f-46f4e5cb29ea} {73295921-1b57-4e8a-acbc-f1e11e9b8ef7}\r\na=rtcp-fb:120 nack\r\na=rtcp-fb:120 nack pli\r\na=rtcp-fb:120 ccm fir\r\na=rtcp-fb:120 goog-remb\r\na=rtcp-fb:121 nack\r\na=rtcp-fb:121 nack pli\r\na=rtcp-fb:121 ccm fir\r\na=rtcp-fb:121 goog-remb\r\na=rtcp-fb:126 nack\r\na=rtcp-fb:126 nack pli\r\na=rtcp-fb:126 ccm fir\r\na=rtcp-fb:126 goog-remb\r\na=rtcp-fb:97 nack\r\na=rtcp-fb:97 nack pli\r\na=rtcp-fb:97 ccm fir\r\na=rtcp-fb:97 goog-remb\r\na=rtcp-mux\r\na=rtpmap:120 VP8/90000\r\na=rtpmap:121 VP9/90000\r\na=rtpmap:126 H264/90000\r\na=rtpmap:97 H264/90000\r\na=setup:actpass\r\na=ssrc:3573768959 cname:{4a1c315a-f73a-4d42-84a2-963af52d4fd5}\r\nm=application 9 UDP/DTLS/SCTP webrtc-datachannel\r\nc=IN IP4 0.0.0.0\r\na=sendrecv\r\na=ice-pwd:565cdc22158330ee56404978e4ca73ec\r\na=ice-ufrag:3c76faca\r\na=mid:2\r\na=setup:actpass\r\na=sctp-port:5000\r\na=max-message-size:1073741823\r\n"
}
Peer offer事件得到的offer消息内容:
{
"type": "offer",
"sdp": "v=0\r\no=mozilla...THIS_IS_SDPARTA-67.0.3 261439577281072343 0 IN IP4 0.0.0.0\r\ns=-\r\nt=0 0\r\na=fingerprint:sha-256 03:91:36:85:CB:CC:2E:23:81:A0:F9:61:B0:83:6D:FC:EF:02:8D:6C:EF:46:FB:39:32:DF:9F:75:7A:1F:36:CA\r\na=group:BUNDLE 0 1 2\r\na=ice-options:trickle\r\na=msid-semantic:WMS *\r\nm=audio 9 UDP/TLS/RTP/SAVPF 109 9 0 8 101\r\nc=IN IP4 0.0.0.0\r\na=sendrecv\r\na=extmap:1 urn:ietf:params:rtp-hdrext:ssrc-audio-level\r\na=extmap:2/recvonly urn:ietf:params:rtp-hdrext:csrc-audio-level\r\na=extmap:3 urn:ietf:params:rtp-hdrext:sdes:mid\r\na=fmtp:109 maxplaybackrate=48000;stereo=1;useinbandfec=1\r\na=fmtp:101 0-15\r\na=ice-pwd:565cdc22158330ee56404978e4ca73ec\r\na=ice-ufrag:3c76faca\r\na=mid:0\r\na=msid:{afe1671f-f6df-4034-945f-46f4e5cb29ea} {a2a3fdeb-ecae-4353-8d30-7b88c363d17c}\r\na=rtcp-mux\r\na=rtpmap:109 opus/48000/2\r\na=rtpmap:9 G722/8000/1\r\na=rtpmap:0 PCMU/8000\r\na=rtpmap:8 PCMA/8000\r\na=rtpmap:101 telephone-event/8000/1\r\na=setup:actpass\r\na=ssrc:3803496387 cname:{4a1c315a-f73a-4d42-84a2-963af52d4fd5}\r\nm=video 9 UDP/TLS/RTP/SAVPF 120 121 126 97\r\nc=IN IP4 0.0.0.0\r\na=sendrecv\r\na=extmap:3 urn:ietf:params:rtp-hdrext:sdes:mid\r\na=extmap:4 http://www.webrtc.org/experiments/rtp-hdrext/abs-send-time\r\na=extmap:5 urn:ietf:params:rtp-hdrext:toffset\r\na=fmtp:126 profile-level-id=42e01f;level-asymmetry-allowed=1;packetization-mode=1\r\na=fmtp:97 profile-level-id=42e01f;level-asymmetry-allowed=1\r\na=fmtp:120 max-fs=12288;max-fr=60\r\na=fmtp:121 max-fs=12288;max-fr=60\r\na=ice-pwd:565cdc22158330ee56404978e4ca73ec\r\na=ice-ufrag:3c76faca\r\na=mid:1\r\na=msid:{afe1671f-f6df-4034-945f-46f4e5cb29ea} {73295921-1b57-4e8a-acbc-f1e11e9b8ef7}\r\na=rtcp-fb:120 nack\r\na=rtcp-fb:120 nack pli\r\na=rtcp-fb:120 ccm fir\r\na=rtcp-fb:120 goog-remb\r\na=rtcp-fb:121 nack\r\na=rtcp-fb:121 nack pli\r\na=rtcp-fb:121 ccm fir\r\na=rtcp-fb:121 goog-remb\r\na=rtcp-fb:126 nack\r\na=rtcp-fb:126 nack pli\r\na=rtcp-fb:126 ccm fir\r\na=rtcp-fb:126 goog-remb\r\na=rtcp-fb:97 nack\r\na=rtcp-fb:97 nack pli\r\na=rtcp-fb:97 ccm fir\r\na=rtcp-fb:97 goog-remb\r\na=rtcp-mux\r\na=rtpmap:120 VP8/90000\r\na=rtpmap:121 VP9/90000\r\na=rtpmap:126 H264/90000\r\na=rtpmap:97 H264/90000\r\na=setup:actpass\r\na=ssrc:3573768959 cname:{4a1c315a-f73a-4d42-84a2-963af52d4fd5}\r\nm=application 9 UDP/DTLS/SCTP webrtc-datachannel\r\nc=IN IP4 0.0.0.0\r\na=sendrecv\r\na=ice-pwd:565cdc22158330ee56404978e4ca73ec\r\na=ice-ufrag:3c76faca\r\na=mid:2\r\na=setup:actpass\r\na=sctp-port:5000\r\na=max-message-size:1073741823\r\n"
}
信令服务器发送的offer消息内容:
{
"to": "3zURHX3sn6O3cwdyAAHE",
"sid": "1561354977852",
"roomType": "video",
"type": "offer",
"payload": {
"type": "offer",
"sdp": "v=0\r\no=mozilla...THIS_IS_SDPARTA-67.0.3 261439577281072343 0 IN IP4 0.0.0.0\r\ns=-\r\nt=0 0\r\na=fingerprint:sha-256 03:91:36:85:CB:CC:2E:23:81:A0:F9:61:B0:83:6D:FC:EF:02:8D:6C:EF:46:FB:39:32:DF:9F:75:7A:1F:36:CA\r\na=group:BUNDLE 0 1 2\r\na=ice-options:trickle\r\na=msid-semantic:WMS *\r\nm=audio 9 UDP/TLS/RTP/SAVPF 109 9 0 8 101\r\nc=IN IP4 0.0.0.0\r\na=sendrecv\r\na=extmap:1 urn:ietf:params:rtp-hdrext:ssrc-audio-level\r\na=extmap:2/recvonly urn:ietf:params:rtp-hdrext:csrc-audio-level\r\na=extmap:3 urn:ietf:params:rtp-hdrext:sdes:mid\r\na=fmtp:109 maxplaybackrate=48000;stereo=1;useinbandfec=1\r\na=fmtp:101 0-15\r\na=ice-pwd:565cdc22158330ee56404978e4ca73ec\r\na=ice-ufrag:3c76faca\r\na=mid:0\r\na=msid:{afe1671f-f6df-4034-945f-46f4e5cb29ea} {a2a3fdeb-ecae-4353-8d30-7b88c363d17c}\r\na=rtcp-mux\r\na=rtpmap:109 opus/48000/2\r\na=rtpmap:9 G722/8000/1\r\na=rtpmap:0 PCMU/8000\r\na=rtpmap:8 PCMA/8000\r\na=rtpmap:101 telephone-event/8000/1\r\na=setup:actpass\r\na=ssrc:3803496387 cname:{4a1c315a-f73a-4d42-84a2-963af52d4fd5}\r\nm=video 9 UDP/TLS/RTP/SAVPF 120 121 126 97\r\nc=IN IP4 0.0.0.0\r\na=sendrecv\r\na=extmap:3 urn:ietf:params:rtp-hdrext:sdes:mid\r\na=extmap:4 http://www.webrtc.org/experiments/rtp-hdrext/abs-send-time\r\na=extmap:5 urn:ietf:params:rtp-hdrext:toffset\r\na=fmtp:126 profile-level-id=42e01f;level-asymmetry-allowed=1;packetization-mode=1\r\na=fmtp:97 profile-level-id=42e01f;level-asymmetry-allowed=1\r\na=fmtp:120 max-fs=12288;max-fr=60\r\na=fmtp:121 max-fs=12288;max-fr=60\r\na=ice-pwd:565cdc22158330ee56404978e4ca73ec\r\na=ice-ufrag:3c76faca\r\na=mid:1\r\na=msid:{afe1671f-f6df-4034-945f-46f4e5cb29ea} {73295921-1b57-4e8a-acbc-f1e11e9b8ef7}\r\na=rtcp-fb:120 nack\r\na=rtcp-fb:120 nack pli\r\na=rtcp-fb:120 ccm fir\r\na=rtcp-fb:120 goog-remb\r\na=rtcp-fb:121 nack\r\na=rtcp-fb:121 nack pli\r\na=rtcp-fb:121 ccm fir\r\na=rtcp-fb:121 goog-remb\r\na=rtcp-fb:126 nack\r\na=rtcp-fb:126 nack pli\r\na=rtcp-fb:126 ccm fir\r\na=rtcp-fb:126 goog-remb\r\na=rtcp-fb:97 nack\r\na=rtcp-fb:97 nack pli\r\na=rtcp-fb:97 ccm fir\r\na=rtcp-fb:97 goog-remb\r\na=rtcp-mux\r\na=rtpmap:120 VP8/90000\r\na=rtpmap:121 VP9/90000\r\na=rtpmap:126 H264/90000\r\na=rtpmap:97 H264/90000\r\na=setup:actpass\r\na=ssrc:3573768959 cname:{4a1c315a-f73a-4d42-84a2-963af52d4fd5}\r\nm=application 9 UDP/DTLS/SCTP webrtc-datachannel\r\nc=IN IP4 0.0.0.0\r\na=sendrecv\r\na=ice-pwd:565cdc22158330ee56404978e4ca73ec\r\na=ice-ufrag:3c76faca\r\na=mid:2\r\na=setup:actpass\r\na=sctp-port:5000\r\na=max-message-size:1073741823\r\n"
},
"prefix": "moz"
}
当收到对端offer消息后,调用了PeerConnection的handleOffer处理函数,之后就主动调用PeerConnection.answer方法。该方法又会调用 PeerConnection._answer的方法,在该方法中会调用webrtc原生RTCPeerConnection API createAnswer的方法返回answer。经过_answer记录处理后,会触发answer事件,answer事件会调用服务发送answer消息。
this.pc.on(‘answer’, function (answer) {
RTCPeerConnection.createAnswer(function (answer) {}); 原生API生成answer消息
{
"type": "answer",
"sdp": "v=0\r\no=mozilla...THIS_IS_SDPARTA-67.0.3 3557134043810194619 0 IN IP4 0.0.0.0\r\ns=-\r\nt=0 0\r\na=fingerprint:sha-256 E2:0D:A0:EA:85:5C:83:88:2C:2F:41:3A:95:AF:2E:A0:1B:3D:D2:7A:D9:32:B9:7B:13:96:A3:B6:A2:63:01:1E\r\na=group:BUNDLE 0 1 2\r\na=ice-options:trickle\r\na=msid-semantic:WMS *\r\nm=audio 9 UDP/TLS/RTP/SAVPF 109 101\r\nc=IN IP4 0.0.0.0\r\na=sendrecv\r\na=extmap:1 urn:ietf:params:rtp-hdrext:ssrc-audio-level\r\na=extmap:3 urn:ietf:params:rtp-hdrext:sdes:mid\r\na=fmtp:109 maxplaybackrate=48000;stereo=1;useinbandfec=1\r\na=fmtp:101 0-15\r\na=ice-pwd:504f8779fd0f8e253dcf6377a6f496eb\r\na=ice-ufrag:295f820c\r\na=mid:0\r\na=msid:{25dbfb30-b6ec-4abd-ad3a-2a3e58d85897} {cb921919-eb11-4481-9dd2-6f78515a8d5c}\r\na=rtcp-mux\r\na=rtpmap:109 opus/48000/2\r\na=rtpmap:101 telephone-event/8000/1\r\na=setup:active\r\na=ssrc:4009002643 cname:{fec7121f-924b-4648-8ecf-d4c02893b97a}\r\nm=video 9 UDP/TLS/RTP/SAVPF 120\r\nc=IN IP4 0.0.0.0\r\na=sendrecv\r\na=extmap:3 urn:ietf:params:rtp-hdrext:sdes:mid\r\na=extmap:4 http://www.webrtc.org/experiments/rtp-hdrext/abs-send-time\r\na=extmap:5 urn:ietf:params:rtp-hdrext:toffset\r\na=fmtp:120 max-fs=12288;max-fr=60\r\na=ice-pwd:504f8779fd0f8e253dcf6377a6f496eb\r\na=ice-ufrag:295f820c\r\na=mid:1\r\na=msid:{25dbfb30-b6ec-4abd-ad3a-2a3e58d85897} {a9e142ed-ca52-4cac-ab25-e2c33742acad}\r\na=rtcp-fb:120 nack\r\na=rtcp-fb:120 nack pli\r\na=rtcp-fb:120 ccm fir\r\na=rtcp-fb:120 goog-remb\r\na=rtcp-mux\r\na=rtpmap:120 VP8/90000\r\na=setup:active\r\na=ssrc:1773632207 cname:{fec7121f-924b-4648-8ecf-d4c02893b97a}\r\nm=application 9 UDP/DTLS/SCTP webrtc-datachannel\r\nc=IN IP4 0.0.0.0\r\na=sendrecv\r\na=ice-pwd:504f8779fd0f8e253dcf6377a6f496eb\r\na=ice-ufrag:295f820c\r\na=mid:2\r\na=setup:active\r\na=sctp-port:5000\r\na=max-message-size:1073741823\r\n"
}
PeerConnection.on(‘answer’, function (answer)) answer事件得到的消息
{
"type": "answer",
"sdp": "v=0\r\no=mozilla...THIS_IS_SDPARTA-67.0.3 3557134043810194619 0 IN IP4 0.0.0.0\r\ns=-\r\nt=0 0\r\na=fingerprint:sha-256 E2:0D:A0:EA:85:5C:83:88:2C:2F:41:3A:95:AF:2E:A0:1B:3D:D2:7A:D9:32:B9:7B:13:96:A3:B6:A2:63:01:1E\r\na=group:BUNDLE 0 1 2\r\na=ice-options:trickle\r\na=msid-semantic:WMS *\r\nm=audio 9 UDP/TLS/RTP/SAVPF 109 101\r\nc=IN IP4 0.0.0.0\r\na=sendrecv\r\na=extmap:1 urn:ietf:params:rtp-hdrext:ssrc-audio-level\r\na=extmap:3 urn:ietf:params:rtp-hdrext:sdes:mid\r\na=fmtp:109 maxplaybackrate=48000;stereo=1;useinbandfec=1\r\na=fmtp:101 0-15\r\na=ice-pwd:504f8779fd0f8e253dcf6377a6f496eb\r\na=ice-ufrag:295f820c\r\na=mid:0\r\na=msid:{25dbfb30-b6ec-4abd-ad3a-2a3e58d85897} {cb921919-eb11-4481-9dd2-6f78515a8d5c}\r\na=rtcp-mux\r\na=rtpmap:109 opus/48000/2\r\na=rtpmap:101 telephone-event/8000/1\r\na=setup:active\r\na=ssrc:4009002643 cname:{fec7121f-924b-4648-8ecf-d4c02893b97a}\r\nm=video 9 UDP/TLS/RTP/SAVPF 120\r\nc=IN IP4 0.0.0.0\r\na=sendrecv\r\na=extmap:3 urn:ietf:params:rtp-hdrext:sdes:mid\r\na=extmap:4 http://www.webrtc.org/experiments/rtp-hdrext/abs-send-time\r\na=extmap:5 urn:ietf:params:rtp-hdrext:toffset\r\na=fmtp:120 max-fs=12288;max-fr=60\r\na=ice-pwd:504f8779fd0f8e253dcf6377a6f496eb\r\na=ice-ufrag:295f820c\r\na=mid:1\r\na=msid:{25dbfb30-b6ec-4abd-ad3a-2a3e58d85897} {a9e142ed-ca52-4cac-ab25-e2c33742acad}\r\na=rtcp-fb:120 nack\r\na=rtcp-fb:120 nack pli\r\na=rtcp-fb:120 ccm fir\r\na=rtcp-fb:120 goog-remb\r\na=rtcp-mux\r\na=rtpmap:120 VP8/90000\r\na=setup:active\r\na=ssrc:1773632207 cname:{fec7121f-924b-4648-8ecf-d4c02893b97a}\r\nm=application 9 UDP/DTLS/SCTP webrtc-datachannel\r\nc=IN IP4 0.0.0.0\r\na=sendrecv\r\na=ice-pwd:504f8779fd0f8e253dcf6377a6f496eb\r\na=ice-ufrag:295f820c\r\na=mid:2\r\na=setup:active\r\na=sctp-port:5000\r\na=max-message-size:1073741823\r\n"
}
Peer.send消息
{
"to": "MqzgsXAE2vz_KsewAAAc",
"sid": "1561364748196",
"roomType": "video",
"type": "answer",
"payload": {
"type": "answer",
"sdp": "v=0\r\no=mozilla...THIS_IS_SDPARTA-67.0.3 3557134043810194619 0 IN IP4 0.0.0.0\r\ns=-\r\nt=0 0\r\na=fingerprint:sha-256 E2:0D:A0:EA:85:5C:83:88:2C:2F:41:3A:95:AF:2E:A0:1B:3D:D2:7A:D9:32:B9:7B:13:96:A3:B6:A2:63:01:1E\r\na=group:BUNDLE 0 1 2\r\na=ice-options:trickle\r\na=msid-semantic:WMS *\r\nm=audio 9 UDP/TLS/RTP/SAVPF 109 101\r\nc=IN IP4 0.0.0.0\r\na=sendrecv\r\na=extmap:1 urn:ietf:params:rtp-hdrext:ssrc-audio-level\r\na=extmap:3 urn:ietf:params:rtp-hdrext:sdes:mid\r\na=fmtp:109 maxplaybackrate=48000;stereo=1;useinbandfec=1\r\na=fmtp:101 0-15\r\na=ice-pwd:504f8779fd0f8e253dcf6377a6f496eb\r\na=ice-ufrag:295f820c\r\na=mid:0\r\na=msid:{25dbfb30-b6ec-4abd-ad3a-2a3e58d85897} {cb921919-eb11-4481-9dd2-6f78515a8d5c}\r\na=rtcp-mux\r\na=rtpmap:109 opus/48000/2\r\na=rtpmap:101 telephone-event/8000/1\r\na=setup:active\r\na=ssrc:4009002643 cname:{fec7121f-924b-4648-8ecf-d4c02893b97a}\r\nm=video 9 UDP/TLS/RTP/SAVPF 120\r\nc=IN IP4 0.0.0.0\r\na=sendrecv\r\na=extmap:3 urn:ietf:params:rtp-hdrext:sdes:mid\r\na=extmap:4 http://www.webrtc.org/experiments/rtp-hdrext/abs-send-time\r\na=extmap:5 urn:ietf:params:rtp-hdrext:toffset\r\na=fmtp:120 max-fs=12288;max-fr=60\r\na=ice-pwd:504f8779fd0f8e253dcf6377a6f496eb\r\na=ice-ufrag:295f820c\r\na=mid:1\r\na=msid:{25dbfb30-b6ec-4abd-ad3a-2a3e58d85897} {a9e142ed-ca52-4cac-ab25-e2c33742acad}\r\na=rtcp-fb:120 nack\r\na=rtcp-fb:120 nack pli\r\na=rtcp-fb:120 ccm fir\r\na=rtcp-fb:120 goog-remb\r\na=rtcp-mux\r\na=rtpmap:120 VP8/90000\r\na=setup:active\r\na=ssrc:1773632207 cname:{fec7121f-924b-4648-8ecf-d4c02893b97a}\r\nm=application 9 UDP/DTLS/SCTP webrtc-datachannel\r\nc=IN IP4 0.0.0.0\r\na=sendrecv\r\na=ice-pwd:504f8779fd0f8e253dcf6377a6f496eb\r\na=ice-ufrag:295f820c\r\na=mid:2\r\na=setup:active\r\na=sctp-port:5000\r\na=max-message-size:1073741823\r\n"
},
"prefix": "moz"
}
Object { to: "5tWeTFq2ia5Kc-SkAACO", sid: "1562227999900", roomType: "video", type: "endOfCandidates", prefix: "moz", from: "kUauGLcA9UpG0f7TAACQ" }