mirror of
https://github.com/moparisthebest/xeps
synced 2024-11-21 08:45:04 -05:00
1.1pre1
git-svn-id: file:///home/ksmith/gitmigration/svn/xmpp/trunk@904 4b5297f7-1745-476d-ba37-a9c6900126ab
This commit is contained in:
parent
54102e7ed1
commit
5471ed89eb
81
xep-0107.xml
81
xep-0107.xml
@ -15,7 +15,7 @@
|
||||
<sig>Standards</sig>
|
||||
<dependencies>
|
||||
<spec>XMPP Core</spec>
|
||||
<spec>XEP-0060</spec>
|
||||
<spec>XEP-0163</spec>
|
||||
</dependencies>
|
||||
<supersedes/>
|
||||
<supersededby/>
|
||||
@ -25,47 +25,53 @@
|
||||
</schemaloc>
|
||||
&stpeter;
|
||||
&ralphm;
|
||||
<revision>
|
||||
<version>1.1pre1</version>
|
||||
<date>in progress, last updated 2007-05-30</date>
|
||||
<initials>psa</initials>
|
||||
<remark><p>Corrected PEP examples.</p></remark>
|
||||
</revision>
|
||||
<revision>
|
||||
<version>1.0</version>
|
||||
<date>2004-10-20</date>
|
||||
<initials>psa/rm</initials>
|
||||
<remark>Per a vote of the Jabber Council, advanced status to Draft; per Council discussion, also added two additional moods and adjusted structure to use elements rather than XML character data.</remark>
|
||||
<remark><p>Per a vote of the Jabber Council, advanced status to Draft; per Council discussion, also added two additional moods and adjusted structure to use elements rather than XML character data.</p></remark>
|
||||
</revision>
|
||||
<revision>
|
||||
<version>0.6</version>
|
||||
<date>2004-09-15</date>
|
||||
<initials>psa</initials>
|
||||
<remark>Added internationalization considerations.</remark>
|
||||
<remark><p>Added internationalization considerations.</p></remark>
|
||||
</revision>
|
||||
<revision>
|
||||
<version>0.5</version>
|
||||
<date>2004-04-25</date>
|
||||
<initials>psa</initials>
|
||||
<remark>Corrected several errors; added reference to XEP-0033.</remark>
|
||||
<remark><p>Corrected several errors; added reference to XEP-0033.</p></remark>
|
||||
</revision>
|
||||
<revision>
|
||||
<version>0.4</version>
|
||||
<date>2004-02-19</date>
|
||||
<initials>psa</initials>
|
||||
<remark>Minor fixes to text and schema.</remark>
|
||||
<remark><p>Minor fixes to text and schema.</p></remark>
|
||||
</revision>
|
||||
<revision>
|
||||
<version>0.3</version>
|
||||
<date>2003-08-01</date>
|
||||
<initials>psa</initials>
|
||||
<remark>Added more moods.</remark>
|
||||
<remark><p>Added more moods.</p></remark>
|
||||
</revision>
|
||||
<revision>
|
||||
<version>0.2</version>
|
||||
<date>2003-07-23</date>
|
||||
<initials>psa</initials>
|
||||
<remark>Expanded the information format; changed primary container to use pubsub.</remark>
|
||||
<remark><p>Expanded the information format; changed primary container to use pubsub.</p></remark>
|
||||
</revision>
|
||||
<revision>
|
||||
<version>0.1</version>
|
||||
<date>2003-07-22</date>
|
||||
<initials>psa</initials>
|
||||
<remark>Initial version.</remark>
|
||||
<remark><p>Initial version.</p></remark>
|
||||
</revision>
|
||||
</header>
|
||||
<section1 topic='Introduction' anchor='intro'>
|
||||
@ -77,7 +83,7 @@
|
||||
<code><![CDATA[
|
||||
<mood xmlns='http://jabber.org/protocol/mood'>
|
||||
<happy/>
|
||||
<text>Yay, the mood document has been approved!</text>
|
||||
<text>Yay, the mood spec has been approved!</text>
|
||||
</mood>
|
||||
]]></code>
|
||||
<p>In addition, an application MAY provide a more specific mood value as a properly-namespaced child of the defined element, which extension MUST be ignored if the receiving application does not understand the extended namespace. Here is an example:</p>
|
||||
@ -86,21 +92,19 @@
|
||||
<happy>
|
||||
<ecstatic xmlns='http://ik.nu/ralphm'/>
|
||||
</happy>
|
||||
<text>Yay, the mood document has been approved!</text>
|
||||
<text>Yay, the mood spec has been approved!</text>
|
||||
</mood>
|
||||
]]></code>
|
||||
</section2>
|
||||
<section2 topic='Pubsub Transport' anchor='proto-pubsub'>
|
||||
<p>The <mood/> element SHOULD be communicated by means of &xep0060; or the subset of publish-subscribe specified in &xep0163;, but MAY be provided in a message as well. Because mood information is not pure presence information and can change independently of the user's availability, it SHOULD NOT be provided as an extension to &PRESENCE;.</p>
|
||||
<p>If the user wishes to publish his mood to all of those who are subscribed to his mood information, the user SHOULD use publish-subscribe (the following examples show use of the publish-subscribe subset specified in <cite>XEP-0163</cite>).</p>
|
||||
<p>Mood information SHOULD be communicated and transported by means of the &xep0060; subset specified in &xep0163;. Because mood information is not pure presence information and can change independently of the user's availability, it SHOULD NOT be provided as an extension to &PRESENCE;.</p>
|
||||
<example caption='User Publishes Mood'><![CDATA[
|
||||
<iq type='set'
|
||||
from='juliet@capulet.com/balcony'
|
||||
to='pubsub.shakespeare.lit'
|
||||
from='juliet@capulet.lit/ca486eba-0f9a-11dc-8835-000bcd821bfb'
|
||||
id='publish1'>
|
||||
<pubsub xmlns='http://jabber.org/protocol/pubsub'>
|
||||
<publish node='http://jabber.org/protocol/mood'>
|
||||
<item id='a92lvfmlzsd923k'>
|
||||
<item>
|
||||
<mood xmlns='http://jabber.org/protocol/mood'>
|
||||
<annoyed/>
|
||||
<text>curse my nurse!</text>
|
||||
@ -113,11 +117,11 @@
|
||||
<p>The mood is then delivered to all subscribers:</p>
|
||||
<example caption='Mood is Delivered to All Subscribers'><![CDATA[
|
||||
<message
|
||||
from='pubsub.shakespeare.lit'
|
||||
to='romeo@montague.net/orchard'>
|
||||
from='juliet@capulet.lit'
|
||||
to='romeo@montague.net'>
|
||||
<event xmlns='http://jabber.org/protocol/pubsub#event'>
|
||||
<items node='http://jabber.org/protocol/mood'>
|
||||
<item id='a92lvfmlzsd923k'>
|
||||
<item id='a475804a-0f9c-11dc-98a8-001143d5d5db'>
|
||||
<mood xmlns='http://jabber.org/protocol/mood'>
|
||||
<annoyed/>
|
||||
<text>curse my nurse!</text>
|
||||
@ -130,52 +134,17 @@
|
||||
.
|
||||
.
|
||||
]]></example>
|
||||
<p>As mentioned in XEP-0060, the stanza containing the event notification or payload MAY also include 'replyto' data (as specified by the &xep0033; protocol) to provide an explicit association between the published data and the user:</p>
|
||||
<example caption='Event notification with extended stanza addressing'><![CDATA[
|
||||
<message
|
||||
from='pubsub.shakespeare.lit'
|
||||
to='romeo@montague.net/orchard'>
|
||||
<event xmlns='http://jabber.org/protocol/pubsub#event'>
|
||||
<items node='http://jabber.org/protocol/mood'>
|
||||
<item id='a92lvfmlzsd923k'>
|
||||
<mood xmlns='http://jabber.org/protocol/mood'>
|
||||
<annoyed/>
|
||||
<text>curse my nurse!</text>
|
||||
</mood>
|
||||
</item>
|
||||
</items>
|
||||
</event>
|
||||
<addresses xmlns='http://jabber.org/protocol/address'>
|
||||
<address type='replyto' jid='juliet@capulet.com'/>
|
||||
</addresses>
|
||||
</message>
|
||||
]]></example>
|
||||
</section2>
|
||||
<section2 topic='Message Transport' anchor='proto-message'>
|
||||
<p>A user MAY also provide a mood extension in a specific message, in order to lend a defined emotional tone to the message.</p>
|
||||
<p>A user MAY provide a mood extension in a specific message in order to lend a defined emotional tone to the text.</p>
|
||||
<example caption='User Provides Mood in Message'><![CDATA[
|
||||
<message from='romeo@montague.net/orchard'
|
||||
to='juliet@capulet.com/balcony'
|
||||
<message from='romeo@montague.lit/05f018b8-0f9c-11dc-9e44-000bcd821bfb'
|
||||
from='juliet@capulet.lit'
|
||||
type='chat'>
|
||||
<body>A thousand times good night!</body>
|
||||
<mood xmlns='http://jabber.org/protocol/mood'/>
|
||||
<sad/>
|
||||
</mood>
|
||||
</message>
|
||||
]]></example>
|
||||
<p>The <mood/> element could even contain a URL reference structured according to the &xep0066; protocol:</p>
|
||||
<example caption='User Provides Mood and URL in Message'><![CDATA[
|
||||
<message from='ralphm@ik.nu/work'
|
||||
to='stpeter@jabber.org/home'
|
||||
type='chat'>
|
||||
<body>Cool!</body>
|
||||
<mood xmlns='http://jabber.org/protocol/mood'>
|
||||
<happy/>
|
||||
<text>Yay, the mood document has been published!</text>
|
||||
<x xmlns='jabber:x:oob'>
|
||||
<url>http://www.xmpp.org/extensions/xep-0107.html</url>
|
||||
</x>
|
||||
</mood>
|
||||
</message>
|
||||
]]></example>
|
||||
</section2>
|
||||
|
54
xep-0108.xml
54
xep-0108.xml
@ -15,7 +15,7 @@
|
||||
<sig>Standards</sig>
|
||||
<dependencies>
|
||||
<spec>XMPP Core</spec>
|
||||
<spec>XEP-0060</spec>
|
||||
<spec>XEP-0163</spec>
|
||||
</dependencies>
|
||||
<supersedes/>
|
||||
<supersededby/>
|
||||
@ -25,35 +25,41 @@
|
||||
</schemaloc>
|
||||
&ralphm;
|
||||
&stpeter;
|
||||
<revision>
|
||||
<version>1.1pre1</version>
|
||||
<date>in progress, last updated 2007-05-30</date>
|
||||
<initials>psa</initials>
|
||||
<remark><p>Corrected PEP examples.</p></remark>
|
||||
</revision>
|
||||
<revision>
|
||||
<version>1.0</version>
|
||||
<date>2004-10-20</date>
|
||||
<initials>psa/rm</initials>
|
||||
<remark>Per a vote of the Jabber Council, advanced status to Draft; per Council discussion, also adjusted structure to use nested elements rather than XML character data.</remark>
|
||||
<remark><p>Per a vote of the Jabber Council, advanced status to Draft; per Council discussion, also adjusted structure to use nested elements rather than XML character data.</p></remark>
|
||||
</revision>
|
||||
<revision>
|
||||
<version>0.4</version>
|
||||
<date>2004-09-15</date>
|
||||
<initials>psa</initials>
|
||||
<remark>Added internationalization considerations.</remark>
|
||||
<remark><p>Added internationalization considerations.</p></remark>
|
||||
</revision>
|
||||
<revision>
|
||||
<version>0.3</version>
|
||||
<date>2004-04-25</date>
|
||||
<initials>psa</initials>
|
||||
<remark>Corrected several errors; added reference to XEP-0033.</remark>
|
||||
<remark><p>Corrected several errors; added reference to XEP-0033.</p></remark>
|
||||
</revision>
|
||||
<revision>
|
||||
<version>0.2</version>
|
||||
<date>2004-02-19</date>
|
||||
<initials>psa</initials>
|
||||
<remark>Minor text and schema changes; added RPID mapping.</remark>
|
||||
<remark><p>Minor text and schema changes; added RPID mapping.</p></remark>
|
||||
</revision>
|
||||
<revision>
|
||||
<version>0.1</version>
|
||||
<date>2003-07-22</date>
|
||||
<initials>rm</initials>
|
||||
<remark>Initial version.</remark>
|
||||
<remark><p>Initial version.</p></remark>
|
||||
</revision>
|
||||
</header>
|
||||
<section1 topic='Introduction' anchor='intro'>
|
||||
@ -91,16 +97,14 @@
|
||||
<p>In accordance with &xmppcore;, the receiving application MUST ignore a specific activity element or detailed activity element if it does not understand the namespace that qualifies the element.</p>
|
||||
</section2>
|
||||
<section2 topic='Pubsub Transport' anchor='proto-pubsub'>
|
||||
<p>The <activity/> element SHOULD be communicated by means of &xep0060; or the subset of publish-subscribe specified in &xep0163;. Because activity information is not pure presence information and can change independently of the user's availability, it SHOULD NOT be provided as an extension to &PRESENCE;.</p>
|
||||
<p>Note: The following examples show use of the publish-subscribe subset specified in <cite>XEP-0163</cite>.</p>
|
||||
<p>Activity information SHOULD be communicated and transported by means of the &xep0060; subset specified in &xep0163;. Because activity information is not pure presence information and can change independently of the user's availability, it SHOULD NOT be provided as an extension to &PRESENCE;.</p>
|
||||
<example caption='User Publishes Activity'><![CDATA[
|
||||
<iq type='set'
|
||||
from='juliet@capulet.com/balcony'
|
||||
to='pubsub.shakespeare.lit'
|
||||
from='juliet@capulet.lit/ca486eba-0f9a-11dc-8835-000bcd821bfb'
|
||||
id='publish1'>
|
||||
<pubsub xmlns='http://jabber.org/protocol/pubsub'>
|
||||
<publish node='http://jabber.org/protocol/activity'>
|
||||
<item id='zjsdf929la982873j'>
|
||||
<item>
|
||||
<activity xmlns='http://jabber.org/protocol/activity'>
|
||||
<relaxing>
|
||||
<partying/>
|
||||
@ -115,11 +119,11 @@
|
||||
<p>The activity is then delivered to all subscribers:</p>
|
||||
<example caption='Activity is Delivered to All Subscribers'><![CDATA[
|
||||
<message
|
||||
from='pubsub.shakespeare.lit'
|
||||
to='romeo@montague.net/orchard'>
|
||||
from='juliet@capulet.lit'
|
||||
to='romeo@montague.lit'>
|
||||
<event xmlns='http://jabber.org/protocol/pubsub#event'>
|
||||
<items node='http://jabber.org/protocol/activity'>
|
||||
<item id='zjsdf929la982873j'>
|
||||
<item id='b5ac48d0-0f9c-11dc-8754-001143d5d5db'>
|
||||
<activity xmlns='http://jabber.org/protocol/activity'>
|
||||
<relaxing>
|
||||
<partying/>
|
||||
@ -134,28 +138,6 @@
|
||||
.
|
||||
.
|
||||
]]></example>
|
||||
<p>As mentioned in XEP-0060, the stanza containing the event notification or payload MAY also include 'replyto' data (as specified by the &xep0033; protocol) to provide an explicit association between the published data and the user:</p>
|
||||
<example caption='Event notification with extended stanza addressing'><![CDATA[
|
||||
<message
|
||||
from='pubsub.shakespeare.lit'
|
||||
to='romeo@montague.net/orchard'>
|
||||
<event xmlns='http://jabber.org/protocol/pubsub#event'>
|
||||
<items node='generic/juliet-activity'>
|
||||
<item id='current'>
|
||||
<activity xmlns='http://jabber.org/protocol/activity'>
|
||||
<relaxing>
|
||||
<partying/>
|
||||
</relaxing>
|
||||
<text xml:lang='en'>My nurse's birthday!</text>
|
||||
</activity>
|
||||
</item>
|
||||
</items>
|
||||
</event>
|
||||
<addresses xmlns='http://jabber.org/protocol/address'>
|
||||
<address type='replyto' jid='juliet@capulet.com'/>
|
||||
</addresses>
|
||||
</message>
|
||||
]]></example>
|
||||
</section2>
|
||||
</section1>
|
||||
<section1 topic='Activity Values' anchor='activities'>
|
||||
|
143
xep-0118.xml
143
xep-0118.xml
@ -15,8 +15,7 @@
|
||||
<sig>Standards</sig>
|
||||
<dependencies>
|
||||
<spec>XMPP Core</spec>
|
||||
<spec>XMPP IM</spec>
|
||||
<spec>XEP-0060</spec>
|
||||
<spec>XEP-0163</spec>
|
||||
</dependencies>
|
||||
<supersedes/>
|
||||
<supersededby/>
|
||||
@ -25,71 +24,77 @@
|
||||
<url>http://www.xmpp.org/schemas/tune.xsd</url>
|
||||
</schemaloc>
|
||||
&stpeter;
|
||||
<revision>
|
||||
<version>1.1pre1</version>
|
||||
<date>in progress, last updated 2007-05-30</date>
|
||||
<initials>psa</initials>
|
||||
<remark><p>Removed non-PEP examples; added uri element.</p></remark>
|
||||
</revision>
|
||||
<revision>
|
||||
<version>1.0</version>
|
||||
<date>2004-11-12</date>
|
||||
<initials>psa</initials>
|
||||
<remark>Per a vote of the Jabber Council, advanced status to Draft.</remark>
|
||||
<remark><p>Per a vote of the Jabber Council, advanced status to Draft.</p></remark>
|
||||
</revision>
|
||||
<revision>
|
||||
<version>0.10</version>
|
||||
<date>2004-10-29</date>
|
||||
<initials>psa</initials>
|
||||
<remark>Added example with URL.</remark>
|
||||
<remark><p>Added example with URL.</p></remark>
|
||||
</revision>
|
||||
<revision>
|
||||
<version>0.9</version>
|
||||
<date>2004-10-27</date>
|
||||
<initials>psa</initials>
|
||||
<remark>Changed recommendation to not include the <length/> element if the track time is unknown.</remark>
|
||||
<remark><p>Changed recommendation to not include the <length/> element if the track time is unknown.</p></remark>
|
||||
</revision>
|
||||
<revision>
|
||||
<version>0.8</version>
|
||||
<date>2004-10-26</date>
|
||||
<initials>psa</initials>
|
||||
<remark>Added implementation notes; clarified nature of <source/> and <track/> elements; if length is unknown, set to zero.</remark>
|
||||
<remark><p>Added implementation notes; clarified nature of <source/> and <track/> elements; if length is unknown, set to zero.</p></remark>
|
||||
</revision>
|
||||
<revision>
|
||||
<version>0.7</version>
|
||||
<date>2004-05-20</date>
|
||||
<initials>psa</initials>
|
||||
<remark>Changed <length/> datatype from xs:duration to xs:unsignedShort.</remark>
|
||||
<remark><p>Changed <length/> datatype from xs:duration to xs:unsignedShort.</p></remark>
|
||||
</revision>
|
||||
<revision>
|
||||
<version>0.6</version>
|
||||
<date>2004-04-25</date>
|
||||
<initials>psa</initials>
|
||||
<remark>Corrected several errors; added reference to XEP-0033.</remark>
|
||||
<remark><p>Corrected several errors; added reference to XEP-0033.</p></remark>
|
||||
</revision>
|
||||
<revision>
|
||||
<version>0.5</version>
|
||||
<date>2004-02-19</date>
|
||||
<initials>psa</initials>
|
||||
<remark>Reverted from infobits to tune elements.</remark>
|
||||
<remark><p>Reverted from infobits to tune elements.</p></remark>
|
||||
</revision>
|
||||
<revision>
|
||||
<version>0.4</version>
|
||||
<date>2003-12-14</date>
|
||||
<initials>psa</initials>
|
||||
<remark>Slight modifications to track changes to infobits specifications.</remark>
|
||||
<remark><p>Slight modifications to track changes to infobits specifications.</p></remark>
|
||||
</revision>
|
||||
<revision>
|
||||
<version>0.3</version>
|
||||
<date>2003-10-23</date>
|
||||
<initials>psa</initials>
|
||||
<remark>Replaced tune elements with infobits.</remark>
|
||||
<remark><p>Replaced tune elements with infobits.</p></remark>
|
||||
</revision>
|
||||
<revision>
|
||||
<version>0.2</version>
|
||||
<date>2003-09-10</date>
|
||||
<initials>psa</initials>
|
||||
<remark>Added "stop" function via empty <tune/> element.</remark>
|
||||
<remark><p>Added "stop" function via empty <tune/> element.</p></remark>
|
||||
</revision>
|
||||
<revision>
|
||||
<version>0.1</version>
|
||||
<date>2003-09-08</date>
|
||||
<initials>psa</initials>
|
||||
<remark>Initial version.</remark>
|
||||
<remark><p>Initial version.</p></remark>
|
||||
</revision>
|
||||
</header>
|
||||
<section1 topic='Introduction' anchor='intro'>
|
||||
@ -112,10 +117,10 @@
|
||||
<td>xs:string</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>title</td>
|
||||
<td>The title of the song or piece</td>
|
||||
<td>Heart of the Sunrise</td>
|
||||
<td>xs:string</td>
|
||||
<td>length</td>
|
||||
<td>The duration of the song or piece in seconds</td>
|
||||
<td>686</td>
|
||||
<td>xs:unsignedShort</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>source</td>
|
||||
@ -123,6 +128,12 @@
|
||||
<td>Yessongs</td>
|
||||
<td>xs:string</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>title</td>
|
||||
<td>The title of the song or piece</td>
|
||||
<td>Heart of the Sunrise</td>
|
||||
<td>xs:string</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>track</td>
|
||||
<td>A unique identifier for the tune; e.g., the track number within a collection or the specific URI for the object (e.g., a stream or audio file)</td>
|
||||
@ -130,31 +141,30 @@
|
||||
<td>xs:string</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>length</td>
|
||||
<td>The duration of the song or piece in seconds</td>
|
||||
<td>686</td>
|
||||
<td>xs:unsignedShort</td>
|
||||
<td>uri</td>
|
||||
<td>A URI or URL pointing to information about the song, collection, or artist</td>
|
||||
<td>http://www.yesworld.com/lyrics/Fragile.html#9</td>
|
||||
<td>xs:anyURI</td>
|
||||
</tr>
|
||||
</table>
|
||||
<p>NOTE: The datatypes specified above are defined in &w3xmlschema2;.</p>
|
||||
</section2>
|
||||
<section2 topic='Transport Mechanism' anchor='protocol-transport'>
|
||||
<p>Tune information SHOULD be communicated and transported by means of the &xep0060; protocol or the subset of publish-subscribe specified in &xep0163;. Because tune information is not pure presence information and can change independently of the user's availability, it SHOULD NOT be provided as an extension to &PRESENCE;.</p>
|
||||
<p>Note: The following examples show use of the publish-subscribe subset specified in <cite>XEP-0163</cite>.</p>
|
||||
<p>Tune information SHOULD be communicated and transported by means of the &xep0060; subset specified in &xep0163;. Because tune information is not pure presence information and can change independently of the user's availability, it SHOULD NOT be provided as an extension to &PRESENCE;.</p>
|
||||
<example caption='User Publishes Tune Information'><![CDATA[
|
||||
<iq type='set'
|
||||
from='stpeter@jabber.org/work'
|
||||
to='pubsub.jabber.org'
|
||||
from='stpeter@jabber.org/14793c64-0f94-11dc-9430-000bcd821bfb'
|
||||
id='tunes123'>
|
||||
<pubsub xmlns='http://jabber.org/protocol/pubsub'>
|
||||
<publish node='http://jabber.org/protocol/tune'>
|
||||
<item id='jg939lalsd92l11jdlsd'>
|
||||
<item>
|
||||
<tune xmlns='http://jabber.org/protocol/tune'>
|
||||
<artist>Yes</artist>
|
||||
<title>Heart of the Sunrise</title>
|
||||
<source>Yessongs</source>
|
||||
<track>3</track>
|
||||
<length>686</length>
|
||||
<source>Yessongs</source>
|
||||
<title>Heart of the Sunrise</title>
|
||||
<track>3</track>
|
||||
<uri>http://www.yesworld.com/lyrics/Fragile.html#9</uri>
|
||||
</tune>
|
||||
</item>
|
||||
</publish>
|
||||
@ -164,17 +174,18 @@
|
||||
<p>The tune information is then delivered to all subscribers:</p>
|
||||
<example caption='Tune Information is Delivered to All Subscribers'><![CDATA[
|
||||
<message
|
||||
from='pubsub.jabber.org'
|
||||
from='stpeter@jabber.org'
|
||||
to='maineboy@jabber.org'>
|
||||
<event xmlns='http://jabber.org/protocol/pubsub#event'>
|
||||
<items node='http://jabber.org/protocol/tune'>
|
||||
<item id='jg939lalsd92l11jdlsd'>
|
||||
<item id='bffe6584-0f9c-11dc-84ba-001143d5d5db'>
|
||||
<tune xmlns='http://jabber.org/protocol/tune'>
|
||||
<artist>Yes</artist>
|
||||
<title>Heart of the Sunrise</title>
|
||||
<source>Yessongs</source>
|
||||
<track>3</track>
|
||||
<length>686</length>
|
||||
<source>Yessongs</source>
|
||||
<title>Heart of the Sunrise</title>
|
||||
<track>3</track>
|
||||
<uri>http://www.yesworld.com/lyrics/Fragile.html#9</uri>
|
||||
</tune>
|
||||
</item>
|
||||
</items>
|
||||
@ -184,63 +195,16 @@
|
||||
.
|
||||
.
|
||||
]]></example>
|
||||
<p>As mentioned in XEP-0060, the stanza containing the event notification or payload MAY also include 'replyto' data (as specified by the &xep0033; protocol) to provide an explicit association between the published data and the user:</p>
|
||||
<example caption="Event notification with extended stanza addressing"><![CDATA[
|
||||
<message
|
||||
from='pubsub.jabber.org'
|
||||
to='maineboy@jabber.org'>
|
||||
<event xmlns='http://jabber.org/protocol/pubsub#event'>
|
||||
<items node='http://jabber.org/protocol/tune'>
|
||||
<item id='jg939lalsd92l11jdlsd'>
|
||||
<tune xmlns='http://jabber.org/protocol/tune'>
|
||||
<artist>Yes</artist>
|
||||
<title>Heart of the Sunrise</title>
|
||||
<source>Yessongs</source>
|
||||
<track>3</track>
|
||||
<length>686</length>
|
||||
</tune>
|
||||
</item>
|
||||
</items>
|
||||
</event>
|
||||
<addresses xmlns='http://jabber.org/protocol/address'>
|
||||
<address type='replyto' jid='juliet@capulet.com'/>
|
||||
</addresses>
|
||||
</message>
|
||||
]]></example>
|
||||
<p>Naturally, further extensions could be included, e.g., using &xep0066; to specify a URL where one could buy the recording.</p>
|
||||
<example caption="Tune info with URL"><![CDATA[
|
||||
<message
|
||||
from='pubsub.jabber.org'
|
||||
to='maineboy@jabber.org'>
|
||||
<event xmlns='http://jabber.org/protocol/pubsub#event'>
|
||||
<items node='http://jabber.org/protocol/tune'>
|
||||
<item id='jg939lalsd92l11jdlsd'>
|
||||
<tune xmlns='http://jabber.org/protocol/tune'>
|
||||
<artist>Yes</artist>
|
||||
<title>Heart of the Sunrise</title>
|
||||
<source>Yessongs</source>
|
||||
<track>3</track>
|
||||
<length>686</length>
|
||||
<x xmlns='jabber:x:oob'>
|
||||
<url>http://www.amazon.com/exec/obidos/ASIN/B000002J1Y</url>
|
||||
</x>
|
||||
</tune>
|
||||
</item>
|
||||
</items>
|
||||
</event>
|
||||
</message>
|
||||
]]></example>
|
||||
</section2>
|
||||
<section2 topic='Stop Command' anchor='protocol-stop'>
|
||||
<p>In order to indicate that the user is no longer listening to any tunes, the user's client SHOULD send an empty <tune/> element, which can be considered a "stop command" for user tunes:</p>
|
||||
<example caption='User Publishes "Stop Playing" Information'><![CDATA[
|
||||
<iq type='set'
|
||||
from='stpeter@jabber.org/work'
|
||||
to='pubsub.jabber.org'
|
||||
from='stpeter@jabber.org/14793c64-0f94-11dc-9430-000bcd821bfb'
|
||||
id='tunes345'>
|
||||
<pubsub xmlns='http://jabber.org/protocol/pubsub'>
|
||||
<publish node='http://jabber.org/protocol/tune'>
|
||||
<item id='jg939lalsd92l11jdlsd'>
|
||||
<item>
|
||||
<tune xmlns='http://jabber.org/protocol/tune'/>
|
||||
</item>
|
||||
</publish>
|
||||
@ -249,11 +213,11 @@
|
||||
]]></example>
|
||||
<example caption='Empty Tune Information is Delivered to All Subscribers'><![CDATA[
|
||||
<message
|
||||
from='pubsub.jabber.org'
|
||||
from='stpeter@jabber.org'
|
||||
to='maineboy@jabber.org'>
|
||||
<event xmlns='http://jabber.org/protocol/pubsub#event'>
|
||||
<items node='http://jabber.org/protocol/tune'>
|
||||
<item id='jg939lalsd92l11jdlsd'>
|
||||
<item id='cbbb3f5a-0f9c-11dc-afe0-001143d5d5db'>
|
||||
<tune xmlns='http://jabber.org/protocol/tune'/>
|
||||
</item>
|
||||
</items>
|
||||
@ -266,7 +230,7 @@
|
||||
</section2>
|
||||
</section1>
|
||||
<section1 topic='Implementation Notes' anchor='impl'>
|
||||
<p>To prevent a large number of updates when a user is skipping through tracks, an implementation may wait several seconds before publishing new tune information.</p>
|
||||
<p>To prevent a large number of updates when a user is skipping through tracks, an implementation SHOULD wait several seconds before publishing new tune information.</p>
|
||||
<p>If the length is unknown (e.g., the user is listening to a stream), the <length/> element SHOULD NOT be included.</p>
|
||||
</section1>
|
||||
<section1 topic='Security Considerations' anchor='security'>
|
||||
@ -301,10 +265,11 @@
|
||||
<xs:complexType>
|
||||
<xs:sequence minOccurs='0'>
|
||||
<xs:element name='artist' type='xs:string' minOccurs='0'/>
|
||||
<xs:element name='title' type='xs:string' minOccurs='0'/>
|
||||
<xs:element name='source' type='xs:string' minOccurs='0'/>
|
||||
<xs:element name='track' type='xs:string' minOccurs='0'/>
|
||||
<xs:element name='length' type='xs:unsignedShort' minOccurs='0'/>
|
||||
<xs:element name='source' type='xs:string' minOccurs='0'/>
|
||||
<xs:element name='title' type='xs:string' minOccurs='0'/>
|
||||
<xs:element name='track' type='xs:string' minOccurs='0'/>
|
||||
<xs:element name='uri' type='xs:anyURI' minOccurs='0'/>
|
||||
</xs:sequence>
|
||||
</xs:complexType>
|
||||
</xs:element>
|
||||
|
Loading…
Reference in New Issue
Block a user