Network Working Group M. Day Request for Comments: 2778 Lotus Category: Informational J. Rosenberg dynamicsoft H. Sugano Fujitsu February 2000
Network Working Group M. Day Request for Comments: 2778 Lotus Category: Informational J. Rosenberg dynamicsoft H. Sugano Fujitsu February 2000
A Model for Presence and Instant Messaging
状态和即时消息模型
Status of this Memo
本备忘录的状况
This memo provides information for the Internet community. It does not specify an Internet standard of any kind. Distribution of this memo is unlimited.
本备忘录为互联网社区提供信息。它没有规定任何类型的互联网标准。本备忘录的分发不受限制。
Copyright Notice
版权公告
Copyright (C) The Internet Society (2000). All Rights Reserved.
版权所有(C)互联网协会(2000年)。版权所有。
Abstract
摘要
This document defines an abstract model for a presence and instant messaging system. It defines the various entities involved, defines terminology, and outlines the services provided by the system. The goal is to provide a common vocabulary for further work on requirements for protocols and markup for presence and instant messaging.
本文档定义了状态和即时消息系统的抽象模型。它定义了涉及的各种实体,定义了术语,并概述了系统提供的服务。目标是提供一个通用词汇表,用于进一步研究状态和即时消息的协议和标记需求。
A presence and instant messaging system allows users to subscribe to each other and be notified of changes in state, and for users to send each other short instant messages. To facilitate development of a suite of protocols to provide this service, we believe that it is valuable to first develop a model for the system. The model consists of the various entities involved, descriptions of the basic functions they provide, and most importantly, definition of a vocabulary which can be used to facilitate discussion.
状态和即时消息系统允许用户相互订阅并收到状态变化的通知,并且允许用户相互发送短即时消息。为了便于开发一套协议来提供此服务,我们认为首先为系统开发一个模型是有价值的。该模型包括所涉及的各种实体、它们提供的基本功能的描述,以及最重要的是,可用于促进讨论的词汇表的定义。
We note that the purpose of this model is to be descriptive and universal: we want the model to map reasonably onto all of the systems that are informally described as presence or instant messaging systems. The model is not intended to be prescriptive or achieve interoperability: an element that appears in the model will not necessarily be an element of an interoperable protocol, and may not even be a good idea.
我们注意到,该模型的目的是描述性和通用性:我们希望该模型能够合理地映射到所有非正式描述为状态或即时消息系统的系统。该模型的目的不是规定性的或实现互操作性:模型中出现的元素不一定是互操作协议的元素,甚至可能不是一个好主意。
In this document, each element of the model appears in upper case (e.g., PRESENCE SERVICE). No term in lower case or mixed case is intended to be a term of the model.
在本文档中,模型的每个元素都以大写字母显示(例如,状态服务)。小写或混合大写的术语不应作为模型的术语。
The first part of this document is intended as an overview of the model. The overview includes diagrams, and terms are presented in an order that is intended to help the reader understand the relationship between elements. The second part of the document is the actual definition of the model, with terms presented in alphabetical order for ease of reference.
本文档的第一部分旨在概述该模型。概述包括图表和术语,其顺序旨在帮助读者理解元素之间的关系。文件的第二部分是模型的实际定义,术语按字母顺序排列,以便于参考。
The overview is intended to be helpful but is not definitive; it may contain inadvertent differences from the definitions in the model. For any such difference, the definition(s) in the model are taken to be correct, rather than the explanation(s) in the overview.
概述旨在有所帮助,但不是决定性的;它可能包含与模型中定义的无意差异。对于任何此类差异,模型中的定义被认为是正确的,而不是概述中的解释。
The model is intended to provide a means for understanding, comparing, and describing systems that support the services typically referred to as presence and instant messaging. It consists of a number of named entities that appear, in some form, in existing systems. No actual implementation is likely to have every entity of the model as a distinct part. Instead, there will almost always be parts of the implementation that embody two or more entities of the model. However, different implementations may combine entities in different ways.
该模型旨在提供一种理解、比较和描述支持服务(通常称为状态和即时消息)的系统的方法。它由许多命名实体组成,这些实体以某种形式出现在现有系统中。没有实际的实现可能将模型的每个实体都作为一个独立的部分。相反,实现的某些部分几乎总是包含模型的两个或多个实体。然而,不同的实现可能以不同的方式组合实体。
The model defines two services: a PRESENCE SERVICE and an INSTANT MESSAGE SERVICE. The PRESENCE SERVICE serves to accept information, store it, and distribute it. The information stored is (unsurprisingly) PRESENCE INFORMATION. The INSTANT MESSAGE SERVICE serves to accept and deliver INSTANT MESSAGES to INSTANT INBOXES.
该模型定义了两个服务:状态服务和即时消息服务。状态服务用于接受、存储和分发信息。存储的信息是(毫不奇怪)存在信息。即时消息服务用于接受即时消息并将其发送到即时收件箱。
The PRESENCE SERVICE has two distinct sets of "clients" (remember, these may be combined in an implementation, but treated separately in the model). One set of clients, called PRESENTITIES, provides PRESENCE INFORMATION to be stored and distributed. The other set of clients, called WATCHERS, receives PRESENCE INFORMATION from the service.
状态服务有两组不同的“客户机”(请记住,它们可以在实现中组合,但在模型中单独处理)。一组称为PRESENTITIES的客户机提供要存储和分发的状态信息。另一组客户端称为观察者,从服务接收状态信息。
+---------------------------+ | PRESENCE SERVICE | | | +---------------------------+ ^ | | | | v +------------+ +------------+ | PRESENTITY | | WATCHER | +------------+ +------------+
+---------------------------+ | PRESENCE SERVICE | | | +---------------------------+ ^ | | | | v +------------+ +------------+ | PRESENTITY | | WATCHER | +------------+ +------------+
Fig. 1: Overview of Presence Service
图1:存在服务概述
There are two kinds of WATCHERS, called FETCHERS and SUBSCRIBERS. A FETCHER simply requests the current value of some PRESENTITY's PRESENCE INFORMATION from the PRESENCE SERVICE. In contrast, a SUBSCRIBER requests notification from the PRESENCE SERVICE of (future) changes in some PRESENTITY's PRESENCE INFORMATION. A special kind of FETCHER is one that fetches information on a regular basis. This is called a POLLER.
有两种观察者,称为获取者和订阅者。获取程序只是从状态服务请求某些状态实体的状态信息的当前值。相反,订阅者请求存在服务通知某些存在实体的存在信息的(未来)变化。一种特殊的抓取器是定期抓取信息的抓取器。这叫民意测验。
+----------------WATCHER---------------+ | | | +----FETCHER---+ +--SUBSCRIBER--+ | | | | | | | | | +--POLLER--+ | | | | | | | | | | | | | | +----------+ | | | | | +--------------+ +--------------+ | +--------------------------------------+
+----------------WATCHER---------------+ | | | +----FETCHER---+ +--SUBSCRIBER--+ | | | | | | | | | +--POLLER--+ | | | | | | | | | | | | | | +----------+ | | | | | +--------------+ +--------------+ | +--------------------------------------+
Fig. 2: Varieties of WATCHER
图2:观察者的种类
The PRESENCE SERVICE also has WATCHER INFORMATION about WATCHERS and their activities in terms of fetching or subscribing to PRESENCE INFORMATION. The PRESENCE SERVICE may also distribute WATCHER INFORMATION to some WATCHERS, using the same mechanisms that are available for distributing PRESENCE INFORMATION.
状态信息服务还具有关于观察者及其获取或订阅状态信息的活动的观察者信息。存在服务还可以使用可用于分发存在信息的相同机制将观察者信息分发给一些观察者。
Changes to PRESENCE INFORMATION are distributed to SUBSCRIBERS via NOTIFICATIONS. Figures 3a through 3c show the flow of information as a piece of PRESENCE INFORMATION is changed from P1 to P2.
对状态信息的更改通过通知分发给订阅者。图3a到3c显示了当存在信息从P1更改为P2时的信息流。
+---------------------------+ | PRESENCE SERVICE | | P1 | +---------------------------+
+---------------------------+ | PRESENCE SERVICE | | P1 | +---------------------------+
+------------+ +------------+ | P1->P2 | | P1 | | PRESENTITY | | SUBSCRIBER | +------------+ +------------+
+------------+ +------------+ | P1->P2 | | P1 | | PRESENTITY | | SUBSCRIBER | +------------+ +------------+
Fig. 3a: NOTIFICATION (Step 1)
图3a:通知(步骤1)
+---------------------------+ | PRESENCE SERVICE | | P1->P2 | +---------------------------+ ^ |P2 +------------+ +------------+ | P2 | | P1 | | PRESENTITY | | SUBSCRIBER | +------------+ +------------+
+---------------------------+ | PRESENCE SERVICE | | P1->P2 | +---------------------------+ ^ |P2 +------------+ +------------+ | P2 | | P1 | | PRESENTITY | | SUBSCRIBER | +------------+ +------------+
Fig. 3b: NOTIFICATION (Step 2)
图3b:通知(步骤2)
+---------------------------+ | PRESENCE SERVICE | | P2 | +---------------------------+ |P2 v +------------+ +------------+ | P2 | | P1->P2 | | PRESENTITY | | SUBSCRIBER | +------------+ +------------+
+---------------------------+ | PRESENCE SERVICE | | P2 | +---------------------------+ |P2 v +------------+ +------------+ | P2 | | P1->P2 | | PRESENTITY | | SUBSCRIBER | +------------+ +------------+
Fig. 3c: NOTIFICATION (Step 3)
图3c:通知(步骤3)
The INSTANT MESSAGE SERVICE also has two distinct sets of "clients": SENDERS and INSTANT INBOXES. A SENDER provides INSTANT MESSAGES to the INSTANT MESSAGE SERVICE for delivery. Each INSTANT MESSAGE is
即时消息服务还有两组不同的“客户端”:发件人和即时收件箱。发件人向即时消息服务提供即时消息以进行传递。每个即时消息都是
addressed to a particular INSTANT INBOX ADDRESS, and the INSTANT MESSAGE SERVICE attempts to deliver the message to a corresponding INSTANT INBOX.
发送到特定的即时收件箱地址,即时消息服务会尝试将消息发送到相应的即时收件箱。
+---------------------------+ | INSTANT MESSAGE SERVICE | | | +---------------------------+ ^ | | | | v +------------+ +---------------+ | SENDER | | INSTANT INBOX | +------------+ +---------------+
+---------------------------+ | INSTANT MESSAGE SERVICE | | | +---------------------------+ ^ | | | | v +------------+ +---------------+ | SENDER | | INSTANT INBOX | +------------+ +---------------+
Fig. 4: Overview of Instant Message Service
图4:即时消息服务概述
A PRESENCE PROTOCOL defines the interaction between PRESENCE SERVICE, PRESENTITIES, and WATCHERS. PRESENCE INFORMATION is carried by the PRESENCE PROTOCOL.
存在协议定义存在服务、存在实体和观察者之间的交互。存在信息由存在协议携带。
An INSTANT MESSAGE PROTOCOL defines the interaction between INSTANT MESSAGE SERVICE, SENDERS, and INSTANT INBOXES. INSTANT MESSAGES are carried by the INSTANT MESSAGE PROTOCOL.
即时消息协议定义了即时消息服务、发件人和即时收件箱之间的交互。即时消息通过即时消息协议传输。
In terms of this model, we believe that the IMPP working group is planning to develop detailed requirements and specifications for the structure and formats of the PRESENCE PROTOCOL, PRESENCE INFORMATION, INSTANT MESSAGE PROTOCOL, and INSTANT MESSAGES.
就这一模式而言,我们认为IMPP工作组正计划为状态协议、状态信息、即时消息协议和即时消息的结构和格式制定详细的要求和规范。
The model defines the PRESENCE INFORMATION to consist of an arbitrary number of elements, called PRESENCE TUPLES. Each such element consists of a STATUS marker (which might convey information such as online/offline/busy/away/do not disturb), an optional COMMUNICATION ADDRESS, and optional OTHER PRESENCE MARKUP. A COMMUNICATION ADDRESS includes a COMMUNICATION MEANS and a CONTACT ADDRESS. One type of COMMUNICATION MEANS, and the only one defined by this model, is INSTANT MESSAGE SERVICE. One type of CONTACT ADDRESS, and the only one defined by this model, is INSTANT INBOX ADDRESS. However, other possibilities exist: a COMMUNICATION MEANS might indicate some form of telephony, for example, with the corresponding CONTACT ADDRESS containing a telephone number.
该模型将状态信息定义为由任意数量的元素组成,称为状态元组。每个这样的元素由一个状态标记(可能传递诸如在线/离线/忙碌/远离/请勿打扰等信息)、一个可选的通信地址和可选的其他状态标记组成。通信地址包括通信装置和联系人地址。即时消息服务是一种通信手段,也是该模型定义的唯一一种。一种类型的联系地址,也是此模型定义的唯一一种,是即时收件箱地址。然而,存在其他可能性:通信手段可能指示某种形式的电话,例如,相应的联系人地址包含电话号码。
+------------------------------------+ | PRESENCE INFORMATION | +------------------------------------+ | +-------------------------------+ =>| PRESENCE TUPLE | | +-------------------------------+ | | +-------------------------+ | =>| STATUS | | | +-------------------------+ | | +-------------------------+ | =>| COMMUNICATION ADDRESS | | | +-------------------------+ | | | +-----------------+ | | =>| CONTACT MEANS | | | | +-----------------+ | | | +-----------------+ | | =>| CONTACT ADDRESS | | | +-----------------+ | | +-------------------------+ | =>| OTHER MARKUP | | +-------------------------+ | +-------------------------------+ =>| PRESENCE TUPLE | | +-------------------------------+ | | +-------------------------+ | =>| STATUS | | | +-------------------------+ | | +-------------------------+ | =>| COMMUNICATION ADDRESS | | | +-------------------------+ | | | +-----------------+ | | =>| CONTACT MEANS | | | | +-----------------+ | | | +-----------------+ | | =>| CONTACT ADDRESS | | | +-----------------+ | | +-------------------------+ | =>| OTHER MARKUP | | +-------------------------+ | +-------------------------------+ =>| PRESENCE TUPLE | | +-------------------------------+ | ...
+------------------------------------+ | PRESENCE INFORMATION | +------------------------------------+ | +-------------------------------+ =>| PRESENCE TUPLE | | +-------------------------------+ | | +-------------------------+ | =>| STATUS | | | +-------------------------+ | | +-------------------------+ | =>| COMMUNICATION ADDRESS | | | +-------------------------+ | | | +-----------------+ | | =>| CONTACT MEANS | | | | +-----------------+ | | | +-----------------+ | | =>| CONTACT ADDRESS | | | +-----------------+ | | +-------------------------+ | =>| OTHER MARKUP | | +-------------------------+ | +-------------------------------+ =>| PRESENCE TUPLE | | +-------------------------------+ | | +-------------------------+ | =>| STATUS | | | +-------------------------+ | | +-------------------------+ | =>| COMMUNICATION ADDRESS | | | +-------------------------+ | | | +-----------------+ | | =>| CONTACT MEANS | | | | +-----------------+ | | | +-----------------+ | | =>| CONTACT ADDRESS | | | +-----------------+ | | +-------------------------+ | =>| OTHER MARKUP | | +-------------------------+ | +-------------------------------+ =>| PRESENCE TUPLE | | +-------------------------------+ | ...
Fig. 5: The structure of PRESENCE INFORMATION
图5:存在信息的结构
STATUS is further defined by the model to have at least two states that interact with INSTANT MESSAGE delivery -- OPEN, in which INSTANT MESSAGES will be accepted, and CLOSED, in which INSTANT MESSAGES will not be accepted. OPEN and CLOSED may also be applicable to other COMMUNICATION MEANS -- OPEN mapping to some state meaning "available" or "open for business" while CLOSED means "unavailable" or "closed to business." The model allows STATUS to include other values, which may be interpretable by programs or only by persons. The model also allows STATUS to consist of single or multiple values.
状态由模型进一步定义为至少有两种与即时消息传递交互的状态——打开,其中即时消息将被接受;关闭,其中即时消息将不被接受。打开和关闭也可能适用于其他通信方式——打开映射到某些状态,表示“可用”或“开放供业务”,而关闭表示“不可用”或“关闭供业务”。该模型允许状态包含其他值,这些值可以由程序或仅由人员解释。该模型还允许状态由单个或多个值组成。
An INSTANT INBOX is a receptacle for INSTANT MESSAGES. Its INSTANT INBOX ADDRESS is the information that can be included in PRESENCE INFORMATION to define how an INSTANT MESSAGE should be delivered to that INSTANT INBOX. As noted above, certain values of the STATUS marker indicate whether INSTANT MESSAGES will be accepted at the INSTANT INBOX. The model does not otherwise constrain the delivery mechanism or format for instant messages. Reasonable people can disagree about whether this omission is a strength or a weakness of this model.
即时收件箱是接收即时消息的容器。其即时收件箱地址是可包含在状态信息中的信息,用于定义如何将即时消息发送到该即时收件箱。如上所述,状态标记的某些值指示即时收件箱是否接受即时消息。该模型不会以其他方式约束即时消息的传递机制或格式。通情达理的人可能不同意这种遗漏是这种模式的优点还是缺点。
This model includes other elements that are useful in characterizing how the protocol and markup work. PRINCIPALS are the people, groups, and/or software in the "real world" outside the system that use the system as a means of coordination and communication. It is entirely outside the model how the real world maps onto PRINCIPALS -- the system of model entities knows only that two distinct PRINCIPALS are distinct, and two identical PRINCIPALS are identical.
该模型包括其他元素,这些元素有助于描述协议和标记的工作方式。负责人是系统外部“真实世界”中的人员、团体和/或软件,他们将系统用作协调和沟通的手段。真实世界如何映射到主体上完全是在模型之外的——模型实体系统只知道两个不同的主体是不同的,两个相同的主体是相同的。
A PRINCIPAL interacts with the system via one of several user agents (INBOX USER AGENT; SENDER USER AGENT; PRESENCE USER AGENT; WATCHER USER AGENT). As usual, the different kinds of user agents are split apart in this model even though most implementations will combine at least some of them. A user agent is purely coupling between a PRINCIPAL and some core entity of the system (respectively, INSTANT INBOX; SENDER; PRESENTITY; WATCHER).
主体通过几个用户代理之一(收件箱用户代理;发件人用户代理;状态用户代理;观察者用户代理)与系统交互。与往常一样,在这个模型中,不同类型的用户代理是分开的,尽管大多数实现将至少结合其中的一些。用户代理纯粹是主体和系统的某些核心实体(分别是即时收件箱、发送者、存在实体、观察者)之间的耦合。
+---------------------------+ | PRESENCE SERVICE | +---------------------------+ ^ | | PRESENCE PROTOCOL | | v +------------+ +------------+ | PRESENTITY | | WATCHER | +------------+ +------------+ ^ ^ | | | | o +--------------+ +-------------+ o /|\ -->| PRESENCE UA | | WATCHER UA |<-- /|\ X +--------------+ +-------------+ X
+---------------------------+ | PRESENCE SERVICE | +---------------------------+ ^ | | PRESENCE PROTOCOL | | v +------------+ +------------+ | PRESENTITY | | WATCHER | +------------+ +------------+ ^ ^ | | | | o +--------------+ +-------------+ o /|\ -->| PRESENCE UA | | WATCHER UA |<-- /|\ X +--------------+ +-------------+ X
(PRINCIPAL) (PRINCIPAL)
(校长)(校长)
Fig. 6: A presence system
图6:存在系统
+---------------------------+ | INSTANT MESSAGE SERVICE | +---------------------------+ ^ | IM| INSTANT MESSAGE |IM | PROTOCOL v +------------+ +---------------+ | SENDER | | INSTANT INBOX | +------------+ +---------------+ ^ ^ | | | | o +-------------+ +------------------+ o /|\ -->| SENDER UA | | INBOX UA |<-- /|\ X +-------------+ +------------------+ X
+---------------------------+ | INSTANT MESSAGE SERVICE | +---------------------------+ ^ | IM| INSTANT MESSAGE |IM | PROTOCOL v +------------+ +---------------+ | SENDER | | INSTANT INBOX | +------------+ +---------------+ ^ ^ | | | | o +-------------+ +------------------+ o /|\ -->| SENDER UA | | INBOX UA |<-- /|\ X +-------------+ +------------------+ X
(PRINCIPAL) (PRINCIPAL)
(校长)(校长)
Fig. 7: An instant messaging system
图7:即时消息传递系统
A simple example of applying the model is to describe a generic "buddy list" application. These applications typically expose the user's presence to others, and make it possible to see the presence of others. So we could describe a buddy list as the combination of a PRESENCE USER AGENT and WATCHER USER AGENT for a single PRINCIPAL, using a single PRESENTITY and a single SUBSCRIBER.
应用该模型的一个简单示例是描述一个通用的“好友列表”应用程序。这些应用程序通常向其他人公开用户的存在,并使其能够看到其他人的存在。因此,我们可以将好友列表描述为单个主体的状态用户代理和观察者用户代理的组合,使用单个状态实体和单个订户。
We could then extend our example to instant messaging and describe a generic "instant messenger" as essentially a buddy list with additional capabilities for sending and receiving instant messages. So an instant messenger would be the combination of a PRESENCE USER AGENT, WATCHER USER AGENT, INBOX USER AGENT, and SENDER USER AGENT for a single PRINCIPAL, using a single PRESENTITY, single SUBSCRIBER, and single INSTANT INBOX, with the PRESENTITY's PRESENCE INFORMATION including an INSTANT INBOX ADDRESS that leads to the INSTANT INBOX.
然后,我们可以将我们的示例扩展到即时消息,并将一个通用的“即时消息”描述为一个基本上具有发送和接收即时消息附加功能的好友列表。因此,即时通讯器将是单个主体的状态用户代理、观察者用户代理、收件箱用户代理和发送者用户代理的组合,使用单个存在实体、单个订户和单个即时收件箱,存在实体的状态信息包括指向即时收件箱的即时收件箱地址。
ACCESS RULES: constraints on how a PRESENCE SERVICE makes PRESENCE INFORMATION available to WATCHERS. For each PRESENTITY's PRESENCE INFORMATION, the applicable ACCESS RULES are manipulated by the PRESENCE USER AGENT of a PRINCIPAL that controls the PRESENTITY.
访问规则:关于状态服务如何使状态信息可供观察者使用的约束。对于每个存在实体的存在信息,适用的访问规则由控制该存在实体的主体的存在用户代理操纵。
Motivation: We need some way of talking about hiding presence information from people.
动机:我们需要某种方式来谈论对人们隐藏状态信息。
CLOSED: a distinguished value of the STATUS marker. In the context of INSTANT MESSAGES, this value means that the associated INSTANT INBOX ADDRESS, if any, corresponds to an INSTANT INBOX that is unable to accept an INSTANT MESSAGE. This value may have an analogous meaning for other COMMUNICATION MEANS, but any such meaning is not defined by this model. Contrast with OPEN.
关闭:状态标记的可分辨值。在即时消息上下文中,此值表示关联的即时收件箱地址(如果有)对应于无法接受即时消息的即时收件箱。该值可能对其他通信方式具有类似的含义,但该模型未定义任何此类含义。与开放的对比。
COMMUNICATION ADDRESS: consists of COMMUNICATION MEANS and CONTACT ADDRESS.
通讯地址:由通讯方式和联系地址组成。
COMMUNICATION MEANS: indicates a method whereby communication can take place. INSTANT MESSAGE SERVICE is one example of a COMMUNICATION MEANS.
通信方式:表示可以进行通信的方法。即时消息服务是通信手段的一个示例。
CONTACT ADDRESS: a specific point of contact via some COMMUNICATION MEANS. When using an INSTANT MESSAGE SERVICE, the CONTACT ADDRESS is an INSTANT INBOX ADDRESS.
联系地址:通过某种通信方式的特定联系点。使用即时消息服务时,联系人地址是即时收件箱地址。
DELIVERY RULES: constraints on how an INSTANT MESSAGE SERVICE delivers received INSTANT MESSAGES to INSTANT INBOXES. For each INSTANT INBOX, the applicable DELIVERY RULES are manipulated by the INBOX USER AGENT of a PRINCIPAL that controls the INSTANT INBOX.
传递规则:即时消息服务如何将接收到的即时消息传递到即时收件箱的约束。对于每个即时收件箱,由控制即时收件箱的主体的收件箱用户代理操纵适用的传递规则。
Motivation: We need a way of talking about filtering instant messages.
动机:我们需要一种谈论过滤即时消息的方式。
FETCHER: a form of WATCHER that has asked the PRESENCE SERVICE to for the PRESENCE INFORMATION of one or more PRESENTITIES, but has not asked for a SUBSCRIPTION to be created.
FETCHER:一种观察者,它要求状态服务提供一个或多个状态实体的状态信息,但没有要求创建订阅。
INBOX USER AGENT: means for a PRINCIPAL to manipulate zero or more INSTANT INBOXES controlled by that PRINCIPAL.
收件箱用户代理:指委托人操纵由该委托人控制的零个或多个即时收件箱。
Motivation: This is intended to isolate the core functionality of an INSTANT INBOX from how it might appear to be manipulated by a product. This manipulation includes fetching messages, deleting messages, and setting DELIVERY RULES. We deliberately take no position on whether the INBOX USER AGENT, INSTANT INBOX, and INSTANT MESSAGE SERVICE are colocated or distributed across machines.
动机:这是为了将即时收件箱的核心功能与产品可能操纵它的方式隔离开来。此操作包括获取消息、删除消息和设置传递规则。我们故意不确定收件箱用户代理、即时收件箱和即时消息服务是否在多台机器上进行了共享或分发。
INSTANT INBOX: receptacle for INSTANT MESSAGES intended to be read by the INSTANT INBOX's PRINCIPAL.
即时收件箱:即时收件箱负责人阅读即时消息的容器。
INSTANT INBOX ADDRESS: indicates whether and how the PRESENTITY's PRINCIPAL can receive an INSTANT MESSAGE in an INSTANT INBOX. The STATUS and INSTANT INBOX ADDRESS information are sufficient to determine whether the PRINCIPAL appears ready to accept the INSTANT MESSAGE.
即时收件箱地址:指示实体的负责人是否以及如何在即时收件箱中接收即时消息。状态和即时收件箱地址信息足以确定主体是否已准备好接受即时消息。
Motivation: The definition is pretty loose about exactly how any of this works, even leaving open the possibility of reusing parts of the email infrastructure for instant messaging.
动机:关于这其中任何一项的具体工作原理,定义都相当宽松,甚至允许将电子邮件基础设施的一部分重新用于即时消息传递。
INSTANT MESSAGE: an identifiable unit of data, of small size, to be sent to an INSTANT INBOX.
即时消息:发送到即时收件箱的可识别的数据单元,尺寸较小。
Motivation: We do not define "small" but we seek in this definition to avoid the possibility of transporting an arbitrary-length stream labelled as an "instant message."
动机:我们不定义“小”,但我们在这个定义中寻求避免传输标记为“即时消息”的任意长度流的可能性
INSTANT MESSAGE PROTOCOL: The messages that can be exchanged between a SENDER USER AGENT and an INSTANT MESSAGE SERVICE, or between an INSTANT MESSAGE SERVICE and an INSTANT INBOX.
即时消息协议:可在发件人用户代理和即时消息服务之间,或在即时消息服务和即时收件箱之间交换的消息。
INSTANT MESSAGE SERVICE: accepts and delivers INSTANT MESSAGES.
即时消息服务:接受和发送即时消息。
-- May require authentication of SENDER USER AGENTS and/or INSTANT INBOXES.
--可能需要对发件人用户代理和/或即时收件箱进行身份验证。
-- May have different authentication requirements for different INSTANT INBOXES, and may also have different authentication requirements for different INSTANT INBOXES controlled by a single PRINCIPAL.
--可能对不同的即时收件箱有不同的身份验证要求,也可能对由单个主体控制的不同即时收件箱有不同的身份验证要求。
-- May have an internal structure involving multiple SERVERS and/or PROXIES. There may be complex patterns of redirection and/or proxying while retaining logical connectivity to a single INSTANT MESSAGE SERVICE. Note that an INSTANT MESSAGE SERVICE does not require having a distinct SERVER -- the service may be implemented as direct communication between SENDER and INSTANT INBOX.
--可能具有涉及多个服务器和/或代理的内部结构。在保持与单个即时消息服务的逻辑连接的同时,可能存在复杂的重定向和/或代理模式。请注意,即时消息服务不需要具有不同的服务器——该服务可以实现为发送者和即时收件箱之间的直接通信。
-- May have an internal structure involving other INSTANT MESSAGE SERVICES, which may be independently accessible in their own right as well as being reachable through the initial INSTANT MESSAGE SERVICE.
--可能具有涉及其他即时消息服务的内部结构,这些即时消息服务可以独立访问,也可以通过初始即时消息服务访问。
NOTIFICATION: a message sent from the PRESENCE SERVICE to a SUBSCRIBER when there is a change in the PRESENCE INFORMATION of some PRESENTITY of interest, as recorded in one or more SUBSCRIPTIONS.
通知:当一个或多个订阅中记录的某个感兴趣的实体的状态信息发生变化时,从状态服务发送给订阅者的消息。
Motivation: We deliberately take no position on what part of the changed information is included in a NOTIFICATION.
动机:对于通知中包含的更改信息的哪一部分,我们故意不采取任何立场。
OPEN: a distinguished value of the STATUS marker. In the context of INSTANT MESSAGES, this value means that the associated INSTANT INBOX ADDRESS, if any, corresponds to an INSTANT INBOX that is ready to accept an INSTANT MESSAGE. This value may have an analogous meaning for other COMMUNICATION MEANS, but any such meaning is not defined by this model. Contrast with CLOSED.
打开:状态标记的可分辨值。在即时消息上下文中,此值表示关联的即时收件箱地址(如果有)对应于准备接受即时消息的即时收件箱。该值可能对其他通信方式具有类似的含义,但该模型未定义任何此类含义。与封闭式形成对比。
OTHER PRESENCE MARKUP: any additional information included in the PRESENCE INFORMATION of a PRESENTITY. The model does not define this further.
其他状态标记:存在实体的状态信息中包含的任何附加信息。模型没有进一步定义这一点。
POLLER: a FETCHER that requests PRESENCE INFORMATION on a regular basis.
轮询器:定期请求状态信息的取数器。
PRESENCE INFORMATION: consists of one or more PRESENCE TUPLES.
状态信息:由一个或多个状态元组组成。
PRESENCE PROTOCOL: The messages that can be exchanged between a PRESENTITY and a PRESENCE SERVICE, or a WATCHER and a PRESENCE SERVICE.
存在协议:存在实体和存在服务,或观察者和存在服务之间可以交换的消息。
PRESENCE SERVICE: accepts, stores, and distributes PRESENCE INFORMATION.
状态信息服务:接受、存储和分发状态信息。
-- May require authentication of PRESENTITIES, and/or WATCHERS.
--可能需要对存在实体和/或观察者进行身份验证。
-- May have different authentication requirements for different PRESENTITIES.
--可能对不同的实体有不同的身份验证要求。
-- May have different authentication requirements for different WATCHERS, and may also have different authentication requirements for different PRESENTITIES being watched by a single WATCHER.
--可能对不同的观察者有不同的身份验证要求,也可能对单个观察者观察的不同存在实体有不同的身份验证要求。
-- May have an internal structure involving multiple SERVERS and/or PROXIES. There may be complex patterns of redirection and/or proxying while retaining logical connectivity to a single PRESENCE SERVICE. Note that a PRESENCE SERVICE does not require having a distinct SERVER -- the service may be implemented as direct communication among PRESENTITY and WATCHERS.
--可能具有涉及多个服务器和/或代理的内部结构。在保持与单个状态服务的逻辑连接的同时,可能存在复杂的重定向和/或代理模式。请注意,状态服务不需要具有不同的服务器——该服务可以实现为状态实体和观察者之间的直接通信。
-- May have an internal structure involving other PRESENCE SERVICES, which may be independently accessible in their own right as well as being reachable through the initial PRESENCE SERVICE.
--可能具有涉及其他存在服务的内部结构,这些存在服务本身可以独立访问,也可以通过初始存在服务访问。
PRESENCE TUPLE: consists of a STATUS, an optional COMMUNICATION ADDRESS, and optional OTHER PRESENCE MARKUP.
状态元组:由状态、可选通信地址和可选的其他状态标记组成。
PRESENCE USER AGENT: means for a PRINCIPAL to manipulate zero or more PRESENTITIES.
存在用户代理:委托人操纵零个或多个存在实体的手段。
Motivation: This is essentially a "model/view" distinction: the PRESENTITY is the model of the presence being exposed, and is independent of its manifestation in any user interface. In addition, we deliberately take no position on how the PRESENCE USER AGENT, PRESENTITY, and PRESENCE SERVICE are colocated or distributed across machines.
动机:这本质上是一个“模型/视图”的区别:存在实体是被暴露的存在的模型,并且独立于它在任何用户界面中的表现。此外,我们故意不确定状态用户代理、状态实体和状态服务是如何在机器之间进行集中或分布的。
PRESENTITY (presence entity): provides PRESENCE INFORMATION to a PRESENCE SERVICE.
PRESENTITY(状态实体):向状态服务提供状态信息。
Motivation: We don't like to coin new words, but "presentity" seemed worthwhile so as to have an unambiguous term for the entity of interest to a presence service. Note that the presentity is not (usually) located in the presence service: the presence service only has a recent version of the presentity's presence information. The presentity initiates changes in the presence information to be distributed by the presence service.
动机:我们不喜欢创造新词,但“presentity”似乎是值得的,因为它对Presentation服务感兴趣的实体有一个明确的术语。注意,存在实体不(通常)位于存在服务中:存在服务仅具有存在实体的存在信息的最新版本。呈现实体发起要由呈现服务分发的呈现信息的改变。
PRINCIPAL: human, program, or collection of humans and/or programs that chooses to appear to the PRESENCE SERVICE as a single actor, distinct from all other PRINCIPALS.
主体:选择作为单个参与者出现在状态服务中的人员、程序或人员集合和/或程序,与所有其他主体不同。
Motivation: We need a clear notion of the actors outside the system. "Principal" seems as good a term as any.
动机:我们需要对系统外的参与者有一个清晰的概念。“校长”似乎是一个很好的术语。
PROXY: a SERVER that communicates PRESENCE INFORMATION, INSTANT MESSAGES, SUBSCRIPTIONS and/or NOTIFICATIONS to another SERVER. Sometimes a PROXY acts on behalf of a PRESENTITY, WATCHER, or INSTANT INBOX.
代理:将状态信息、即时消息、订阅和/或通知传递给另一台服务器的服务器。有时,代理代表实体、观察者或即时收件箱。
SENDER: source of INSTANT MESSAGES to be delivered by the INSTANT MESSAGE SERVICE.
发件人:即时消息服务要传递的即时消息的来源。
SENDER USER AGENT: means for a PRINCIPAL to manipulate zero or more SENDERS.
发送者用户代理:指委托人操纵零个或多个发送者。
SERVER: an indivisible unit of a PRESENCE SERVICE or INSTANT MESSAGE SERVICE.
服务器:状态服务或即时消息服务不可分割的单元。
SPAM: unwanted INSTANT MESSAGES.
垃圾邮件:不需要的即时消息。
SPOOFING: a PRINCIPAL improperly imitating another PRINCIPAL.
欺骗:一个主体不恰当地模仿另一个主体。
STALKING: using PRESENCE INFORMATION to infer the whereabouts of a PRINCIPAL, especially for malicious or illegal purposes.
跟踪:利用状态信息推断委托人的下落,特别是出于恶意或非法目的。
STATUS: a distinguished part of the PRESENCE INFORMATION of a PRESENTITY. STATUS has at least the mutually-exclusive values OPEN and CLOSED, which have meaning for the acceptance of INSTANT MESSAGES, and may have meaning for other COMMUNICATION MEANS. There may be other values of STATUS that do not imply anything about INSTANT MESSAGE acceptance. These other values of STATUS may be combined with OPEN and CLOSED or they may be mutually-exclusive with those values.
状态:存在实体的存在信息的可分辨部分。状态至少具有互斥的值OPEN和CLOSED,它们对即时消息的接受具有意义,并且可能对其他通信手段具有意义。可能还有其他状态值并不意味着即时消息的接受。这些其他状态值可以与“打开”和“关闭”组合,也可以与这些值相互排斥。
Some implementations may combine STATUS with other entities. For example, an implementation might make an INSTANT INBOX ADDRESS visible only when the INSTANT INBOX can accept an INSTANT MESSAGE. Then, the existence of an INSTANT INBOX ADDRESS implies OPEN, while its absence implies CLOSED.
一些实现可能会将状态与其他实体相结合。例如,一个实现可能使即时收件箱地址仅在即时收件箱可以接受即时消息时可见。然后,即时收件箱地址的存在意味着打开,而不存在则意味着关闭。
SUBSCRIBER: a form of WATCHER that has asked the PRESENCE SERVICE to notify it immediately of changes in the PRESENCE INFORMATION of one or more PRESENTITIES.
订阅者:一种观察者形式,要求状态服务立即通知一个或多个状态实体的状态信息的变化。
SUBSCRIPTION: the information kept by the PRESENCE SERVICE about a SUBSCRIBER's request to be notified of changes in the PRESENCE INFORMATION of one or more PRESENTITIES.
订阅:状态服务保存的关于订阅者请求通知一个或多个状态实体的状态信息更改的信息。
VISIBILITY RULES: constraints on how a PRESENCE SERVICE makes WATCHER INFORMATION available to WATCHERS. For each WATCHER's WATCHER INFORMATION, the applicable VISIBILITY RULES are manipulated by the WATCHER USER AGENT of a PRINCIPAL that controls the WATCHER.
可见性规则:状态服务如何使观察者信息可供观察者使用的约束。对于每个观察者的观察者信息,适用的可见性规则由控制观察者的主体的观察者用户代理操纵。
Motivation: We need a way of talking about hiding watcher information from people.
动机:我们需要一种对人们隐藏观察者信息的方式。
WATCHER: requests PRESENCE INFORMATION about a PRESENTITY, or WATCHER INFORMATION about a WATCHER, from the PRESENCE SERVICE. Special types of WATCHER are FETCHER, POLLER, and SUBSCRIBER.
观察者:从状态服务请求有关存在实体的状态信息,或有关观察者的观察者信息。特殊类型的观察程序有获取程序、轮询程序和订阅程序。
WATCHER INFORMATION: information about WATCHERS that have received PRESENCE INFORMATION about a particular PRESENTITY within a particular recent span of time. WATCHER INFORMATION is maintained by the PRESENCE SERVICE, which may choose to present it in the same form as PRESENCE INFORMATION; that is, the service may choose to make WATCHERS look like a special form of PRESENTITY.
观察者信息:有关观察者的信息,这些观察者在特定的最近时间跨度内接收到特定存在实体的存在信息。观看者信息由呈现服务维护,呈现服务可以选择以与呈现信息相同的形式呈现它;也就是说,该服务可以选择让观察者看起来像一种特殊形式的存在实体。
Motivation: If a PRESENTITY wants to know who knows about it, it is not enough to examine only information about SUBSCRIPTIONS. A WATCHER might repeatedly fetch information without ever subscribing. Alternately, a WATCHER might repeatedly subscribe, then cancel the SUBSCRIPTION. Such WATCHERS should be visible to the PRESENTITY if the PRESENCE SERVICE offers WATCHER INFORMATION, but will not be appropriately visible if the WATCHER INFORMATION includes only SUBSCRIPTIONS.
动机:如果一个实体想知道谁知道它,仅仅检查有关订阅的信息是不够的。观察者可能会重复获取信息,而从不订阅。或者,观察者可以重复订阅,然后取消订阅。如果存在服务提供观察者信息,则此类观察者应该对存在实体可见,但如果观察者信息仅包括订阅,则此类观察者将不适当可见。
WATCHER USER AGENT: means for a PRINCIPAL to manipulate zero or more WATCHERS controlled by that PRINCIPAL.
观察者用户代理:主体操纵由该主体控制的零个或多个观察者的手段。
Motivation: As with PRESENCE USER AGENT and PRESENTITY, the distinction here is intended to isolate the core functionality of a WATCHER from how it might appear to be manipulated by a product. As previously, we deliberately take no position on whether the WATCHER USER AGENT, WATCHER, and PRESENCE SERVICE are colocated or distributed across machines.
动机:与PRESENCE USER AGENT和PRESENTITY一样,这里的区别旨在将观察者的核心功能与产品可能操纵的方式隔离开来。如前所述,我们故意不确定WATCHER用户代理、WATCHER和PRESENCE服务是否在机器之间进行了共同定位或分布。
This document provides a model and vocabulary for systems with certain intrinsic security issues. In particular, presence and instant messaging systems must deal with "the three S's": STALKING, SPOOFING, and SPAM. ACCESS RULES, VISIBILITY RULES, and WATCHER INFORMATION are intended to deal with STALKING. The several kinds of authentication mentioned for INSTANT MESSAGE SERVICE and PRESENCE SERVICE are intended to deal with SPOOFING. DELIVERY RULES are intended to deal with SPAM.
本文档为存在某些固有安全问题的系统提供了一个模型和词汇表。特别是,状态和即时消息系统必须处理“三个S”:跟踪、欺骗和垃圾邮件。访问规则、可见性规则和观察者信息旨在处理跟踪行为。即时消息服务和状态服务中提到的几种身份验证旨在处理欺骗。传递规则旨在处理垃圾邮件。
This document has provided a model for a presence and instant messaging system. The purpose of the model is to provide a common vocabulary for the further work of defining and implementing interoperable presence and instant messaging protocols.
本文档提供了状态和即时消息系统的模型。该模型的目的是为定义和实现可互操作的状态和即时消息协议的进一步工作提供通用词汇表。
This document has been improved by comments from Jesse Vincent and Colin Benson, by the participants in the Cambridge, MA meeting on June 11, 1999, and by Roy Salisbury, who contributed the original version of Figure 5. The authors gratefully acknowledge their assistance.
Jesse Vincent和Colin Benson的评论、1999年6月11日剑桥MA会议的与会者以及图5原始版本的作者Roy Salisbury对本文件进行了改进。作者衷心感谢他们的帮助。
Mark Day SightPath, Inc. 135 Beaver Street Waltham, MA 02452 USA
美国马萨诸塞州沃尔瑟姆市海狸街135号Mark Day SightPath,Inc.02452
EMail: mday@alum.mit.edu (Formerly Mark_Day@lotus.com)
EMail: mday@alum.mit.edu (Formerly Mark_Day@lotus.com)
Jonathan Rosenberg dynamicsoft 200 Executive Drive Suite 120 West Orange, NJ 07046
Jonathan Rosenberg dynamicsoft 200行政区套房,新泽西州西橙120号,邮编:07046
Email: jdrosen@dynamicsoft.com
Email: jdrosen@dynamicsoft.com
Hiroyasu Sugano Fujitsu Laboratories Ltd. 64 Nishiwaki, Ohkubo-cho Akashi 674-8555 Japan
杉野广康富士通实验室有限公司,日本大久保町明石西城64号674-8555
EMail: suga@flab.fujitsu.co.jp
EMail: suga@flab.fujitsu.co.jp
Copyright (C) The Internet Society (2000). All Rights Reserved.
版权所有(C)互联网协会(2000年)。版权所有。
This document and translations of it may be copied and furnished to others, and derivative works that comment on or otherwise explain it or assist in its implementation may be prepared, copied, published and distributed, in whole or in part, without restriction of any kind, provided that the above copyright notice and this paragraph are included on all such copies and derivative works. However, this document itself may not be modified in any way, such as by removing the copyright notice or references to the Internet Society or other Internet organizations, except as needed for the purpose of developing Internet standards in which case the procedures for copyrights defined in the Internet Standards process must be followed, or as required to translate it into languages other than English.
本文件及其译本可复制并提供给他人,对其进行评论或解释或协助其实施的衍生作品可全部或部分编制、复制、出版和分发,不受任何限制,前提是上述版权声明和本段包含在所有此类副本和衍生作品中。但是,不得以任何方式修改本文件本身,例如删除版权通知或对互联网协会或其他互联网组织的引用,除非出于制定互联网标准的需要,在这种情况下,必须遵循互联网标准过程中定义的版权程序,或根据需要将其翻译成英语以外的其他语言。
The limited permissions granted above are perpetual and will not be revoked by the Internet Society or its successors or assigns.
上述授予的有限许可是永久性的,互联网协会或其继承人或受让人不会撤销。
This document and the information contained herein is provided on an "AS IS" basis and THE INTERNET SOCIETY AND THE INTERNET ENGINEERING TASK FORCE DISCLAIMS ALL WARRANTIES, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO ANY WARRANTY THAT THE USE OF THE INFORMATION HEREIN WILL NOT INFRINGE ANY RIGHTS OR ANY IMPLIED WARRANTIES OF MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE.
本文件和其中包含的信息是按“原样”提供的,互联网协会和互联网工程任务组否认所有明示或暗示的保证,包括但不限于任何保证,即使用本文中的信息不会侵犯任何权利,或对适销性或特定用途适用性的任何默示保证。
Acknowledgement
确认
Funding for the RFC Editor function is currently provided by the Internet Society.
RFC编辑功能的资金目前由互联网协会提供。