<html>
<head>
<meta http-equiv="content-type" content="text/html; charset=utf-8">
</head>
<body text="#000000" bgcolor="#FFFFFF">
hi,<br>
<span>
<div><span><br>
</span></div>
<div><span>i'm fighting with webrtc for 14 days</span></div>
<div><span>reporting my experience to minimize number of crazy
asterisk users <br>
</span></div>
<div><span><br>
i
have working webrtc with simpl5 + asterisk 13 + pjproject
2.4.5 + chan_pjsip + secure websockets + secure audio + audio
in both ways<br>
<br>
problems<br>
first, i needed run chan_sip for old hard phones and wss with
chan_pjsip only for webrtc. this is possible with patch from<br>
<span style="word-wrap: break-word; -webkit-nbsp-mode: space;
-webkit-line-break: after-white-space;"><a class="moz-txt-link-freetext" href="https://issues.asterisk.org/jira/browse/ASTERISK-24106">https://issues.asterisk.org/jira/browse/ASTERISK-24106</a></span><br>
<br>
chan_sip is not usable for webrtc because of<br>
</span></div>
</span>
<span>
<div><span><a class="moz-txt-link-freetext" href="https://issues.asterisk.org/jira/browse/ASTERISK-24602">https://issues.asterisk.org/jira/browse/ASTERISK-24602</a><br>
<br>
another problem arise with RTP/SAVPF negotiation<br>
this can be solved with patch for Asterisk from<br>
</span><span><span><span><a class="moz-txt-link-freetext" href="https://issues.asterisk.org/jira/browse/ASTERISK-24602">https://issues.asterisk.org/jira/browse/ASTERISK-24602</a></span></span><br>
and for pjsip<br>
<a class="moz-txt-link-freetext" href="http://lists.pjsip.org/pipermail/pjsip_lists.pjsip.org/2015-September/018607.html">http://lists.pjsip.org/pipermail/pjsip_lists.pjsip.org/2015-September/018607.html</a><br>
<br>
i hope this info helps<br>
<br>
what is your experience with WebRTC?<br>
<br>
See you at WebRTC Expo Paris :)<br>
<br>
p.s. many thanks to my colleague martin tomec for debugging
support<br>
</span></div>
</span>
<br>
p.s.2 relevant part of pjsip.conf<br>
<br>
[global]<br>
[transport-wss]<br>
type=transport<br>
protocol=wss ;udp,tcp,tls,ws,wss<br>
bind=0.0.0.0<br>
<br>
;===============ENDPOINT TEMPLATES<br>
<br>
[endpoint-basic](!)<br>
type=endpoint<br>
transport=transport-wss<br>
context=route_phones<br>
disallow=all<br>
allow=alaw<br>
allow=ulaw<br>
force_avp=yes<br>
use_avpf=yes ; Determines whether res_pjsip will use and enforce
usage of<br>
media_encryption=dtls ; Determines whether res_pjsip will use and
enforce<br>
dtls_verify=no ; Verify that the provided peer certificate is valid
(default:<br>
dtls_rekey=0 ; Interval at which to renegotiate the TLS session
and rekey<br>
dtls_cert_file=/etc/pki/tls/certs/pbx.crt<br>
dtls_private_key=/etc/pki/tls/private/pbx.key<br>
dtls_setup=actpass<br>
ice_support=yes ;This is specific to clients that support NAT
traversal<br>
media_use_received_transport=yes<br>
<br>
[auth-userpass](!)<br>
type=auth<br>
auth_type=userpass<br>
<br>
[aor-single-reg](!)<br>
type=aor<br>
remove_existing=yes<br>
max_contacts=1<br>
<br>
<br>
;===============DEVICES<br>
<br>
[webrtc1](endpoint-basic)<br>
auth=webrtc1<br>
aors=webrtc1<br>
<br>
[webrtc1](auth-userpass)<br>
password=secret<br>
username=webrtc1<br>
<br>
[webrtc1](aor-single-reg)<br>
<br>
relevant part of http.conf<br>
[general]<br>
enabled=yes<br>
bindaddr=0.0.0.0<br>
tlsenable=yes<br>
tlsbindaddr=0.0.0.0:8089<br>
tlscertfile=/etc/pki/tls/certs/pbx.crt<br>
tlsprivatekey=/etc/pki/tls/private/pbx.key<br>
<br>
<pre class="moz-signature" cols="72">--
---------------------------------------
Marek Cervenka
=======================================
</pre>
</body>
</html>