Network Working Group Greg Vaudreuil
Internet Draft Octel Communications
Expires in six months Glenn Parsons
Obsoletes: RFC 1911 Nortel Technology
November 11, 1996
Voice Profile for Internet Mail - version 2
<draft-ema-vpim-03.txt>
Status of this Memo
This document is an Internet Draft. Internet Drafts are working
documents of the Internet Engineering Task Force (IETF), its Areas,
and its Working Groups. Note that other groups may also distribute
working documents as Internet Drafts.
Internet Drafts are valid for a maximum of six months and may be
updated, replaced, or obsoleted by other documents at any time. It is
inappropriate to use Internet Drafts as reference material or to cite
them other than as a "work in progress".
To learn the current status of any Internet-Draft, please check the
``1id-abstracts.txt'' listing contained in the Internet-Drafts Shadow
Directories on ftp.is.co.za (Africa), nic.nordu.net (Europe),
munnari.oz.au (Pacific Rim), ds.internic.net (US East Coast), or
ftp.isi.edu (US West Coast).
Overview
This document profiles Internet mail for voice messaging. It
obsoletes RFC 1911 which describes version 1 of the profile. A list
of changes from that document are noted in Appedix F. As well,
Appendix A summarizes the protocol profiles of this version of VPIM.
Please send comments on this document to the EMA VPIM Work Group
mailing list: <vpim-l@ema.org>
Working Group Summary
This profile was not reviewed by an active IETF working group.
However, it has been reviewed by the VPIM Work Group of the Electronic
Messaging Association (EMA). This work group, which has
representatives from most major voice mail vendors, has held an
interoperability demonstration between voice messaging vendors and
received comments from traditional messaging vendors.
Internet Draft VPIM v2 November 11, 1996
Table of Contents
1. Abstract ............................................................3
2. Scope ...............................................................4
2.1 Voice Messaging System Limitations ...............................4
2.2 Design Goals .....................................................5
3. Protocol Restrictions ...............................................6
4. Voice Message Interchange Format ....................................7
4.1 Message Addressing Formats .......................................7
4.2 Message Header Fields ............................................9
4.3 Message Content Types ...........................................13
4.4 Forwarded Messages ..............................................19
4.5 Reply Messages ..................................................19
5. Message Transport Protocol .........................................20
5.1 ESMTP Commands ..................................................20
5.2 ESMTP Keywords ..................................................22
5.3 ESMTP Parameters - MAIL FROM ....................................23
5.4 ESMTP Parameters - RCPT TO ......................................23
5.5 ESMTP - SMTP Downgrading ........................................24
6. Directory Address Resolution .......................................24
7. IMAP ...............................................................25
8. Management Protocols ...............................................25
8.1 Network Management ..............................................25
9. Conformance Requirements ...........................................25
10. References ........................................................26
11. Security Consideration ............................................28
12. Acknowledgments ...................................................28
13. Authors' Addresses ................................................28
14. Appendix A - VPIM Requirements Summary ............................29
15. Appendix B - Example Voice Messages ...............................35
16. Appendix C _ Example Error Voice Processing Error Codes ...........39
17. Appendix D - audio/32KADPCM Content Type ..........................40
18. Appendix E - image/TIFF Content Type ..............................41
18.1 References .....................................................41
18.2 TIFF Class F ...................................................41
19. Appendix F - Change History: RFC 1911 to this Document ............43
Vaudreuil, Parsons Expires 5/11/97 [Page 2]
Internet Draft VPIM v2 November 11, 1996
1. Abstract
A class of special-purpose computers has evolved to provide voice
messaging services. These machines generally interface to a telephone
switch and provide call answering and voice messaging services.
Traditionally, messages sent to a non-local machine are transported
using analog networking protocols based on DTMF signaling and analog
voice playback. As the demand for networking increases, there is a
need for a standard high-quality digital protocol to connect these
machines. The following document is a profile of the Internet
standard MIME and ESMTP protocols for use as a digital voice messaging
networking protocol. The profile is referred to as VPIM (Voice Profile
for Internet Mail) in this document.
This profile is based on earlier work in the Audio Message Interchange
Specification (AMIS) group that defined a voice messaging protocol
based on X.400 technology. This profile is intended to satisfy the
user requirements statement from that earlier work with the industry
standard ESMTP/MIME mail protocol infrastructures already used within
corporate intranets. This second version of VPIM is based on
implementation experience and obsoletes RFC 1911 which describes
version 1 of the profile.
Vaudreuil, Parsons Expires 5/11/97 [Page 3]
Internet Draft VPIM v2 November 11, 1996
2. Scope
MIME is the Internet multipurpose, multimedia messaging standard.
This document explicitly recognizes its capabilities and provides a
mechanism for the exchange of various messaging technologies,
primarily voice and facsimile.
This document specifies a restricted profile of the Internet
multimedia messaging protocols for use between voice processing
platforms. These platforms have historically been special-purpose
computers and often do not have the same facilities normally
associated with a traditional Internet Email-capable computer. As a
result, VPIM also specifies additional functionality as it is needed.
This profile is intended to specify the minimum common set of features
to allow interworking between compliant systems.
2.1 Voice Messaging System Limitations
The following are typical limitations of voice messaging platform
which were considered in creating this baseline profile.
1) Text messages are not normally received and often cannot be
displayed or viewed. They can often be processed only via text-to-
speech or text-to-fax features not currently present in many of
these machines.
2) Voice mail machines usually act as an integrated Message
Transfer Agent, Message Store and User Agent. There is no relaying
of messages, and RFC 822 header fields may have limited use in the
context of the limited messaging features currently deployed.
3) VM message stores are generally not capable of preserving the
full semantics of an Internet message. As such, use of a voice
mail machine for gatewaying is not supported. In particular,
storage of "CC" lists, "Received" lines, and "Message-ID" may be
limited.
4) Internet-style distribution/exploder mailing lists are not
typically supported. Voice mail machines often implement only
local alias lists, with error-to-sender and reply-to-sender
behavior. Reply-all capabilities using a CC list is not generally
available.
5) Error reports must be machine-parsable so that helpful responses
can be voiced to users whose only access mechanism is a telephone.
6) The voice mail systems generally limit address entry to 16 or
fewer numeric characters, and normally do not support alphanumeric
mailbox names. Alpha characters are not generally used for mailbox
identification as they cannot be easily entered from a telephone
terminal.
Vaudreuil, Parsons Expires 5/11/97 [Page 4]
Internet Draft VPIM v2 November 11, 1996
2.2 Design Goals
It is a goal of this profile to make as few restrictions and additions
to the existing Internet mail protocols as possible while satisfying
the requirements for interoperability with current generation voice
messaging systems. This goal is motivated by the desire to increase
the accessibility to digital messaging by enabling the use of proven
existing networking software for rapid development.
This specification is intended for use on a TCP/IP network, however,
it is possible to use the SMTP protocol suite over other transport
protocols. The necessary protocol parameters for such use is outside
the scope of this document.
This profile is intended to be robust enough to be used in an
environment, such as the global Internet with installed-base gateways
which do not understand MIME, though typical use is expected to be
within corporate intranets. Full functionality, such as reliable
error messages and binary transport, will require careful selection of
gateways (e.g., via MX records) to be used as VPIM forwarding agents.
Nothing in this document precludes use of a general purpose MIME email
packages to read and compose VPIM messages. While no special
configuration is required to receive VPIM compliant messages, some may
be required to originate compliant structures.
It is expected that a VPIM messaging system will be managed by a
system administrator who can perform TCP/IP network configuration.
When using facsimile or multiple voice encodings, it is suggested that
the system administrator maintain a list of the capabilities of the
networked mail machines to reduce the sending of undeliverable
messages due to lack of feature support. Configuration,
implementation and management of this directory listing capabilities
is a local matter.
Vaudreuil, Parsons Expires 5/11/97 [Page 5]
Internet Draft VPIM v2 November 11, 1996
3. Protocol Restrictions
This protocol does not limit the number of recipients per message.
Where possible, implementations should not restrict the number of
recipients in a single message. It is recognized that no
implementation supports unlimited recipients, and that the number of
supported recipients may be quite low. However, ESMTP currently does
not provide a mechanism for indicating the number of supported
recipients.
This protocol does not limit the maximum message length. Implementers
should understand that some machines will be unable to accept
excessively long messages. A mechanism is defined in the RFC 1425
SMTP service extensions to declare the maximum message size supported.
The message size indicated in the ESMTP SIZE command is in bytes, not
minutes or seconds. The number of bytes varies by voice encoding
format and must include the MIME wrapper overhead. If the length must
be known before sending, an approximate translation into minutes or
seconds can be performed if the voice encoding is known.
The following sections describe the restrictions and additions to
Internet mail protocols that are required to be compliant with this
VPIM v2 profile. Though various SMTP, ESMTP and MIME features are
described here, the implementor is referred to the relevant RFCs for
complete details. It is also advisable to check for IETF drafts of
various Internet Mail specifications that are later than the most
recent RFCs since, for example, MIME has yet to be published as a full
IETF Standard. The table in Appendix A summarizes the protocol details
of this profile.
Vaudreuil, Parsons Expires 5/11/97 [Page 6]
Internet Draft VPIM v2 November 11, 1996
4. Voice Message Interchange Format
The voice message interchange format is a profile of the Internet Mail
Protocol Suite. As such, this document assumes an understanding of
these specifications. Specifically, VPIM references components from
the message format standard for Internet messages [RFC822], the
Multipurpose Internet Message Extensions [MIME], the X.400 gateway
specification [X.400], delivery status notification
[DSN][DRPT][STATUS], and the electronic business card
[DIRECTORY][VCARD].
4.1 Message Addressing Formats
RFC 822 addresses are based on the domain name system. This naming
system has two components: the local part, used for username or
mailbox identification; and the host part, used for global machine
identification.
4.1.1 VPIM Addresses
The local part of the address shall be a US-ASCII string uniquely
identifying a mailbox on a destination system. For voice messaging,
the local part is a printable string containing the mailbox ID of the
originator or recipient. While alpha characters and long mailbox
identifiers are permitted, most voice mail networks rely on numeric
mailbox identifiers to retain compatibility with the limited 10 digit
telephone keypad. The use of the domain naming system should be
transparent to the user. It is the responsibility of the voice mail
machine to lookup the fully-qualified domain name (FQDN) based on the
address entered by the user. (See section 6).
In the absence of a global directory, specification of the local part
is expected to conform to international or private telephone numbering
plans. It is likely that private numbering plans will prevail and
these are left for local definition. However, it is recommended that
public telephone numbers be noted according to the international
numbering plan described in [E.164]. The indication that the local
part is a pubilc telephone number is given by a preceding `+' (the `+'
would not be entered from a telephone keypad, it is added by the
system as a flag). Since the primary information in the numeric
scheme is contained by the digits, other character separators (e.g. `-
') may be ignored (i.e. to allow parsing of the numeric local mailbox)
or may be used to recognize distinct portions of the telepone number
(e.g. country code). The specification of the local part of a VPIM
address can be split into the four groups described below:
1) mailbox number
- for use as a private numbering plan (any number of digits)
- e.g. 2722@octel.com
2) mailbox number+extension
- for use as a private numbering plan with extensions
any number of digits, use of `+' as separator
- e.g. 2722+111@octel.com
Vaudreuil, Parsons Expires 5/11/97 [Page 7]
Internet Draft VPIM v2 November 11, 1996
3) +international number
- for international telephone numbers conforming to E.164
maximum of 15 digits
- e.g. +16137637582@vm.nortel.ca
4) +international number+extension
- for international telephone numbers conforming to E.164
maximum of 15 digits, with an extension (e.g. behind a
PBX) that has a maximum of 15 digits.
- e.g. +17035245550+230@ema.org
4.1.2 Special Addresses
Special addresses are provided for compatibility with the conventions
of Internet mail. These addresses do not use numeric local addresses,
both to conform to current Internet practice and to avoid conflict
with existing numeric addressing plans. Two special addresses are
RESERVED for use as follows:
postmaster@domain
By convention, a special mailbox named "postmaster" MUST exist on all
systems. This address is used for diagnostics and should be checked
regularly by the system manager. This mailbox is particularly likely
to receive text messages, which is not normal on a voice processing
platform. The specific handling of these messages is an individual
implementation choice.
non-mail-user@domain
If a reply to a message is not possible, such as a telephone answering
message, then the special address _non-mail-user_ must be used as the
originator's address. Any text name such as "Telephone Answering," or
the telephone number if it is available, is permitted. This special
address is used as a token to indicate an unreachable originator. For
compatability with the installed base of mail user agents,
implementations that generate this special address MUST send a non-
delivery notification for reply messages sent to the undeliverable
address. The status code for such NDN's is 5.1.1 "Mailbox does not
exist".
Example:
From: Telephone Answering <non-mail-user@mycompany.com>
4.1.3 Distribution Lists
There are many ways to handle distribution list (DL) expansions and
none are 'standard'. Simple alias is a behavior closest to what most
voice mail systems do today and what is to be used with VPIM messages.
That is:
Vaudreuil, Parsons Expires 5/11/97 [Page 8]
Internet Draft VPIM v2 November 11, 1996
Reply to the originator - (Address in the RFC822 Reply-to or From
field)
Errors to the submitter - (Address in the MAIL FROM: field of the
ESMTP exchange and the Return-Path:
RFC 822 field)
Some proprietary voice messaging protocols include only the recipient
of the particular copy in the envelope and include no "headers" except
date and per-message features. Most voice messaging systems do not
provide for "Header Information" in their messaging queues and only
include delivery information. As a result, recipient information MAY
be in either the To or CC headers. If all recipients cannot be
presented (e.g. unknown DL expansion) then the recipient headers MUST
be omitted to indicate that an accurate list of recipients (e.g. for
use with a reply-all capability) is not known.
4.2 Message Header Fields
Internet messages contain a header information block. This header
block contains information required to identify the sender, the list
of recipients, the message send time, and other information intended
for user presentation. Except for specialized gateway and mailing
list cases, headers do not indicate delivery options for the transport
of messages.
Exploder lists are noted for modifying or adding to the headers of
messages that pass through them. VPIM systems MUST be able to accept
and ignore headers that are not defined here.
The following header lines are permitted for use with VPIM voice
messages:
4.2.1 From
The originator's fully-qualified domain address (a mailbox address
followed by the fully-qualified domain name). The user listed in this
field should be presented in the voice message envelope as the
originator of the message.
Systems compliant with this profile SHOULD provide the text personal
name of the sender in a quoted phrase if the name is available. To
facilitate storage of the text name in a local dial-by-name cache
directory, the first and last name names must be separable. Text
names of the voice message originator MUST be represented in the form
"family, given, initials or additional names" and MUST contain the
same components as found in the Vcard N attribute (section 4.3.4), if
present. Text names of corporate or positional mailboxes MAY be
provided as a simple string. From [RFC822]
Example:
From: "User, Joe, S." <12145551212@mycompany.com>
From: Technical Support <611@serviceprovider.com>
Vaudreuil, Parsons Expires 5/11/97 [Page 9]
Internet Draft VPIM v2 November 11, 1996
The From address may be used for replies (see 4.5). However, if the
From: address contains <non-mail-user@domain>, the user SHOULD not be
offered the option to reply, nor should notifications be sent to this
address.
4.2.2 To
The To header contains the recipient's fully-qualified domain address.
There may be one or more To: fields in any message.
Example:
To: 12145551213@mycompany.com
Systems compliant to this profile SHOULD provide a list of recipients
only if all recipients are provided. The To header MUST NOT be
included in the message if the sending message transport agent (MTA)
cannot resolve all the addresses in it, e.g. if an address is a DL
alias for which the expansion is unknown (see 4.1.3). If present, the
addresses in the To header MAY be used for a reply message to all
recipients.
Systems compliant to this profile MAY also discard the To addresses of
incoming messages because of the inability to store the information.
This would, of course, make a reply-to-all capability impossible.
4.2.3 Cc
The cc header contains additional recipients' fully-qualified domain
addresses. Many voice mail systems maintain only sufficient envelope
information for message delivery and are not capable of storing or
providing a complete list of recipients.
Systems compliant to this profile SHOULD provide a list of recipients
only if all disclosed recipients can be provided. The list of
disclosed recipients does not include those sent via a blind copy. If
not, systems SHOULD omit the To and Cc headers to indicate that the
full list of recipients is unknown.
Example:
Cc: 12145551213@mycompany.com
Systems compliant to this profile MAY discard the Cc addresses of
incoming messages as necessary. If a list of Cc or to addresses is
present, these addresses MAY be used for a reply message to all
recipients.
Vaudreuil, Parsons Expires 5/11/97 [Page 10]
Internet Draft VPIM v2 November 11, 1996
4.2.4 Date
The Date header contains the date, time, and time zone in which the
message was sent by the originator. The time zone SHOULD be
represented in a four-digit time zone offset, such as -0600 for North
American Eastern Standard Time. This may be supplemented by a time
zone name in parentheses, e.g., "-0800 (PDT)". Compliant
implementations SHOULD be able to convert RFC 822 date and time stamps
into local time.
Example:
Date: Wed, 28 Jul 96 10:08:49 -0900 (PST)
The sending system MUST report the time the message was sent. If the
VPIM sender is relaying a message from a system which does not provide
a timestamp, the time of arrival at the VPIM system SHOULD be used as
the date. From [RFC822]
4.2.5 Sender
The Sender header contains the actual address of the originator if the
message is sent by an agent on behalf of the author indicated in the
From: field and MAY be present in a VPIM message.
While it may not be possible to save this information in some voice
mail machines, discarding this information or the ESMTP MAIL FROM (see
4.2.6) address will make it difficult to send an error message to the
proper destination. From [RFC822]
4.2.6 Return Path
The Return-path header, if present, contains the address of the last
submitter of the message from the MAIL FROM parameter of the ESMTP
exchange (see 5.1.2). Error messages MUST be sent to this address
(see [DRPT] for additional details). Note that if the Return-path is
null ("<>"), e.g. no path, loop prevention or confidential, a
notification MUST NOT be sent. If the Return path address is not
available (either from this header or the MAIL FROM parameter) the
Sender or From addresses may be used to deliver notifications.
4.2.7 Message-id
The Message-id header contains a unique per-message identifier. A
unique message-id MUST be generated for each message sent from a
compliant implementation.
The message-id is not required to be stored on the receiving system.
This identifier MAY be used for tracking, auditing, and returning
read-receipt reports. From [RFC822]
Example:
Message-id: <12345678@mycompany.com>
Vaudreuil, Parsons Expires 5/11/97 [Page 11]
Internet Draft VPIM v2 November 11, 1996
4.2.8 Reply-To
If present, the reply-to header provides a preferred address to which
reply messages should be sent (see 4.5). If a reply-to header is
present, a reply-to sender message MUST be sent to the address
specified. From [RFC822] This preferred address of the originator
must also be provided in the originator's vCard EMAIL attribute, if
present (see 4.3.4).
4.2.9 Received
The Received header contains trace information added to the beginning
of a RFC 822 message by MTAs. This is the only header permitted to be
added by an MTA. Information in this header is useful for debugging
when using an US-ASCII message reader or a header parsing tool.
A compliant system MUST add Received headers when acting as a gateway
and MUST NOT remove any. These headers MAY be ignored or deleted when
the message is received at the final destination. From [RFC822]
4.2.10 MIME Version
The MIME-Version header indicates that the message conforms to the
MIME message format specification. Systems compliant with this
specification MUST include a comment with the words "(Voice 2.0)". RFC
1911 defines an earlier version of this profile and uses the token
(Voice 1.0). From [MIME][VPIM1]
Example:
MIME-Version: 1.0 (Voice 2.0)
A MIME message that contains this header is referred to in this
document as a VPIM Message.
4.2.11 Content-Type
The content-type header declares the type of content enclosed in the
message. One of the allowable contents is multipart/mixed, a
mechanism for bundling several message components into a single
message. The allowable contents are detailed in section 4.3 of this
document. From [MIME]
4.2.12 Content-Transfer-Encoding
Because Internet mail was initially specified to carry only 7-bit US-
ASCII text, it may be necessary to encode voice and fax data into a
representation suitable for that environment. The content-transfer-
encoding header describes this transformation if it is needed.
Compliant implementations MUST recognize and decode the standard
encodings, "Binary", "7bit, "8bit", "Base64" and "Quoted-Printable".
The allowable content-transfer-encodings are specified in section 4.3.
From [MIME]
Vaudreuil, Parsons Expires 5/11/97 [Page 12]
Internet Draft VPIM v2 November 11, 1996
4.2.13 Sensitivity
The sensitivity header, if present, indicates the requested privacy
level. The case-insensitive values "Personal" and "Private" are
specified. If no privacy is requested, this field is omitted.
If a sensitivity header is present in the message, a compliant system
MUST prohibit the recipient from forwarding this message to any other
user. A compliant system, however, SHOULD allow the user to reply to
a sensitive message, but SHOULD NOT include the original message
content. The sensitivity of the reply message MAY be set by the user.
If the receiving system does not support privacy and the sensitivity
is one of "Personal" or "Private", the message MUST be returned to the
sender with an appropriate error code indicating that privacy could
not be assured and that the message was not delivered. A non-delivery
notification to a private message need not be tagged private since it
will be sent to the originator. From: [X.400]
4.2.14 Importance
Indicates the requested priority to be given by the receiving system.
The case-insensitive values "low", "normal" and "high" are specified.
If no special importance is requested, this header may be omitted and
the value assumed to be "normal".
Compliant implementations MAY use this header to indicate the
importance of a message and may order messages in a recipient's
mailbox. From: [X400]
4.2.15 Subject
The subject field is often provided by email systems but is not widely
supported on Voice Mail platforms. For compatibility with text based
mailbox interfaces, a text subject field SHOULD be generated by a
compliant implementation but MAY be discarded if present by a
receiving system. From [RFC822]
It is recommended that voice messaging systems that do not support any
text user interfaces (e.g. access only by a telephone) insert a
generic subject header of "VPIM Message" for the benefit of text
enabled recipients.
4.3 Message Content Types
MIME, introduced in [MIME], is a general-purpose message body format
that is extensible to carry a wide range of body parts. It provides
for encoding binary data so that it can be transported over the 7-bit
text-oriented SMTP protocol. This transport encoding is in addition
to the audio encoding required to generate a binary object.
Vaudreuil, Parsons Expires 5/11/97 [Page 13]
Internet Draft VPIM v2 November 11, 1996
MIME defines two transport encoding mechanisms to transform binary
data into a 7 bit representation, one designed for text-like data
("Quoted-Printable"), and one for arbitrary binary data ("Base64").
While Base64 is dramatically more efficient for audio data, both will
work. Where binary transport is available, no transport encoding is
needed, and the data can be labeled as "Binary".
An implementation in compliance with this profile SHOULD send audio
and/or facsimile data in binary form when binary message transport is
available. When binary transport is not available, implementations
MUST encode the audio and/or facsimile data as Base64. The detection
and decoding of "Quoted-Printable", "7bit", and "8bit" MUST be
supported in order to meet MIME requirements and to preserve
interoperability with the fullest range of possible devices. However,
if a content is received that cannot be rendered to the user, an
appropriate non-delivery notification MUST be sent.
The content types described in this section are identified for use
with this profile. Other contents MUST NOT be used without prior
explicit per-destination configuration. If an implementation receives
a VPIM message (i.e. MIME-Version: 1.0 (Voice 2.0)) that contains
content types not specified in this profile, their handling is a local
implementation issue (e.g. they MAY be discarded if they cannot be
presented to the recipient). Conversely, if an implementation
receives a non-VPIM message with any of the following defined
contents, it SHOULD deliver those contents, but the full message
handling is a local issue (e.g. the unknown contents _or_ the entire
message MAY be discarded). It is recommended that implementations
issue notifications to the originator when any form of non-delivery to
the recipient occurs.
Each of the contents defined below can be sent individually in a VPIM
message or wrapped in a multipart/mixed to form a more complex
structure (several examples are given in Appendix B). When multiple
contents are present, they SHOULD be presented to the user in the
order that they appear in the message.
4.3.1 Text/Plain
MIME requires support of the basic Text/Plain content type. This
content type has limited applicability within the voice messaging
environment. Compliant implementations SHOULD NOT send the Text/Plain
content-type, but SHOULD only send this content if the recipient
system is known to support it. Compliant implementations MUST accept
Text/Plain messages, however, specific handling is left as an
implementation decision. From [MIME]
There are several mechanisms that can be used to support text on voice
messaging systems including text-to-speech and text-to-fax
conversions. If no rendering of the text is possible (i.e. it is not
possible for the recipient to determine if the text is a critical part
of the message), the entire message MUST be non-delivered and returned
to the sender with a media-unsupported error code.
Vaudreuil, Parsons Expires 5/11/97 [Page 14]
Internet Draft VPIM v2 November 11, 1996
4.3.2 Multipart/Mixed
MIME provides the facilities for enclosing several body parts in a
single message. Multipart/Mixed SHOULD be used for sending multi-
segment voice messages, that is for example, to preserve across the
network the distinction between an annotation and a forwarded message,
or between a spoken subject and the voice message. Compliant systems
MUST accept multipart/mixed body parts. Systems MAY collapse such a
multi-segment voice or fax message into a single segment if multi-
segment messages are not supported on the receiving machine. From
[MIME]
While any valid MIME body header MAY be used, the following header has
specific semantics when included with this body part:
4.3.2.1 Content-Description:
This field SHOULD be present to allow a text-based identification
of this body part as being a VPIM message. This is particularly
useful for identification when using a simple MIME mail package.
If there are multiple multipart/mixed bodies present on the same
level (i.e. not nested), then this header MUST be present to allow
differentiation. It is recommended that the value `VPIM Message'
be used to identify content compliant with this document.
4.3.3 Message/RFC822
MIME requires support of the Message/RFC822 message encapsulation body
part. This body part is used within a multipart/mixed message to
forward complete messages (see 4.4) or to reply with original content
(see 4.5). From [MIME]
4.3.4 Application/Directory
This content allows for the inclusion of a Versit vCard [VCARD]
electronic business card within a VPIM message. The format is
suitable as an interchange format between applications or systems, and
is defined independent of the method used to transport it. It
provides a useful mechanism to transport information about the
originator that can be used by the receiving VPIM system (see Section 6
or other local applications.
Each VPIM message SHOULD be created with an Application/Directory
content type [DIRECTORY] that MUST contain the preferred address and
telephone number of the message originator and SHOULD contain the
spoken name and the spelled name of the originator. The intent is
that the vCard be used as the source of information to contact the
originator (e.g. reply, call).
If included in a VPIM message, the vCard profile [VCARD] MUST be used
and MUST specify at least the following attributes:
Vaudreuil, Parsons Expires 5/11/97 [Page 15]
Internet Draft VPIM v2 November 11, 1996
TEL - Public switched telephone number in international (E.164)
format (various types, typically VOICE)
EMAIL - email address (various types, typically INTERNET; the type
VPIM is optionally used to denote the address that supports
VPIM messages)
The following attributes SHOULD be specified:
N - Family Name, Given Name, Additional Names, Honorific
Prefixes, and Suffixes (all present components in the From
text name MUST match)
ROLE - the role of the person identified in `N', but may be used
as an alternative to the `N' attribute when the sender is a
corporate or positional mailbox
SOUND - spoken name sound data (various types, typically 32KADPCM)
REV - Revision of Vcard in ISO 8601 date format
The vCard MAY use other attributes (e.g. capabilities) as defined in
[VCARD].
If present, the spoken name attribute MUST be denoted by a content ID
pointing to an audio/* content elsewhere in the VPIM message.
A typical VPIM message (i.e. no forwarded parts), MUST only contain
one vCard -- more than one is an error condition. A VPIM message that
contains forwarded messages, though, may contain multiple vCards.
However, these vCards MUST be associated with the originator(s) of the
forwarded message(s) and the originator of the forwarding message. As
a result, all forwarded vCards will be contained in message/rfc822
contents -- only the vCard of forwarding originator will be at the
top-level.
Example:
BEGIN:VCARD
N:Parsons;Glenn
ORG:Nortel Technology
TEL;TYPE=VOICE,MSG,WORK:+1-613-763-7582
EMAIL;TYPE=INTERNET:glenn.parsons@nortel.ca
EMAIL;TYPE=INTERNET,VPIM:6137637582@vm.nortel.ca
SOUND;TYPE=32KADPCM;ENCODE=BASE64;VALUE=CID:<part1@VM2-4321>
REV:19960831T103310Z
END:VCARD
4.3.5 Audio/32KADPCM
CCITT Recommendation G.726 [G726] describes the algorithm recommended
for conversion of a 64 kbit/s A-law or u-law PCM channel to and from a
32 kbit/s channel (this is the same algorithm as described in the
deprecated G.721). The conversion is applied to the PCM stream using
an Adaptive Differential Pulse Code Modulation (ADPCM) transcoding
technique.
Vaudreuil, Parsons Expires 5/11/97 [Page 16]
Internet Draft VPIM v2 November 11, 1996
An implementation compliant to this profile MUST use Audio/32KADPCM by
default for voice. Typically this body contains several minutes of
message content, however if used for spoken name or subject the
content should be considerably shorter (i.e. about 10 and 20 seconds
respectively).
If an implementation can only handle one voice body, then multiple
voice bodies (if present) SHOULD be concatenated, and SHOULD NOT be
discarded. It is recommended that this be done in the same order as
they were sent.
While any valid MIME body header MAY be used, several headers have the
following semantics when included with this body part:
4.3.5.1 Content-Description:
This field SHOULD be present to allow the parsable text
identification of these body parts. If more than one
Audio/32KADPCM body occurs within a single level (e.g.
multipart/mixed), then this header MUST be present to allow
differentiation. It is recommended that the following text values
be used as appropriate:
Voice Message - the primary voice message,
Voice Message Notification - a spoken delivery notification,
Originator Spoken Name - the spoken name of the originator,
Recipient Spoken Name - the spoken name of the recipient if
available to the originator and present if there is ONLY one
recipient,
Spoken Subject.- the spoken subject of the message, typically
spoken by the originator
Note that if an Originator Spoken Name audio body and a vCard are
both present in a VPIM message, the vCard SOUND attribute MUST
point to this audio body (see 4.3.4).
4.3.5.2 Content-Duration:
This field MAY be present to allow the specification of the length
of the audio bodypart in seconds. The use of this field on
reception is a local implementation issue. The formal BNF for this
header is:
duration := "Content-Duration" ":" 1*6DIGIT "seconds"
Example:
Content-Duration: 33 seconds
Vaudreuil, Parsons Expires 5/11/97 [Page 17]
Internet Draft VPIM v2 November 11, 1996
4.3.5.3 Content-Language:
This field MAY be present to allow the specification of the spoken
language of the bodypart. The encoding is defined in [LANG] (e.g.
EN-UK for UK English). The use of this field on reception is a
local implementation issue.
4.3.6 Proprietary Voice Formats
Proprietary voice encoding formats or other standard formats may be
supported under this profile provided a unique identifier is
registered with the IANA prior to use. These voice encodings should
be registered as sub-types of Audio.
Use of any other encoding except Audio/32KADPCM reduces
interoperability in the absence of explicit manual system
configuration. A compliant implementation MAY use any other encoding
with explicit per-destination configuration.
4.3.7 Image/TIFF
All implementations that support facsimile MUST generate and read
TIFF-F [TIFF][S100] compatible facsimile contents. The tags that MUST
be supported by systems complying to this recommendation are described
in the Enterprise Computer Telephony Forum's S.100 API specification
[S100]. The TIFF-F content, originally from [TPC.INT] has been
refined to reflect this common practice, and is summarized in Appendix
E for completeness.
An implementation MAY send this fax content in VPIM messages and MUST
be able to recognize it in received messages. If a fax message is
received that cannot be rendered to the user (e.g. the receiving VPIM
system does not support fax), then the system MUST non-deliver the
entire message with a media not supported error.
4.3.8 Multipart/report
The Multipart/Report is used for enclosing human-readable and machine
parsable notification (e.g. Message/delivery-status) body parts and
any returned message content. Compliant implementations MUST use the
Multipart/Report construct when returning messages, sending warnings,
or issuing read receipts. Compliant implementations MUST recognize
and decode the Multipart/Report content type. From [REPORT]
Multipart/Report messages that are VPIM messages (i.e. MIME-Version:
1.0 (Voice 2.0)) MUST include the human-readable description of the
error as a spoken audio/* content.
Vaudreuil, Parsons Expires 5/11/97 [Page 18]
Internet Draft VPIM v2 November 11, 1996
4.3.9 Message/delivery-status
This MIME body part is used for sending machine-parsable delivery
status notifications. Compliant implementations must use the
Message/delivery-status construct when returning messages or sending
warnings. Compliant implementations must recognize and decode the
Message/delivery-status content type and present the reason for
failure to the user. From [DSN]
4.4 Forwarded Messages
VPIM version 2 explicitly supports the forwarding of voice and fax
content with voice or fax annotation. Forwarded VPIM messages SHOULD
be sent as a multipart/mixed with the entire original message enclosed
in a message/rfc822 content type and the annotation as a separate
Audio/* or image/TIFF body part.
In the event that the RFC822 headers are not available for the
forwarded content, simulated headers with information as available
SHOULD be constructed to indicate the original sending timestamp, and
the original sender as indicated in the "From" line. The
message/rfc822 content MUST include at least the MIME-Version: 1.0
(Voice 2.0), the MIME content type and MIME content-encoding header as
necessary.
In the event that forwarding information is lost through concatenation
of the original message and the forwarding annotation, such as must be
done in an AMIS to VPIM gateway, the entire content MAY be sent as a
single Audio/* segment without including any forwarding semantics.
4.5 Reply Messages
Replies to VPIM messages (and Internet mail messages) are addressed to
the address noted in the reply-to header (see 4.2.8) if it is present,
else the From address (see 4.2.1) is used. Support of multiple
originator headers is often not possible on voice messaging systems,
so it may be necessary to choose only one. However, implementors
should note that this may make it impossible to send error messages
and replies to the proper destination.
In some cases, a reply message is not possible, such as with a message
created by telephone answering (i.e. classic voice mail). In this
case, the From field MUST contain the special address non-mail-
user@domain (see 4.1.2). The use of a null ESMTP MAIL FROM address
SHOULD also be used in this case (see 5.1.2). A receiving VPIM system
SHOULD not offer the user the option to reply to this kind of message.
Vaudreuil, Parsons Expires 5/11/97 [Page 19]
Internet Draft VPIM v2 November 11, 1996
5. Message Transport Protocol
Messages are transported between voice mail machines using the
Internet Extended Simple Mail Transfer Protocol (ESMTP). All
information required for proper delivery of the message is included in
the ESMTP dialog. This information, including the sender and
recipient addresses, is commonly referred to as the message
"envelope". This information is equivalent to the message control
block in many analog voice networking protocols.
ESMTP is a general-purpose messaging protocol, designed both to send
mail and to allow terminal console messaging. Simple Mail Transport
Protocol (SMTP) was originally created for the exchange of US-ASCII 7-
bit text messages. Binary and 8-bit text messages have traditionally
been transported by encoding the messages into a 7-bit text-like form.
[ESMTP] formalized an extension mechanism for SMTP, and subsequent
RFCs have defined 8-bit text networking, command streaming, binary
networking, and extensions to permit the declaration of message size
for the efficient transmission of large messages such as multi-minute
voice mail.
The following sections list ESMTP commands, keywords, and parameters
that are required and those that are optional for conformance to this
profile.
5.1 ESMTP Commands
5.1.1 HELO
Base SMTP greeting and identification of sender. This command is not
to be sent by compliant systems unless the more-capable EHLO command
is not accepted. It is included for compatibility with general SMTP
implementations. Compliant implementations MUST implement the HELO
command for backward compatibility but SHOULD NOT send it unless EHLO
is not supported. From [SMTP]
5.1.2 MAIL FROM (REQUIRED)
Originating mailbox. This address contains the mailbox to which
errors should be sent. This address may not be the same as the
message sender listed in the message header fields if the message was
received from a gateway or sent to an Internet-style mailing list.
Compliant implementations MUST implement the extended MAIL FROM
command. From [SMTP, ESMTP]
The MAIL FROM address MAY be passed as a local system parameter or
placed in a Return-Path: line inserted at the beginning of a VPIM
message. From [HOSTREQ]
Since error messages MUST be sent to the MAIL FROM address, the use of
the null address ("<>") is often used to prevent looping of error
notifications. This null address MAY also be used to note that a
particular message has no return path (e.g. a telephone answer
message). From [SMTP]
Vaudreuil, Parsons Expires 5/11/97 [Page 20]
Internet Draft VPIM v2 November 11, 1996
5.1.3 RCPT TO
Recipient's mailbox. This field contains only the addresses to which
the message should be delivered for this transaction. In the event
that multiple transport connections to multiple destination machines
are required for the same message, this list may not match the list of
recipients in the message header. Compliant implementations MUST
implement the extended RCPT TO command. From [SMTP, ESMTP]
5.1.4 DATA
Initiates the transfer of message data. Support for this command is
required in the event the binary mode command BDAT is not supported by
the remote system. Compliant implementations MUST implement the SMTP
DATA command for backwards compatibility. From [SMTP]
5.1.5 TURN
Requests a change-of-roles, that is, the client that opened the
connection offers to assume the role of server for any mail the remote
machine may wish to send. Because SMTP is not an authenticated
protocol, the TURN command presents an opportunity to improperly fetch
mail queued for another destination. Compliant implementations SHOULD
NOT implement the TURN command. From [SMTP]
5.1.6 QUIT
Requests that the connection be closed. If accepted, the remote
machine will reset and close the connection. Compliant
implementations MUST implement the QUIT command. From [SMTP]
5.1.7 RSET
Resets the connection to its initial state. Compliant implementations
MUST implement the RSET command. From [SMTP]
5.1.8 VRFY
Requests verification that this node can reach the listed recipient.
While this functionality is also included in the RCPT TO command, VRFY
allows the query without beginning a mail transfer transaction. This
command is useful for debugging and tracing problems. Compliant
implementations MAY implement the VRFY command. From [SMTP]
(Note that the implementation of VRFY may simplify the guessing of a
recipient's mailbox or automated sweeps for valid mailbox addresses,
resulting in a possible reduction in privacy. Various implementation
techniques may be used to reduce the threat, such as limiting the
number of queries per session.) From [SMTP]
Vaudreuil, Parsons Expires 5/11/97 [Page 21]
Internet Draft VPIM v2 November 11, 1996
5.1.9 EHLO
The enhanced mail greeting that enables a server to announce support
for extended messaging options. The extended messaging modes are
discussed in subsequent sections of this document. Compliant
implementations MUST implement the ESMTP command and return the
capabilities indicated later in this memo. From [ESMTP]
5.1.10 BDAT
The BDAT command provides a higher efficiency alternative to the
earlier DATA command, especially for voice. The BDAT command provides
for native binary transport of messages. Compliant implementations
SHOULD support binary transport using the BDAT command.[BINARY]
5.2 ESMTP Keywords
The following ESMTP keywords indicate extended features useful for
voice messaging.
5.2.1 PIPELINING
The "PIPELINING" keyword indicates ability of the receiving server to
accept new commands before issuing a response to the previous command.
Pipelining commands dramatically improves performance by reducing the
number of round-trip packet exchanges and makes it possible to
validate all recipient addresses in one operation. Compliant
implementations SHOULD support the command pipelining indicated by
this parameter. From [PIPE]
5.2.2 SIZE
The "SIZE" keyword provides a mechanism by which the SMTP server can
indicate the maximum size message supported. Compliant
implementations MUST provide the size capability and SHOULD honor any
size limitations when sending. From [SIZE]
5.2.3 CHUNKING
The "CHUNKING" keyword indicates that the receiver will support the
high-performance binary transport mode. Note that CHUNKING can be
used with any message format and does not imply support for binary
encoded messages. Compliant implementations SHOULD support binary
transport indicated by this capability. From [BINARY]
5.2.4 BINARYMIME
The "BINARYMIME" keyword indicates that the SMTP server can accept
binary encoded MIME messages. Compliant implementations SHOULD support
binary transport indicated by this capability. Note that support for
this feature requires support of CHUNKING. From [BINARY]
Vaudreuil, Parsons Expires 5/11/97 [Page 22]
Internet Draft VPIM v2 November 11, 1996
5.2.5 NOTIFY
The "NOTIFY" keyword indicates that the SMTP server will accept
explicit delivery status notification requests. Compliant
implementations MUST support the delivery notification extensions in
[DRPT].
5.2.6 ENHANCEDSTATUSCODES
The "ENHANCEDSTATUSCODES" keyword indicates that an SMTP server
augments its responses with the enhanced mail system status codes
[CODES]. These codes can then be used to provide more informative
explanations of error conditions, especially in the context of the
delivery status notifications format defined in [DSN]. Compliant
implementations SHOULD support this capability. From [STATUS]
5.3 ESMTP Parameters - MAIL FROM
5.3.1 BINARYMIME
The current message is a binary encoded MIME messages. Compliant
implementations SHOULD support binary transport indicated by this
parameter. From [BINARY]
5.3.2 RET
The RET parameter indicates whether the content of the message should
be returned. Compliant systems SHOULD honor a request for returned
content. From [DRPT]
5.3.3 ENVID
The ENVID keyword of the SMTP MAIL command is used to specify an
"envelope identifier" to be transmitted along with the message and
included in any DSNs issued for any of the recipients named in this
SMTP transaction. The purpose of the envelope identifier is to allow
the sender of a message to identify the transaction for which the DSN
was issued. Compliant implementations MAY use this parameter. From
[DRPT]
5.4 ESMTP Parameters - RCPT TO
5.4.1 NOTIFY
The NOTIFY parameter indicates the conditions under which a delivery
report should be sent. Compliant implementations MUST honor this
request. From [DRPT]
Vaudreuil, Parsons Expires 5/11/97 [Page 23]
Internet Draft VPIM v2 November 11, 1996
5.4.2 ORCPT
The ORCPT keyword of the RCPT command is used to specify an "original"
recipient address that corresponds to the actual recipient to which
the message is to be delivered. If the ORCPT esmtp-keyword is used,
it MUST have an associated esmtp-value, which consists of the original
recipient address, encoded according to the rules below. Compliant
implementations MAY use this parameter. From [DRPT]
5.5 ESMTP - SMTP Downgrading
To ensure a consistent level of service across an intranet or the
global Internet, it is essential that VPIM compliant ESMTP be
supported at all hops between a VPIM originating system and the
recipient system. Unfortunately, in the situation where a `downgrade'
is unavoidable the expected result is not defined. A downgrade is
defined as the loss of VPIM transport features at some hop due to the
lack of support. For example, a relay hop may be forced (by the next
hop) to forward a VPIM using SMTP instead of ESMTP, or using DATA
instead of BDAT. It is recommended that the downgrading system should
continue to attempt to deliver the message, but MUST send an
appropriate delivery notification to the originator, e.g. the message
left an ESMTP host and was sent (unreliably) via SMTP.
6. Directory Address Resolution
It is the responsibility of a VPIM system to lookup the fully-
qualified domain name (FQDN) based on the address entered by the user
(if the entered address is not already a FQDN). This would typically
be an issue on systems that offered only a telephone user interface.
The mapping of the dialed target number to a routable FQDN address
allowing delivery to the destination system can be accomplished
through implementation-specific means.
An implementation may wish to populate local directories with address
information extracted from received messages. It is mandated that
only address information from vCard attachments to VPIM messages be
used to populate such a directory when the vCard is available.
Stripping addresses from the headers of VPIM messages SHOULD NOT be
used to populate directories as it only provides partial data.
Alternatively, bilateral agreements could be made to allow the bulk
transfer of vCards between systems.
Vaudreuil, Parsons Expires 5/11/97 [Page 24]
Internet Draft VPIM v2 November 11, 1996
7. IMAP
The use of client/server desktop mailbox protocols like IMAP or POP to
retrieve VPIM messages from a IMAP or POP message store is possible
without any special modifications to this VPIM specification. Email
clients (and web browsers) typically have a table for mapping from
MIME type to displaying application. The audio/*, image/tiff and
application/directory contents can be configured so that they invoke
the correct player/recorder for rendering. In addition with IMAP
clients, the first multipart/mixed content (if present) will not
appear since it is a generic part. The user instead will be presented
with a message that has (for example) audio and image contents.
8. Management Protocols
The Internet protocols provide a mechanism for the management of
messaging systems, from the management of the physical network through
the management of the message queues. SNMP should be supported on a
compliant message machine.
8.1 Network Management
The digital interface to the VM and the TCP/IP protocols SHOULD be
managed. MIB II SHOULD be implemented to provide basic statistics and
reporting of TCP and IP protocol performance. [MIB II]
9. Conformance Requirements
In order to claim conformance to this document and be called `VPIM
compliant', a voice messaging system must implement all mandatory
features of this profile in each of three areas: Content, Transport,
and Notifications. In addition, systems which conform to this profile
must not send messages with features beyond this profile unless
explicit per-destination configuration of these enhanced features is
provided. Such configuration information could be stored in a
directory, though the implementation of this is currently a local
matter.
It is also possible, though not encouraged, to claim conformance to
only specific areas (e.g. VPIM content compliant) of this profile.
The delineation of these areas is as follows:
Content - Section 4, except REPORT & NOTIFY and Section
6.
Transport - Section 5 except NOTIFY & RET, and Section 8
Notifications - REPORT & NOTIFY from Section 4, NOTIFY, RET &
ENHANCEDSTATUSCODES from Section 5, and all
notification requirements.
A summary of compliance requirements is contained in Appendix A.
Vaudreuil, Parsons Expires 5/11/97 [Page 25]
Internet Draft VPIM v2 November 11, 1996
10. References
[AMIS-A] Audio Messaging Interchange Specifications (AMIS) - Analog
Protocol Version 1, Issue 2, February 1992
[AMIS-D] Audio Messaging Interchange Specifications (AMIS) - Digital
Protocol Version 1, Issue 3 August 1993
[MIME] Borenstein, N., and N. Freed, "Multipurpose Internet Mail
Extensions", RFC 1521, Bellcore, Innosoft, Sept 1993.
[RFC822] Crocker, D., "Standard for the Format of ARPA Internet Text
Messages", STD 11, RFC 822, UDEL, August 1982.
[X.400] Hardcastle-Kille, S., "Mapping between X.400(1988) / ISO 10021
and RFC 822", RFC 1327, May 1992.
[PIPE] Freed, N., Cargille, A., "SMTP Service Extension for Command
Pipelining" RFC 1854, October 1995.
[ESMTP] Klensin, J., Freed, N., Rose, M., Stefferud, E., and D. Crocker,
"SMTP Service Extensions" RFC 1869, United Nations University,
Innosoft International, Inc., Dover Beach Consulting, Inc., Network
Management Associates, Inc., The Branch Office, November 1995.
[SIZE] Klensin, J, Freed, N., Moore, K, "SMTP Service Extensions for
Message Size Declaration" RFC 1870, United Nations University,
Innosoft International, Inc., November 1995.
[8BIT] Klensin, J., Freed, N., Rose, M., Stefferud, E., D. Crocker,
"SMTP Service Extension for 8bit-MIMEtransport" RFC 1426, United
Nations University, Innosoft International, Inc., Dover Beach
Consulting, Inc., Network Management Associates, Inc., The Branch
Office, February 1993.
[DNS1] Mockapetris, P., "Domain names - implementation and
specification", RFC1035, Nov 1987.
[DNS2] Mockapetris, P., "Domain names - concepts and facilities", RFC
1034, Nov 1987.
[SMTP] Postel, J., "Simple Mail Transfer Protocol", STD 10, RFC 821,
USC/Information Sciences Institute, August 1982.
[BINARY] Vaudreuil, G., "SMTP Service Extensions for Transmission of
Large and Binary MIME Messages", RFC 1830, October 1995.
[DSN] Moore, K., Vaudreuil, G., "An Extensible Message Format for
Delivery Status Notifications", RFC 1894, 01/15/1996.
[REPORT] Vaudreuil, G., "The Multipart/Report Content Type for the
Reporting of Mail System Administrative Messages", RFC 1892,
01/15/1996.
Vaudreuil, Parsons Expires 5/11/97 [Page 26]
Internet Draft VPIM v2 November 11, 1996
[DRPT] Moore, K. "SMTP Service Extensions for Delivery Status
Notifications", RFC 1891, 01/15/1996
[CODES] Vaudreuil, G. "Enhanced Mail System Status Codes", RFC 1893,
01/15/1996.
[STATUS] Freed, N. "SMTP Service Extension for Returning Enhanced Error
Codes", RFC 2034, 10/30/1996.
[G726] CCITT Recommendation G.726 (1990), General Aspects of Digital
Transmission Systems, Terminal Equipment - 40, 32, 24,16 kbit/s
Adaptive Differential Pulse Code Modulation (ADPCM).
[MIB II] M. Rose, "Management Information Base for Network Management of
TCP/IP-based internets: MIB-II", RFC 1158, May 1990.
[RELATED] Levinson, E., "The MIME Multipart/Related Content-type", RFC
1872, Dec 1995
[DIRECTORY] Howes, Tim, Smith, Mark, "A MIME Content-Type for Directory
Information" <draft-ietf-asid-mime-direct-01.txt>
[VCARD] Dawson, Frank, Howes, Tim, "An Application/Directory MIME
Content-Type Electronic Business Card Profile" <draft-ietf-asid-mime-
vcard-00.txt>
[LANG] Alvestrand,H., "Tags for the Identification of Languages", RFC
1766, Mar 1995
[TPC.INT] C. Malamud, M. Rose, "Principles of Operation for the TPC.INT
Subdomain: Remote Printing -- Technical Procedures", RFC 1528,
10/06/1993
[VPIM1] Vaudreuil, Greg, "Voice Profile for Internet Mail", RFC 1911,
Feb 1996.
[TIFF] Adobe Developers Association, TIFF (TM) Revision 6.0 - Final,
June 3, 1992.
[S100] Enterprise Computer Telephony Forum, S.100 Revision 1.0 - Media
Services "C" Language - Application Programming Interfaces, February
1996.
[HOSTREQ] Braden, R., "Requirements for Internet Hosts -- Application
and Support", STD 3, RFC 1123, October 1989.
Vaudreuil, Parsons Expires 5/11/97 [Page 27]
Internet Draft VPIM v2 November 11, 1996
11. Security Consideration
This document is a profile of existing Internet mail protocols. As
such, it does not create any security issues not already existing in
the profiled Internet mail protocols themselves.
Further, the profile specified in this document does not in any way
preclude the use of any Internet mail security protocol to encrypt,
authenticate, or non-repudiate the messages.
12. Acknowledgments
The authors would like to offer a special thanks to the Electronic
Messaging Association, especially the members of the Voice Messaging
Committee, for their support of the VPIM specification and the efforts
they have made to ensure its success.
13. Authors' Addresses
Glenn W. Parsons
Nortel Technology
P.O. Box 3511, Station C
Ottawa, ON K1Y 4H7
Canada
Phone: +1-613-763-7582
Fax: +1-613-763-8385
Glenn.Parsons@Nortel.ca
Gregory M. Vaudreuil
Octel Communications
17080 Dallas Parkway
Dallas, TX 75248-1905
United States
Phone/Fax: +1-972-733-2722
Greg.Vaudreuil@Octel.Com
Vaudreuil, Parsons Expires 5/11/97 [Page 28]
Internet Draft VPIM v2 November 11, 1996
14. Appendix A - VPIM Requirements Summary
The following table summarizes the profile of VPIM version 2 detailed
in this document. For complete explanations of each feature it is
recommended to read the accompanying text. The conformance table is
separated into various columns:
Feature - name of protocol feature (note that the indenting
indicates
a hierarchy of conformance, i.e. the conformance of a
lower
feature is only relevant if there is comformance to the
higher feature)
Section - reference section in main text of this document
Area - conformance area to which each feature applies:
C - content
T - transport
N - notifications
Status - whether the feature is mandatory, optional, or prohibited.
There are three different degrees of optional used in this table:
Must - mandatory
Should - encouraged optional
May - optional
Should not - discouraged optional
Must not - prohibited
Footnote - special comment about conformance for a particular
feature
Vaudreuil, Parsons Expires 5/11/97 [Page 29]
Internet Draft VPIM v2 November 11, 1996
VPIM version 2 Conformance
| | | | |S| |
| | | | | |H| |F
| | | | | |O|M|o
| | | |S| |U|U|o
| | | |H| |L|S|t
| |A|M|O| |D|T|n
| |R|U|U|M| | |o
| |E|S|L|A|N|N|t
| |A|T|D|Y|O|O|t
FEATURE |SECTION | | | | |T|T|e
-------------------------------------------|----------|-|-|-|-|-|-|-
| | | | | | | |
Message Addressing Formats: | | | | | | | |
Use DNS host names |4.1 |C|x| | | | |
Use only numbers in mailbox IDs |4.1.1 |C| |x| | | |
Use alpha-numeric mailbox IDs |4.1.1 |C| | |x| | |
Support of postmaster@domain |4.1.2 |C|x| | | | |
Support of non-mail-user@domain |4.1.2 |C| |x| | | |
Support of distribution lists |4.1.3 |C| |x| | | |
| | | | | | | |
Message Header Fields: | | | | | | | |
Encoding outbound messages | | | | | | | |
From |4.2.1 |C|x| | | | |
Addition of text name |4.2.1 |C| |x| | | |
To |4.2.2 |C|x| | | | |1
cc |4.2.3 |C| |x| | | |1
Date |4.2.4 |C|x| | | | |
Sender |4.2.5 |C| | |x| | |
Return-Path |4.2.6 |C| | |x| | |
Message-id |4.2.7 |C|x| | | | |
Reply-To |4.2.8 |C| | |x| | |
Received |4.2.9 |C|x| | | | |
MIME Version: 1.0 (Voice 2.0) |4.2.10 |C|x| | | | |
Content-Type |4.2.11 |C|x| | | | |
Content-Transfer-Encoding |4.2.12 |C|x| | | | |
Sensitivity |4.2.13 |C| | |x| | |
Importance |4.2.14 |C| | |x| | |
Subject |4.2.15 |C| |x| | | |
Other Headers |4.2 |C| | |x| | |
| | | | | | | |
Vaudreuil, Parsons Expires 5/11/97 [Page 30]
Internet Draft VPIM v2 November 11, 1996
| | | | |S| |
| | | | | |H| |F
| | | | | |O|M|o
| | | |S| |U|U|o
| | | |H| |L|S|t
| |A|M|O| |D|T|n
| |R|U|U|M| | |o
| |E|S|L|A|N|N|t
| |A|T|D|Y|O|O|t
FEATURE |SECTION | | | | |T|T|e
-------------------------------------------|----------|-|-|-|-|-|-|-
Detection & Decoding inbound messages | | | | | | | |
From |4.2.1 |C|x| | | | |
Utilize text personal name |4.2.1 |C| |x| | | |
To |4.2.2 |C|x| | | | |
cc |4.2.3 |C| | |x| | |
Date |4.2.4 |C|x| | | | |
Conversion of Date to local time |4.2.4 |C| |x| | | |
Sender |4.2.5 |C| | |x| | |
Return-Path |4.2.6 |C| | |x| | |
Message ID |4.2.7 |C|x| | | | |
Reply-To |4.2.8 |C|x| | | | |
Received |4.2.9 |C| | |x| | |
MIME Version: 1.0 (Voice 2.0) |4.2.10 |C|x| | | | |
Content Type |4.2.11 |C|x| | | | |
Content-Transfer-Encoding |4.2.12 |C|x| | | | |
Sensitivity |4.2.13 |C|x| | | | |2
Importance |4.2.14 |C| | |x| | |
Subject |4.2.15 |C| | |x| | |
Other Headers |4.2 |C|x| | | | |3
| | | | | | | |
Message Content Encoding: | | | | | | | |
Encoding outbound audio/fax contents | | | | | | | |
7BITMIME |4.3 |C| | | | |x|
8BITMIME |4.3 |C| | | | |x|
Quoted Printable |4.3 |C| | | | |x|
Base64 |4.3 |C|x| | | | |4
Binary |4.3 |C| |x| | | |5
Detection & decoding inbound messages | | | | | | | |
7BITMIME |4.3 |C|x| | | | |
8BITMIME |4.3 |C|x| | | | |
Quoted Printable |4.3 |C|x| | | | |
Base64 |4.3 |C|x| | | | |
Binary |4.3 |C|x| | | | |5
| | | | | | | |
Vaudreuil, Parsons Expires 5/11/97 [Page 31]
Internet Draft VPIM v2 November 11, 1996
| | | | |S| |
| | | | | |H| |F
| | | | | |O|M|o
| | | |S| |U|U|o
| | | |H| |L|S|t
| |A|M|O| |D|T|n
| |R|U|U|M| | |o
| |E|S|L|A|N|N|t
| |A|T|D|Y|O|O|t
FEATURE |SECTION | | | | |T|T|e
-------------------------------------------|----------|-|-|-|-|-|-|-
Message Content Types: | | | | | | | |
Inclusion in outbound messages | | | | | | | |
Text/plain |4.3.1 |C| | | |x| |
Multipart/Mixed |4.3.2 |C| |x| | | |
Content-Description |4.3.2.1 |C| |x| | | |6
Message/RFC822 |4.3.3 |C| | |x| | |
Application/Directory |4.3.4 |C| |x| | | |
include TEL, EMAIL |4.3.4 |C|x| | | | |
include N, ROLE, SOUND, REV |4.3.4 |C| |x| | | |
only one per level |4.3.4 |C|x| | | | |
Audio/32KADPCM |4.3.5 |C|x| | | | |
Content-Description |4.3.5.1 |C| |x| | | |6
Content-Duration |4.3.5.2 |C| | |x| | |
Content-Langauge |4.3.5.3 |C| | |x| | |
Audio/* (other encodings) |4.3.6 |C| | |x| | |
Image/TIFF |4.3.7 |C| | |x| | |
Multipart/Report |4.3.8 |N|x| | | | |
human-readable part is voice |4.3.8 |N|x| | | | |
Message/delivery-status |4.3.9 |N|x| | | | |
Other contents |4.3 |C| | | |x| |7
| | | | | | | |
Detection & decoding in inbound messages | | | | | | | |
Text/plain |4.3.1 |C|x| | | | |
send NDN if unable to render |4.3.1 |N|x| | | | |8
Multipart/Mixed |4.3.2 |C|x| | | | |
Content-Description |4.3.2.1 |C| | |x| | |
Message/RFC822 |4.3.3 |C|x| | | | |
Application/Directory |4.3.4 |C| |x| | | |
recognize TEL, EMAIL |4.3.4 |C|x| | | | |
recognize N, ROLE, SOUND, REV |4.3.4 |C| |x| | | |
Audio/32KADPCM |4.3.5 |C|x| | | | |
Content-Description |4.3.5.1 |C| |x| | | |
Content-Duration |4.3.5.2 |C| | |x| | |
Content-Langauge |4.3.5.3 |C| | |x| | |
Audio/* (other encodings) |4.3.6 |C| | |x| | |
Image/TIFF |4.3.7 |C|x| | | | |
send NDN if unable to render |4.3.7 |N|x| | | | |8
Multipart/Report |4.3.8 |N|x| | | | |
Message/delivery-status |4.3.9 |N|x| | | | |
Other contents |4.3 |C| | |x| | |7
send NDN if unable to render |4.3 |N| |x| | | |
Vaudreuil, Parsons Expires 5/11/97 [Page 32]
Internet Draft VPIM v2 November 11, 1996
| | | | | |S| |
| | | | | |H| |F
| | | | | |O|M|o
| | | |S| |U|U|o
| | | |H| |L|S|t
| |A|M|O| |D|T|n
| |R|U|U|M| | |o
| |E|S|L|A|N|N|t
| |A|T|D|Y|O|O|t
FEATURE |SECTION | | | | |T|T|e
------------------------------------------|-----------|-|-|-|-|-|-|-
| | | | | | | |
Forwarded Messages | | | | | | | |
use Message/RFC822 construct |4.4 |C| |x| | | |
simulate headers if none available |4.4 |C| |x| | | |
| | | | | | | |
Reply Messages | | | | | | | |
send to Reply-to, else From address |4.5 |C|x| | | | |
do not send to non-mail-user |4.5 |C|x| | | | |
| | | | | | | |
Message Transport Protocol: | | | | | | | |
ESMTP Commands | | | | | | | |
HELO |5.1.1 |T|x| | | | |
MAIL FROM |5.1.2 |T|x| | | | |
support null address |5.1.2 |T|x| | | | |
RCPT TO |5.1.3 |T|x| | | | |
DATA |5.1.4 |T|x| | | | |
TURN |5.1.5 |T| | | | |x|
QUIT |5.1.6 |T|x| | | | |
RSET |5.1.7 |T|x| | | | |
VRFY |5.1.8 |T| | |x| | |
EHLO |5.1.9 |T|x| | | | |
BDAT |5.1.10 |T| |x| | | |5
ESMTP Keywords & Parameters | | | | | | | |
PIPELINING |5.2.1 |T| |x| | | |
SIZE |5.2.2 |T|x| | | | |
CHUNKING |5.2.3 |T| |x| | | |
BINARYMIME |5.2.4,5.3.1|T| |x| | | |
NOTIFY |5.2.5,5.4.1|N|x| | | | |
ENHANCEDSTATUSCODES |5.2.6 |N| |x| | | |
RET |5.3.2 |N| |x| | | |
ENVID |5.3.3 |N| | |x| | |
ORCPT |5.4.2 |N| | |x| | |
| | | | | | | |
ESMTP-SMTP Downgrading | | | | | | | |
send delivery report upon downgrade |5.5 |N|x| | | | |
| | | | | | | |
Vaudreuil, Parsons Expires 5/11/97 [Page 33]
Internet Draft VPIM v2 November 11, 1996
| | | | |S| |
| | | | | |H| |F
| | | | | |O|M|o
| | | |S| |U|U|o
| | | |H| |L|S|t
| |A|M|O| |D|T|n
| |R|U|U|M| | |o
| |E|S|L|A|N|N|t
| |A|T|D|Y|O|O|t
FEATURE |SECTION | | | | |T|T|e
-------------------------------------------|----------|-|-|-|-|-|-|-
Directory Address Resolution | | | | | | | |
provide facility to resolve addresses |6 |C| |x| | | |
use Vcards to populate local directory |6 |C|x| | | | |9
use headers to populate local directory |6 |C| | | |x| |
| | | | | | | |
Management Protocols: | | | | | | | |
Network management |8.1 |T| |x| | | |
-------------------------------------------|----------|-|-|-|-|-|-|-
Footnotes:
1. MUST NOT include if all recipients are not known or resolvable.
2. If a sensitive message is received by a system that does not
support sensitivity, then it MUST be returned to the originator
with an appropriate error notification. Also, a received
sensitive message MUST NOT be forwarded to anyone.
3. If the addtional headers are not understood they MAY be ignored
4. When binary transport is not available
5. When binary transport is available
6. If multiple contents are present in a message, this header MUST be
present
7. Other contents must only be sent by bilateral agreement.
8. If the content cannot be presented in some form, the entire
message MUST be non-delivered.
9. When the vCard is present in a message
Vaudreuil, Parsons Expires 5/11/97 [Page 34]
Internet Draft VPIM v2 November 11, 1996
15. Appendix B - Example Voice Messages
The following message is a full-featured message addressed to two
recipients. The message includes the sender's spoken name and a short
speech segment. The message is marked as important and private.
To: 19725551212@vm1.mycompany.com
To: 16135551234@VM1.mycompany.com
From: "Parsons, Glenn" <12145551234@VM2.mycompany.com>
Date: Mon, 26 Aug 93 10:20:20 -0700 (CST)
MIME-Version: 1.0 (Voice 2.0)
Content-type: Multipart/Mixed; Boundary="MessageBoundary"
Content-Transfer-Encoding: 7bit
Message-ID: VM2.mycompany.com-123456789
Sensitivity: Private
Importance: High
--MessageBoundary
Content-type: Audio/32KADPCM
Content-Transfer-Encoding: Base64
Content-Description: Originator Spoken Name
Content-Language: EN-US
Content-ID: part1@VM2-4321
glslfdslsertiflkTfpgkTportrpkTpfgTpoiTpdadasssdasddasdasd
(This is a sample of the base-64 Spoken Name data) fgdhgd
dlkgpokpeowrit09==
--MessageBoundary
Content-type: Audio/32KADPCM
Content-Transfer-Encoding: Base64
Content-Description: Voice Message
Content-Duration: 25 seconds
iIiIiIjMzN3czdze3s7d7fwfHhcvESJVe/4yEhLz8/FOQjVFRERCESL/zqrq
(This is a sample of the base64 message data) zb8tFdLTQt1PXj
u7wjOyRhws+krdns7Rju0t4tLF7cE0K0MxOTOnRW/Pn30c8uHi9==
--MessageBoundary
Content-type: Application/Directory
Content-Transfer-Encoding: 7bit
BEGIN:VCARD
N:Parsons;Glenn;;Mr.;
EMAIL;TYPE=INTERNET:12145551234@VM2.mycompany.com
TEL:+1-217-555-1234
SOUND;TYPE=32KADPCM;ENCODE=BASE64;VALUE=CID:<part1@VM2-4321>
REV:19951031T222710Z
END:VCARD
--MessageBoundary--
Vaudreuil, Parsons Expires 5/11/97 [Page 35]
Internet Draft VPIM v2 November 11, 1996
The following message is a forwarded single segment voice. Both the
forwarded message and the forwarding message contain VCARDs with
spoken names.
To: 12145551212@vm1.mycompany.com
From: "Vaudreuil, Greg" <19725552345@VM2.mycompany.com>
Date: Mon, 26 Aug 93 10:20:20 -0700 (CST)
MIME-Version: 1.0 (Voice 2.0)
Content-type: Multipart/Mixed; Boundary="MessageBoundary"
Content-Transfer-Encoding: 7bit
Message-ID: VM2.mycompany.com-123456789
--MessageBoundary
Content-type: Audio/32KADPCM
Content-Transfer-Encoding: Base64
Content-Description: Originator Spoken Name
Content-Language: EN-US
Content-ID: part3@VM2-4321
glslfdslsertiflkTfpgkTportrpkTpfgTpoiTpdadasssdasddasdasd
(This is a sample of the base-64 Spoken Name data) fgdhgd
dlkgpokpeowrit09==
--MessageBoundary
Content-type: Audio/32KADPCM
Content-Description: Voice Message
Content-Transfer-Encoding: Base64
glslfdslsertiflkTfpgkTportrpkTpfgTpoiTpdadasssdasddasdasd
(This is the voiced introductory remarks encoded in base64)
jrgoij3o45itj09fiuvdkjgWlakgQ93ijkpokfpgokQ90gQ5tkjpokfgW
dlkgpokpeowrit09==
--MessageBoundary
Content-type: Message/RFC822
Content-Transfer-Encoding: 7bit
To: 19725552345@VM2.mycompany.com
From: "Parsons, Glenn, W." <16135551234@VM1.mycompany.com>
From: Date: Mon, 26 Aug 93 8:23:10 -0600 (EST)
Content-type: Multipart/Mixed; Boundary="MessageBoundary2"
Content-Transfer-Encoding: 7bit
MIME-Version: 1.0 (Voice 2.0)
Vaudreuil, Parsons Expires 5/11/97 [Page 36]
Internet Draft VPIM v2 November 11, 1996
--MessageBoundary2
Content-type: Audio/32KADPCM
Content-Transfer-Encoding: Base64
Content-Description: Originator Spoken Name
Content-Language: EN-US
Content-ID: part6@VM2-4321
glslfdslsertiflkTfpgkTportrpkTpfgTpoiTpdadasssdasddasdasd
(This is a sample of the base-64 Spoken Name data) fgdhgd
dlkgpokpeowrit09==
--MessageBoundary2
Content-type: Audio/32KADPCM
Content-Description: Voice Message
Content-Transfer-Encoding: Base64
glslfdslsertiflkTfpgkTportrpkTpfgTpoiTpdadasssdasddasdasd
(This is the original message audio data) fgwersdfmniwrjj
jrgoij3o45itj09fiuvdkjgWlakgQ93ijkpokfpgokQ90gQ5tkjpokfgW
dlkgpokpeowrit09==
--MessageBoundary2
Content-type: Application/Directory
Content-Transfer-Encoding: 7bit
BEGIN:VCARD
N:Parsons;Glenn;W;Mr.;
EMAIL;TYPE=INTERNET:16135551234@VM2.mycompany.com
TEL:+1-613-555-1234
SOUND;TYPE=32KADPCM;ENCODE=BASE64;VALUE=CID:<part6@VM2-4321>
REV:19951031T222710Z
END:VCARD
--MessageBoundary2--
--MessageBoundary
Content-type: Application/Directory
Content-Transfer-Encoding: 7bit
BEGIN:VCARD
N:Vaudreuil;Greg;;Mr.;
SOUND;TYPE=32kbADPCM;ENCODE=BASE64;VALUE=CID:<part3@VM2-4321>
EMAIL;TYPE=INTERNET,VPIM:19725552345@VM2.mycompany.com
TEL:+1-972-555-2345
REV:19951031T222710Z
END:VCARD
--MessageBoundary--
Vaudreuil, Parsons Expires 5/11/97 [Page 37]
Internet Draft VPIM v2 November 11, 1996
The following example is for a message returned to the sender by a
VPIM gateway at VM1.company.com for a mailbox which does not exist.
Date: Thu, 7 Jul 1994 17:16:05 -0400
From: Mail Delivery Subsystem <MAILER-DAEMON@vm.company.com>
Message-Id: <199407072116.RAA14128@vm1.company.com>
Subject: Returned voice message
To: 2175552345@VM2.mycompany.com
MIME-Version: 1.0 (Voice 2.0)
Content-Type: multipart/report; report-type=delivery-status;
boundary="RAA14128.773615765/VM1.COMPANY.COM"
--RAA14128.773615765/VM1.COMPANY.COM
Content-type: Audio/32KADPCM
Content-Description: Voice Message Notification
Content-Transfer-Encoding: Base64
glslfdslsertiflkTfpgkTportrpkTpfgTpoiTpdadadffsssddasdasd
(This is a voiced description of the error in base64)
jrgoij3o45itj09fiuvdkjgWlakgQ93ijkpokfpgokQ90gdffkjpokfgW
dlkgpokpeowrit09==
--RAA14128.773615765/VM1.COMPANY.COM
content-type: message/delivery-status
Reporting-MTA: dns; vm1.company.com
Original-Recipient: rfc822; 2145551234@VM1.mycompany.com
Final-Recipient: rfc822; 2145551234@VM1.mycompany.com
Action: failed
Status: 5.1.1 (User does not exist)
Diagnostic-Code: smtp; 550 Mailbox not found
Last-Attempt-Date: Thu, 7 Jul 1994 17:15:49 -0400
--RAA14128.773615765/VM1.COMPANY.COM
content-type: message/rfc822
[original VPIM message goes here]
--RAA14128.773615765/VM1.COMPANY.COM--
Vaudreuil, Parsons Expires 5/11/97 [Page 38]
Internet Draft VPIM v2 November 11, 1996
16. Appendix C _ Example Error Voice Processing Error Codes
The following common voice processing errors and their corresponding
status codes are given as examples. Text after the error codes are
intended only for reference to describe the error code.
Implementations should provide implementation specific informative
comments after the error code rather than the text below.
Error condition RFC 1893 Error codes
----------------------------- ----------------------------------
-
Analog delivery failed 4.4.0 Persistent connection error
because remote system is busy - other
Analog delivery failed 4.4.1 Persistent protocol error
because remote system is - no answer from host
ring-no-answer
Remote system did not answer 5.5.5 Permanent protocol error
AMIS-Analog handshake ("D" in - wrong version
response to "C" at connect
time)
Mailbox does not exist 5.1.1 Permanent mailbox error
- does not exist
Mailbox full or over quota 4.2.2 Persistent mailbox error
- full
Disk full 4.3.1 Persistent system error
- full
Command out of sequence 5.5.1 Permanent protocol error
- invalid command
Frame Error 5.5.2 Permanent protocol error
- syntax error
Mailbox does not support FAX 5.6.1 Permanent media error
- not supported
Mailbox does not support TEXT 5.6.1 Permanent media error
- not supported
Sender is not authorized 5.7.1 Permanent security error
- sender not authorized
Message marked private, but 5.3.3 Permanent system error
system is not private capable - not feature capable
Vaudreuil, Parsons Expires 5/11/97 [Page 39]
Internet Draft VPIM v2 November 11, 1996
17. Appendix D - audio/32KADPCM Content Type
Mime type name: audio
Mime Sub-Type name: 32KADPCM
Required Parameters: None
Optional Parameters: None
Encoding Considerations: Binary or Base-64 generally preferred
ITU-T Recommendation G.726 [G726] (was G.721) describes the algorithm
recommended for conversion of a single 64 kbit/s A-law or mu-law PCM
channel encoded at 8000 samples/sec to and from a 32 kbit/s channel.
The conversion is applied to the PCM stream using an Adaptive
Differential Pulse Code Modulation (ADPCM) encoding technique.
No header information shall be included as part of the audio data.
The 4-bit code words of the G.726 encoding MUST be packed into
octets/bytes as follows: the first code word (A) is placed in the
four least significant bits of the first octet, with the least
significant bit (LSB) of the code word (A1) in the least significant
bit of the octet; the second code word (B) is placed in the four most
significant bits of the first octet, with the most significant bit
(MSB) of the code word (B4) in the most significant bit of the octet.
Subsequent pairs of the code words shall be packed in the same way
into successive octets, with the first code word of each pair placed
in the least significant four bits of the octet. It is preferred that
the voice sample be extended with silence such that the encoded value
comprises an even number of code words. However, if the voice sample
comprises an odd number of code words, then the last code word shall
be discarded.
+--+--+--+--+--+--+--+--+
|A1|A2|A3|A4|B1|B2|B3|B4|
+--+--+--+--+--+--+--+--+
LSB -> | 0| 1| 2| 3| 4| 5| 6| 7| <-MSB
+--+--+--+--+--+--+--+--+
32K ADPCM / Octet Mapping
In the context of VPIM, the Content-Description header SHOULD be used
to describe the contents of the audio body. The header must be able
to be parsed to find these identifying phrases: Voice Message,
Originator Spoken Name, Recipient Spoken Name, or Spoken Subject.
Other headers may be used with their defined semantics.
Vaudreuil, Parsons Expires 5/11/97 [Page 40]
Internet Draft VPIM v2 November 11, 1996
18. Appendix E - image/TIFF Content Type
Mime type name: image
Mime Sub-Type name: TIFF
Required Parameters: None
Optional Parameters: None
Encoding Considerations: Binary or Base-64 generally preferred
18.1 References
TIFF (Tag Image File Format) is defined in:
TIFF (TM) Revision 6.0 - Final _ June 3, 1992
Adobe Developers Association
Adobe Systems Incorporated
1585 Charleston Road
P.O. Box 7900 Mountain View, CA 94039-7900
A copy of this specification can be found in:
ftp://ftp.adobe.com/pub/adobe/DeveloperSupport/TechNotes/PDFfiles
TIFF Class F has previously never been documented in a detailed
fashion. However, it is clearly defined in Section 10.7.4 Spatial
Media of:
Enterprise Computer Telephony Forum
S.100 Revision 1.0
Media Services "C" Language
Application Programming Interfaces
THE ECT Forum
303 Vintage Park Drive
Foster City, CA 94404-1138
A copy of this specification can be found in:
http://www.ectf.org/ectf_s100.html
18.2 TIFF Class F
The essential parts of the ECTF S.100 definition are repeated here:
All implementations must be able to read and write TIFF files meeting
the requirements below. Image data must not have any coding errors.
Implementations may also read any other formats as long as available
formats can be disclosed to applications at run time.
ByteOrder: MM,II (Either byte order is allowed)
These tags shown below must be readable. If not present, receiving
implementation must use default shown:
Vaudreuil, Parsons Expires 5/11/97 [Page 41]
Internet Draft VPIM v2 November 11, 1996
TIFF Tags
Tag | Legal | Default | Comment
------------------|-------------|--------------|----------------------
BitsPerSample | 1 | 1 |one bit per sample
CleanFaxData | 0 | 0 |data has no errors
Compression | 3,4 | 3 |T.4 bi-level encoding,
| | | MH or T.6, MMR
FillOrder | 2,1 | 2 |LSB first or MSB first
ImageWidth | 1728 | 1728 |
ImageLength | >0 | |required
NewSubFileType | 2 | 2 |single page of
| | |multipage file
Orientation | 1 | 1 |1st row=top left,
| | | 1st col=top
PageNumber | X/X | 0/1 |pg/tot, 0 base,
| | | tot in 1st IFD
PhotometricInterp | 0 | 0 |0 is white
ResolutionUnit | 2 | 2 |inches
RowsPerStrip |=ImageLength |=ImageLength |
SamplesPerPixel | 1 | 1 |one sample per pixel
StripByteCounts | >0 | |required
StripOffsets | >0 | |required
T4Options | 4 | 4 |MH, byte aligned EOL
T6Options | 0 | 0 |MMR
Xresolution | 204,200,77 | 204 |
Yresolution | 196,98,100, | 196 |
| 200,77,38.5 | |
------------------|-------------|--------------|----------------------
Other tags may be present, but must be of the sort that can be ignored
safely by implementations (i.e. purely informational).
Recommended informational tags are:
Software, Datetime, BadFaxLines, ConsecutiveBadFaxLines
Vaudreuil, Parsons Expires 5/11/97 [Page 42]
Internet Draft VPIM v2 November 11, 1996
19. Appendix F - Change History: RFC 1911 to this Document
The updated profile in this document is based on the experience of a
proof of concept demonstration of VPIM at EMA'96 in April 1996. This
version of the profile is significantly different from the previous
described in [VPIM1]. The changes are categorized as general,
content, transport and conformance. They are detailed below:
1. General
- Refined audio/32KADPCM definition (i.e. nibble order)
- Added a refined definition for image/TIFF (includes tag defaults)
- Changed the Voice version to 2.0
- Added Table of Contents and more examples
- Various editorial updates to improve readability
2. Content
- Deprecated multipart/voice-message content because of the removal
of positional dependence of contents and the desire to interoperate
with minimal MIME implementations
- Explicitly defined the forwarding model using message/RFC822
- Explained the use of reply-to and from headers for addressing
message replies
- Deprecated the special `loopback' address because of security
concerns and its use only for testing
- Defined the non-mail-user reserved address to support the case in
which replies to the originator are not possible
- Eliminated the text name in the "To" and "CC" headers. Edited
the conformance to require family and given name only for persons
- Added support for facsimile using the refined image/TIFF content
- Profiled the Vcard in the application/directory body part for
transport of directory information about the originator
- Loosened text restriction
- Added additional details on delivery notifications
- Added suggested addressing formats
- Described handling of private messages
- Described the handling of non-profiled contents in VPIM messages
Vaudreuil, Parsons Expires 5/11/97 [Page 43]
Internet Draft VPIM v2 November 11, 1996
3. Transport
- Moved binary support to optional
- Added optional ESMTP keywords for return of content, enhanced
status codes, original recipient, and envelope ID
- Described use of null MAIL FROM address
4. Compliance
- Added an explicit section on conformance allowing conformance to
all or any of three conformance areas
- Improved conformance table
Vaudreuil, Parsons Expires 5/11/97 [Page 44]