[muji/master] Add section explain on how to add and remove streams

Sjoerd Simons sjoerd.simons at collabora.co.uk
Fri Jun 5 09:12:05 PDT 2009


---
 xep/muji.xml |   80 ++++++++++++++++++++++++++++++++++++++++++++++++++++-----
 1 files changed, 73 insertions(+), 7 deletions(-)

diff --git a/xep/muji.xml b/xep/muji.xml
index 35f2f12..bed9828 100644
--- a/xep/muji.xml
+++ b/xep/muji.xml
@@ -147,20 +147,86 @@ streams.
   conference. Content names inside Muji-related Jingle sessions always refer
   to the content with the same name inside the Muji conference.
   </p>
+</section1>
 
+<section1 topic='Leaving a conference' anchor='leaving'>
   <p>
-  To leave a conference first the Muji information, presence MUST first be
-  removed from the participant's presence; subsequently it SHOULD terminate
-  all Jingle sessions related to that conference. Updating the presence first
-  reduces the likelihood of situations where new participants initiate
-  sessions with participants who are leaving the conference.
+  To leave a conference the Muji information MUST first be removed from the
+  participant's presence; subsequently it SHOULD terminate all Jingle sessions
+  related to that conference. Updating the presence first reduces the
+  likelihood of situations where new participants initiate sessions with
+  participants who are leaving the conference.
+  </p>
+</section1>
+
+<section1 topic='Adding a content' anchor'addcontent'>
+  <p>
+  Adding a stream follows a process similar to the joining a conference. As a
+  first step an updated presence stanza MUST be send which contains a preparing
+  element as part of the Muji section.
+
+  <code><![CDATA[
+    <presence from='wiccarocks at shakespeare.lit/laptop'
+      to='darkcave at chat.shakespeare.lit/oldhag'>
+      <c xmlns="http://jabber.org/protocol/caps"
+        node="http://telepathy.freedesktop.org/wiki/Muji"
+        ver="48QdBuXRCJFb8qIzgy1FOHSGO0U="
+        hash="sha-1" />
+      <muji xmlns='http://telepathy.freedesktop.org/muji'>
+        <content creator='initiator' name='voice'>
+          <description xmlns='urn:xmpp:jingle:apps:rtp:0' media='audio'>
+            <payload-type id='97' name='speex' clockrate='8000'/>
+            <payload-type id='18' name='G729'/>
+         </description>
+       </content>
+       <preparing/>
+       </muji>
+    </presence>
+  ]]></code>
+
+  The client MUST then wait until the MUC rebroadcasts its presence message,
+  after which it MUST wait for all other participants that had a preparing
+  element in their presence to finish their changes.
+
+  Afterwards the client should add the new content to the muji section of its
+  presence and add the content to all the jingle sessions it had with
+  participants it shared the content with.
+
+  <code><![CDATA[
+    <presence from='wiccarocks at shakespeare.lit/laptop'
+      to='darkcave at chat.shakespeare.lit/oldhag'>
+      <c xmlns="http://jabber.org/protocol/caps"
+        node="http://telepathy.freedesktop.org/wiki/Muji"
+        ver="48QdBuXRCJFb8qIzgy1FOHSGO0U="
+        hash="sha-1" />
+      <muji xmlns='http://telepathy.freedesktop.org/muji'>
+        <content name='video'>
+          <description xmlns='urn:xmpp:jingle:apps:rtp:0' media='video'>
+            <payload-type id='97' name='theora' clockrate='90000'/>
+          </description>
+        </content>
+        <content creator='initiator' name='voice'>
+          <description xmlns='urn:xmpp:jingle:apps:rtp:0' media='audio'>
+            <payload-type id='97' name='speex' clockrate='8000'/>
+            <payload-type id='18' name='G729'/>
+         </description>
+       </content>
+       </muji>
+    </presence>
+  ]]></code>
+  </p>
+</section1>
+
+<section1 topic='Removing a content' anchor'removecontent'>
+  <p>
+  To remove a content the participant SHOULD first sent an updated presence
+  without the content in its muji section. Afterwards it MUST the content from
+  all the jingle sessions it has open.
   </p>
 </section1>
 
 <section1 topic='TODO' anchor='TODO'>
 <ul>
-  <li> Describe how to add/remove contents.
-  </li>
   <li> Add support for relays. Not all participants might have the necessary
        upstream bandwidth to stream to everyone. A relay can help by relaying
        the RTP streams of on or more participants. The relay could either be a
-- 
1.5.6.5




More information about the telepathy-commits mailing list