Skip Headers

 Oracle9iAS Unified Messaging Administrator's GuideRelease 9.0.2Part Number A95454-01

# 4Servers and Processes

This chapter discusses the different servers and processes of the Oracle9iAS Unified Messaging system.

This chapter contains the following topics:

## Mail Store

The Oracle9iAS Unified Messaging mail store is the location where messages and folder information are stored. If a message is destined for many accounts on that mail store, only one copy of the message is stored and links to the message are sent to all recipients. Folders can be private, shared, or public. A single mail store can store mail for one domain or several different domains. If you have an extremely large domain, it is possible to have multiple mail stores support a single domain.

Applications can make direct PL/SQL procedure calls to act upon messages similar to the voice mail client use standard protocol servers or JMA+ libraries. Calls made to the stored procedures are executed in the mail store.

The mail store loads stored procedures that enable the following features:

### High-Level Interface

The Oracle9iAS Unified Messaging mail store has a comprehensive and high-level PL/SQL interface. Clients make high-level calls to the mail store.

Because the logic of the PL/SQL procedures take place inside the Oracle9i database mail store, close to the actual data, mail transactions are greatly simplified and more reliable. Oracle9iAS Unified Messaging, by definition, enables multiple clients and client types to access the same mail store. By having all clients enter through the same interface and perform processing in the mail store, all clients achieve the same goals with the same behavior.

For example, a typical Oracle9iAS Unified Messaging installation enables a user to listen to voice mail messages from any one of three clients:

• Telephone handset client

• Standard IMAP4 mail client

• Web Client

In a typical telephone situation, if a voice mail message has not been heard, the Message Waiting Indicator (MWI) light on the user's telephone is on. If all voice mail messages have already been listened to, the light is off. Because the MWI logic is placed inside the mail store and not in the Web client, standard client, or telephone handset, the solution consistently and appropriately turns the light off no matter which client was used to listen to the voice mail messages.

### Process Close to the Data

All of the Oracle9iAS Unified Messaging scalable protocol servers and access servers perform tasks within the stored PL/SQL procedures running within the mail store. One can query an entire mail store with a simple request and the mail store efficiently carries it out. This comprehensive high-level interface enables effective support for system-wide rules, individual rules, server side filters, and spam control, for a very large and dynamic mail store without serious degradation. It also affords Oracle9iAS Unified Messaging the ability to query and update the mail store efficiently.

### Extensible Store

The mail store can be extended by or integrated with other Oracle product capabilities. Filters can be applied that automatically act on all mail messages. The filters can either perform common mail tasks on a mail message, or they can pass the mail message to an external program.

For example, an Oracle9iAS Unified Messaging e-mail server can be set up to filter all mail messages sent to the abstract Helpdesk mail account of a company. Each message is broken down into its main body and any attachments. Each part is then passed, individually, through the Oracle Text engine. The results can then be routed to the appropriate support representative, who can choose from a list of possible responses to the specific request or create and log a new response.

 See Also: Chapter 2, "Getting Started" for more information on how to install a mail store

### Modifying Mail Store Default Parameters

Using Oracle Enterprise Manager, perform the following steps to modify mail store default parameters:

1. Navigate to the Oracle9iAS Unified Messaging Service Targets page.

2. Select a server type. For example, IMAP, POP, SMTP, Housekeeping, or List server.

3. Select the mail store for which you want to make changes.

4. Modify the parameters you want to change.

5. Click Apply.

### Modifying Mail Store Connection Parameters

Using Oracle Enterprise Manager, perform the following steps to modify mail store default parameters:

1. Navigate to the Oracle9iAS Unified Messaging Service Targets page.

2. Select a server type. For example, IMAP, POP, SMTP, Housekeeping, or List server.

3. Select the mail store for which you want to make changes.

4. Modify the parameters you want to change.

5. Click Apply.

### Mail Store Parameters

The following is a list of mail store parameters.

Timeout

Connections idle for more than this time value are terminated, to maintain an optimum number of open connections

Increment

Oracle9iAS Unified Messaging can increase the number of connections to be opened to the database bye this number, if the current number of connections are less than maximum. Valid values are 0 and above.

Minimum

Specifies the minimum number of connections in the connection pool. Valid values are 0 and above.

Maximum

Specifies the maximum number of connections that can be opened to the database. Once this value is reached, no more connections are opened. Valid values are 1 and above.

Database Host

The machine on which the database is located.

Mail Store Port

Port number the database listener is listening on.

Default Value: 1521

Database SID

System identifier of the mail store database.

Default Value: none

User Name

The user name used to log into the mail store database as the mail user.

Default Value: es_mail

Password

The password for the mail store user name.

Default Value: es

### Oracle Text Settings

The integration of Oracle Text and Oracle9iAS Unified Messaging extends the e-mail server functionalities. This enables text search in e-mails, e-mail theme generation, and e-mail formatting functions such as, highlight and markup.

Oracle Text is installed by default when Oracle9iAS Unified Messaging is installed. However, if database user ctxsys is not present at the time of installation, the Oracle Text installation will fail.

There are two user level Oracle Internet Directory parameters associated with the configuration of Oracle Text:

• orclMailUserIndexType: This parameter enables text search capability for users. When this parameter is set to 1 or 2 for a user, the user can use any supported client to perform server side search on message bodies.

• orclMailIsDocBinary: This parameter controls whether only the text or the complete contents of e-mail messages should be used for e-mail theme generation and e-mail formatting functions

The following table describes the parameter values for orclMailUserIndexType and orclMailIsDocBinary

Oracle Internet Directory Parameter Name & Associations Type Possible Values

orclMailUserIndexType/ text search

number

0:do not index incoming e-mail (default)

1:for incoming e-mails, index text contents only

2:for incoming e-mails, index both text and binary contents

orclMailIsDocBinary/ document service

Boolean

false: when requesting document service, process only text contents (default)

true: when requesting document service, index both text and binary contents

The parameters are independent of each other, and can be configured at the user level. The parameters are present at the domain level preferences for viewers. The values set here are inherited by all new users in the domain during user creation time. To view or modify parameter values, use Oracle Enterprise Manager.

Oracle Text provides both a Java Software Developer's Kit (SDK) and a PL/SQL SDK for application integration. Applications can interface with the SDKs to use or extend Oracle Text functionalities.

### Quota

There are two quota values that can be set for a user: user-quota and voice-quota. All e-mails and voice mails are delivered to the user as long as the user is under user-quota. When user-quota is reached, all e-mails are held in the system and are not delivered to the user. However, voice mail delivery continues as long as the user's total usage is under user-quota plus voice-quota value. For example, if the user-quota is 50MB and the voice-quota is 20MB, e-mail delivery stops after the user's usage is 50MB but the voice mail delivery continue until the user reaches 70MB.

When the user cleans up the account and the usage is under the user-quota plus voice-quota value, voice mail delivery starts again. When the usage is under user-quota, e-mail delivery starts again. It is important to note that both e-mails and voice mails contribute to the user-quota calculations. When the usage reaches the user-quota, it means that the sum of e-mails and voice mails is equal to the user-quota value. Voice-quota is an additional buffer provided to users so that voice mail delivery is not affected when users reach their quota.

