[Bug 31274] Call: NewCodecOffer signal should contain the properties of the optional CodecOffer interfaces

bugzilla-daemon at freedesktop.org bugzilla-daemon at freedesktop.org
Wed Mar 2 19:07:23 CET 2011


https://bugs.freedesktop.org/show_bug.cgi?id=31274

David Laban <david.laban at collabora.co.uk> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
                URL|http://git.collabora.co.uk/ |http://git.collabora.co.uk/
                   |?p=user/sjoerd/telepathy-sp |?p=user/alsuren/telepathy-s
                   |ec.git;a=shortlog;h=refs/he |pec.git;a=shortlog;h=refs/h
                   |ads/description-objects     |eads/mediadesc-FurtherNegot
                   |                            |iationRequired

--- Comment #21 from David Laban <david.laban at collabora.co.uk> 2011-03-02 10:07:23 PST ---
After a lot of mulling things over for a few weeks, and bitching to sjoerd, I
think I've got a solution to the Renegotiate parameter:

I've put a FurtherNegotiationRequired flag on the MediaDescription

If this is set to True by the CM in a MediaDescriptionOffer, it means "This is
an offer under the SDP Offer/Answer model. Whatever you accept this offer with
is what I will send to the other side in my answer."

If this is set to False by the CM then it means "This is an Answer under the
SDP Offer/Answer model, and if everything is in order then no more negotiation
is required."

If this is set to True by the streaming implementation (e.g. in an Accept or
UpdateLocalMediaDescription call) then a new SDP Offer/Answer round-trip will
be initiated.

A nice advantage of this approach is that Accept() and
UpdateLocalMediaDescription() have the same signature, and the only time we
should need to call UpdateLocalMediaDescription is if there is no
MediaDescriptionOffer in flight.

Also, because I don't like the lack of elegance/extensibility that an empty
initial offer provides, I have mandated that HasRemoteInformation appears in
the dict and is set to False (so the dict is *never* empty).

Again, on the theme of elegance over "efficiency", I think that that All
properties on the MediaDescription object should be represented in the map.
This is more like the NewChannels. (Yes: this includes the Contact attribute,
even though it is redundant in most places that it appears.)

There are some other clean-up ideas that I would like to try, but I will save
them for after DRAFT2 when we actually have this shit implemented. (That way, I
can test my ideas in code to make sure that they're sane.)

I have scrapped my mediadesc-update branch, because it was mostly a
proof-by-contradiction-esque Troll.

tl;dr: I have overwritten all of ocrete's changes that I didn't like, and I
think that my patches to
http://git.collabora.co.uk/?p=user/alsuren/telepathy-spec.git;a=shortlog;h=refs/heads/mediadesc-FurtherNegotiationRequired
are ready for review.

-- 
Configure bugmail: https://bugs.freedesktop.org/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are the QA contact for the bug.
You are the assignee for the bug.



More information about the telepathy-bugs mailing list