Creating Dummy Email Addresses for non-Email Users

From OtterHub - OTRS Community Wiki
Jump to: navigation, search

Why would I want to do this?

OTRS, without special measures, generally requires a unique email address for each customer. If the customer doesn't have an email address, this can be difficult.

If you put in a non-existent mail address, then non-delivery messages can be a problem and clutter up your tickets.

This page suggests a few ideas for workarounds.

Using Postfix to create a Mail Sink on Linux

Postfix is commonly installed on Linux systems, and provides a simple way to set up dummy email addresses - in fact it provides simple ways to do many things programmatically with email.

We'll set up dummy-(anything)@example.com to be thrown away with no errors - so you can use as many dummy-(anything)@example.com names as unique IDs for customers as you need.

The Mechanism

We create a special email Regex which will allow any email of the form dummy-(anything)@example.com to go to a program. The program simply throws the email away - but of course you could make it do anything you wished (so fax, text message, automated voice reading all become possible).

Note that we're avoiding using the recipient-delimiter in Postfix - that can simplify the setup a bit (you don't need the virtual-regexp table), but has bigger effects on how your mail works, so approach with caution.

Procedure

First, create a simple script that can be run under your postfix user. For this example we'll just throw the mail away, so in /usr/local/bin/dummymail we'll have:

#! /bin/bash
cat >/dev/null

Make sure the file permissions (chmod) are set to something like 755, so it can be run by the postfix user.

Then, in /etc/postfix/aliases, add a line:

dummymail: "|/usr/local/bin/dummymail"

Make sure this is installed by running newaliases, then send an email to dummymail@example.com and make sure it just vanishes :-)

Now, we need to set up the dummy regular expression. Look in /etc/postfix/main.cf for the line virtual_alias_maps. Add a new virtual_regexp table at the end (my example looks like this):

virtual_alias_maps = hash:/etc/postfix/virtual,hash:/var/lib/mailman/data/virtual-mailman,regexp:/etc/postfix/virtual_regexp

(if your installation already has a regexp: table here, you may just want to add the required line to that one!).

Create the file /etc/postfix/virtual_regexp and put the following in it:

/^dummy-(.*)@example.com/   dummymail@example.com

Run

postmap /etc/postfix/virtual_regexp
postfix reload

to ensure the changes are picked up.

Test it!

Low Configuration Option

Simply use dummy mail addresses and put in a Postmaster Filter to throw away non-delivery emails. Disadvantage is that you need to ensure you receive ones where a real mailbox delivery fails - you could work around this by using a special domain or similar.

External Mail Sink

There are mail sink sites on the internet such as Mailinator which can provide the same functionality. Disadvantage here is that emails, possibly containing sensitive information go outside the organisation.

Text Messaging (SMS)

Another idea is to use an email based on the user's mobile phone number and an SMS Service (or software such as SMSTools) to send responses to the user as text messages. Advantage here is that the user gets the agent's message! Disadvantages here are that they need a mobile, there is usually a per-message cost and that you need to ensure your messages are short enough not to be too difficult to read on a phone.