Re: [rtcweb] Requesting "SDP or not SDP" debate to be re-opened

Bossiel thioriguel <> Fri, 21 June 2013 09:56 UTC

Return-Path: <>
Received: from localhost (localhost []) by (Postfix) with ESMTP id B9AD421F8F4F for <>; Fri, 21 Jun 2013 02:56:18 -0700 (PDT)
X-Virus-Scanned: amavisd-new at
X-Spam-Flag: NO
X-Spam-Score: -2.598
X-Spam-Status: No, score=-2.598 tagged_above=-999 required=5 tests=[BAYES_00=-2.599, HTML_MESSAGE=0.001]
Received: from ([]) by localhost ( []) (amavisd-new, port 10024) with ESMTP id oP0mV+AYoYHC for <>; Fri, 21 Jun 2013 02:56:13 -0700 (PDT)
Received: from ( []) by (Postfix) with ESMTP id 1F69C21F8EEA for <>; Fri, 21 Jun 2013 02:56:12 -0700 (PDT)
Received: from [] by with NNFMP; 21 Jun 2013 09:56:12 -0000
Received: from [] by with NNFMP; 21 Jun 2013 09:56:12 -0000
Received: from [] by with NNFMP; 21 Jun 2013 09:56:12 -0000
X-Yahoo-Newman-Property: ymail-3
Received: (qmail 86117 invoked by uid 60001); 21 Jun 2013 09:56:12 -0000
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;; s=s1024; t=1371808572; bh=UIMzzM70ZodASZzcXJMQi11tLR364ceF45ObEUy4aXo=; h=X-YMail-OSG:Received:X-Rocket-MIMEInfo:X-Mailer:References:Message-ID:Date:From:Reply-To:Subject:To:Cc:In-Reply-To:MIME-Version:Content-Type; b=ilDqNEZ9iDk+wjkPnpqFp6CxC4jeiiCqodNk8gYwlHxoqPHX4mM3ntgpDZwaOxloMlA0vFVKeL8Vkt51HNs0ZDdH2YRTeqSU8catczWSkZwn98S8614ErMi8ERhrJzG7YMNFnG0p6qoVAVHlIPCYAMtolDbiFRRIU0ZrA6b0/gU=
DomainKey-Signature: a=rsa-sha1; q=dns; c=nofws; s=s1024;; h=X-YMail-OSG:Received:X-Rocket-MIMEInfo:X-Mailer:References:Message-ID:Date:From:Reply-To:Subject:To:Cc:In-Reply-To:MIME-Version:Content-Type; b=KJP7uYV1X2DAJC0BUKfq4FvZF5SCNn6mdLkQLDWyhMhxk2ZMS2LeaDe2tOtJZd839wQzqIMGJepN9tl64opWzNFwlUTix9StY9rU6tnxsLj+RKZF2ojIbmH31zT+wjWdA1niTDKvCqzxfog2kxA/SgxnO9Ole4HnCQeaaCiMCmM=;
X-YMail-OSG: EhZ7YY8VM1k10aIdzzPZZWnSZAh_rZIR3s5YqpCYkotA6bS gq62KaQZiF6iOJaDw4xw3y5G9gwcecCM1MKHsjJ0w4G6gwBmE78O6WiKczJ2 pBXWU2QGD0byS9QfmSN.6spRO4_HYDibVpUe2PqFBIAiBIru6nWWWkIOIj8w JiFWbhwxQoFdY_qWdgq4Qeh3YhJIptawHP1XL06fYYiISR0pfnTonBoTae23 l84iwdZ0s7IS3Tm8by_ctobq.GROgMIcB7RjbTRjr4c2UkET4v2Juw9fDLkE Jr7AUGpxrgNeNefbEmU5ZoZFSIwNdc2NAftqS7mx9z_Nmfr56Rt0o9aUxtSu EfBv42zkkO5Y9zeeLKSlRyIxkH9nd6bBar7cha67_MOqZFut8ECmJ.xDcACa M_vTHK.ytHz1d04nsni31LmdrNLea6zDi.CW.TZn_QmKdYQbcRG4KwdJXk6k MqYLJvU665BS5E2xIFdM969IhoTkOJ2mx2flhgMyECAV9aIP_EskH0SjCbkz GLn5x65nE2qS4ADnxhC0O.nyUob2eykUcUVMQ9Hygrk9.MyP0VS_Dysm4ps0 wAPfy2g6TYbCEtCFaxxzPL6n4GfZswKwV6UHtDBi5qMJ2NDG5odjWDC5C5YR zAsVNxJeFF9NJZrYEECKbo5hrrKBAX0i5.WbIdHsZMO2bTYLo9k1XFCQsWwE WzmBQol6WyNltZQDHlM1ythJR7UGRkruHEw--
Received: from [] by via HTTP; Fri, 21 Jun 2013 10:56:11 BST
X-Rocket-MIMEInfo: 002.001, Rm9yZ290IHRvIGFkZDoKV2UncmUgd2lsbGluZyB0byBwcm92aWRlIGFuIG9wZW4gc291cmNlIGdhdGV3YXkgdG8gU0lQL0lNUyB3b3JsZCBhbmQgZmVlZGJhY2tzIGZvciBhbnkgbmV3wqBpbXBsZW1lbnRhdGlvbsKgdG8gc2hvdyAiaG93IGdvb2QiIG9yICJob3cgYmFkIiBpdCBpcyA6KQoKCl9fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fCiBEZcKgOiBCb3NzaWVsIHRoaW9yaWd1ZWwgPGJvc3NpZWxAeWFob28uZnI.CsOAwqA6ICJkaW9wbWFtYWRvdUBkb3ViYW5nby5vcmciIDxkaW9wbWFtYWRvdUABMAEBAQE-
X-Mailer: YahooMailWebService/
References: <> <> <> <> <> <> <> <> <> <> <> <> <> <> <> <> <> <> <> <>
Message-ID: <>
Date: Fri, 21 Jun 2013 10:56:11 +0100
From: Bossiel thioriguel <>
To: Bossiel thioriguel <>, "" <>
In-Reply-To: <>
MIME-Version: 1.0
Content-Type: multipart/alternative; boundary="-1470824145-1261249343-1371808571=:86034"
Cc: "" <>
Subject: Re: [rtcweb] Requesting "SDP or not SDP" debate to be re-opened
X-Mailman-Version: 2.1.12
Precedence: list
Reply-To: Bossiel thioriguel <>
List-Id: Real-Time Communication in WEB-browsers working group list <>
List-Unsubscribe: <>, <>
List-Archive: <>
List-Post: <>
List-Help: <>
List-Subscribe: <>, <>
X-List-Received-Date: Fri, 21 Jun 2013 09:56:19 -0000