In addition to stopped mail delivery, users cannot save new messages in the server folders when user-quota is reached. For example, saving a copy of outgoing messages to the sent folder is not allowed. The IMAP server informs the client that the user is over quota and is trying to save new mail.

### Server Side Filters

Server side filters enable users to create mailbox filters on the server. Users can use the Thin Client to create rule-based actions, such as message foldering, vacation reply, spam filter, and wireless notification. Because the filters are created on the server, the actions are carried out whether the user is online or not.

The filters engine enables customized auto-actions on e-mail messages being processed, based on a variety of customizable events and conditions.

The filters engine is an automated layer between server processes and message objects. It provides scripted operations done on behalf of the server processes to the message objects. The filters engine maintains its script database in the mail store.

## IMAP4 and POP3 Processes

Internet Message Access Protocol (IMAP) and Post Office Protocol (POP), are protocols for retrieving e-mail messages.

The POP3 protocol provides mail manipulation services for certain types of smaller nodes on the Internet where it is often impractical to maintain a message transport system, or in situations where it is undesirable to keep an Internet connection open for long periods of time. Messages are temporarily stored on the server until they are downloaded to a client machine.

The IMAP4 protocol provides a set of functionality to manipulate mail messages as well as mail folders, which are stored on the server. It provides primitives to allow optimization of online performance, especially when dealing with large MIME messages. The IMAP4 protocol also provides the capability for an off-line client to re-synchronize with the server.

### Standards Supported

The IMAP4 and POP3 servers support the IMAP4 and POP3 protocols as described in the RFC-2060 and RFC-1939 respectively.

 See Also: www.ietf.org for more information on RFCs

The IMAP4 Server also supports the following IMAP4 extensions:

• RFC-2087 IMAP4 QUOTA extension

• RFC-2088 IMAP4 non-synchronous literals

• RFC-2859 IMAP4 UIDPLUS extension

• RFC-2177 IMAP4 IDLE command

• Draft IMAP4 - SORT Extension

### Process Architecture

By using the scalable protocol server programming framework, the IMAP4 and POP3 Servers obtain the benefits of multithreading, database connection sharing, and load balancing, which enables the servers to support thousands of concurrent user connections.

The IMAP4 and POP3 support a large number of client connections, using a very small amount of system resources for each client connection. It maintains a pool of worker threads, which handles the work for the clients and also a pool of database connections shared across client connections. When a client request comes in, a thread from the pool of worker threads is assigned to it. The worker threads read the command from the client, obtain a database connection from the database pool, and perform the operation. After the database connection is released back to the pool, the thread returns to the worker thread pool. There can be multiple mail stores in the system. The IMAP4 and POP3 servers can be set up to create database connection pools to more than one mail store. Administrators should check the IMAP4 and POP3 server parameters on how to control the size of the pools.

Many operating systems have limitations on the number of file descriptors and sockets a single process can open, requiring more than one instance of an IMAP4 or POP3 server to be running. If there is more than one instance running on the server, the listener distributes the load between them. Administrators should verify that the operating system parameter controlling the file descriptors for a process is correctly set.

#### Figure 4-1 Process Architecture

Text description of the illustration iumag001.gif

### Process Log Writing

The IMAP4 logs are written in $ORACLE_HOME/oes/log/<install_name>/imap/<pid>/<pid>.log. Different log levels determine the amount of information produced by from the servers. There are five different log levels. Their names and values from least to most are:  Error Level Numeric Value Internal Errors 1 Errors 6 Warnings 11 Notification 16 Trace 21 Dump 26 ## SMTP Process Simple Mail Transfer Protocol (SMTP), is a protocol for sending e-mail messages between servers. Most e-mail systems that send mail over the Internet use SMTP to send messages from one server to another; the messages can be retrieved with an e-mail client using either POP or IMAP. Mail clients generally use SMTP to send messages to a mail server. The SMTP server handles all inbound and outbound mail. It implements the SMTP protocol and interacts with DNS and Oracle Internet Directory servers to get information about hosts and users. ### Standards Supported The following is a list of the SMTP server -supported RFCs.  See Also: www.ietf.org for more information on RFCs. SMTP Base Protocol RFC 821 - Simple Mail Transfer Protocol (SMTP) RFC 1123 - Requirements for Internet hosts - application and support SMTP Extensions RFC 1869 - SMTP Service Extensions RFC 1652 - SMTP Service Extension for 8bit-MIME transport RFC 1870 - SMTP Service Extension for Message Size Declaration RFC 1891 - SMTP Service Extension for Delivery Status Notifications RFC 1894 - An Extensible Message Format for Delivery Status Notifications (DSNs) RFC 2034 - SMTP Service Extension for Returning Enhanced Error Codes Mail Format Standards RFC 822 - Standard for the format of ARPA Internet text messages RFC 2045 - MIME Part 1: Format of Internet Message Bodies RFC 2046 - MIME Part 2: Media Types RFC 2047 - MIME Part 3: Message Header Extensions for Non-ASCII Text RFC 2048 - MIME Part 4: Registration Procedures RFC 2049 - MIME Part 5: Conformance Criteria and Examples ### Various Configurations Oracle9iAS Unified Messaging has a flexible architecture that enables users to set up a single, double, or multiple tier configuration that is appropriate to a site's needs. The following are examples of various configurations. #### Figure 4-2 Simple Single Node Setup Text description of the illustration iumag002.gif Figure 4-2 is the simplest setup where there is only one mail store and SMTP server running on the same host. This configuration can be used for supporting a small numbers of users. #### Figure 4-3 Two Tier Setup Text description of the illustration iumag003.gif Figure 4-3 is a single mail store setup, with the processes divided into two tiers: the backend running the database and the middle tier running SMTP and other protocol servers. It provides fault tolerance and the flexibility to run multiple SMTP servers and distribute load across them. Load balancing and fault tolerance can be achieved by running the servers behind a network director or by having multiple MX records for the domain. #### Figure 4-4 Multiple Mail Stores Setup Text description of the illustration iumag004.gif Figure 4-4 shows two kinds of configurations: multiple mail stores on different hosts and multiple mail stores on the same host. Each SMTP server serves only one mail host and each mail store must have a SMTP server. The mail stores on the SMTP hosts are used as SMTP queues and do not contain users. ### Message Flow The SMTP message transfer agent engine is responsible for the incoming SMTP connection. It receives incoming messages and performs address lookup and rewriting. The Oracle Internet Directory server is queried to find and authenticate the addresses. Addresses are rewritten based on the rewriting rules. Anti-spamming rules and external filtering are applied. If all of the above are successful, the SMTP message transfer agent accepts the message and inserts it into the corresponding queue based on the destination address. If the recipient is an outside user, the message is stored in the relay or submission queue awaiting further processing. If the recipient is local, the message is stored in the local delivery queue. To determine if an address is local, the parameter SMTPlocaldomains is used. This parameter contains the list of domains that are considered local. The local delivery process picks up the message later, applies the rules, if any, and delivers it to the user's inbox. If administrators do not want to process the messages immediately for performance reasons, messages can be stored in the relay/submission queue and marked as submitted or unprocessed. This is controlled by the server parameters. Messages created by the SDK applications are also marked as submitted in this situation. The messages in the relay/submission queue are picked up by the outbound queue processor. For relay messages, the outbound processor queries the DNS server, applies the rules against them, and sends them out using SMTP. The submitted messages first go through the Address Rewriting and DNS resolution module. Next they are passed to the external filter, if there is any. Finally, the outbound queue processor sends them to the local delivery queue or to the Internet, depending on whether the messages' recipients are local or not. During the address resolution phase, if the server determines that the message should be sent to a distribution list handled by the list server, it places the message in the list server queue. The list server then picks up this message, expands the distribution list and delivers the message. If the message is for a user on a different mail store, then the message is placed in the relay queue. The outbound server picks up the message and transfers the mail to the other mail store using the SMTP protocol. ### Inbound SMTP Server Architecture The Oracle Net listener listens on the SMTP port, default 25, and transfers connections to the SMTP server. The SMTP server maintains a pool of worker threads and two other pools: a database connection pool to the mail store and a pool of connections to the Oracle Internet Directory server. Upon receipt of a new client connection, a thread is picked up from the pool to handle the request. It performs name resolution using a connection from the Oracle Internet Directory pool and then inserts the mail into the database using a connection from the database pool. At this point the SMTP connection to the client is terminated, but if there are local recipients, the worker thread continues to process the mail and performs local delivery. #### Figure 4-5 SMTP Inbound Text description of the illustration iumag005.gif ### Outbound SMTP Server Architecture The outbound STMP server has three main threads for each queue: submission, local, and relay. Each of the threads poll the database for messages in its queue. Whenever there are messages to process, a new thread is spawned to process the mail. If the delivery of an e-mail fails, the message is returned into the queue and delivery is retried after intervals defined by the minqueueage parameter. If the attempted re-deliveries are unsuccessful during the interval equal to the queuetimeout parameter, a delivery failure message is sent to the sender. #### Figure 4-6 SMTP Outbound Text description of the illustration iumag006.gif ### Antispamming The SMTP server supports a variety of anti-spam methods to prevent users and domains from spamming and to prevent the server from being used as relay for other domains. The various spam prevention methods are: Method Description Relay blocking: The SMTP server can be set up to block all relaying. Alternatively it can setup to relay only a known set of domains. For example to allow relaying of all messages received from hosts within the foo.com domain, the RelayDomains parameter can be set up to foo.com. Reject messages received from certain domains: The RejectSender parameter can be used to set up a list of domains from which messages are not allowed. Reject messages from certain senders: The RejectDomains parameter contains the list of senders who are not allowed to send messages. Reject messages for certain recipients: The Rejectrecipients parameter contains the list of recipients who are not allowed to receive messages. Prevent service attack denials: The SMTP Floodmax and TimeInterval parameters can be set to control the number of messages coming from a host. If more than Floodmax connections and messages are received from a particular host in the Timeinterval, all further messages from that host are rejected until the rate of incoming messages from the host falls below the Floodmax level. ### Virus Checking Virus checking is performed by setting rules that can check various message headers and reject messages based on certain criteria. ### External Process Interface After a message is inserted into the database and before it is delivered, an external process can be used to filter the mail. An example of this is an virus scanner that can be invoked to scan the messages and reject messages that are infected. The external process returns a true or false indicating whether to accept or reject the mail. It is controlled by the following server parameters: • orclmailsmtpexternalfilter: A Boolean operator to indicate if external filter processing is turned on. • orclmailsmtpexternalfilterprocess: Path name of the executable for the external filter process ### Address Rewriting Rules Address Rewriting Rule Attributes An address rewriting rule can have the following attributes:  Attribute Type (Length) Description RuleNo NUMBER Specifies the number of the sequence Pattern VARCHAR(255) Pattern of the addresses you want to rewrite. Result VARCHAR(255) Result that shows how you want to change addresses that fit the pattern. Description VARCHAR(255) Description of the rule ### Rule Symbols Address rewriting rules contain symbols that determine how an address is parsed and how it is changed. Symbol Description$+

