Home > BSDшстворчество, Debian, FreeBSD, Ubuntu > osTicket (Support Ticket System) + Exim = PIPE

osTicket (Support Ticket System) + Exim = PIPE

Столкнулся по долгу службы с реализацией вот такой вот связки = osTicket (Support Ticket System) и Exim, почту в osTicket нужно было передавать через exim pipe. множество инструкций в интернете так и не сказали ничего конкретного, отправляя в устаревшую документацию или не работающие связки. Пришлось разобраться, и разобравшись – решил поделиться.

1. В Exim конфигурации создаем запрос в MySQL для определения e-mail, заведенных в osTicket, если Exim не настроен для работы с MySQL то создаем подключение к MySQL:

# MySQL connection settings
MYSQL_HOST =127.0.0.1
MYSQL_USERNAME =osticket_user
MYSQL_PASSWD =osticket_password
MYSQL_OSTICKET_DB =osticket_db
hide mysql_servers= MYSQL_HOST/MYSQL_OSTICKET_DB/MYSQL_USERNAME/MYSQL_PASSWD

MYSQL_QRY_LISTUSERS = SELECT DISTINCT ost_email.email FROM ost_email WHERE ost_email.email = LOWER(‘${quote_mysql:$local_part}@${quote_mysql:$domain}’)

я использую функцию MySQL – LOWER защитой от дураков, указывающих ящик получателя в разном регистре.

2. в ROUTERS CONFIGURATION у Exim создаем новый Routes, ниже dnslookup:

os_pipe:
driver = redirect
condition = ${lookup mysql{MYSQL_QRY_LISTUSERS}{yes}{no}}
debug_print = $local_part@$domain
user = nobody
data = “| /data/www/osticket/api/pipe.php”
pipe_transport = address_pipe

3. В Админ панели osTicket, в закладке EMAILS для этого e-mail в Mail Account отключаем получение почты по IMAP или POP3 протоколу.

В лог файлах при получении почты наблюдаем :

2014-01-10 12:59:41 1W1bgb-0000Lb-FH => | /data/www/osticket/api/pipe.php R=os_pipe T=address_pipe

Все работает 🙂

  1. April 28th, 2015 at 12:34 | #1

    Сочетание osticket и почты меня уже просто добило…
    Как то жидко они реализовали работу с почтой.
    Хорошо что у вас получилось.

  1. No trackbacks yet.