Warning: This is not a stable specification. It WILL change.
A lot of this comes from the CPIM presence draft and related.
Some modifications have been made to better suit our immeditate needs.
The draft is located at http://search.ietf.org/internet-drafts/draft-ietf-impp-cpim-01.txt
.
Presence information
====================
<!ELEMENT presence (tuple+)>
<!ATTLIST presence
publisher
%URI; ""
lastUpdate
%TIMESTAMP; ""
publisherInfo
%URI; "">
<!ELEMENT tuple (note)>
<!ATTLIST tuple
destination
%URI; #REQUIRED
status
%PSTATUS; #REQUIRED
expires
%TIMESTAMP; ""
tupleInfo
%URI; "">
<!ELEMENT note (#PCDATA)>
Example:
<presence publisher='fred@example.com'
lastUpdate='14 May 2000 13:02:00 -0800'
publisherInfo='http://www.example.com/fred/'>
<tuple destination='im:fred@example.com'
status='open'
expires='14 May 2000 14:02:00 -0800'>
<note>I'm happy today</note>
</tuple>
</presence>
Conference events
=================
<!ELEMENT cevent (subject*)>
<!ATTLIST cevent
publisher
%URI; "">
<!ELEMENT subject>
<!ATTLIST subject
destination
%URI; #REQUIRED
accesslevel
%ACCESSLEVEL; ""
status
%CSTATUS; "">
Example:
<cevent>
<subject destination='fred@example.com'
accesslevel='INVITE' />
</cevent>
data types
==========
<!--
ACCESSLEVEL := "NONE" | \
; no privileges
"LISTEN" | \ ; can only receive
"PUBLISH" | \ ; can receive an send
"LIST" | \ ; can list participants
"INVITE" | \ ; can invite other users
"MANAGE" ; can manage other
participants'
; privileges
All other values are ignored
-->
<!ENTITY % ACCESSLEVEL "NMTOKENS">
<!--
CSTATUS := "on" |
\ ; user has joined
"off" | \ ; user has left
All other values are ignored
-->
<!ENTITY % CSTATUS "NMTOKENS">
<!--
URI: a RFC 2396 string
Examples:
http://iplanet.com
im:fred@example.com
-->
<!ENTITY % URI "CDATA">
<!--
TIMESTAMP: a sanitized RFC 822 date (no
comments)
Example:
14 May 2000 14:02:00
-0800
-->
<!ENTITY % TIMESTAMP "CDATA">
<!--
PSTATUS: presence status value
PSTATUS := "OPEN" |
\ ; online; available
"CLOSED" | \ ; offline; unreachable
"FORWARDED" | \ ; offline; one-way messages forwarded
"IDLE" | \ ; online; probably not responsive
"AWAY" | \ ; online; unavailable
"BUSY" ; online;
not fully available
-->
<!ENTITY % PSTATUS "NMTOKENS">