Take the 2-minute tour ×
Server Fault is a question and answer site for professional system and network administrators. It's 100% free, no registration required.

I work for a small company that has a simple customer service system. We have a single email address, support@mycompany.com, and a program that forwards that mail on depending on the inbound address. For instance, If we have two employees, Adam and Ben, they each have an email address, adam@mycompany.com and ben@mycompany.com. Adam has certain clients he deals with, ben has certain clients he deals with, and any emails from unknown addresses goes to a newsupport@mycompany.com address.

This side of things works fine. However, when they reply to a customer, the customer sees a return email from adam@mycompany.com rather than support@mycompany.com. This is what I want to fix.

What possible solutions are there, without touching the mail clients of Adam or Ben? Is it possible to do something to the emails at the point when my program routes them from the support mailbox to one of the individual mail boxes? Is there any kind of header parameter, or similar, that might allow this?

I thought about setting the return address so that the incoming address is masked from adam or ben: so that when they reply, it sends a mail to outbound@mycompany.com, and then by keeping track of conversations and so on I could forward the mail on to the correct recipient... but this seems needlessly complicated. Is there a better solution?

share|improve this question

migrated from stackoverflow.com Oct 2 '11 at 14:37

This question came from our site for professional and enthusiast programmers.

    
"Without touching the mail clients of Adam or Ben" makes a huge difference. Why? –  bzlm Sep 23 '11 at 17:23
    
Because they might be working from home, or working through gmail, or something like that. –  Oliver Sep 23 '11 at 17:24

2 Answers 2

up vote 1 down vote accepted

If Adam and Ben always send replies via your mail submission server, you could just rewrite the sender address there before relaying to the client.

If Adam or Ben use their own outgoing SMTP server to send replies, you have more trouble. Your best bet in that case would be to use something along the lines of SRS to rewrite the sender's address before forwarding on to Adam or Ben. Then when Adam or Ben replies it will come into your system, at which point you can un-SRS and rewrite the sender to support@mycompany.com before forwarding it on to the client's actual address.

share|improve this answer
    
This looks handy. If I rewrite using the syntax of SRS, will the emails appear in the email client as if they came from the original sender? I'd like this system to be transparent to the user, if possible - so that the staff only see the sender/reply address as being our servers if they take a look at the email source, rather than this being directly present in their client. –  Oliver Sep 28 '11 at 16:16
    
@Oliver: Your staff would see the rewritten address. –  Anomie Sep 28 '11 at 19:36

Maybe set the "Reply to:" mail header line ?

share|improve this answer
    
I don't think this would work (assuming I'm understanding correctly.) If I changed the reply-to field, the mail that Adam or Ben replied to would be sent to that address. However, the receiver would still see the mail as coming from Adam@mycompany.com/ben@mycompany.com rather than support@mycompany.com. I can't change the reply-to address at the point where the support staff receive the mail, only at the point where the mail lands in the support@mycompany.com inbox (as it is being forwarded on). –  Oliver Sep 26 '11 at 9:11
    
No, I mean that Adam and Ben should set the reply-to header. (or some mailhandler between them and the final recipient could rewrite the headers) Your last option (forcing A&B to reply to outbound@mycompany.com) seems cleaner. –  wildplasser Sep 26 '11 at 9:31

Your Answer

 
discard

By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.