[Spce-user] webRTC in production

Andreas Granig agranig at sipwise.com
Tue Nov 25 04:44:10 EST 2014


You don't need stun/turn with rtpengine, because it puts itself into the
SDP as ICE candidate (if you set the according preferences), so it can
act as turn server. stun is really only needed if you want to enforce
peer-to-peer communication without rtpengine in between.

Andreas

On 11/25/2014 08:48 AM, H Yavari wrote:
> Hi,
> Thanks for helps. I know that you did all for free. I have a question,
> Are you using ICE server or STUN? I did all of my test in the local
> domain and with private IP's.
> SPCE team, have you any idea for this issue?
> 
> 
> Regards,
> H.Yavari
> 
> 
> ------------------------------------------------------------------------
> *From:* Nikita Stashkov <snl at sipmobile.org>
> **
> Sorry, I have done all I can do for free. You can test new versions with
> my site. I think they are working.
> If you need more help, it can be only commercial support.
> 
> Regards,
> Nikita Stashkov
>  
>> 24 нояб. 2014 г., в 17:53, H Yavari <hyavari at rocketmail.com
>> <mailto:hyavari at rocketmail.com>> написал(а):
>>
>>
>>
>> Hi,
>> Very thanks for sharing the script. I'm very confused. I checked the
>> script line by line and differences are some lines that I think added
>> in the 3.6.1 and they are not related to the media. I added
>> "rtcp-mux-demux" flags like your script too. but nothing has changed
>> and issues not solved.
>> So I lost my way.  maybe the all problems is from client side. Your
>> script working with current version of jssip and sipml5? and latest
>> Chrome and Firefox versions?
>>
>> Regards,
>> H.Yavari
>>
>> ------------------------------------------------------------------------
>> *From:* Nikita Stashkov <snl at sipmobile.org <mailto:snl at sipmobile.org>>
>>
>>
>> Ok, if it will help you.
>> Attached is my script (without push), and domain settings.
>> Should not be understood literally all. I have many changes in config.
>>
>>
>>
>>
>>
>>
>>> 24 нояб. 2014 г., в 13:07, H Yavari <hyavari at rocketmail.com
>>> <mailto:hyavari at rocketmail.com>> написал(а):
>>>
>>> Hi,
>>> Yes, with sipml5 calls have been terminated. I changed all ws to ws
>>> || wss. I did this too :
>>>  if(isbflagset(FLB_SAVP_CALLER_SRTP))
>>>                                 {
>>>                                         xlog("L_INFO", "Try SRTP for
>>> caller - [% logreq -%]\n");
>>>                                         $var(rtpp_flags) =
>>> $var(rtpp_flags) + "SRTP rtcp-mux-demux ";
>>>                                 }
>>> but did not any changes.
>>>
>>> Can you share with me? and you media settings?
>>>
>>> I want only use this solution in our website for support calls to our
>>> IP-PBX.
>>>
>>> Thanks.
>>>
>>> Regards,
>>> H.YAvari
>>> ------------------------------------------------------------------------
>>> *From:* Nikita Stashkov <snl at sipmobile.org <mailto:snl at sipmobile.org>>
>>>
>>>
>>> And the first one is sipml5?
>>> In my config both are working.
>>> Check again your script. There is not one place, where automatic
>>> detection is done.
>>> I don’t exactly remember. It was about 4-5 month ago. But I think,
>>> difference is between ws and wss.
>>> Sorry, I can not publish my script. There are many other things,
>>> including push notifications.
>>> I think Sipwise will be not happy, if I publish it.
>>>
>>> Regards,
>>> Nikita Stashkov
>>>> 24 нояб. 2014 г., в 11:45, H Yavari <hyavari at rocketmail.com
>>>> <mailto:hyavari at rocketmail.com>> написал(а):
>>>>
>>>>
>>>>
>>>> Hi,
>>>>
>>>> I noticed a new thing that when I using jssip, calls not terminated.
>>>> in the logs and I didn't see any rtcp-mux. so this two webRTC client
>>>> is different in using SDP params?
>>>>
>>>>
>>>> Regards,
>>>> H.Yavari
>>>> ------------------------------------------------------------------------
>>>> *From:* Nikita Stashkov <snl at sipmobile.org <mailto:snl at sipmobile.org>>
>>>>
>>>>
>>>> There may be different logic. I am doing it if caller is WebRTC, and
>>>> callee is SIP. 
>>>> Simply add this flag, when calling Rtpengine, like all other flags.
>>>> You can do nothing if both are WebRTC.
>>>>
>>>> Regards,
>>>> Nikita Stashkov
>>>>
>>>>
>>>>
>>>> 24 нояб. 2014 г., в 11:13, H Yavari <hyavari at rocketmail.com
>>>> <mailto:hyavari at rocketmail.com>> написал(а):
>>>>
>>>>
>>>>
>>>>> Hi,
>>>>> I checked it. the client (webRTC browser-sipml5) send rtp-mux. and
>>>>> is in the rtp.log too. so how can I disable this? or how can I add
>>>>> rtcp-mux-demux ? I should do this for all calls? or only for webRTC
>>>>> client?
>>>>>
>>>>>
>>>>> Thanks a lot.
>>>>>
>>>>> Regards,
>>>>> H.Yavari
>>>>>
>>>>> ------------------------------------------------------------------------
>>>>> *From:* Nikita Stashkov <snl at sipmobile.org <mailto:snl at sipmobile.org>>
>>>>> **
>>>>>
>>>>> You need to look logs from WebRTC client and Pcap from SIP.
>>>>> Of cource, if SIP client recives SDP with rtp-mux, he will not
>>>>> understand it. And after 30 sec call will be terminated. But you
>>>>> must see logs. My system is based on SPCE 3.2, and manually
>>>>> compiled rtpengine. And I don't know was changed in current
>>>>> version. Also, you can look rtp.log. Sometimes it helps.
>>>>>
>>>>> Regards,
>>>>> Nikita Stashkov
>>>>>
>>>>>
>>>>> 23. nov. 2014, в 13.40, H Yavari <hyavari at rocketmail.com
>>>>> <mailto:hyavari at rocketmail.com>> написал(а):
>>>>>
>>>>>
>>>>>
>>>>>> Hi,
>>>>>>
>>>>>> Dear I did this before that I changed "ws" with "wss" but now
>>>>>> after your reply I did "ws" || "wss". but not any changes.
>>>>>> As I told before, now my main problem is calls hangup after 30
>>>>>> sec. In your opinion the rtcp-mux-demux flags adding will solve this?
>>>>>> another point is that before 30 sec, If any call parties (caller:
>>>>>> browser and callee: soft phone) hangs up, the call not terminate
>>>>>> until 30 sec timeout. I think that the dialog of a call not
>>>>>> recognized.
>>>>>>
>>>>>> So situation is complicated :)
>>>>>> SPCE specialist plz help!
>>>>>>
>>>>>>
>>>>>> Regards,
>>>>>> H. Yavari
>>>>>>
>>>>>> ------------------------------------------------------------------------
>>>>>> *From:* Nikita Stashkov <snl at sipmobile.org <mailto:snl at sipmobile.org>>
>>>>>> **
>>>>>> Sorry, I can not share my script.
>>>>>> What can you do.
>>>>>> Look the
>>>>>> script /etc/ngcp-config/templates/etc/kamailio/proxy/proxy.cfg.tt2
>>>>>> Of course, before modifying copy it to proxy.cfg.customtt.tt2
>>>>>> I think, webrtc endpoint automatic detection is not working for you.
>>>>>> It must look like this:
>>>>>>
>>>>>> if($(ru{uri.param,transport}) == "ws" ||
>>>>>> $(ru{uri.param,transport}) == "wss»)
>>>>>>
>>>>>> Then check flags you are sending to rtpengine.
>>>>>> To call SIP clients you must use flag rtcp-mux-demux
>>>>>>
>>>>>> Regards,
>>>>>> Nikita Stashkov
>>>>>>
>>>>>>
>>>>>>> 22 нояб. 2014 г., в 20:28, H Yavari <hyavari at rocketmail.com
>>>>>>> <mailto:hyavari at rocketmail.com>> написал(а):
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>> Hi,
>>>>>>> I checked you site. it seems that is a good webRTC solution.
>>>>>>> Can you share with us your experience to solve our problem? or
>>>>>>> any script modifications?
>>>>>>>
>>>>>>>
>>>>>>> Regards,
>>>>>>> H.Yavari
>>>>>>>
>>>>>>> ------------------------------------------------------------------------
>>>>>>> *From:* Nikita Stashkov <snl at sipmobile.org
>>>>>>> <mailto:snl at sipmobile.org>>
>>>>>>>
>>>>>>> You can try with my site - www.sipmobile.org
>>>>>>> <http://www.sipmobile.org/>.
>>>>>>> Create accounts: https://www.sipmobile.org/register/
>>>>>>> And try to call with webRTC client and SIP.
>>>>>>> I have modified some Kamailio SPCE scripts.
>>>>>>>
>>>>>>> Regards,
>>>>>>> Nikita Stashkov
>>>>>>>
>>>>>>>
>>>>>>>> 22 нояб. 2014 г., в 16:04, Thomas Odorfer <odotom at gmail.com
>>>>>>>> <mailto:odotom at gmail.com>> написал(а):
>>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>> Hi,
>>>>>>> not sure if I understood correctly which scenario works and which
>>>>>>> not. 
>>>>>>> So browser to soft phone is now working, but what is the meaning
>>>>>>> of browser to client? Which client?
>>>>>>>
>>>>>>> I tested myself and I have to confess that I had to do some
>>>>>>> changes in the account configs for soft phones where I am not
>>>>>>> happy about.
>>>>>>> It only worked between browser-webrtc  and soft phone when the
>>>>>>> corresponding account for the soft phone - nat & media flow
>>>>>>> control had been changed to "force avp"“ and "force rtp“ ie. no
>>>>>>> encryption.
>>>>>>> (I have to investigate that one - could be related to an upgrade
>>>>>>> I had performed last week - usually srtp should also work with
>>>>>>> softphones, within the ftp.log there was „SRTP output wanted but
>>>>>>> no crypto suite was negotiated“).
>>>>>>> However, after my changes the following tests had been successful:
>>>>>>> browser webrtc  to  softphone (eg. jitsi,  counterpath x-lite -
>>>>>>> should be software compatible with eyebeam)
>>>>>>> browser webrtc to  another browser webrtc (jssip-0.50)
>>>>>>> browser webrtc to pstn via sip trunking  (standard sip trunk,
>>>>>>> peer settings for media  force „rtp“, „force rtp“, „always with
>>>>>>> plain SDP“)
>>>>>>>
>>>>>>> That is based on the latest SPCE version 3.6.1.
>>>>>>> What does not seem to be achievable at the moment that you can
>>>>>>> have an account that supports „standard“ and webrtc
>>>>>>> simultaneously ( at least I haven’t succeeded with such a setup,
>>>>>>> maybe some sipwise/kamailio/rtpengine  expert knows the trick).
>>>>>>> And I do not have a solution yet how to share one phone number
>>>>>>> between two accounts with different profiles.
>>>>>>> The only solution I have at the moment is that I put a webrtc
>>>>>>> gateway (similar to webrtc2sip  from doubango) in front of SPCE
>>>>>>> for webrtc clients.
>>>>>>>
>>>>>>> For your particular problem, maybe you have to check whether your
>>>>>>> domain settings allow „bypass rtp proxy“ behind the same NAT -
>>>>>>> assuming you are testing wthin your LAN - this should be set to
>>>>>>> never.
>>>>>>>
>>>>>>> Good luck
>>>>>>> Thomas
>>>>>>>
>>>>>>>
>>>>>>> Am 22.11.2014 um 12:49 schrieb H Yavari <hyavari at rocketmail.com
>>>>>>> <mailto:hyavari at rocketmail.com>>:
>>>>>>>
>>>>>>>> Hi,
>>>>>>>>
>>>>>>>> I did this configs:
>>>>>>>> use_rtpproxy:   „Always with rtpptoxy as only ICE candidate“
>>>>>>>> rtcp_feedback:  „Force AVP“
>>>>>>>> srtp_transcoding:    „Force RTP“
>>>>>>>>
>>>>>>>> now calls between browser to soft phone is ok, but browser to
>>>>>>>> client and browser to browser receive this error "Failed to get
>>>>>>>> local SDP"
>>>>>>>> and calls not be established. Have you any idea about this
>>>>>>>> situation?
>>>>>>>> Thanks for helps.
>>>>>>>>
>>>>>>>> Regards,
>>>>>>>> H.Yavari
>>>>>>>> ------------------------------------------------------------------------
>>>>>>>>
>>>>>>>
>>>>>>> _______________________________________________
>>>>>>> Spce-user mailing list
>>>>>>> Spce-user at lists.sipwise.com <mailto:Spce-user at lists.sipwise.com>
>>>>>>> https://lists.sipwise.com/listinfo/spce-user
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>
>>>>>
>>>>
>>>>
>>>
>>>
>>>
>>
>>
>>
> 
> 
> 
> 
> 
> 
> 
> _______________________________________________
> Spce-user mailing list
> Spce-user at lists.sipwise.com
> https://lists.sipwise.com/listinfo/spce-user
> 



More information about the Spce-user mailing list