One document matched: draft-schulzrinne-simple-ami-00.xml


<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE rfc SYSTEM "rfc2629.dtd" [
 <!ENTITY RFC2119 PUBLIC ''
      'http://xml.resource.org/public/rfc/bibxml/reference.RFC.2119.xml'>
 <!ENTITY RFC3863 PUBLIC ''
      'http://xml.resource.org/public/rfc/bibxml/reference.RFC.3863.xml'>
 <!ENTITY RFC4479 PUBLIC ''
      'http://xml.resource.org/public/rfc/bibxml/reference.RFC.4479.xml'>
 <!ENTITY RFC4480 PUBLIC ''
      'http://xml.resource.org/public/rfc/bibxml/reference.RFC.4480.xml'>
]>
    
<?rfc inline="yes"?>
<?rfc toc="yes" ?>
<?rfc symrefs="no" ?>
<?rfc iprnotified="no" ?>
<?rfc strict="yes" ?>
<?rfc compact="yes" ?>
<?rfc sortrefs="yes" ?>
<?rfc colonspace='yes' ?>

<rfc category="std" ipr="full3978" docName="draft-schulzrinne-simple-ami-00.txt">
<front>
<title abbrev="Application and Media Extension for PIDF">Applications
and Media Information (AMI) Extension to the Presence Information Data
Format</title>

<author initials="H." surname="Schulzrinne" fullname="Henning Schulzrinne">
<organization abbrev="Columbia U.">Columbia University</organization>
<address>
<postal>
<street>Department of Computer Science</street>
<street>450 Computer Science Building</street>
<city>New York</city>
<region>NY</region>
<code>10027</code>
<country>US</country>
</postal>
<phone>+1 212 939 7004</phone>
<email>hgs+simple@cs.columbia.edu</email>
<uri>http://www.cs.columbia.edu/~hgs</uri>
</address>
</author>

<author initials="Y." surname="Zhao" fullname="Yang Zhao">
<organization>Huawei Technologies</organization>
<address>
<postal>
<street>Bantian Longgang</street>
<city>Shenzhen</city>
<region>Guandong</region>
<code>518129</code>
<country>P.R China</country>
</postal>
<phone>+86 755 28780808</phone>
<email>yangzhao@huawei.com</email>
</address>
</author>

<date />
<abstract>
<t>The Presence Information Data Format (PIDF) defines a basic format
for representing presence information for a presentity. 
The Application and Media Information (AMI) format described here is an
extension that adds optional elements to the Presence Information
Data Format (PIDF), describing what music a presentity is listening to,
what video it is watching, or what game it is playing.
</t>

</abstract>
</front>
<middle>

<section title="Introduction">

<t>The Presence Information Data Format (PIDF) <xref
target="RFC3863"/>defines a basic format for representing presence
information for a presentity.  The Application and Media Information
(AMI) format described here is an extension that conveys additional
information about the audio that a presentity is listening to, the video
that it is watching, the web site it is visiting and the game that it is
playing.  The information format is closely modeled on the similar XMPP
extensions XEP-0118, XEP-0197, XEP-0195, and XEP-0196, respectively. 
Such information may be considered an extension of <xref
target="RFC4480">rich presence</xref> and may be integrated into media
players or games.</t>

<t>The elements defined in this document may appear in the <device>
or <person> data elements of the <xref target="RFC4479">presence data
model</xref>.</t>

</section>

<section title="Terminology">

<t>In this document, the key words "MUST", "MUST NOT", "REQUIRED",
"SHALL", "SHALL NOT", "SHOULD", "SHOULD NOT", "RECOMMENDED", "MAY", and
"OPTIONAL" are to be interpreted as described in RFC 2119 <xref
target="RFC2119"/>.</t>

</section>

<section title="Music">

<t>The <tune> element describes the current piece of music that the
presentity is listening to.  The elements below are a superset of those
described in XMPP extension XEP-0118, adding the composer, genre,
start_time, and user_comment elements.  All elements are OPTIONAL.</t>

<t><list style='hanging'>
<t hangText='artist:'>The performer of the song or piece.</t>
<t hangText='composer:'>The composer of the song or piece.</t>
<t hangText='genre:'>The musical genre or category.</t>
<t hangText='length:'>The duration of the song or piece in seconds.</t>
<t hangText='source:'> The collection (e.g., album) or other source (e.g., a band
website that hosts streams or audio files).</t>
<t hangText='start_time:'>The time the presentity has started listening to the piece..</t>
<t hangText='title:'>The title of the song or piece.</t>
<t hangText='track:'> 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).</t>

