Re: [Doubango] webrtc2sip proxy

1,542 views
Skip to first unread message

Mamadou

unread,
Apr 29, 2013, 3:25:30 PM4/29/13
to doub...@googlegroups.com, Joao Barbosa
For sure if you send plain TCP message to a WebSocket transport this won't work.
Inbound TCP/TLS/UDP is not supported. Only WS and WSS are supported as inbound transport.
Inbound: WS, WSS
Outbound: UDP, TCP, TLS
SIP Proxy
Please check technical guide for more information.

On 4/29/2013 8:09 PM, Joao Barbosa wrote:

Hi,

i'm trying to build a proxy to change the sip messages of any client to use webrtc2sip server, but the last one gives me an error:

***ERROR: function: "tsip_transport_layer_ws_cb()"
file: "src/transports/tsip_transport_layer.c"
line: "469"
MSG: Unknown extension: 5

Why is this happening?

Thank you
--
You received this message because you are subscribed to the Google Groups "discuss-doubango" group.
To unsubscribe from this group and stop receiving emails from it, send an email to doubango+u...@googlegroups.com.
For more options, visit https://groups.google.com/groups/opt_out.
 
 


--
Mamadou DIOP - Technology Evangelist
Doubango Telecom - Paris, France
http://www.doubango.org
Click here to call me!
module_sipproxy.png

Mamadou

unread,
Apr 29, 2013, 3:34:57 PM4/29/13
to doub...@googlegroups.com, Joao Barbosa
Additional info:
You should explain why you'd like to connect an "any client" to webrtc2sip because IMHO it doesn't make sense and looks like hacking.
Your "any client" can call a browser using UDP/TCP/TLS but I don't understand why it'd connect to the gw to call another "any client".
In short: at least one endpoint must be a browser (WS/WSS)
Message has been deleted

Mamadou DIOP

unread,
Apr 29, 2013, 7:06:41 PM4/29/13
to doub...@googlegroups.com, Joao Barbosa
The Blink client have to connect to the SIP server not to webrtc2sip.
browser <->webrtc2sip<->sip server<->blink. "sip server" can be any SIP server (Asterisk, Kamailio,reSIProcate, OpenSER…) and no modification is needed.
Make sure to enabled the RTCWeb breaker on SIPML5.

On Apr 30, 2013, at 12:42 AM, Joao Barbosa <joao.b...@gmail.com> wrote:

Thanks for the help

It makes sense and the any client part is to use a softphone like Blink with webrtc2sip..i'm having trouble calling from a Blink phone to sipML5 client.
Message has been deleted
Message has been deleted

Joao Barbosa

unread,
May 2, 2013, 10:47:33 AM5/2/13
to doub...@googlegroups.com, Joao Barbosa
Anyone can help?

Thank you


Terça-feira, 30 de Abril de 2013 10:26:58 UTC+1, Joao Barbosa escreveu:
Everything is as you putted Mamadou but sipML5 isn't receiving anything

Log from webrtc2sip in INFO debug mode its attached.

In ERROR debug mode appears the following:

***ERROR: function: "tsk_params_get_param_value()"
file: "src/tsk_params.c"
line: "219"
MSG: Invalid parameter
***ERROR: function: "tsk_params_get_param_value()"
file: "src/tsk_params.c"
line: "219"
MSG: Invalid parameter

Thank you

AutoStatic

unread,
May 3, 2013, 4:06:41 AM5/3/13
to doub...@googlegroups.com, Joao Barbosa
On Thursday, 2 May 2013 16:47:33 UTC+2, Joao Barbosa wrote:
Anyone can help?

Thank you

Hello Joao,

I've only quickly looked at your webrtc2sip log but I think the invalid parameter message is due to the fact that you're using an audio codec webrtc2sip doesn't support (G722.1).

Regards,

Jeremy

Mamadou DIOP