Forgot to add:
We're willing to provide an open source gateway to SIP/IMS world and feedbacks for any new implementation to show "how good" or "how bad" it is :)

 De : Bossiel thioriguel <>
À : "" <> 
Cc : "" <> 
Envoyé le : Vendredi 21 juin 2013 11h40
Objet : Re: [rtcweb] Requesting "SDP or not SDP" debate to be re-opened


I'm registered on this group since the beginning but this is my first post on this thread. So, I presente myself: Mamadou DIOP and I'm working for Doubango Telecom where we're building SIP endpoints, gateways, TelePresence/Telemedicine systems... all focused on SIP/IMS/LTE/RCS-e and open source.

What I'm talking about is not just feeling but something I've experienced.

Using the current WebRTC we have managed to *easily* build almost all kind of applications: click-to-call, SIP/IMS clients, gateways to PSTN, MCUs, Telemedicine systems...and haven't seen any major issue. It's true that it's not natural to "hack" a blob SDP to implement features like hold/resume, media update, early media ... but it works and there are demo applications showing it. If there is something more beautiful we just want to see it in action and test it.

Many participants here have said that what they want is something close to CU-RTC-WEB. Don't really know if they tried to build applications using it or not but in my case I have.
My reference:
First on Windows 8 but haven't gone far as there is no documentation to get started. Then, OSX and luckily there was a readme with two links for testing (only one work). You need to open 3 pages (1 master, 2 slaves) and check "send audio" on both slaves to header sound. Many javascript files and no documentation. It's said on these blogs that interop with SIP networks is easy but it's not my feeling ...I just want to see one :)

I don't really understand the issue with the O/A model. SDP or not SDP you'll always offer something and answer something. I'm I missing?

