draft-ietf-apex-presence-02.txt   draft-ietf-apex-presence-03.txt 
Network Working Group M. Rose Network Working Group M. Rose
Internet-Draft Invisible Worlds, Inc. Internet-Draft Invisible Worlds, Inc.
Expires: November 28, 2001 G. Klyne Expires: October 30, 2001 G. Klyne
Baltimore Technologies Baltimore Technologies
D. Crocker D. Crocker
Brandenburg Consulting Brandenburg Consulting
May 30, 2001
The APEX Presence Service The APEX Presence Service
draft-ietf-apex-presence-02 draft-ietf-apex-presence-03
Status of this Memo Status of this Memo
This document is an Internet-Draft and is in full conformance with This document is an Internet-Draft and is in full conformance with
all provisions of Section 10 of RFC2026. all provisions of Section 10 of RFC2026.
Internet-Drafts are working documents of the Internet Engineering Internet-Drafts are working documents of the Internet Engineering
Task Force (IETF), its areas, and its working groups. Note that Task Force (IETF), its areas, and its working groups. Note that
other groups may also distribute working documents as Internet- other groups may also distribute working documents as Internet-
Drafts. Drafts.
skipping to change at page 1, line 35 skipping to change at page 1, line 33
and may be updated, replaced, or obsoleted by other documents at any and may be updated, replaced, or obsoleted by other documents at any
time. It is inappropriate to use Internet-Drafts as reference time. It is inappropriate to use Internet-Drafts as reference
material or to cite them other than as "work in progress." material or to cite them other than as "work in progress."
The list of current Internet-Drafts can be accessed at The list of current Internet-Drafts can be accessed at
http://www.ietf.org/ietf/1id-abstracts.txt. http://www.ietf.org/ietf/1id-abstracts.txt.
The list of Internet-Draft Shadow Directories can be accessed at The list of Internet-Draft Shadow Directories can be accessed at
http://www.ietf.org/shadow.html. http://www.ietf.org/shadow.html.
This Internet-Draft will expire on November 28, 2001. This Internet-Draft will expire on October 30, 2001.
Copyright Notice Copyright Notice
Copyright (C) The Internet Society (2001). All Rights Reserved. Copyright (C) The Internet Society (2001). All Rights Reserved.
Abstract Abstract
This memo describes the APEX presence service, addressed as the well- This memo describes the APEX presence service, addressed as the well-
known endpoint "apex=presence". The presence service is used to known endpoint "apex=presence". The presence service is used to
manage presence information for APEX endpoints. manage presence information for APEX endpoints.
skipping to change at page 2, line 27 skipping to change at page 2, line 27
4.4 The Publish Operation . . . . . . . . . . . . . . . . . . . . 20 4.4 The Publish Operation . . . . . . . . . . . . . . . . . . . . 20
4.5 The Terminate Operation . . . . . . . . . . . . . . . . . . . 22 4.5 The Terminate Operation . . . . . . . . . . . . . . . . . . . 22
4.6 The Notify Operation . . . . . . . . . . . . . . . . . . . . . 23 4.6 The Notify Operation . . . . . . . . . . . . . . . . . . . . . 23
4.7 The Reply Operation . . . . . . . . . . . . . . . . . . . . . 23 4.7 The Reply Operation . . . . . . . . . . . . . . . . . . . . . 23
5. Registration: The Presence Service . . . . . . . . . . . . . . 24 5. Registration: The Presence Service . . . . . . . . . . . . . . 24
6. The Presence Service DTD . . . . . . . . . . . . . . . . . . . 25 6. The Presence Service DTD . . . . . . . . . . . . . . . . . . . 25
7. Security Considerations . . . . . . . . . . . . . . . . . . . 28 7. Security Considerations . . . . . . . . . . . . . . . . . . . 28
References . . . . . . . . . . . . . . . . . . . . . . . . . . 29 References . . . . . . . . . . . . . . . . . . . . . . . . . . 29
Authors' Addresses . . . . . . . . . . . . . . . . . . . . . . 29 Authors' Addresses . . . . . . . . . . . . . . . . . . . . . . 29
A. Acknowledgements . . . . . . . . . . . . . . . . . . . . . . . 30 A. Acknowledgements . . . . . . . . . . . . . . . . . . . . . . . 30
B. Changes from draft-ietf-apex-presence-01 . . . . . . . . . . . 31 B. Revision History . . . . . . . . . . . . . . . . . . . . . . . 31
C. Changes from draft-ietf-apex-presence-00 . . . . . . . . . . . 32 B.1 Changes from draft-ietf-apex-presence-02 . . . . . . . . . . . 31
Full Copyright Statement . . . . . . . . . . . . . . . . . . . 33 B.2 Changes from draft-ietf-apex-presence-01 . . . . . . . . . . . 31
B.3 Changes from draft-ietf-apex-presence-00 . . . . . . . . . . . 31
Full Copyright Statement . . . . . . . . . . . . . . . . . . . 32
1. Introduction 1. Introduction
This memo describes a presence service that is built upon the APEX This memo describes a presence service that is built upon the APEX
[1] "relaying mesh". The APEX presence service is used to manage [1] "relaying mesh". The APEX presence service is used to manage
presence information for APEX endpoints. presence information for APEX endpoints.
APEX, at its core, provides a best-effort datagram service. Within APEX, at its core, provides a best-effort datagram service. Within
an administrative domain, all relays must be able to handle messages an administrative domain, all relays must be able to handle messages
for any endpoint within that domain. APEX services are logically for any endpoint within that domain. APEX services are logically
skipping to change at page 4, line 9 skipping to change at page 4, line 9
presence service in the "example.com" administrative domain. presence service in the "example.com" administrative domain.
Note that within a single administrative domain, the presence service Note that within a single administrative domain, the presence service
makes use of the APEX access [3] service in order to determine if an makes use of the APEX access [3] service in order to determine if an
originator is allowed to view or manage presence information. originator is allowed to view or manage presence information.
2. Management of Presence Information 2. Management of Presence Information
Management of presence information falls into three categories: Management of presence information falls into three categories:
o applications may update the presence entry associated with an o applications may update the presence information associated with
endpoint; an endpoint;
o applications may subscribe to receive presence information about o applications may subscribe to receive presence information
an endpoint; and, associated with an endpoint; and,
o applications may find out who is subscribed to receive presence o applications may find out who is subscribed to receive presence
information. information.
Each is now described in turn. Each is now described in turn.
2.1 Update of Presence Information 2.1 Update of Presence Information
When an application wants to modify the presence entry associated When an application wants to modify the presence information
with an endpoint, it sends a publish operation to the service, e.g., associated with an endpoint, it sends a publish operation to the
service, e.g.,
+-------+ +-------+ +-------+ +-------+
| | -- data -------> | | | | -- data -------> | |
| appl. | | relay | | appl. | | relay |
| | <--------- ok -- | | | | <--------- ok -- | |
+-------+ +-------+ +-------+ +-------+
C: <data content='#Content'> C: <data content='#Content'>
<originator identity='fred@example.com' /> <originator identity='fred@example.com' />
<recipient identity='apex=presence@example.com' /> <recipient identity='apex=presence@example.com' />
skipping to change at page 7, line 8 skipping to change at page 7, line 8
<recipient identity='fred@example.com' /> <recipient identity='fred@example.com' />
<data-content Name='Content'> <data-content Name='Content'>
<reply code='250' transID='1' /> <reply code='250' transID='1' />
</data-content> </data-content>
</data> </data>
S: <ok /> S: <ok />
2.2 Distribution of Presence Information 2.2 Distribution of Presence Information
When an application wants to (periodically) receive the presence When an application wants to (periodically) receive the presence
entry associated with an endpoint, it sends a subscribe operation to information associated with an endpoint, it sends a subscribe
the service, e.g., operation to the service, e.g.,
+-------+ +-------+ +-------+ +-------+
| | -- data -------> | | | | -- data -------> | |
| appl. | | relay | | appl. | | relay |
| | <--------- ok -- | | | | <--------- ok -- | |
+-------+ +-------+ +-------+ +-------+
C: <data content='#Content'> C: <data content='#Content'>
<originator identity='wilma@example.com' /> <originator identity='wilma@example.com' />
<recipient identity='apex=presence@example.com' /> <recipient identity='apex=presence@example.com' />
skipping to change at page 16, line 8 skipping to change at page 16, line 8
C: <recipient identity='apex=presence@example.com' /> C: <recipient identity='apex=presence@example.com' />
C: <data-content Name='Content'> C: <data-content Name='Content'>
C: <reply code='250' transID='1' /> C: <reply code='250' transID='1' />
C: </data-content> C: </data-content>
C: </data> C: </data>
C: END C: END
4.2 The Subscribe Operation 4.2 The Subscribe Operation
When an application wants to (periodically) receive the presence When an application wants to (periodically) receive the presence
entry associated with an endpoint, it sends a "subscribe" element to information associated with an endpoint, it sends a "subscribe"
the service. element to the service.
The "subscribe" element has a "publisher" attribute, a "duration" The "subscribe" element has a "publisher" attribute, a "duration"
attribute, a "transID" attribute, and no content: attribute, a "transID" attribute, and no content:
o the "publisher" attribute specifies the endpoint associated with o the "publisher" attribute specifies the endpoint associated with
the presence entry; the presence entry;
o the "transID" attribute specifies the transaction-identifier o the "transID" attribute specifies the transaction-identifier
associated with this operation; and, associated with this operation; and,
skipping to change at page 18, line 8 skipping to change at page 18, line 8
operation is making a one-time poll of the presence information. operation is making a one-time poll of the presence information.
Accordingly, Step 6.3 above does not occur. Accordingly, Step 6.3 above does not occur.
Regardless of whether a "publish" or "reply" element is sent to the Regardless of whether a "publish" or "reply" element is sent to the
originator, the "transID" attribute is identical to the value found originator, the "transID" attribute is identical to the value found
in the "subscribe" element sent by the originator. in the "subscribe" element sent by the originator.
4.3 The Watch Operation 4.3 The Watch Operation
When an application wants to (periodically) receive notices about When an application wants to (periodically) receive notices about
endpoints that are subscribed to receive presence information, it endpoints that are subscribed to receive presence entry, it sends a
sends a "watch" element to the service. "watch" element to the service.
The "watch" element has a "publisher" attribute, a "duration" The "watch" element has a "publisher" attribute, a "duration"
attribute, a "transID" attribute, and no content: attribute, a "transID" attribute, and no content:
o the "publisher" attribute specifies the endpoint associated with o the "publisher" attribute specifies the endpoint associated with
the presence entry; the presence entry;
o the "transID" attribute specifies the transaction-identifier o the "transID" attribute specifies the transaction-identifier
associated with this operation; and, associated with this operation; and,
skipping to change at page 29, line 8 skipping to change at page 29, line 8
<!ATTLIST capability <!ATTLIST capability
baseline NMTOKEN #REQUIRED> baseline NMTOKEN #REQUIRED>
7. Security Considerations 7. Security Considerations
Consult [1]'s Section 11 for a discussion of security issues. Consult [1]'s Section 11 for a discussion of security issues.
References References
[1] Rose, M., Klyne, G. and D. Crocker, "The Application Exchange [1] Rose, M., Klyne, G. and D. Crocker, "The Application Exchange
Core", draft-ietf-apex-core-02 (work in progress), May 2001. Core", draft-ietf-apex-core-03 (work in progress), June 2001.
[2] Rose, M., "The Blocks Extensible Exchange Protocol Core", RFC [2] Rose, M., "The Blocks Extensible Exchange Protocol Core", RFC
3080, March 2001. 3080, March 2001.
[3] Rose, M., Klyne, G. and D. Crocker, "The APEX Access Service", [3] Rose, M., Klyne, G. and D. Crocker, "The APEX Access Service",
draft-ietf-apex-access-02 (work in progress), May 2001. draft-ietf-apex-access-05 (work in progress), June 2001.
Authors' Addresses Authors' Addresses
Marshall T. Rose Marshall T. Rose
Invisible Worlds, Inc. Invisible Worlds, Inc.
131 Stony Circle 131 Stony Circle
Suite 500 Suite 500
Santa Rosa, CA 95401 Santa Rosa, CA 95401
US US
skipping to change at page 31, line 5 skipping to change at page 31, line 5
Phone: +1 408 246 8253 Phone: +1 408 246 8253
EMail: dcrocker@brandenburg.com EMail: dcrocker@brandenburg.com
URI: http://www.brandenburg.com/ URI: http://www.brandenburg.com/
Appendix A. Acknowledgements Appendix A. Acknowledgements
The authors gratefully acknowledge the contributions of: Neil Cook, The authors gratefully acknowledge the contributions of: Neil Cook,
Eric Dixon, Darren New, Scott Pead, and Bob Wyman. Eric Dixon, Darren New, Scott Pead, and Bob Wyman.
Appendix B. Changes from draft-ietf-apex-presence-01 Appendix B. Revision History
B.1 Changes from draft-ietf-apex-presence-02
o Re-organization previous version for consistency.
B.2 Changes from draft-ietf-apex-presence-01
o Grammar error in Security Considerations. o Grammar error in Security Considerations.
o Extraneous sentence in Step 6.2 of Section 4.3. o Extraneous sentence in Step 6.2 of Section 4.3.
o Notifications are now sent when a subscription is terminated. o Notifications are now sent when a subscription is terminated.
Appendix C. Changes from draft-ietf-apex-presence-00 B.3 Changes from draft-ietf-apex-presence-00
o Change "subaddress" convention from RFC 2846 to APEX's custom o Change "subaddress" convention from RFC 2846 to APEX's custom
ABNF. ABNF.
Full Copyright Statement Full Copyright Statement
Copyright (C) The Internet Society (2001). All Rights Reserved. Copyright (C) The Internet Society (2001). All Rights Reserved.
This document and translations of it may be copied and furnished to This document and translations of it may be copied and furnished to
others, and derivative works that comment on or otherwise explain it others, and derivative works that comment on or otherwise explain it
 End of changes. 15 change blocks. 
24 lines changed or deleted 31 lines changed or added

This html diff was produced by rfcdiff 1.34. The latest version is available from http://tools.ietf.org/tools/rfcdiff/