<t hangText='uri:'>A URI or URL pointing to information about the song,
collection, or artist.</t>

<t hangText='user_comment:'>A user's free-form comments about the piece.</t>

</list></t>

<texttable anchor="tab:tune">
<ttcol>Element</ttcol>
<ttcol>Example</ttcol>
<ttcol>Datatype</ttcol>

<c>artist</c>
<c>Chicago Symphony</c>
<c>xs:string</c>

<c>composer</c>
<c>Carl Orff</c>
<c>xs:string</c>

<c>genre</c>
<c>classical</c>
<c>xs:string</c>

<c>length</c>
<c>3658</c>
<c>xs:unsignedShort</c>

<c>source</c>
<c>Orff Carmina Burana</c>
<c>xs:string</c>

<c>start_time</c>
<c>2007-11-12T08:30Z</c>
<c>xs:dateTime</c>

<c>title</c>
<c>Omnia Sol temperat</c>
<c>xs:string</c>

<c>track</c>
<c>4</c>
<c>xs:string</c>

<c>user_comment</c>
<c>Stirring</c>
<c>xs:string</c>

<c>uri</c>
<c>http://example.com/CB</c>
<c>xs:anyURI</c>

</texttable>

</section>

<section title="Video">

<t>The video element describes a video program that the presentity is
watching, e.g., on a DVD, VCR or DVR, from a web site, or a broadcast
service such as over-the-air television, satellite TV or CATV.  The
elements are copied from XMPP XEP-0197.  All elements are OPTIONAL.</t>

<t><list style='hanging'>
<t hangText='author:'>The author or producer of the program.</t>
<t hangText='cast:'>The cast members of the program.</t>
<t hangText='channel_id:'>A globally unique channel identifier (URN).</t>
<t hangText='channel_name:'>The name of the TV or satellite channel showing the program.</t>
<t hangText='description:'>A description of the program.</t>
<t hangText='duration:'>The duration of the program (in seconds).</t>
<t hangText='end_time:'>The end time of the program.  The end time is a
prediction and does not take pausing and other VCR operations into
account.</t>
<t hangText='episode:'>The episode number of the program.</t>
<t hangText='program_name:'>The name of the program (for television
series) or movie title.</t>
<t hangText='program_type:'>The type of the program, such as comedy,
drama, sports or news.</t>
<t hangText='start_time:'>The start time of the program.  For
time-shifted viewing, the start_time describes the time that the
presentity has started watching the video, not the original broadcast
time, is shown.</t>
<t hangText='subprogram_type:'>The type of the sub-program (e.g.,
outtakes on an extended DVD).</t>
<t hangText='uri:'>A URI for the video or relevant service.</t>
<t hangText='user_comment:'>A user's free-form comments about the program.</t>
<t hangText='user_rating:'>The user's personal rating of the program (on
a scale of 1 to 10, with 10 being highest).</t>
</list></t>

<texttable anchor="tab:video">
<ttcol>Element</ttcol>
<ttcol>Example</ttcol>
<ttcol>Datatype</ttcol>

<c>author</c>
<c>Frank Capra</c>
<c>xs:string</c>

<c>cast</c>
<c>James Stewart, Donna Reed, Lionel Barrymore</c>
<c>xs:string</c>

<c>channel_id</c>
<c>?</c>
<c>xs:anyURI</c>

<c>channel_name</c>
<c>WFBR</c>
<c>xs:string</c>

<c>description</c>
<c>Holiday movie.</c>
<c>xs:string</c>

<c>duration</c>
<c>7800</c>
<c>xs:positiveInteger</c>

<c>end_time</c>
<c>2007-11-12T05:10Z</c>
<c>xs:dateTime</c>

<c>episode</c>
<c></c>
<c>xs:string</c>

<c>program_name</c>
<c>It's a wonderful life</c>
<c>xs:string</c>

<c>program_type</c>
<c>drama</c>
<c>xs:string</c>

<c>start_time</c>
<c>2007-11-12T03:00Z</c>
<c>xs:dateTime</c>

<c>subprogram_type</c>
<c>feature</c>
<c>xs:string</c>

<c>uri</c>
<c>http://example.com/iawl</c>
<c>xs:anyURI</c>

<c>user_comment</c>
<c>A Christmas classic</c>
<c>xs:string</c>

<c>user_rating</c>
<c>8</c>
<c>xs:unsignedShort</c>

</texttable>

</section>

<section title="Game">