unread,
May 3, 2013, 11:46:59 AM5/3/13
to doub...@googlegroups.com, Joao Barbosa
Please don't cut your logs when reporting an issue.
The partial logs you provided shows that the gw is forwarding the INVITE request via UDP until it timeout. 
As I already said, what you're doing looks like hacking and the logs confirm it.
What I don't understand is why you want "to build a proxy" while webrtc2sip is already a proxy?
Why do you need webrtc2sip if you're building your own proxy?
You should take time to clearly explain what you're trying to do and why.

On Apr 30, 2013, at 11:25 AM, Joao Barbosa <joao.b...@gmail.com> wrote:

Everything is as you putted Mamadou but sipML5 isn't receiving anything

Log from webrtc2sip in INFO debug mode its attached.

In ERROR debug mode appears the following:

***ERROR: function: "tsk_params_get_param_value()"
file: "src/tsk_params.c"
line: "219"
MSG: Invalid parameter
***ERROR: function: "tsk_params_get_param_value()"
file: "src/tsk_params.c"
line: "219"
MSG: Invalid parameter

Thank you


Terça-feira, 30 de Abril de 2013 0:06:41 UTC+1, Mamadou escreveu:

Joao Barbosa

unread,
May 3, 2013, 11:59:56 AM5/3/13
to doub...@googlegroups.com, Joao Barbosa
Thank you Auto Static

Well i'm almost there but not quite.

Now i can do calls from Blink to sipML5 but not the other way around. The trick was disabled the rtcweb-breaker.
But thats why i can't do calls from sipML5 to Blink. For that i need the rtcweb-breaker option enabled.

The problems resides in the codecs and their settings, like ms ptime and khz.

Does the webrtc2sip transcodes the same codec but with other settings?

Mamadou, the proxy thing i gave up. The main goal of it was to overcome the problems i'm encountering. That's it.

Thank you

AutoStatic

unread,
May 3, 2013, 4:13:39 PM5/3/13
to doub...@googlegroups.com, Joao Barbosa
On Friday, 3 May 2013 17:59:56 UTC+2, Joao Barbosa wrote:
Thank you Auto Static

Well i'm almost there but not quite.

Now i can do calls from Blink to sipML5 but not the other way around. The trick was disabled the rtcweb-breaker.
But thats why i can't do calls from sipML5 to Blink. For that i need the rtcweb-breaker option enabled.

The problems resides in the codecs and their settings, like ms ptime and khz.

Does the webrtc2sip transcodes the same codec but with other settings?


Yes, webrtc2sip can do this. For example, we have some webrtc2sip instances that transcode VP8 to something Linphone can understand. But what codec are we talking about here?

Jeremy

Joao Barbosa

unread,
May 3, 2013, 4:51:47 PM5/3/13
to doub...@googlegroups.com, Joao Barbosa
I have tested PCMA, Speex, and iLBC.

I mean the SDP's of each client have the same codec but different settings like i said before. Freeswitch then gives INCOMPATIBLE_DESTINATION.

Struggling none the less to have everything working right, but appreciate any help that anyone can give.

Joao Barbosa

unread,
May 15, 2013, 1:32:13 PM5/15/13
to doub...@googlegroups.com, Joao Barbosa

Why RTCWEB Breaker rejects the following SDP?

v=0
o=FSCloudIPBX 1368612498 1368612499 IN IP4 192.168.XXX.XX
s=FSCloudIPBX
c=IN IP4 192.168.XXX.XX
t=0 0
m=audio 24976 RTP/AVP 98 8 99 100 101 13
a=rtpmap:98 iLBC/8000
a=fmtp:98 mode=20
a=rtpmap:99 SPEEX/8000
a=rtpmap:100 iLBC/8000
a=fmtp:100 mode=20
a=rtpmap:101 telephone-event/8000
a=fmtp:101 0-16
a=ptime:20
m=audio 24976 RTP/AVP 102 101 13
a=rtpmap:102 isac/32000
a=fmtp:102 ibitrate=32000;maxbitrate=160000
a=rtpmap:101 telephone-event/8000
a=fmtp:101 0-16
a=ptime:60


Then states this:

*INFO: is_ro_provisional_final_matching=0,
is_ro_media_lines_changed=0,
is_ro_network_info_changed=0,
is_ro_loopback_address=0,
is_media_type_changed=0