Represents a non-empty string in a pattern.

$* Represents an empty or non-empty string in a pattern.$1, $2 Identifies parts of an address in a result.$:

If this symbol is at the beginning of a rule, it indicates that the rule should be applied only once.

$@ Stop immediately and ignore the remaining rules. This symbol must appear at the beginning of the result.   ### Rule Execution Guidelines Address renaming rules are applied sequentially, starting with Rule 1. All rules are applied, unless a result starts with $@, that stops rule execution immediately and ignores any remaining rules. If a rule has a syntax error or cannot be executed, it is ignored.

A rule is applied to its own output in a loop until application of the rule yields no more changes in the result. The next rule in the sequence is then applied. After all the rules have been executed, an Oracle Internet Directory resolution is performed on the result. If the Oracle Internet Directory resolution returns a changed address such as an alias, the address rewriting rules are applied to the changed address, and the Oracle Internet Directory resolution is performed again. When the Oracle Internet Directory resolution yields no more changes, the rule execution process is done.

## Housekeeping Process

Housekeeping is a standalone component that directly interacts with the mail store database. It is a background process performing cleanup tasks that can be set to run according to a schedule. During Oracle9iAS Unified Messaging installation, a housekeeping job is created by default and has a default configuration associated with it. Administrators can manually alter its schedule or add more instances of the job.

Job scheduling and management are taken care of by Oracle Enterprise Manager. During the time a housekeeping process is running, it responds to administrative requests such as reporting job progress, reinitializing job parameters, or shutting down.

 See Also: Oracle Enterprise Manager Administrator's Guide for more information on job scheduling

Other servers interact with housekeeping by producing garbage. There are primarily three types of garbage - producing agents:

• SMTP

• IMAP and POP3

• Housekeeping

Housekeeping performs tasks in multiple stages, with some stage of operations producing garbage for another stage. For example, when performing message expiration stage, the housekeeping process produces messages that are later consumed by the pruning stage.

SMTP server creates and processes messages that are mostly in transit. The messages stay in queues until the SMTP server finishes processing them. The processed messages are marked as processed, sent to the housekeeping process, and removed from the system. When users delete messages through clients, the messages are marked for deletion and are picked up by housekeeping process for actual deletion.

The housekeeping log files are located in two areas: the mail store and the middle tier. The log file on the mail store contains information on the progress of housekeeping tasks, the log file on the middle tier contains information on the status of the process.

### Tertiary storage

Mailboxes are dynamic in nature. Mail constantly enters the store and is processed and deleted. Oracle9iAS Unified Messaging housekeeping cleans up deleted messages and can be set to move old and rarely read mail messages to a tertiary tablespace.

## List Server Process

List servers provide a means of public list management as well as integration with other messaging services or applications.

The Oracle9iAS Unified Messaging list server enables users to own and administer public mailing lists. The lists can be set up as a means of distributing information to groups of people or as a discussion forum. In addition, lists can be set up with restricted membership, where users must be approved before becoming a member. Lists can also be set up so that any messages sent out are moderated, where only certain members can send out messages. For example, the administrator of a mailing list may screen out advertisements.

When a distribution list has a large number of members, the Oracle Internet Directory Max Search Results Entries parameter must be configured to return a large number of entries to enable the list resolution API to return all the members. The Oracle Internet Directory Max Search Results Entries parameter can be configured through oidadmin.

