Some ways to avoid needing a public ticketing system

September 8, 2009

Suppose that you are in the situation from yesterday's entry, where your support volume is too high to let you use a single support alias that everyone is on but particular support requests are passed from person to person. As it happens, I think that there are still ways to avoid having a public ticketing system as your primary support method.

The problem that a public ticketing system is really solving here is that you need a separate point of contact for each ticket that goes to several people (but not everyone). In a ticketing system, this is your ticket's URL, but there are lots of other ways to create such contact points that are less awkward and user-hostile.

The most obvious one is simply to automatically create mail aliases for each new ticket (and then route these to whatever internal tracking system you use). You can then send your email out in such a way that it directs responses to the ticket's mail alias; the most thorough one is to give all email about a ticket an appropriate From: address, regardless of who's sending it.

(I think that this is somewhat unfriendly because of its impersonality, so I suggest sending email as yourself but cc:'ing the ticket alias and setting a Reply-To:.)

The sophisticated approach is to have a single support alias but have a smart request routing system sitting behind it. The routing would usually key off a magic identifier in the Subject: line, but if your message didn't have the marker it could do smart things like seeing if you only had one open issue (hopefully the usual case) and routing your message to it. If it couldn't route your message at all, well, that's when people get involved.

(It might be convenient to have a separate email address for 'start a new issue'; for all of the usual reasons I tend to think that this should not be directly wired to the internal ticketing system but go to people.)

Comments on this page:

From at 2009-09-08 12:22:55:

RT ( does the `smart' thing here:

  • Uses single (optionally multiple addresses with one per "queue") address and keys which ticket to attach messages to by the Subject line (ticket number and site ID string).

  • Sets the From address as it's own address (usually but puts the user's name on there, so you end up with a person's name but the right address for the ticketing system (e.g. John Doe <>).

  • Uses this address to create a new ticket if the subject doesn't have the site ID and ticket number in already.

  • Comments have a address, and are sent internally between users but not to the "customer", allowing for internal discussion about the ticket to be logged for later reference.

The third point does mean that if you CC the ticketing system address you create a ticket each time, since the subject won't be of the required format, but that's something I can live with :)

There are a few other things it doesn't handle, like :

  • incorrect email addresses sending to an existing ticket [these bounce to the admin]
  • users can have multiple email addresses but it doesn't do aliases by default, which leads to bounces to the admin as they're not valid addresses for that ticket

It's been working OK for me in various uses :)

Written on 08 September 2009.
« A use for ticketing systems as your primary support method
Postfix versus Exim »

Page tools: View Source, View Normal, Add Comment.
Login: Password:
Atom Syndication: Recent Comments.

Last modified: Tue Sep 8 00:52:27 2009
This dinky wiki is brought to you by the Insane Hackers Guild, Python sub-branch.