Mail(special file)

NAME
Mail — compose or mail a document

SYNOPSIS

[file] Mail(in mediaType contents);
[file] Mail([out|inout] mediaType contents
        [in title docName]);

DESCRIPTION

The Mail request causes the handler to route a document to a destination using the mail message handling system. The handler is responsible for finding routing information in the document.

When the contents argument is of mode in, the handler must deliver the document as is, without interacting with the user.

When the contents argument is of mode inout or out, the handler must allow the user to compose or edit the document (and any embedded routing information) before it is delivered. If the handling tool supports some form of intermediate ``save'' operation, it must send a Deposit request back to the tool that initiated the Mail request.

The contents argument is the contents of the document. If this argument is unset (in other words, has a value of (char *)0), then the contents of the document are in the file named in the message's file attribute. The data type (mediaType) of the contents argument should be string, unless nulls are valid in the given media type, in which case the data type must be bytes.

The docName argument contains the name of the document. If the docName argument is absent and the file attribute is set, the file name is considered to be the title of the document. This string would be suitable for display in a window title bar, for example.

APPLICATION USAGE

The ttmedia_ptype_declare(3) function can be used to register for, and help process, this message.

This message can be sent with the ttmedia_load(3) function.

ERRORS

The ToolTalk service may return one of the following errors in processing the Mail request:

TT_DESKTOP_ENOENT
    The file that was alleged to contain the document does not exist.

TT_DESKTOP_ENODATA
    The in-mode contents argument had no value and the file attribute of the message was not set.

TT_MEDIA_ERR_FORMAT
    The document is not a valid instance of the media type.

SEE ALSO

ttmedia_ptype_declare(3), ttmedia_load(3); Intro, Edit requests.