This document is copyrighted and not intended for distribution outside of http://www.touchsupport.com.
By copying or reproducing this document, you are violating copyright and intellectual
property laws.
Author: David Lindahl - Touch Support, LLC - 2007-01-25
DISCLAIMER: These procedures worked for two separate test servers with
the latest Zend/PHP/Apache/Exim/cPanel with somewhat standard configurations.
Touch Support is not responsible for any damage to your helpdesk or server resulting
from the performance of these operations.
TEST CASES:
PASS (Legitimate Ticket):
1. Email your helpdesk from an off-server account as you normally would when opening
a ticket.
2. Confirm that cron processed the email either via /var/log/cron or by checking
the size of your inbox file (should be 0) or that your maildir directory is empty.
3. Login to eSupport's staff or general area to make sure the ticket is opened
in the correct queue.
4. If you're using v3, check to make sure you received the auto-response with
ticket login details.
5. Reply to the ticket from eSupport, then check the email account you used to
open the ticket to ensure that the reply is received and if you're using v2 that
the reply contains ticket login information.
FAIL (SPAM Ticket):
1. Email your helpdesk from an off-server account as you normally would when opening
a ticket, only make sure you use a subject of ****SPAM*****
2. Confirm that cron processed the email either via /var/log/cron or by checking
the size of your inbox file (should be 0) or that your maildir directory is empty.
3. Login to eSupport's staff or general area to make sure the ticket did not make
it past your parser rule.
cPanel + eSupport v2 + SpamAssassin How-To
(Should be noted that the user will not get an instant
auto-response with ticket login details, these are only
sent when a staff member responds, however, it doesn't do the user much good
to check the status of a
ticket that has no staff response).
- Remove any previous forwarders for eSupport pipes via cPanel or /etc/valiases/yourdomain.com
- Create a regular email account in cPanel (e.g. sales@yourdomain.com)
- Setup SpamAssassin for your domain
Make sure to rewrite the subject headers with ****SPAM*****
I used an SA setting of 4 for my test desk, which
might be strict, however, if a user is unable to get past SA, he or she
can always open a ticket directly through the desk via http://
- Visit eSupport's Settings -> Email
Setup an email handler for sales@yourdomain.com
use the IMAP method
(don't worry, this will clear the sales@ inbox when eSupport checks mail)
- Visit eSupport's Settings -> Mail Parser
Add a new rule:
if subject is like ****SPAM*****
Delete Ticket
- From the shell: chmod 755 /home/PATH/TO/ESUPPORT/admin/pop3functions.php
- Add a cron to check your sales@yourdomain.com inbox:
crontab -u YOURDOMAINUSER -e
*/5 * * * * /usr/local/bin/php /home/PATH/TO/ESUPPORT/admin/pop3functions.php
2>&1 > /dev/null
cPanel + eSupport v3 + SpamAssassin How-To
(Should be noted that the user will get an instant
auto-response with ticket login details, these are only
sent when a staff member responds, however, it doesn't do the user much good
to check the status of a
ticket that has no staff response).
- Remove any previous forwarders for eSupport pipes via cPanel or /etc/valiases/yourdomain.com
- Create a regular email account in cPanel (e.g. sales@yourdomain.com)
- Setup SpamAssassin for your domain
Make sure to rewrite the subject headers with ****SPAM*****
I used an SA setting of 4 for my test desk, which
might be strict, however, if a user is unable to get past SA, he or she
can always open a ticket directly through the desk via http://
- Visit eSupport's /admin/ section -> Click on Mail Parser
-> Manage Email Queues -> Insert Email Queue
Setup an email handler for sales@yourdomain.com,
use the POP3 method, make sure the port is 110
Enable the auto-responder option
Disable Registration Required
- Visit eSupport's /admin/ section -> Click on Mail Parser
-> Insert New Rule
Add a new rule:
if subject contains ****SPAM*****
Ignore Ticket
- Click on Scheduled Tasks -> enable POP3/IMAP
Fetch
Then click 'RUN'
- Add a cron to check your sales@yourdomain.com inbox:
crontab -u YOURDOMAINUSER -e
*/5 * * * * /usr/bin/wget -O /dev/null http://www.YOURDESKDOMAIN.com/ESUPPORTPATH/cron/index.php?_t=parser
>/dev/null 2>/dev/null