<t>Game information can be used to gauge what activity the user is
engaged in and can be part of social networking applications. The
information is similar to the XMPP extension XEP-0196 and contains the
information in the table below. All elements are OPTIONAL.</t>

<t><list style='hanging'>
<t hangText='character_name:'>The name of the user's character in the game.</t>
<t hangText='character_profile:'>A URI for a profile of the user's character.</t>
<t hangText='name:'>The name of the game</t>
<t hangText='level:'>The user's level in the game.</t>
<t hangText='server_address:'>The hostname or IP address of the server
where the user is playing.</t>
<t hangText='server_name:'>The name of the server where the user is playing.</t>
<t hangText='uri:'>A URI for the game or relevant gaming service.</t>
</list></t>

<texttable anchor="tab:game">
<ttcol>Element</ttcol>
<ttcol>Example</ttcol>
<ttcol>Datatype</ttcol>

<c>character_name</c>
<c>Stentor</c>
<c>xs:string</c>

<c>character_profile</c>
<c>http://example.com/12345</c>
<c>xs:anyURI</c>

<c>name</c>
<c>Worlds of Peace</c>
<c>xs:string</c>

<c>level</c>
<c>66</c>
<c>xs:string</c>

<c>server_address</c>
<c>wop6.example.com</c>
<c>xs:string</c>

<c>server_name</c>
<c>WOP Example</c>
<c>xs:string</c>

<c>uri</c>
<c>http://wp.example.com/</c>
<c>xs:anyURI</c>

</texttable>

</section>

<section title="Web page">

<t>The <page> element describes the web page the presentity is
browsing.  A presence document MAY contain multiple such elements since
a single user may have multiple windows open at the same time.  This
element is also useful for remote collaboration or joint web browsing. 
The elements and their characteristics are derived from XMPP
XEP-0195. All elements except uri are OPTIONAL, uri is REQUIRED.</t>

<t><list style='hanging'>
<t hangText='description:'>The value of the HTML "description" META tag.</t>
<t hangText='keywords:'>The value of the HTML "keywords" META tag.</t>
<t hangText='title:'>The value of the HTML <title/> element</t>
<t hangText='uri:'>The URI of the page.</t>
</list></t>

<texttable anchor="tab:web">
<ttcol>Element</ttcol>
<ttcol>Example</ttcol>
<ttcol>Datatype</ttcol>

<c>description</c>
<c>RFC 3261</c>
<c>xs:string</c>

<c>keywords</c>
<c>SIP, protocol</c>
<c>xs:string</c>

<c>title</c>
<c>RFC 3261</c>
<c>xs:string</c>

<c>uri</c>
<c>http://example.org/3261</c>
<c>xs:anyURI</c>

</texttable>

</section>

<section anchor="example" title="Example">

<figure anchor="fig:example" title="Example AMI extension">
<artwork><![CDATA[
<?xml version="1.0" encoding="UTF-8"?>
<presence xmlns="urn:ietf:params:xml:ns:pidf" 
  xmlns:gp="urn:ietf:params:xml:ns:pidf:geopriv10"
  xmlns:gml="urn:opengis:specification:gml:schema-xsd:feature:v3.0"
  entity="pres:geotarget@example.com">
  <tuple id="sg89ae">
    <status>
    </status>
    <timestamp>2003-06-22T20:57:29Z</timestamp>
  </tuple>
</presence>
]]></artwork>
</figure>

</section>

<section title="Security Considerations">

<t>This document defines additional location elements carried by PIDF
<xref target="RFC3863"/>, so its security considerations apply.
Revealing ones taste in music or video entertainment can be embarrassing;
employers and parents may not appreciate the games being played by a
presentity, so presentity discretion and privacy policies are strongly
advised. In particular, audio and video tools MUST NOT publish such
information without explicit consent of the presentity.</t> 

<t>The watcher MUST NOT automatically resolves URLs provided in the
information elements, as these may lead to malicious or inappropriate
material.</t>

</section>

<section title="IANA Considerations">
<t>A future version of this document will provide IANA considerations.</t>
</section>

<section title="Acknowledgements">

<t>The data formats were derived from the XMPP extensions XEP-0118,
XEP-0195, XEP-0196 and XEP-0197. Tracking channels was suggested by Erik Huizer
and Pascal Decointet.</t>

</section>

</middle>
<back>
<references title="Normative References">
&RFC2119;
&RFC3863;
</references>

<references title="Informative References">
&RFC4479;
&RFC4480;
</references>

</back>
</rfc>

PAFTECH AB 2003-20262026-04-23 18:35:00