For the current WebRTC, Google open sourced their engine, produced drafts, a working implementation in chrome, a mailing-list to help developers, demo applications, documentation... we just want to see the same from any company asking to rewrite everything.

I'm not saying the current WebRTC implementation is perfect but I have seen my 14 year old nephew developing an audio/video chat for his homework :)


 De : Iñaki Baz Castillo <>
À : Emil Ivov <> 
Cc : "" <> 
Envoyé le : Vendredi 21 juin 2013 1h24
Objet : Re: [rtcweb] Requesting "SDP or not SDP" debate to be re-opened

2013/6/21 Emil Ivov <>:
> On 20.06.13, 23:49, Iñaki Baz Castillo wrote:
>> In JsSIP we are getting frustrated trying to implement the "hold" /
>> "unhold" feature because it requires SDP parsing and mangling. Sending
>> a re-INVITE with a modified SDP (now with a
 video track enabled) seems
>> to work (after lot of pain) but we still miss a reliable API to know
>> what the new SDP means. Instead we need to parse the SDP to detect
>> global (or per m=) line attributes like "a=inactive" or "a=sendonly"
>> etc etc. It's really painful.
> I am having a problem following what you are trying to achieve here. In
> JsSIP you seem to be going for a full SIP implementation in the browser. If
> this is true and if this WG decides to remove SDP from the API surface, then
> you would need to completely parse SDP in the JS and then convert it into
> API calls. Similarly, when creating offers and answers you would need to
> construct SDP all by yourself.

And we will do it very happily because then we will know what
*exactly* we are sending on-the-wire.

> So I am not sure why the SDP parsing in the current
 situation is so much of
> a blocker for your use case.

Because regardless I am a SIP-guy, I understand that the main mission
of WebRTC is to provide realtime communications *for* the WWW, and not
to enable a new interface for like-telephony-bussines.

Today I'm doing SIP. Tomorrow I may be doing
[[put_here_a_future_RTC_protocol_not_based_on_SDP]] and then I don't
want to be constrained by decisions made today that force any future
RTC protocol to deal with SDP O/A model.


>> BTW I don't know wheter you support PlanA, PlanB or NoPlan, but I did
>> a question (in this case about NoPlan) for which I got no response,
>> and honestly I would like to see it replied regardless the solution
>> uses PlanA, PlanB or NoPlan model:
> The other option would be indeed to do the same thing in JS. I believe this
> is JsSIP's use case. In that case however, regardless of whether you choose
> Plan A, Plan B, No Plan or CU-RTC-Web, you will inevitably be exposed to a
> fair amount of complexity, parsing and JS magic.
> You are, after all, building a SIP stack.

Yes, but JsSIP creates its own SIP messages to be sent in the wire, so
we have full control over *what* we create and send. Those SIP
messages are not provided by the WebRTC API. But for the SDP
component, JsSIP retreives a SDP blob string from the PC.

> In the above mail you also say:
>> Another example:
>> * I am a powerful SIP conference server which properly implements
>> WebRTC. I initiate
 a call to 5 users (running JS SIP app in their
>> browsers). The initial INVITE has SSRC/MSID fields in the SDP
>> identifying all the participants, am I right?
> No, with No Plan there are no SSRCs and MSIDs in the SDP that comes from the
> browser.


>> * Later, during the conference, I call to another 6th participant and
>> enter him into the conference, so I need to send a re-INVITE to every
>> participant with a modified version of the SDP (note that this is SIP
>> protocol, so I need to use SIP messages to carry the new info about
>> SSRC/MSID and so on).
> That's the thing. You don't need that. In Jitsi we do exactly this operation
> with no Offer/Answer signalling. RTP carries enough information to process
> streams and we use upper layer signalling (4575) for things such as mapping
> SSRCs to users
 and announcing current participant list.

That is much better than Plan A and Plan B.

BTW: What would happen in NoPlan if the remote (i.e. a SIP
gateway/endpoing) sends you a re-INVITE for "hold" purposes and you
pass the SDP to your PC? or you should not pass the SDP to your PC?
and if so, what about if the SDP contains updated ICE candidates due
to remote peer network mobility?

Thanks a lot for your response.

Iñaki Baz Castillo
rtcweb mailing list

rtcweb mailing list