The mailloop service enables OpenEMM to process bounces (and autoresponder mails) which are received hours or even days later by email (asynchronous bounces). You need to define a dedicated mailloop service domain name which is different from the OpenEMM server hostname (set in /etc/sysconfig/network/). You have to set up an individual MX (Mail Exchange) record for the mailloop service domain name, which points to the OpenEMM server hostname for correct mail routing.
For each new bounce filter created in the OpenEMM GUI, OpenEMM creates a new filter address based on the mailloop service domain name. The OpenEMM user should define a mail forwarding for the address(es) used as sender address in its mailings, to direct all incoming response to the filter address(es) for further processing by the mailloop service (see “Alternative A” below).
In our example below the subdomain of the OpenEMM server hostname is openemm and the mailloop service subdomain name will be mailloop. The (abbreviated) DNS entry for domain.com should look like this:
IN A 0 <ip address> openemm IN A 0 <ip address> mailloop IN A 0 <ip address> mailloop.domain.com. IN MX 10 openemm.domain.com.
Replace expression <ip address> with the IP address of the OpenEMM server, which also runs the mailloop service.
The 1st line assigns the IP address for domain.com and the 2nd line defines its regular hostname. The 3rd line defines the A record and the 4th line defines the MX record for the mailloop service domain name, meaning that host openemm accepts emails sent to host mailloop.
Validate your setup by using a tool like dig or host, for example
# host -a domain.com # host -a openemm.domain.com # host -a mailloop.domain.com
When you send emails and want to take advantage of the bounce management for asynchronous bounces, there are two possibilities for the format of the sender address:
Use whatever sender address (or reply-to address) you like. Implement a forward mechanism in the email account of this sender/reply-to address to forward incoming mail sent back to this address to a filter address of OpenEMM. In order to create this filter address, set up a bounce filter in OpenEMM (see user manual). This filter will auto-generate a filter address like
After processing the incoming mail, the bounce filter will forward the filtered response to a feedback address of your choice (different from the sender address, of course).
The flow for responses to your mailings works like this:
recipient -> sender/reply-to address -> filter address of bounce filter (auto-generated by OpenEMM) -> feedback address
The advantage of this model is that you can choose any sender address you want, but you have to implement an external forward mechanism.
Use a sender/reply-to address with the mailloop service domain name (for example firstname.lastname@example.org). Since no real email addresses exist for this sender domain name, normally it would not be possible to reply to an email with this sender/reply-to address. To forward responses to a valid email address you have to define a bounce filter:
In the GUI configuration for the bounce filter set field “Filter address” manually to your sender/reply-to address (in this example email@example.com) and this address is then bound to this bounce configuration. Due to performance reasons it may take a few minutes until a newly created entry is known by the system.
Finally, use field “Forward address” to enter the feedback email address of your choice. The flow looks like this:
recipient -> sender address (firstname.lastname@example.org) -> feedback address
The advantage of this alternative is, that no external forward mechanism is needed.