APIs provided with the Oracle9iAS Unified Messaging list server enable users to customize lists and messages sent out to a list. The Oracle9iAS Unified Messaging list server features can be used for applications such as marketing campaigns where special non-transferable offers are sent and readable only by the intended recipients. For example, a user can use the list server APIs to query a database of sales information to create a list of all customers who have made purchases in the past three months, then send coupons by e-mail to each of the customers with discounts based on the amount of their purchases.

### List Server Mail Interface

The list server mail interface command is a list of commands that administrators and users can send to the list server to perform certain tasks. The setattribute command is used by administrators to set values for various list parameters.

 See Also: Oracle9iAS Unified Messaging User's Guide for more information on list server mail interface commands for users.

#### Setattribute

Use this command to set values for the various parameters of the lists by an administrator.

Syntax
setattribute type=<list type> subscription=<subscription type> topic="<list
topic>" autoreconfirm=<true/false> post=<post type> editor=<editor mailid>
moderator=<moderator mailid> invitetext="<multi-line text>"



Although none of the parameters are mandatory, every setattribute command should have at least one parameter. The following is a list parameters and their definitions:

Parameter Definition

type

This sets the type of the list. Valid values are announcement, discussion, edited, and moderated.

subscription

This sets the type of subscription control you want on the list. Valid values are open, restricted, and closed.

topic

This sets the list topic. The topic value needs to be enclosed within quotes.

autoreconfirm

This sets whether subscription commands should reconfirmed by the list server or not. Valid values are true or false.

post

This sets the posting type allowed by the list. Valid values are open or subscriber.

editor

For an edited list, this parameter sets the editor for the list. More than one editor parameter can be set with a single setattribute command.

moderator

For a moderated list, this parameter sets the moderator for the list. More than one moderator parameter can be set with a single setattribute command.

invitetext

This parameter specifies text that will be part of the mail sent to users an owner invites to join his/her list using the invite command. The parameter value should be enclosed within quotations. This text can be multi-lined and individual lines should be separated with a newline (\n) character.

#### Mail Merge and Schedule Mail Delivery

The list server supports mail merge and scheduled mail delivery. This feature can be enabled for a list by providing a value for the merge tag property of the list.

#### Mail Merge

Mail merge: Enables customized mail to be delivered to every list recipient. The list server supports two types of mail-merge:

• Standard mail-merge: In this type of mail-merge, the contents of a mail can be customized for each recipient with the following values:

Recipient's mail address(recipient_mail_address)
Recipient's first name(recipient_first_name)
Recipient's last name(recipient_last_name)
Recipient's full name(recipient_full_name)
Current date(current_date)
Current time(current_time)



To use this feature, use the mail merge tag in the appropriate sections of the mail. For example, If the list's mail merge property is orcl, and the mail is addressed with the recipient's full name, the mail looks like the following:

Dear <orcl>recipient_full_name</orcl>,
...
...


• PL/SQL mail-merge: Enables embedding of PL/SQL in messages. For every recipient, the PL/SQL function is executed and the output is embedded in the mail before delivery. The PL/SQL function must return a varchar2 string. As a parameter to the PL/SQL function, any of the parameters defined in the standard mail-merge can be included.

For example, if you have a PL/SQL getsalary function that returns the salary of an individual given his mail address, you can send a mail to a list of employees letting them know their salaries as follows.

Dear <orcl>recipient_full_name</orcl>,
Your salary is <orcl>getSalary(recipient_mail_address)</orcl>.
...



By default, the list server looks for the PL/SQL function in the mail store that the server is connected to. If the function is on a different database, a database link must be created to that database in ES_MAIL schema and use that in the mail-merge tag. For example, the getSalary function is defined in a different database, create a database link called dblink. The mail will now look like this:

Dear <orcl>recipient_full_name</orcl>,
Your salary is <orcl>getSalary(recipient_mail_address)@dblink</orcl>.
...


#### Scheduled Mail Delivery

This feature can be used to schedule mail delivery to a list at a particular time. This feature can be enabled by providing a value for the mail merge property of the list. In the mail, specify the delivery time of the mail by putting in the schedule mail delivery tag anywhere in the mail. The following is an example of how the tag appears if the mail merge property of the list is orcl.

<orcl>send_schedule=DD-MON-YYYY hh24:mi [TZH:TZM]</orcl>

 Parameter Description DD The date MON The 3 letter abbreviation for the month YYYY The year hh24 The time in a twenty-four hour period mi The time in minutes TZH The optional time zone hour offset TZM The optional time zone minute offset 

If TZH and TZM are not specified, the list server uses the sender's time zone to schedule delivery of the mail.

## Managing Server Processes

This section discusses how to start, stop, reinitialize, and modify server processes.

### Starting, Stopping, or Reinitializing All Server Processes

 Note: The following functions can only be executed if there is at least one instance has been created.

Using Oracle Enterprise Manager, perform the following steps to start, stop, or reinitialize all server processes:

1. Navigate to the Oracle9iAS Unified Messaging Service Targets page.

2. Select the server type. For example, IMAP, POP, SMTP, Housekeeping, or List server.

3. Click Start, Stop, or Reinitialize.

### Creating a Server Instance

Using Oracle Enterprise Manager, perform the following steps to create a server instance:

To create a new IMAP4 server instance with default parameters:

1. Navigate to the Oracle9iAS Unified Messaging Service Targets page.

2. Select the server type. For example, IMAP, POP, SMTP, Housekeeping, or List server.

3. Click Create. This creates a new server instance with default parameters.

To create a new server instance with the same parameter values as an existing server instance:

1. Select the process with the parameters you want to replicate.

2. Click Create Like. This creates a new server instance with the same parameters as the selected server instance.

### Deleting a Server Instance

 Note: A process must be shut down before it can be deleted.

Using Oracle Enterprise Manager, perform the following steps to delete a server instance:

1. Navigate to the Oracle9iAS Unified Messaging Service Targets page.

2. Select the server type. For example, IMAP, POP, SMTP, Housekeeping, or List server.

3. Select the server process you want to delete.

4. Click Delete.

### Starting a Server Instance

Using Oracle Enterprise Manager, perform the following steps to start a server instance:

1. Navigate to the Oracle9iAS Unified Messaging Service Targets page.

2. Select the server type. For example, IMAP, POP, SMTP, Housekeeping, or List server.

3. Select the server instance you want to start.

4. Click Start.

### Stopping a Server Instance

Using Oracle Enterprise Manager, perform the following steps to stop a server instance:

1. Navigate to the Oracle9iAS Unified Messaging Service Targets page.

2. Select the server type. For example, IMAP, POP, SMTP, Housekeeping, or List server.

3. Select the server instance you want to stop.

4. Click Stop.

### Reinitializing a Server Instance

 Note: Servers must be reinitialized whenever parameters are modified.

Using Oracle Enterprise Manager, perform the following steps to reinitialize a server instance:

1. Navigate to the Oracle9iAS Unified Messaging Service Targets page.

2. Select the server type. For example, IMAP, POP, SMTP, Housekeeping, or List server.

3. Select the server process you want to reinitialize.

4. Click Reinitialize.

### Modifying Parameters for a Specific Server Instance

Using Oracle Enterprise Manager, perform the following steps to modify parameters for a specific server instance:

