<html><head><meta http-equiv="Content-Type" content="text/html charset=us-ascii"></head><body style="word-wrap: break-word; -webkit-nbsp-mode: space; -webkit-line-break: after-white-space;" class="">To be completely honest, I don't think anyone is going to look at this issue. We try hard to make sure we work with the browsers, but have made no effort to work on interop with other devices, particularly ones that deviate behaviors with the browsers. If you can figure it out we'd be happy to review any patches. Might try talking to the JAIN guys and see why they are using sha-1 ?<div class=""><br class=""></div><div class="">Mike</div><div class=""><br class=""><div><blockquote type="cite" class=""><div class="">On Mar 13, 2015, at 6:24 AM, Oleg Blinnikov <<a href="mailto:osblinnikov@gmail.com" class="">osblinnikov@gmail.com</a>> wrote:</div><br class="Apple-interchange-newline"><div class=""><div dir="ltr" class=""><div class="">I tried to debug again and now I noticed that the audio flow actually goes in both directions but still no video. I discovered in FreeSwitch log that during successful video call from Chrome to Android all 4 fingerprints are sha-256 and all of them are shown as "verified". But during unsuccessful call from Android I get sha-1 (from Chrome still sha-256) and for some reason FreeSwitch shows only 3 fingerprints verified. So I guess that something is wrong with the video fingerprint verification from my Android Application.<br class=""></div><div class=""><br class=""></div><div class="">Logs are attached.</div><div class=""><br class=""></div><div class="">Thank you Michael!</div><div class=""><br class=""></div></div><div class="gmail_extra"><br class=""><div class="gmail_quote">On Thu, Mar 12, 2015 at 3:57 PM, Michael Jerris <span dir="ltr" class=""><<a href="mailto:mike@jerris.com" target="_blank" class="">mike@jerris.com</a>></span> wrote:<br class=""><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div style="word-wrap:break-word" class="">its not changing it back and forth to sha-256/sha-1 those are 2 different channels... the leg to android is always sha-1. That being said, Nothing we have tested against uses sha-1. That could be an issue. You should look at the full debug log of the call between fs and android and see if there is anything useful there.<div class=""><div class="h5"><div class=""><br class=""><div class=""><blockquote type="cite" class=""><div class="">On Mar 12, 2015, at 8:07 AM, Oleg Blinnikov <<a href="mailto:osblinnikov@gmail.com" target="_blank" class="">osblinnikov@gmail.com</a>> wrote:</div><br class=""><div class=""><div dir="ltr" class="">Hi,<div class=""><br class=""></div><div class="">Unfortunately not everything runs smoothly. I run FreeSWITCH Version 1.5.15b+git~20150203T210457Z~4174fb9cbe~64bit (git 4174fb9 2015-02-03 21:04:57Z 64bit) with the default configuration<font face="verdana, sans-serif" class=""> + webrtc module + </font>tweaked bridge application for 1010 - 1019 extensions where I added ignore_early_media=true because of chrome troubles with pranswer and media_webrtc=true because one of my clients is actually JAIN SIP without WebSockets.</div><div class=""><br class=""></div><div class="">Now I call from Chrome to my Android app<span style="font-family:monospace,Courier;font-size:12.8000001907349px;line-height:1.3em;background-color:rgb(249,249,249)" class="">. In Android app</span> I receive modified SDP from FreeSwitch and all the media traffic goes though FreeSwitch. I have the audio and video in both directions. </div><div class=""><br class=""></div><div class="">But when I createOffer in the Android application and send it to Chrome the media is not flowing in any directions. In case I set "<span style="font-family:monospace,Courier;font-size:12.8000001907349px;line-height:1.3em;background-color:rgb(249,249,249)" class=""><action application="set" data="bypass_media=true"/>" media starts flowing.</span></div><div class=""><br class=""></div><div class="">PS. May be it's irrelevant but the only strange thing I noticed is that Android App produces fingerprint in sha-1 then FreeSwitch changes it to sha-256 and sends to Chrome. Chrome responds with sha-256 then FreeSwitch modifies it back to sha-1.<br class=""></div><div class=""><br class=""></div><div class="">I don't know, may be I forget about some other magic options? </div><div class=""><br class=""></div><div class="">PS: SDPs are in the attachment</div></div><div class="gmail_extra"><br class=""><div class="gmail_quote">On Fri, Mar 6, 2015 at 4:43 PM, Michael Jerris <span dir="ltr" class=""><<a href="mailto:mike@jerris.com" target="_blank" class="">mike@jerris.com</a>></span> wrote:<br class=""><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div style="word-wrap:break-word" class="">Always nice to hear that we are magic! <div class=""><div class=""><div class=""><br class=""><div class=""><blockquote type="cite" class=""><div class="">On Mar 6, 2015, at 5:05 AM, Oleg Blinnikov <<a href="mailto:osblinnikov@gmail.com" target="_blank" class="">osblinnikov@gmail.com</a>> wrote:</div><br class=""><div class=""><div dir="ltr" class="">thank you very much Michael, it magically works.</div><div class="gmail_extra"><br class=""><div class="gmail_quote">On Thu, Mar 5, 2015 at 6:51 PM, Michael Jerris <span dir="ltr" class=""><<a href="mailto:mike@jerris.com" target="_blank" class="">mike@jerris.com</a>></span> wrote:<br class=""><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div style="word-wrap:break-word" class="">you need to tell freeswitch to send a webrtc compatible SDP.<div class=""><br class=""></div><div class=""><a href="https://wiki.freeswitch.org/wiki/Variable_media_webrtc" target="_blank" class="">https://wiki.freeswitch.org/wiki/Variable_media_webrtc</a><br class=""><div class=""><br class=""></div><div class=""><br class=""><div class=""><blockquote type="cite" class=""><div class=""><div class=""><div class="">On Mar 5, 2015, at 3:51 AM, Oleg Blinnikov <<a href="mailto:osblinnikov@gmail.com" target="_blank" class="">osblinnikov@gmail.com</a>> wrote:</div><br class=""></div></div><div class=""><div class=""><div class=""><div dir="ltr" class="">Hi,<div class=""><br class=""></div><div class="">I've made a simple Android Java application utilizing JAIN SIP, <a href="http://webrtc.org/" target="_blank" class="">webrtc.org</a> android library and connected to FreeSwitch via UDP.</div><div class=""><br class=""></div><div class="">But when I send SDP from SIP/Chrome/Firefox phone to my JAIN SIP client this SDP is not managed well by FreeSwitch for establishment WebRTC PeerConnection.</div><div class=""><br class=""></div><div class="">When I call `peerConnection.setRemoteDescription(new SDPObserver(), sdp);` in my Android Application with the SDP from FreeSwitch I get:<br class=""></div><div class=""><div class=""><br class="">"onSetFailure Failed to set remote offer sdp: Called with SDP without DTLS fingerprint."<br class=""></div></div><div class=""><br class=""></div><div class=""><div class="">At the same time the calls between Chrome/Firefox(<a href="http://tryit.jssip.net/" target="_blank" class="">http://tryit.jssip.net/</a>) and SIP-phone (e.g. linphone) greatly managed by FreeSwitch and I have pure audio flow.</div></div><div class=""><br class=""></div><div class="">Here is initial SDP from Chrome (<a href="http://tryit.jssip.net/" target="_blank" class="">http://tryit.jssip.net/</a>):<br class=""></div><div class=""><br class=""></div><div class=""><div class="">v=0</div><div class="">o=- 6887715720880489867 2 IN IP4 127.0.0.1</div><div class="">s=-</div><div class="">t=0 0</div><div class="">a=group:BUNDLE audio video</div><div class="">a=msid-semantic: WMS itEKr0vXP6lg3KNs4kVau9aL3uAfyWOlItfU</div><div class="">m=audio 38359 RTP/SAVPF 111 103 104 0 8 106 105 13 126</div><div class="">c=IN IP4 192.168.122.1</div><div class="">a=rtcp:38359 IN IP4 192.168.122.1</div><div class="">a=candidate:<a href="tel:4062413514" value="+14062413514" target="_blank" class="">4062413514</a> 1 udp <a href="tel:2122260223" value="+12122260223" target="_blank" class="">2122260223</a> 192.168.122.1 38359 typ host generation 0</div><div class="">.......<br class=""></div><div class="">a=candidate:3741779331 2 tcp 1518018303 172.17.42.1 0 typ host tcptype active generation 0<br class=""></div><div class="">a=ice-ufrag:bwrCv9yS8rCY12Az</div><div class="">a=ice-pwd:3k35jpG/i+TCbvBcJPWrw2eP</div><div class="">a=ice-options:google-ice</div><div class="">a=<b class="">fingerprint</b>:sha-256 52:8C:0F:27:C6:D6:CF:AE:F4:87:AC:AE:DF:7B:9B:B2:75:90:60:6A:2A:82:09:98:AD:04:0B:35:45:6A:13:A2</div><div class="">a=setup:actpass</div><div class="">a=mid:audio</div><div class="">a=extmap:1 urn:ietf:params:rtp-hdrext:ssrc-audio-level</div><div class="">a=extmap:3 <a href="http://www.webrtc.org/experiments/rtp-hdrext/abs-send-time" target="_blank" class="">http://www.webrtc.org/experiments/rtp-hdrext/abs-send-time</a></div><div class="">a=sendrecv</div><div class="">a=rtcp-mux</div><div class="">a=rtpmap:111 opus/48000/2</div><div class="">a=fmtp:111 minptime=10</div><div class="">a=rtpmap:103 ISAC/16000</div><div class="">a=rtpmap:104 ISAC/32000</div><div class="">a=rtpmap:0 PCMU/8000</div><div class="">a=rtpmap:8 PCMA/8000</div><div class="">a=rtpmap:106 CN/32000</div><div class="">a=rtpmap:105 CN/16000</div><div class="">a=rtpmap:13 CN/8000</div><div class="">a=rtpmap:126 telephone-event/8000</div><div class="">a=maxptime:60</div><div class="">a=ssrc:1291334905 cname:ALccmKLk9bGpSGWB</div><div class="">a=ssrc:1291334905 msid:itEKr0vXP6lg3KNs4kVau9aL3uAfyWOlItfU 4e8f212e-746a-47bb-bc62-4a42d4e9e84e</div><div class="">a=ssrc:1291334905 mslabel:itEKr0vXP6lg3KNs4kVau9aL3uAfyWOlItfU</div><div class="">a=ssrc:1291334905 label:4e8f212e-746a-47bb-bc62-4a42d4e9e84e</div><div class="">m=video 38359 RTP/SAVPF 100 116 117 96</div><div class="">c=IN IP4 192.168.122.1</div><div class="">a=rtcp:38359 IN IP4 192.168.122.1</div><div class="">a=candidate:<a href="tel:4062413514" value="+14062413514" target="_blank" class="">4062413514</a> 1 udp <a href="tel:2122260223" value="+12122260223" target="_blank" class="">2122260223</a> 192.168.122.1 38359 typ host generation 0</div><div class="">............</div><div class="">a=candidate:3741779331 2 tcp 1518018303 172.17.42.1 0 typ host tcptype active generation 0<br class=""></div><div class="">a=ice-ufrag:bwrCv9yS8rCY12Az</div><div class="">a=ice-pwd:3k35jpG/i+TCbvBcJPWrw2eP</div><div class="">a=ice-options:google-ice</div><div class="">a=<b class="">fingerprint</b>:sha-256 52:8C:0F:27:C6:D6:CF:AE:F4:87:AC:AE:DF:7B:9B:B2:75:90:60:6A:2A:82:09:98:AD:04:0B:35:45:6A:13:A2</div><div class="">a=setup:actpass</div><div class="">a=mid:video</div><div class="">a=extmap:2 urn:ietf:params:rtp-hdrext:toffset</div><div class="">a=extmap:3 <a href="http://www.webrtc.org/experiments/rtp-hdrext/abs-send-time" target="_blank" class="">http://www.webrtc.org/experiments/rtp-hdrext/abs-send-time</a></div><div class="">a=recvonly</div><div class="">a=rtcp-mux</div><div class="">a=rtpmap:100 VP8/90000</div><div class="">a=rtcp-fb:100 ccm fir</div><div class="">a=rtcp-fb:100 nack</div><div class="">a=rtcp-fb:100 nack pli</div><div class="">a=rtcp-fb:100 goog-remb</div><div class="">a=rtpmap:116 red/90000</div><div class="">a=rtpmap:117 ulpfec/90000</div><div class="">a=rtpmap:96 rtx/90000</div><div class="">a=fmtp:96 apt=100</div></div><div class=""><br class=""></div><div class=""><br class=""></div><div class="">Here is SDP received from FreeSwitch in JAIN SIP via UDP:</div><div class=""><br class=""></div><div class=""><div class="">v=0</div><div class="">o=FreeSWITCH 1425524563 1425524564 IN IP4 192.168.131.253</div><div class="">s=FreeSWITCH</div><div class="">c=IN IP4 192.168.131.253</div><div class="">t=0 0</div><div class="">m=audio 16390 RTP/AVP 111 0 8 101 13</div><div class="">a=rtpmap:111 opus/48000/2</div><div class="">a=fmtp:111 minptime=10</div><div class="">a=rtpmap:0 PCMU/8000</div><div class="">a=rtpmap:8 PCMA/8000</div><div class="">a=rtpmap:101 telephone-event/8000</div><div class="">a=fmtp:101 0-16</div><div class="">a=ptime:20</div><div class="">m=video 16388 RTP/AVP 100</div><div class="">a=rtpmap:100 VP8/90000</div></div><div class=""><br class=""></div><div class=""><br class=""></div><div class="">I suppose that FreeSwitch wants to see WebRTC connection only on the WebSocket ports and it doesn't know that my UDP client is actually WebRTC client. </div><div class=""><br class=""></div><div class="">So I'm wondering if it possible to connect SIP client to the WebSocket port via TCP using standard SIP client and never upgrade connection to WebSocket?</div></div></div></div></div></blockquote></div></div></div></div></blockquote></div></div></div></blockquote></div><br class=""></div></div></div></div></blockquote></div></div></div></blockquote></div></div></div></div></div></blockquote></div></div></div></blockquote></div><br class=""></div></body></html>