65 Message Store Message Type Overview

This information provides the conceptual background for using message types in the message store. See "Managing Message Types in the Message Store" for task information.

This chapter includes the following topics:

About Message Type

A unified messaging application can receive, send, store, and administer messages of many types, including text messages, voice mail, fax mail, image data, and other data formats. The message store allows you to define up to 63 different message types.

One method of managing messages by type is to organize the messages by their types into individual folders.

With the introduction of the message type feature, you do not have to maintain different message types in individual mailbox folders. Once you configure a message type, the message store can identify it, no matter where it is stored. Thus, you can store heterogeneous message types in the same folder. You also can perform the following tasks:

  • Track the usage of message types

  • Send notifications grouped by message type

  • Set and administer different quotas for different message types, whether they are stored in the same folder or different folders

  • Move messages from one folder to another, according to criteria configured uniquely for each message type

  • Expire messages according to criteria configured for each message type

Planning the Message-Type Configuration

In a unified messaging application, data of heterogeneous formats are given standard internet message headers so that Oracle Communications Messaging Server can store and manage the data. For example, when voice mail is sent to an end-user's phone, a telephone front-end system adds a message header to the incoming voice mail and delivers it to the message store.

To recognize and administer messages of different types, all components of the unified messaging system must use the same message-type definitions and the same header fields to identify the messages.

Before you configure the message store to support message types, you must:

  • Plan which message types you intend to use

  • Decide on the definition for each message type

  • Decide which header field to use

For example, if your application includes phone messages, you can define this message type as "multipart/voice-message" and use the Content-Type header field to identify message types.

You would then configure the telephone front-end system to add the following header information to each phone message to be delivered to the message store:

Content-Type: multipart/voice-message

Next, you would configure the message store to recognize the multipart/voice-message message type, as described in the sections that follow.

Defining and Using Message Types

You define a message type by giving it a unique definition such as multipart/voice-message. By default, the message store reads the Content-Type header field to determine the message-type. If you prefer, you can configure a different header field to identify the message types.

The message store reads the Content-Type (or other specified) header field, ignoring case. That is, the message store accepts the header field as valid even if the header's combination of uppercase and lowercase letters differs from the expected combination.

The message store reads only the message-type name in the header field. It ignores additional arguments or options.

To define a message type, use the msconfig command to set values for the store.messagetype option. For instructions, see "To Configure Message Types."

Configuring a message type allows the message store to identify and manipulate messages of the specified type. It is the first, essential step in administering message types in a unified messaging application.

To take full advantage of the message-type features provided by the message store, you also should perform some or all of the following tasks:

  • Configure a JMQ notification plug-in and write Message Queue clients for retrieving notifications that track the status of the message types

  • Configure quota roots that apply to each message type

  • Write expire rules and set LDAP attribute values to expire and purge messages according to message type

Message Types in IMAP Commands

When you configure the store.messagetype.mtindex:n.flagname option for a message type, you create a unique flag that identifies the message type. This flag cannot be modified by end users.

Messaging Server presents the message-type flag as a user flag to IMAP clients. Mapping the message type to a user flag allows mail clients to use simple IMAP commands to manipulate messages by message type.

For example, you can perform the following operations:

The message-type user flag is read only. It cannot be modified by IMAP commands.

The following examples assume that you configure the message-type msconfig options with the values shown here:

store.messagetype.enable 1
store.messagetype.mtindex:1.contenttype text/plain
store.messagetype.mtindex:1.flagname text
store.messagetype.mtindex:1.quotaroot text
store.messagetype.mtindex:2.contenttype multipart/voice-message
store.messagetype.mtindex:2.flagname voice_message
store.messagetype.mtindex:2.quotaroot voice

Example 1: IMAP FETCH Session Based on the Message-Type msconfig Configurations

The following IMAP session fetches messages for the currently selected mailbox:

2 fetch 1:2 (flags rfc822)
* 1 FETCH (FLAGS (\Seen text) RFC822 {164}
Date: Wed, 8 July 2006 03:39:57 -0700 (PDT)
From: bob.smith@example.com
To: john.doe@example.com
Subject: Hello
Content-Type: TEXT/plain; charset=us-ascii
* 2 FETCH (FLAGS (\Seen voice_message) RFC822 {164}
Date: Wed, 8 July 2006 04:17:22 -0700 (PDT)
From: sally.lee@example.com
To: john.doe@example.com
Subject: Our Meeting
Content-Type: MULTIPART/voice-message; ver=2.0
2 OK COMPLETED

In the preceding example, two messages are fetched, one text message and one voice mail.

The message-type flags are displayed in the format configured with the store.messagetype.mtindex:n.flagname option.

The Content-Type header fields identify the message types. The message-type names are displayed as they were received in the incoming messages. They use mixed uppercase and lowercase letters and include the message-type arguments such as charset=us-ascii.

Example 2: IMAP SEARCH Session Based on the Message-Type msconfig Configurations

The following IMAP session searches for voice messages for the currently selected mailbox:

3 search keyword voice_message
* SEARCH 2 4 6
3 OK COMPLETED

In the preceding example, messages 2, 4, and 6 are voice messages. The keyword used in the search is voice_message, the value of the store.messagetype.mtindex:2.flagname option.