1. Navigate to the Oracle9iAS Unified Messaging Service Targets page.

2. Select the server type. For example, IMAP, POP, SMTP, Housekeeping, or List server.

3. Select the server instance you want to modify.

4. Modify the parameters you want to change.

5. Click Apply.

To make the changes take effect, you must reinitialize the server instance.

### Modifying Server Default Parameters

Using Oracle Enterprise Manager, perform the following steps to modify server default parameters:

1. Navigate to the Oracle9iAS Unified Messaging Service Targets page.

2. Select the server type. For example, IMAP, POP, SMTP, Housekeeping, or List server.

3. Select Change Settings.

4. Modify the parameters you want to change.

5. Click Apply.

To make the changes take effect, you must reinitialize the server.

### Server Parameters

The following is a list of server parameters and descriptions:

#### IMAP4

Protocol Server Increment Thread

This parameter specifies the number of threads the client connection pool is increased by.

Range: 1-999

Default Value: 1

Protocol Server Thread Timeout

This parameter specifies the number of seconds after which an idle thread is cleaned up.

Range: 0-65535

Default Value: 1860 seconds

Protocol Server Minimum Threads

This parameter specifies the minimum number of threads available for client connection handling.

Range: 1-1000

Default Value: 1

Protocol Server Maximum Threads

This parameter specifies the maximum number of threads available for client connection handling.

Range: 0-1000

Default Value: 500

LDAP Connection Pool Increment

This parameter specifies the number of Oracle Internet Directory connections the pool is increased by.

Range: none

Default Value: 0

LDAP Current Connection Pool

This parameter specifies the current number of Oracle Internet Directory connections in the pool.

Range: none

Default Value: 10

LDAP Minimum Connection Pool

This parameter specifies the minimum number of Oracle Internet Directory connections in the pool.

Range: none

Default Value: 10

LDAP Maximum Connection Pool

This parameter specifies the maximum number of Oracle Internet Directory connections in the pool.

Range: none

Default Value: 10

Presentation Name

This parameter specifies the presentation name used by the server to register with the Oracle9i listener.

Range: string

Default Value: IMAP

Process Log Level

This parameter specifies the log messages level.

Range: 0-30

Default Value: 6

Process Debug Level

This parameter specifies the debug messages level. To enable statistics, set the value to 512.

Range: 4294967295 (32bits, multi-value)

Default Value: 0

Default Domain

This parameter specifies the default domain for user login. If the user does not provide a domain when logging in, the value of this parameter is used.

Default Value: none

Maximum Number of Clients

This parameter specifies the maximum number of clients allowed to connect to the server instance.

Range: 0-1000

Default Value: 1000

Maximum Rule Nesting Level

This parameter specifies the maximum number of times a nesting rule can be applied to a message. In general, setting this parameter to a smaller number increases overall performance, but not for systems that use rules heavily.

Range: >=1

Default Value: 20

Cache Size

This parameter specifies the caching level. For small caching levels, no mail information is cached in the middle tier IMAP server. For medium caching levels, certain parts of mail are cached. Increasing the cache size increases the memory requirements on the middle tier.

Range: small, medium

Default Value: small

Get New Mail Interval

This parameter specifies the interval to wait before checking for new mail. The IMAP server does not check for new mail until the time interval has elapsed. If clients send a large number of check new mail requests to the server it affects performance.

Range: 0-65535

Default Value: 120 seconds

Timeout Interval

Auto-logout timeout interval. If a client does not perform any operations within this interval, it is disconnected.

Range: 0-65535

Default Value: 1800 seconds

#### POP3

LDAP Connection Pool Increment

This parameter specifies the number of Oracle Internet Directory connections the pool is increased by.

Range: none

Default Value: 0

LDAP Current Connection Pool

This parameter specifies the current number of Oracle Internet Directory connections in the pool.

Range: none

Default Value: 10

LDAP Minimum Connection Pool

This parameter specifies the minimum number of Oracle Internet Directory connections in the pool.

Range: none

Default Value: 10

LDAP Maximum Connection Pool

This parameter specifies the maximum number of Oracle Internet Directory connections in the pool.

Range: none

Default Value: 10

Presentation Name

This parameter specifies the presentation name used by the server to register with the Oracle9i listener.

Range: string

Default Value: POP

Process Log Level

This parameter specifies the log messages level.

Range: 0-30

Default Value: 6

Process Debug Level

This parameter specifies the debug messages level. To enable statistics, set the value to 512.

Range: 4294967295 (32bits, multi-value)

Default Value: 0

Default Domain

This parameter specifies the default domain for user login. If the user does not provide a domain when logging in, the value of this parameter is used.

Default Value: none

Maximum Number of Clients

This parameter specifies the maximum number of clients allowed to connect to the server instance.

Range: 0-1000

Default Value: 1000

Maximum Rule Nesting Level

This parameter specifies the maximum number of times a nesting rule can be applied to a message. In general, setting this parameter to a smaller number increases overall performance, but not for systems that use rules heavily

Range: >=1

Default Value: 20

POP3 Delete Allowed

Enables read messages to be deleted from the server.

Range: [yes, no]

Default Value: no

POP3 Retrieval

Enables all or unread messages to be retrieved from the server.

Range: [unread, all]

Default Value: all

#### SMTP In

LDAP Connection Pool Increment

This parameter specifies the number of Oracle Internet Directory connections the pool is increased by.

Range: none

Default Value: 0

LDAP Current Connection Pool

This parameter specifies the current number of Oracle Internet Directory connections in the pool.

Range: none

Default Value: 10

LDAP Minimum Connection Pool

This parameter specifies the minimum number of Oracle Internet Directory connections in the pool.

Range: none

Default Value: 10

LDAP Maximum Connection Pool

This parameter specifies the maximum number of Oracle Internet Directory connections in the pool.

Range: none

Default Value: 10

Spam Flood Interval

This parameter specifies the time interval, in minutes, to detect spam flooding.

Range: none

Default Value: none

Spam Maximum Flood Count

SMTP server signals flooding if the number of messages and connections from a single host exceeds the Spam Max. Flood Count within the Spam Flood Interval.

Range: none

Default Value: none

Native Anti-Spamming

Turns on anti-spamming checks. If this parameter is not set, all anti-spamming checks are turned off.

Range: Boolean

Default Value: false

Relay Allowed

Enables domains determined by SMTP Relay Domains Allowed. Anti-spamming check.

Range: string

Default Value: false

Reject Domains

This parameter specifies the list of domains and sub-domains to be rejected. Anti-spamming check.

Range: multi-value

Default Value: none

Reject Senders

This parameter specifies the list of senders to be rejected. Anti-spamming check

Range: multi-value

Default Value: none

Reject Recipients

This parameter specifies the list of recipients to be rejected. Anti-spamming check.

Range: multi-value

Default Value: none

Relay Domains Allowed

This parameter specifies the list of domains to relay through. Anti-spamming check.

Range: multi-value

Default Value: none

Recipient Rewriting Rules

This parameter rewrites rules for recipients.

Range: multi-value

Default Value: none

Sender Rewriting Rules

This parameter rewrites rules for senders. Used only by the SMTP In server.

Range: multi-value

Default Value: none

Local Domains

This parameter specifies the list of local domains. Used only by the SMTP Out server.

Range: multi-value

Default Value: none

Protocol Server Increment Thread

This parameter specifies the number of threads the client connection pool is increased by.

Range: 1-999

Default Value: 1

Protocol Server Thread Timeout

This parameter specifies the number of seconds after which an idle thread is cleaned up.

Range: 0-65535

Default Value: 1860 seconds

Protocol Server Minimum Threads

This parameter specifies the minimum number of threads available for client connection handling.

Range: 1-1000

Default Value: 1

Protocol Server Maximum Threads

This parameter specifies the maximum number of threads available for client connection handling.

Range: 0-1000

Default Value: 500

Presentation Name

This parameter specifies the presentation name used by the server to register with the Oracle9i listener.

Range: string

Default Value: ESSMI

Process Log Level

This parameter specifies the log messages level.

Range: 0-30

Default Value: 6

Maximum Number of Clients

This parameter specifies the maximum number of clients allowed to connect to the server at one time.

Range: 0-1000

Default Value: 1000

Maximum Rule Nesting Level

This parameter specifies the maximum number of times a nesting rule can be applied to a message. In general, setting this parameter to a smaller number increases overall performance, but not for systems that use rules heavily

Range: >=1

Default Value: 20

Checkpoint Interval

This parameter specifies the number of recipients processed in a single relay delivery attempt.

Range: >=1

Default Value: 4

Fallback MX Host

This parameter, when set, specifies the host where relay messages are sent.

Range: string

Default Value: none

Maximum Hop Count

This parameter specifies the maximum number of hops a message can go through.

Range: >=1

Default Value: 25

Maximum Message Size

This parameter specifies the maximum allowed incoming message size in bytes.

Range: >=0

Default Value: 0

SMTP Minimum Queue Age

If the message has been in the queue less than the SMTP Min. Queue Age, the message is skipped for a delivery attempt.

Range: integer

Default Value: 30 minutes

Postmaster Copy

If the postmaster address is set, a copy of the delivery status notification is sent to it.

Range: string

Default Value: none

Message Timeout

When a SMTP server is shutdown it may be in the middle of processing certain messages. When the server is restarted, it looks for messages that are being processed. If the messages remain in the same state for this parameter value interval (in minutes), it assumes that the messages are left over from the previous run and processes them again.

Range: integer

Default Value: 30

SMTP Queue Timeout

This parameter specifies the maximum time a message can be in the queue.

Range: >=1

Default Value: 5 days

Use Errors To

This parameter determines if the Errors To header is to be used for delivery status notifications.

Range: Boolean

Default Value: False

Connection Number

This parameter specifies the number of SMTP connections the outbound SMTP server caches for future delivery to the same host.

Range: >1

Default Value: 0

Authentication

This parameter determines if SMTP authentication is enabled.

Range: Boolean

Default Value: false

Submit Only

This parameter submits inbound messages without resolving the recipient.

Range: Boolean

Default Value: false

External Filter

Enables external filter processing if set to true.

Range: Boolean

Default Value: false

External Filter Process

This parameter specifies the path for the executable of the external process.

Range: string

Default Value: none

#### SMTP Out

LDAP Connection Pool Increment

This parameter specifies the number of Oracle Internet Directory connections the pool is increased by.

Range: none

Default Value: 0

LDAP Current Connection Pool

This parameter specifies the current number of Oracle Internet Directory connections in the pool.

Range: none

Default Value: 10

LDAP Minimum Connection Pool

This parameter specifies the minimum number of Oracle Internet Directory connections in the pool.

Range: none

Default Value: 10

LDAP Maximum Connection Pool

This parameter specifies the maximum number of Oracle Internet Directory connections in the pool.

Range: none

Default Value: 10

Spam Flood Interval

This parameter specifies the time interval, in minutes, to detect spam flooding. Anti-spamming check.

Range: none

Default Value: none

Spam Maximum Flood Count

SMTP server signals flooding if the number of messages and connections from a single host exceeds the Spam Max. Flood Count within the Spam Flood Interval. Anti-spamming check.

Range: none

Default Value: none

Native Anti-Spamming

Turns on anti-spamming checks. If this parameter is not set, all anti-spamming checks are turned off.

Range: Boolean

Default Value: false

Relay Allowed

Enables domains determined by SMTP Relay Domains Allowed. Anti-spamming check.

Range: string

Default Value: false

Sender Rewriting Rules

This parameter rewrites rules for senders. Used only by the SMTP In server.

Range: multi-value

Default Value: none

Local Domains

This parameter specifies the list of local domains. Used only by the SMTP Out server.

Range: multi-value

Default Value: none

Process Log Level

This parameter specifies the log messages level.

Range: 0-30

Default Value: 6

Maximum Rule Nesting Level

This parameter specifies the maximum number of times a nesting rule can be applied to a message. In general, setting this parameter to a smaller number increases overall performance, but not for systems that use rules heavily

Range: >=1

Default Value: 20

Checkpoint Interval

This parameter specifies the number of recipients processed in a single relay delivery attempt.

Range: >=1

Default Value: 4

Fallback MX Host

This parameter, when set, specifies the host where relay messages are sent.

Range: string

Default Value: none

Maximum Hop Count

This parameter specifies the maximum number of hops a message can go through.

Range: >=1

Default Value: 25

Maximum Message Size

This parameter specifies the maximum allowed incoming message size in bytes.

Range: >=0

Default Value: 0

SMTP Minimum Queue Age

If the message has been in the queue less than the SMTP Min. Queue Age, the message is skipped for a delivery attempt.

Range: integer

Default Value: 30 minutes

Postmaster Copy

If the postmaster address is set, a copy of the delivery status notification is sent to it.

Range: string

Default Value: none

Message Timeout

When a SMTP server is shutdown it may be in the middle of processing certain messages. When the server is restarted, it looks for messages that are being processed. If the messages remain in the same state for this parameter value interval (in minutes), it assumes that the messages are left over from the previous run and processes them again.

Range: integer

Default Value: 30

SMTP Queue Timeout

This parameter specifies the maximum time a message can be in the queue.

Range: >=1

Default Value: 5 days

Use Errors To

This parameter determines if the Errors To header is to be used for delivery status notifications.

Range: Boolean

Default Value: False

Connection Number

This parameter specifies the number of SMTP connections the outbound SMTP server caches for future delivery to the same host.

Range: >1

Default Value: 0

Authentication

This parameter determines if SMTP authentication is enabled.

Range: Boolean

Default Value: false

External Filter

Enables external filter processing if set to true.

Range: Boolean

Default Value: false

External Filter Process

This parameter specifies the path for the executable of the external process.

Range: string

Default Value: none

#### Housekeeping

Collection

This parameter determines whether to run the collection task. The collection task collects or reclaims space taken up by messages that are no longer used by removing the message data. Oracle Corporation recommends scheduling this task to run continuously, to keep up with the rate of messages coming in from outside the server.

Range: True or False

Default Value: True
Expiration

This parameter determines whether to run the expiration task. The expiration task expires or deletes messages set to expire on or before the current time according to a timer, by moving such messages to the system trash folder. The expiration timer is a folder attribute and can be set by users. Oracle Corporation recommends running this task only once a day.

Range: True or False

Default Value: False

Calendar Cleanup

This parameter determines whether to perform Calendar-related cleanup tasks. The Calendar clean up option removes expired events and scheduled tasks. Oracle Corporation running the task on a quarterly basis, enabling users to keep track of pasts events and schedules for three months.

Range: True or False

Default Value: False

Text Synchronization

This parameter specifies whether to perform Oracle Text index synchronization task. Performing synchronization is essential to content-based searching. Doing it frequently should greatly increase search performance. However when expected rate of incoming message is low, doing it too frequently increases the server load unnecessarily. If content-based searching through Oracle Text is used heavily, it is recommended that a dedicated housekeeping instance should be created for this task with a sleep time of five to ten minutes.

Range: Disabled or Enabled

Default Value: Disabled

Text Optimization

This parameter specifies whether to perform Oracle Text optimization task. Oracle Text optimization improves performance of index synchronization. Without optimization, synchronization performance degrades over time. It is recommended that this task should be done about once per week. A dedicated housekeeping instance should be created with task enabled and a sleep time of 24*7 (168) hours.

Pruning

This parameter determines whether to run the pruning task. The pruning task clears up message queues and the system trash folder, and marks un-referenced messages for the collection task. Oracle Corporation recommends scheduling this task to run continuously, to keep up with user message deletion activity.

Range: True or False

Default Value: True

Tertiary Store

This parameter determines whether to run the tertiary store task. This task archives old messages by moving them to another tablespace, presumably a cheaper and larger storage designed for archiving. Oracle Corporation recommends running this task on a monthly basis.

Range: True or False

Default Value: False

Process Log Level

This parameter specifies the log message level.

Range: 0-30

Default Value: 6

Process Debug Level

This parameter specifies the debug messages level. To enable statistics, set the value to 512.

Range: 4294967295 (32bits, multi-value)

Default Value: 0

Tertiary Storage Age Threshold

This parameter specifies the minimum age of messages in number of days, for archiving. If the tertiary storage task is turned on, housekeeping tries to archive messages older than the number of days specified in this parameter. Oracle Corporation recommends setting this parameter to at least 30.

Range: Non negative number

Maximum Rule Nesting Level

This parameter specifies the maximum number of times a nesting can be applied to a message. In general, setting this parameter to a smaller number increases overall performance, but not for systems that use rules heavily.

Range: >=1

Default Value: 20

Process Sleep Duration

This parameter specifies the interval between two consecutive starts of the task processing in hours. If the task takes less than this amount of time to finish, the housekeeping process sleeps for the rest of the duration. If the task takes more time than the amount of sleep time specified, the process does not sleep but instead runs continuously.

Range: >=0

Default Value: 60 minutes

#### List Server

LDAP Connection Pool Increment

This parameter specifies the number of Oracle Internet Directory connections the pool is increased by.

Range: none

Default Value: 0

LDAP Current Connection Pool

This parameter specifies the current number of Oracle Internet Directory connections in the pool.

Range: none

Default Value: 10

LDAP Minimum Connection Pool

This parameter specifies the minimum number of Oracle Internet Directory connections in the pool.

Range: none

Default Value: 10

LDAP Maximum Connection Pool

This parameter specifies the maximum number of Oracle Internet Directory connections in the pool.

Default Value: 10

Range: none

Process Log Level

This parameter specifies the message log level.

Default Value: 6

Range: 1-30

Process Debug Level

This parameter specifies the debug messages level. To enable statistics, set the value to 512.

Default Value: 0

Number of Mails Processed Concurrently

This parameter specifies the number of messages to be processed simultaneously by the list server.

Default Value: 50

Range: Any positive number greater than zero.

Number of Threads per Mail

This parameter specifies the number of threads to be spawned to deliver list server messages to subscribers.

Default Value: 10

Range: Any positive number greater than zero.

Number of Recipients per Batch

This parameter specifies the number of users that each of the user threads deliver messages to.

Default Value: 1000

Range: Any positive number greater than zero.

### Server Log Files

The server log files can be found in the following locations:

On UNIX:

$ORACLE_HOME/oes/log/<install_name>/imap/<process_id>/<process_id>.log.  On Windows: %ORACLE_HOME\oes\log\<install_name>\imap\<process_id>\<process_id>.log.  #### POP3 On UNIX: $ORACLE_HOME/oes/log/<install_name>/pop/<pid>/<pid>.log



On Windows:

%ORACLE_HOME\oes\log\<install_name>\pop\<pid>\<pid>.log


#### SMTP In and SMTP Out

On UNIX:

$ORACLE_HOME/oes/log/<install_name>/smtp_in/<pid>/<pid>.log $ORACLE_HOME/oes/log/<install_name>/smtp_out/<pid>/<pid>.log



On Windows:

%ORACLE_HOME\oes\log\<install_name>\smtp_in\<pid>/<pid>.log


%ORACLE_HOME\oes\log\<install_name>\smtp_out\<pid>\<pid>.log

#### Housekeeping

Mail Store on UNIX:

$ORACLE_HOME/oes/log/collector/<SID>.*/text.log   Mail Store on Windows: %ORACLE_HOME\oes\log\collector\<SID>.*\text.log   Middle Tier on UNIX: $ORACLE_HOME/oes/log/<install_name>/gc./<pid>/<pid>.log



Middle Tier on Windows:

%ORACLE_HOME\oes\log\<install_name>\gc.\<pid>\<pid>.log


On UNIX:

$ORACLE_HOME/oes/log/<install_name>/ls/<pid>/<pid>.   On Windows %ORACLE_HOME\oes\log\<install_name>\ls\<pid>/<pid>.  ## SSL Setup Secure Sockets Layer (SSL), is a protocol used for transmitting private documents over the Internet. SSL works by using a public key to encrypt data that is transferred over the SSL connection. Many Web sites use the protocol to obtain confidential user information, such as credit card numbers. By convention, URLs requiring an SSL connection start with https: instead of http:. ### Obtaining a SSL Server Certificate In order for the server to communicate securely with clients, customers must obtain an SSL Server Certificate for their machine and configure their network listener to use that certificate.  See Also: Chapter 16 of the Oracle Advanced Security Administrator's Guide, for how to use the Wallet Manager to create a wallet and store SSL certificates.  Note: You must have a separate certificate for each machine on which the protocol server processes are running, but you can use the same certificate for all protocol server processes on the same machine. In the Oracle environment, you can use the Oracle Wallet Manager to create and store certificates and the corresponding private keys securely. To obtain a certificate, use the Wallet Manager to perform the following steps: 1. Create a new wallet, if one does not already exist. The same wallet can be used by all the servers running on that machine. 2. Generate a certificate request. This generates the corresponding private key and store it in the wallet. 3. Send the certificate request to a Certificate Authority like VeriSign and get it signed. 4. Store the signed certificate in the wallet with the Auto Login option enabled on.You should see the certificate status set to Ready. 5. Enter the host name along with the domain name as the Common Name while generating a certificate request. Remember to store the wallet with the Auto Login option enabled. The option is under the Wallet menu option in the Wallet Manager. This creates a cwallet.sso file in addition to the ewallet.p12, that is the actual wallet. The files can be found in the following location: /etc/ORACLE/WALLETS/<userid>. ### Configuring the Network Listener for SSL The listener.ora file is updated with the required SSL and non- SSL listening end points for both the IMAP4 and POP3 servers during installation. Users only need to set the wallet location and other optional SSL parameters in the listener.ora and the sqlnet.ora files for the listener to receive SSL connections. This can be done manually or by using the Oracle Network Manager. Setting the Wallet Location Manually Add the following WALLET_LOCATION and SSL_CLIENT_AUTHENTICATION entries in the beginning of the $TNS_ADMIN/listener.ora and $TNS_ADMIN/sqlnet.ora files: WALLET_LOCATION = (SOURCE = (METHOD = FILE) (METHOD_DATA = (DIRECTORY = <Directory path containing the cwallet.sso file>) ) ) SSL_CLIENT_AUTHENTICATION = FALSE  The following is what a typical directory parameter value looks like: /etc/ORACLE/WALLETS/<userid>   The SSL_CLIENT_AUTHENTICATION parameter should be set to True, if the client needs to be authenticated by the server. This requires clients to present their certificates during the SSL handshake.  See Also: Chapter 7 of the Oracle Advanced Security Administrator's Guide to set the wallet location using Oracle Network Manager. If the SSL_CLIENT_AUTHENTICATION parameter is not set, the default setting is true and clients are required to present a certificate during the SSL handshake. If the intent is only to secure the communication, not to authenticate the client using the certificate, then this parameter should be set to false. ### Configuring Protocol Servers for SSL The IMAP4 and POP3 protocol servers can be configured to use SSL for securely communicating with and authenticating clients. To handle the SSL client connections, a new protocol server process should be created and configured. The default listening end points for both IMAP4 and POP3 protocol servers are created during the installation in listener.ora. Setting Up a SSL Server Instance Perform the following steps to set up a SSL server process: 1. Create a new IMAP4 or POP3 server process using oesctl. 2. Set the Presentation Name and Mail Port attributes of the newly created instance in the Oracle Internet Directory. 3. For an IMAP4 SSL instance, set the Presentation Name to IMAPSSL, and set the Mail Port to 993. For a POP3 SSL instance, set the Presentation Name to POP3SSL, and set the Mail Port to 953.  Note: The presentation names and port numbers should match the values given in the listener.ora file. If any of the parameters are changed in listener.ora, the corresponding server parameters should also be updated. ## Thin Client The Thin Client gives users a simple and fast means to access messages and other self service features through a web browser. A user points their browser to a predetermined URL to log in to their e-mail account. Their inbox is rendered dynamically. The logic to render a user's folders, messages, public directory and personal address book runs at the Oracle9i Application Server web server. The browser acts merely as a keyboard and screen. There is no processing or data storage on the desktop. The Thin Client provides a standard, out of the box web mail solution, along with a tool kit that can extend and modify the standard solution. The Thin Client log files are derived from values in the following toolkit.properties file: • toolkit.logdirectory • toolkit.logfilename The files are placed in toolkit.logdirectory; the filename is <toolkit.logfilename>_<toolkit.loghostclient>_<number>.log. The tool kit provides a framework for easy additions or modifications of simple functionality or presentation of the Thin Client. For example, a deployment can replace the Oracle logo with a different graphic. The tool kit can also enforce aspects of the application such as the availability of basic actions or functionality. This reduces the amount of development effort required to customize a solution for customer specific needs. ### Thin Client Tool Kit Properties The following line in toolkit.properties ensures that the Thin Client reads this file into the environment only at startup. This line must not be changed or removed. ct_env=set  IMAP and SMTP Server Settings Remove the comment and change this value to point to the IMAP server host name: mail.imap.host=%machinehost%  Remove the comment and change this value to point to the IMAP server port address service listener. The IMAP server default ports are 143 and 993 for a secure server. mail.imap.port=143  Remove the comment and change this value to point to the SMTP server host name mail.smtp.host=%machinehost%  Remove the comment and change this value to point to the port address for the SMTP service listener. The SMTP server default port 25). This value is seldom changed, except to distribute the load for sending many messages. mail.smtp.port=25  Set the fully qualified domain name to be appended to addresses that are not fully qualified. If someone sends an e-mail message to recipient, the Thin Client first attempts to resolve the name from the user's personal address book and other LDAP directories. If the recipient does not exist, the program assumes the message is for someone in the fully qualified domain. This value is appended to recipient and sent. If the mail domain was set to acme.com, recipient would be re-written as recipient@acme.com. ### Thin Client Store Settings The Oracle9iAS Unified Messaging Thin Client enables the end user to store certain messages in specific folders. To enable default names to be present and used, the folders may need to be automatically created by the client. End users can choose any folder in their account by changing their preference settings. The following is a list of the default folder names: mail.folder.drafts=Drafts mail.folder.sent=Sent mail.folder.templates=Templates mail.folder.trash=Wastebasket  ### Tool Kit Default Settings The state file is a XML file that defines the navigation behavior of the Thin Client. This file provides a way to easily define and manage state file transitions in the client. A state transition defines the logic that must be executed by the application when the user moves from one state file to another. The state file for configuration can be found in the following directory: $ORACLE_HOME/um/client/config/statefile.xml


• URL Directory for Pages:

clientdir=/uixclient/ => http://<machine>:<port>/uixclient/<page>.uix
clientdir=/templates/
clientdir=/servlets/um/templates/


• Image Directory for Images

imagedir=/um/images/


• Suffix for State -> Pages

pagesuffix=.uix => state message_list -> message_list.uix
pagesuffix=.uix
pagesuffix=.uix


• Supported Languages (Based on Java locale conventions)

Supported Languages=en,ar,cs,da,de,el,es,fi,fr,fr_
CA,hu,it,iw,ja,ko,nl,no,pl,pt,pt_BR,ro,ru,sk,sv,th,tr,zh_CN,zh_TW


• Oracle Internet Directory Settings

ldap.es.host=<host_name>
ldap.es.port=389
ldap.es.username=cn=orcladmin
ldap.es.password=welcome


• URLs for the Administration and Preferences Tabs

Components of the Thin Client application are integrated by a set of tabs visible on every page, enabling easy navigation from one component to another. Backend components are integrated by accessing common

client.preferencestab.url=/um/templates/PFAccountBasicSettings.jsp
client.preferences.url=/um/templates/PFAccountBasicSettings.jsp
client.corporate.url=http://www.oracle.com
client.product.url=http://www.oracle.com
client.portal.url=http://www.oracle.com

• Images

client.image.corporate=/um/images/corporateBrand_oracle.gif
client.image.product=/um/images/unified_mediumbanner.gif
client.image.portal=/um/images/globalbutton_returntoportal.gif
client.image.login=/um/images/globalbutton_login.gif
client.image.logout=/um/images/globallogout.gif
client.image.preferences=/um/images/globalpreferences.gif
client.image.help=/um/images/globalhelp.gif

SSOCAL90_PROPERTIES=%ORACLE_HOME%/j2ee/ProductGroup3
/applications/UMClientApp/um_client



This file enables call applications to know the location of the calendar.properties file.

### Thin Client Log Files

The Thin Client log files can be found in the following directory:

logdirectory=/tmp


Copyright © 2002 Oracle Corporation.

All Rights Reserved.