*INFO: tdav_consumer_audio_init()
*INFO: Create SpeexDSP jitter buffer
**WARN: function: "tdav_session_av_prepare()"
file: "src/tdav_session_av.c"
line: "415"
MSG: DTLS-SRTP requested but not certificate provided, disabling this option :(
*INFO: RTP/RTCP manager[Begin]: Trying to bind to random ports
*INFO: RTP/RTCP manager[End]: Trying to bind to random ports
*INFO: No codec matching for media type = 2
*INFO: State machine: tsip_transac_ist_Proceeding_2_Completed_X_300_to_699
*INFO:

SEND: SIP/2.0 488 Not Acceptable
Via: SIP/2.0/UDP 192.168.201.14;rport=5060;received=192.168.201.14;branch=z9hG4bKce6e3rKD4m5cj
From: "jbarbosa"<sip:502@XXX>;tag=NcSt83Drer27j
To: <sip:501@XXX:10060;rtcweb-breaker=yes;transport=udp;ws-src-ip=XXX;ws-src-port=62677;ws-src-proto=ws>;tag=6245955483
Call-ID: 5b8d4d03-3824-1231-2abd-6b21a5996cc2
CSeq: 43982673 INVITE
Content-Length: 0
Reason: SIP; cause=488; text="No common codecs"


Can anyone help? I mean iLBC is supported by RTCWEB Breaker...

Joao Barbosa

unread,
May 17, 2013, 12:06:07 PM5/17/13
to doub...@googlegroups.com, Joao Barbosa
The complete log is in the attachement
webrtc2sip_log.txt

Joao Barbosa

unread,
May 27, 2013, 7:04:05 AM5/27/13
to doub...@googlegroups.com, Joao Barbosa
Anyone can help?

Thank you

Mamadou DIOP

unread,
May 27, 2013, 7:57:29 AM5/27/13
to doub...@googlegroups.com, Joao Barbosa
Try with only ONE audio line.

Joao Barbosa

unread,
May 27, 2013, 1:00:29 PM5/27/13
to doub...@googlegroups.com, Joao Barbosa
With video disabled and webRTC Breaker enabled in sipML5, trying to connect from a Blink softphone with only iLBC enabled.
Log in attachment

Thank you
webrtc2sip_log2.txt

Mamadou

unread,
May 27, 2013, 1:06:16 PM5/27/13
to doub...@googlegroups.com, Joao Barbosa
What's new here?
Still TWO audio lines.

Joao Barbosa

unread,
May 28, 2013, 5:12:09 AM5/28/13
to doub...@googlegroups.com, Joao Barbosa
Right sorry, in the next log it's only one audio line. Still there's no luck.

Thank you
webrtc2sip_log3.txt

Mamadou DIOP

unread,
May 28, 2013, 5:16:31 PM5/28/13
to doub...@googlegroups.com, Joao Barbosa
Initial error was 488. Now there is no error in the logs but many INVITEs and CANCELs. No way to understand what's going on with your explanations.

<webrtc2sip_log3.txt>

JayZee

unread,
May 29, 2013, 5:58:11 AM5/29/13
to doub...@googlegroups.com, Joao Barbosa
I'm seeing something very similar.

The REGISTER is going through fine, but INVITES break. Seems like some issue with WebSocket

I'm runnign webrtc2sip

*INFO: No all data in the WS buffer
*INFO: Receiving SIP o/ WebSocket message: INVITE sip:1...@178.AA.BB.CC SIP/2.0
Via: SIP/2.0/WS df7jal23ls0d.invalid;branch=z9hG4bKxDFm7agWubXi0JLs3UEKlKIp5muBKUuJ;rport
From: "justin"<sip:jus...@178.AA.BB.DD>;tag=ftbksKv4fWJ8GB7LTCTA
To: <sip:1...@178.AA.BB.DD>
Contact: "justin"<sip:jus...@df7jal23ls0d.invalid;rtcweb-breaker=yes;click2call=no;transport=ws>;impi=justin;ha1=2f357d68b2ffb9e39a0a683a659fc19b;+g.oma.sip-im;+sip.ice;language="en,fr"
Call-ID: d083e2b8-0fc7-96a2-6e85-255bcd9740e7
CSeq: 25936 INVITE
Content-Type: application/sdp
Content-Length: 3631
Max-Forwards: 70
User-Agent: IM-client/OMA1.0 sipML5-v1.2013.05.24
Organization: Doubango Telecom



Joao Barbosa

unread,
May 29, 2013, 6:03:44 AM5/29/13
to doub...@googlegroups.com, Joao Barbosa
That's strange because if i disable "Enable WebRTC Breaker" in sipML5 client, then it works.

So i think it's something wrong with that part.


Quarta-feira, 29 de Maio de 2013 10:58:11 UTC+1, JayZee escreveu:
I'm seeing something very similar.

The REGISTER is going through fine, but INVITES break. Seems like some issue with WebSocket

I'm runnign webrtc2sip

*INFO: No all data in the WS buffer
*INFO: Receiving SIP o/ WebSocket message: INVITE sip...@178.AA.BB.CC SIP/2.0
Via: SIP/2.0/WS df7jal23ls0d.invalid;branch=z9hG4bKxDFm7agWubXi0JLs3UEKlKIp5muBKUuJ;rport
From: "justin"<sip:jus...@178.AA.BB.DD>;tag=ftbksKv4fWJ8GB7LTCTA
To: <sip:1...@178.AA.BB.DD>
Contact: "justin"<sip:justin@df7jal23ls0d.invalid;rtcweb-breaker=yes;click2call=no;transport=ws>;impi=justin;ha1=2f357d68b2ffb9e39a0a683a659fc19b;+g.oma.sip-im;+sip.ice;language="en,fr"

JayZee

unread,
May 29, 2013, 9:13:10 AM5/29/13
to doub...@googlegroups.com, Joao Barbosa
I can confirm that I only see this websocket buffer error when 'Enable RTCBreaker' is enabled.

Mamadou DIOP

unread,
May 29, 2013, 9:35:25 AM5/29/13
to doub...@googlegroups.com, Joao Barbosa
Yep, you can confirm but doesn't make sense. What you are naming "websocket buffer error" is not an error at all and there are good reasons if it's printed as INFO instead of ERROR message.
The INFO message means we'll need more than one read() to get the complete data which is something happening all the time with any streamed protocol (e.g. TCP, Websocket…)
As you may expect even if the breaker is OFF we have to read() the message in order to forward it.
You cannot just send logs with our any info. In my previous mail I asked for your explanations on what happening but you prefer not to give them. I guess you want to fix the issue by yourself. 

Joao Barbosa

unread,
May 29, 2013, 9:57:57 AM5/29/13
to doub...@googlegroups.com, Joao Barbosa
So it is the Websocket of RTCBreaker? Now we are getting somewhere..

Joao Barbosa

unread,
Jun 4, 2013, 7:57:49 AM6/4/13
to doub...@googlegroups.com, Joao Barbosa
There is an issue from Websocket of RTCBreaker that its resolved if the RTCBreaker is installed in a server and not in a virtual machine.
Can that be the case here?

Has anyone putted Freeswitch and RTCBreaker communicating without any problems?

Thank you

Joao Barbosa

unread,
Jun 11, 2013, 7:04:59 AM6/11/13
to doub...@googlegroups.com, Joao Barbosa
Anyone can help?

Joao Barbosa

unread,
Jun 14, 2013, 11:24:02 AM6/14/13
to doub...@googlegroups.com, Joao Barbosa
Mamadou i'm sorry but seeing again the emails from this post i realized that i didn't saw the last email from you. Apologies for that.
I already tried to solve the problems by myself, since i don't like to waste people's time, but i need help and that's why i asked for it.

I posted the logs to give more info to the one's that could help me throught them.

The explanations that i can give it's the informations about the scenario that i'm using.

What do you want to know?

Thank you
Reply all
Reply to author
Forward
0 new messages