-
Notifications
You must be signed in to change notification settings - Fork 1.7k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
sip-to-webrtc panic: SetRemoteDescription called with multiple conflicting ice-ufrag values #2619
Comments
@heshouyong I'm not sure FreeSwitch Verto supports WebRTC Bundling. And Pion for sure doesn't support unbundled WebRTC for now. I suggest you switch to Asterisk as they introduced WebRTC Bundling capabilities as of version 15 a couple of years ago. If your use case relies on FreeSwitch transcoding capabilities, that is not available in Asterisk. You will have to do the transcoding yourself. Even if you do, for Pion to accept your offer, #2621 would need to be solved, or you can use my workaround here #2621 (comment) . If you really need FreeSwitch, then you're out of luck with Pion, I suggest you switch libraries. |
@Odinvt thx! RFC 8839https://datatracker.ietf.org/doc/html/rfc8839#name-ice-ufrag-and-ice-pwd-attri The "ice-pwd" and "ice-ufrag" attributes can appear at either the session-level or media-level. When present in both, the value in the media-level takes precedence. Thus, the value at the session-level is effectively a default that applies to all data streams, unless overridden by a media-level value. Whether present at the session or media-level, there MUST be an "ice-pwd" and "ice-ufrag" attribute for each data stream. If two data streams have identical "ice-ufrag"s, they MUST have identical "ice-pwd"s. Freeswitch + jssip works. sdp offer: v=0 sdp answer: |
Closing as duplicate of #2621 I am going to add support for Remote Agents that support both bundled and unbundled (as described in #2621). I created an example repo pion-unbundled that can be used to connect a unbundled remote if needed. It uses multiple PeerConnections to simulate a PeerConnection that isn't bundled. Thanks for the bug reports and for using Pion @heshouyong @Odinvt ! |
In sip-to-webrtc.
SDP:
sdp: v=0
o=FreeSWITCH 1700089259 1700089260 IN IP4 192.168.4.122
s=FreeSWITCH
c=IN IP4 192.168.4.122
t=0 0
a=msid-semantic: WMS hPQFlSWoUU7vVAmQnnqZ2o0bXc1t3XJr
m=audio 29974 UDP/TLS/RTP/SAVPF 111 101
a=rtpmap:111 opus/48000/2
a=fmtp:111 useinbandfec=1; minptime=10
a=rtpmap:101 telephone-event/8000
a=ptime:20
a=fingerprint:sha-256 FC:C6:A1:AC:11:59:22:C1:30:A1:2E:20:09:A1:05:5D:68:24:23:5F:0A:6E:D3:3A:35:5F:A7:D5:0E:3D:8A:D8
a=setup:active
a=rtcp-mux
a=rtcp:29974 IN IP4 192.168.4.122
a=ice-ufrag:kKDgBbqJkSbZekyL
a=ice-pwd:CORwmmpD1Kg6nEpjQ0s2MMBy
a=candidate:0097408050 1 udp 2130706431 192.168.4.122 29974 typ host generation 0
a=end-of-candidates
a=ssrc:371077960 cname:3Ma4aVuQBnz1lxJK
a=ssrc:371077960 msid:hPQFlSWoUU7vVAmQnnqZ2o0bXc1t3XJr a0
a=ssrc:371077960 mslabel:hPQFlSWoUU7vVAmQnnqZ2o0bXc1t3XJr
a=ssrc:371077960 label:hPQFlSWoUU7vVAmQnnqZ2o0bXc1t3XJra0
m=video 24074 UDP/TLS/RTP/SAVPF 96
b=AS:3072
a=rtpmap:96 VP8/90000
a=fingerprint:sha-256 FC:C6:A1:AC:11:59:22:C1:30:A1:2E:20:09:A1:05:5D:68:24:23:5F:0A:6E:D3:3A:35:5F:A7:D5:0E:3D:8A:D8
a=setup:active
a=rtcp-mux
a=rtcp:24074 IN IP4 192.168.4.122
a=rtcp-fb:96 ccm fir
a=rtcp-fb:96 nack
a=rtcp-fb:96 nack pli
a=ssrc:3816007360 cname:3Ma4aVuQBnz1lxJK
a=ssrc:3816007360 msid:hPQFlSWoUU7vVAmQnnqZ2o0bXc1t3XJr v0
a=ssrc:3816007360 mslabel:hPQFlSWoUU7vVAmQnnqZ2o0bXc1t3XJr
a=ssrc:3816007360 label:hPQFlSWoUU7vVAmQnnqZ2o0bXc1t3XJrv0
a=ice-ufrag:HeDJ1q8mofoMFMFY
a=ice-pwd:M2lkzObnMFSxEyWtma5l1D6L
a=candidate:4598179372 1 udp 2130706431 192.168.4.122 24074 typ host generation 0
a=end-of-candidates
a=mid:0
panic: SetRemoteDescription called with multiple conflicting ice-ufrag values
sip-to-webrtc/softphone/register.go
Can we support multiple ice-ufrag / ice-pwd?
The text was updated successfully, but these errors were encountered: