The Newsletter Reader's Digest

Write to PmgNewsEn@pytheas.com to subscribe.

-

Access to the Address Book through LDAP

The Configuration Program can now access the directory of your mail server through the LDAP protocol. This should be useful in the following circumstances:

  • when you need to enter the (local) SMTP address for a recipient entry: you can select this address from a list box (after pressing the "Fill list" button),
  • when you want to enter several recipient entries at a time: use the new toolbar button to access this function,
  • when you want to check if all the (local) SMTP addresses exist in the address book of your mail server: use the new toolbar button to access this function.

You will need to activate the LDAP protocol on your mail server (Microsoft Exchange server, Lotus Domino, ...), and you should configure it to be able to return as many entries at a time as there are entries in the mail server address book. For more information, please see the help file.

-
Top of page Top of page

Diagnostic Codes for Incoming Message Routing

PYTHEAS MailGate uses several mechanisms to route incoming messages to the final Recipient(s). To help you (and me) understand which mechanism has been used to deliver a particular message to a particular Recipient, these codes appear in the session log, at the end of the Routed-To-line, and are visible in the Remote Control Program or in Session Log Messages. They look like (xxx), one sign for each Recipient to whom the message is forwarded.

Code Explanation

I

  • A Routing Keyword has been found in an address in the To or Cc headers of the message. This also implies that this SMTP address passed Address Validation.
  • The Recipient is configured to receive all mail from the POP3 mailbox involved. Also see *.
* The Recipient is configured to receive all mail from the POP3 Account involved, but other Recipients connected to this POP3 Account use more selective Routing Keywords. A typical case for such a situation is if you forward all incoming mail to a Recipient being a archive folder.
D A Routing Keyword has been found in the message header specified in the POP3 Account property Search for routing criteria...only/also in this header.
E The Recipient's SMTP address has been found in the Received headers of the message.
L The Recipient's Local SMTP Address (as specified on the Recipient property page) has been found in the To or Cc headers of the message.
u The message could not be routed; nevertheless, at least one of the addresses in the To or Cc headers passed Address Validation. The Recipient has been configured to receive such messages from the POP3 mailbox involved.
U Same as u, but none of the addresses in the To or Cc headers of the message passed Address Validation.
A The message could not be routed. None of the Recipients connected to the POP3 Account is configured to receive such messages. It is distributed to all Recipients connected to the POP3 account.

-
Top of page Top of page

Using a dedicated message header for routing of incoming mail

Lets first see why this is a useful feature. Sometimes, the To and Cc headers do not contain the address of the final recipient (this is the case for Bcc addressed messages, or messages from mailing lists). One of the properties of a POP3 account tells MailGate which header to use instead of the traditional address headers.

In many cases, a good solution may be to use the Received headers. Many mail servers on the Internet write the email address from the SMTP envelope to one of these headers. By the way, our difficulties to find out the final recipient of a message comes from the fact that the mail server on the Internet throws this SMTP envelope away.

However, it may happen that this mail server writes a header line with the email address from the SMTP envelope. Unfortunately (still no luck...) the name of such a header is not standardized. Most of the time, the name for such headers is  Delivered-To, X-Envelope-To, X-RCPT-TO.

How do you know which one to take? Have a look at the (normally invisible) headers of a message you received from a particular POP3 account. Once you figured out, tell PYTHEAS MailGate to use this header (you can use any header name, not just one of those which are already listed).

How does PYTHEAS MailGate use the email address contained in the header to find out about the final recipient? This is defined in the section [Envelope information Header Masks] in the configuration file. Normally, it should not be necessary to edit this section; however, to understand its contents, please note that...

  • the code {KW} will be replaced with each Keyword found in the routing criteria for recipients,
  • the code {Addr} will be replaced with each local SMTP address and each SMTP address found in the Other SMTP addresses.. part of the routing criteria.
-
Top of page Top of page

The Address validation parameter

Lets recall the reason for this parameter: in fact, it is a mask (or an array of masks) applied to addresses found in the To or Cc headers of a message, to distinguish between "foreign" addresses, and addresses which correspond to Recipients configured in PYTHEAS MailGate.

What's new since v.1.91 is that PYTHEAS MailGate can now construct the address validation parameter using the Recipient SMTP addresses. This function is activated by the checkbox Append SMTP addresses from Recipient definitions in the POP3 account properties. However, this only makes sense if the Recipients' SMTP addresses are the real Internet addresses; this should normally be the case, but maybe not (in this case, you should add the "real" Internet SMTP address to the Other SMTP addresses field of the Recipient properties). We recommend not to use this function if you have more than say 30 Recipients receiving mail from a given POP3 account.

Example for a situation where this function is especially useful

Please note that this is NOT the recommended way to configure things; it is just used here as an example.

The situation:

  • two POP3 accounts, AccountA and AccountB
  • the Recipients A1@domain, A2@domain receive mail on AccountA; the value of the address validation parameter is: @domain
  • the Recipients  B1@domain, B2@domain receive mail on AccountB; the value of the address validation parameter is: @domain

Now we receive a message addressed to: A1@domain, B2@domain

The message is received on both AccountA and AccountB; the one received on AccountA is distributed to A1@domain, and also declared "unroutable" because of the address B2@domain; this address passed the address validation (the domain name is ok), but there is no recipient with this address for AccountA.

For the message received on AccountB, a similar situation occurs.

Conclusion

We recommend using the Append SMTP addresses from Recipient definitions function (this is the default for newly created POP3 accounts).

Please note: if the (local) SMTP address of a Recipient is not the "real" Internet SMTP address (because you use the Make-unique-address tag, ##, for ex.), you need to add the "real" Internet SMTP address to the Other SMTP addresses field of the Recipient properties.

Back to top  Back to top