Система управления запросами OTRS

21 Фев
2008

Статья напечатана в журнале Системный Администратор

Сегодняшний бизнес не возможен без обратной связи с клиентами, причем оперативность и качество поддержки порой являются определяющими при выборе той или иной фирмы. Использование специальных программных продуктов позволит перейти на более качественный уровень общения с клиентами.

Кратко задача системы управления запросами (ticket request system или trouble ticket system) состоит в учете запросов поступающих от клиентов, назначения исполнителя который будет разбираться с проблемой и контроля за выполнением. Для организаций получающих много писем и звонков (например ISP) это позволяет быстрее среагировать на запрос, не дублировать ответ в том случае, если клиент отослал вопрос разными способами или несколько раз, а значит снижает трудозатраты и повышает удобство работы. Особенно эффективность СУЗ возрастает в том случае, когда поддержкой занимаются несколько человек. Система управления запросами может служить и инструментом контроля качества, анализа эффективности и результативности работы центра поддержки. Теперь руководство может быстро получить полную информацию о количестве решенных и не решенных запросов, скорости их выполнения, знать о нерешенных проблемах.

Кратко работу этой системы можно обрисовать так. При поступлении нового запроса от клиента, например на специальный почтовый адрес, контролируемый системой, он сохраняется в базу данных, ему присваивается уникальный билет-идентификатор. После чего клиенту в обязательном порядке отсылается автоматический ответ, чтобы он знал, что его сообщение получено и на него скоро будет подготовлен ответ. При построении системы управления запросами используются веб-технологии, поэтому сотрудники центра поддержки для доступа используют обычный веб-браузер. Когда один из сотрудников «забирает» запрос, он блокируется для остальных, поэтому одновременно над одним запросом не могут работать два человека. Есть возможность перенаправления запроса другому сотруднику для более полного ответа на вопрос. Чтобы исполнители не отвечали каждый раз на один и тот же вопрос, может быть создана база данных запросов с возможностью поиска. Кроме того, некоторые из реализаций предлагают и дополнительные сервисы, вроде веб-почты, календаря, форума, рассылки и прочих.

В процессе работы такой системы запросам могут присваиваться разный статус, который будет определять очередность, а значит и быстроту ответа на него. Ведь если клиент обратился первый раз и с серьезной проблемой, ему стоит уделить чуть больше внимания, чем клиенту, который звонит в службу поддержки по пять раз на день по мелочам. Система должна уметь регистрировать максимально возможное число источников поступления сигналов. Так телефонные звонки и запросы по факсу могут регистрироваться с помощью специального интерфейса сотрудником, а запросы поступающие по электронной почте регистрируются обычно автоматически.

Возможности OTRS

Одним из самых популярных решений распространяемых по лицензии GNU GPL является OTRS (Open Ticket Request System), разработку которого в 2001 году начал Мартин Еденхофер (Martin Edenhofer). OTRS является веб-приложением, все функции по администрированию, ответы на запросы и их создание пользователями, осуществляется через обычный веб-браузер. В отличие от некоторых подобных решений, активное содержимое вроде Flash или Java не используется, в качестве языка разработки применен Perl. Интерфейс OTRS переведен на несколько языков, среди которых есть и русский. Внешний вид можно изменить используя темы.

Состоит OTRS из нескольких модулей. Основной модуль содержит все функции необходимые для работы с заявками клиентов. При необходимости администратор через веб-интерфейс может установить дополнительные модули, которые повышают удобство работы с системой. Среди них веб-почта, контент и файловый менеджер, модуль позволяющий отслеживаться статус работы системы. В почтовых сообщениях можно использовать вложения, сообщения содержащие вставки HTML кода автоматически преобразовываются в обычный текст. Поддерживаются PGP и SMIME. Реализована фильтрация почты по заголовкам и почтовым адресам (например спам). Можно самостоятельно создавать шаблоны автоответов и ответов пользователям. Например в ответ пользователю можно автоматически добавлять список часто задаваемых вопросов.

Для очереди запросов можно указать нужную конфигурацию, поддерживаются вложенные очереди и перемещение сообщений из одной очереди в другую. Сотрудникам могут быть определены разные права для доступа к элементам системы, поддерживаются группы и роли. Роли позволяют задать политики сразу для группы. Имеется возможность аутентификации средствами внешних систем (базы данных, LDAP, Radius, HTTPAuth). Система предоставляет самые разнообразные отчеты, которые могут быть представлены, в том числе и в формате PDF. В качестве базы данных подойдет MySQL, PostgreSQL, MaxDB/SAPDB, DB2, Oracle, MS SQL Server (первые два рекомендуемые, последний появился в списке совсем недавно). И еще много чего, полный список возможностей приведен в документации. Для работы OTRS потребуется компьютер под управлением Linux, Solaris, AIX, FreeBSD, OpenBSD, Mac OS 10.x или Windows. По уверениям разработчиков особых требований к аппаратному обеспечению нет, но в документации рекомендуемыми является компьютер с процессором класса 2 Гц Xeon, 2 Гб ОЗУ и с 160 Гб жестким диском.

Установка OTRS

Перед установкой OTRS советую ознакомиться с демоверсией на сайте проекта. На странице закачки сайта проекта OTRS можно найти как исходные тексты, так и пакеты для указанных выше операционных систем. Для Linux есть прекомпилированные пакеты для SUSE/OpenSUSE и RedHat/Fedora. Пакеты с исходными текстами (SRPM) можно найти на FTP сервере. Кроме этого пакеты OTRS можно найти в репозитарии своего дистрибутива. Так для установки в Debian/Ubuntu достаточно ввести «apt-get install otrs2» (есть в репозитарии и первая версия OTRS), после этого будут закачаны и установлены все необходимые пакеты. Далее dbconfig-common запросит некоторые параметры настройки среди которых следует выбрать используемую СУБД, указать пароль администратора базы данных и пользователя для работы OTRS. Для установки в Gentoo используем команду «emerge otrs«.

Постинсталляционная настройка OTRS в Ubuntu Linux

В файл для Windows включены все необходимые компоненты, поэтому достаточно его установить обычным образом, при этом язык интерфейса также будет подобран автоматически исходя из системных настроек.

В репозитарии версия пакета, как правило запаздывает, поэтому вы вероятно захотите воспользоваться вариантом установки из исходных текстов. В этом случае потребуется, наличие:

- интерпретатор Perl5;

- веб-сервер Apache2 (mod_perl весьма желателен);

- СУБД (MySQL, PostgreSQL);

- LDAPv2 совместимый сервер, например OpenLDAP;

- дополнительные модули Perl, которые можно взять на CPAN – DBI, DBD::mysql, Digest::MD5, Crypt::PasswdMD5, MIME::Base64, Net::DNS, LWP::UserAgent, Net::SMTP, Authen::SASL, для LDAP – Net::LDAP, для статистики – GD, GD::Text, GD::Graph, GD::Graph::lines, GD::Text::Align, вывод в PDF – PDF::API2, Compress::Zlib.

Эти модули легко установить используя CPAN.

$ perl -MCPAN -e shell

install Digest::MD5

Или используйте репозитарий своего дистрибутива. Проверить наличие необходимых модулей можно с помощью скрипта otrs.checkModules, находящегося в подкаталоге bin архива с исходными текстами. Например, при установке OTRS из репозитария в Ubuntu в систему будут установлены далеко не все модули.

Проверка наличия необходимых модулей Perl

Распаковываем архив, и переименовываем каталог:

$ cd /opt

$ tar -xjvf otrs-2.2.2.tar.bz2

$ mv otrs-2.2.2 otrs

$ cd otrs

Создаем новую учетную запись для работы OTRS.

$ sudo useradd -d /opt/otrs/ -c ‘OTRS user’ otrs

Один из вариантов запустить веб-сервер от имени этого пользователя, мы же просто добавим его в группу под которой работает веб-сервер.

$ cat /etc/apache2/apache2.conf | grep Group

Group www-data

В SUSE это будет nogroup, в Red Hat -apache и так далее.

$ sudo usermod -G www-data otrs

Конфигурационные файлы и права доступа

В подкаталоге Kernel размещено несколько демонстрационных конфигурационных файлов, следует убрать у каждого префикс dist или example.

$ sudo cp Kernel/Config.pm.dist Kernel/Config.pm

$ sudo cp Kernel/Config/GenericAgent.pm.dist Kernel/Config/GenericAgent.pm

В файле Config.pm OTRS хранится информация о доступе к базе данных:

# адрес сервера

$Self->{DatabaseHost} = ‘localhost’;

# название базы данных

$Self->{Database} = ‘otrs’;

# пользователь и пароль для доступа, для зашифровки пароля можно использовать bin/CryptPassword.pl

$Self->{DatabaseUser} = ‘otrs’;

$Self->{DatabasePw} = ‘пароль’;

Чуть ниже следует строка, описывающая тип СУБД, и указывается местонахождение корневого каталога (по умолчанию /opt/otrs). В файле Kernel/Config/Defaults.pm редактируется имя узла, цифра SystemID с которой будут начинаться все билеты, адрес электронной почты администратора, название организации, язык по умолчанию и кодировку и прочие параметры. Активация в этом файле параметра $Self->{SecureMode} отключит настройки через веб-интерфейс, а установка $Self->{HttpType} в https разрешит подключения только с использованием защищенного соединения. В большинстве случаев вручную их редактировать нет необходимости, все настройки производятся через веб-интерфейс.

Теперь можно проверить работоспособность имеющихся модулей.

$ sudo perl -cw /opt/otrs/bin/cgi-bin/index.pl

/opt/otrs/bin/cgi-bin/index.pl syntax OK

$ sudo perl -cw /opt/otrs/bin/PostMaster.pl

/opt/otrs/bin/PostMaster.pl syntax OK

Используя скрипт bin/SetPermissions.sh устанавливаем права доступа на каталог otrs. Формат вызова такой:

bin/SetPermissions.sh <OTRS_HOME> <OTRS_USER> <WEBSERVER_USER> [OTRS_GROUP] [WEB_GROUP]

$ sudo bin/SetPermissions.sh /opt/otrs otrs www-data www-data www-data

SetPermissions.sh <$Revision: 1.31 $> – set OTRS file permissions

Copyright (C) 2001-2006 OTRS GmbH, http://otrs.org/

Setting file permissions…

chown -R www-data:www-data /opt/otrs

chmod -R og+rw /opt/otrs

chown otrs:www-data /opt/otrs

chown -R otrs:www-data /opt/otrs/var/

chown -R www-data:www-data /opt/otrs/var/sessions/

touch && chown otrs:www-data /opt/otrs/var/log/TicketCounter.log

chmod -R 775 /opt/otrs/bin/

(chown && chmod 700) otrs:0 /opt/otrs/bin/DeleteSessionIDs.pl

(chown && chmod 700) otrs:0 /opt/otrs/bin/UnlockTickets.pl

(chown && chmod 700) otrs:0 /opt/otrs/bin/otrs.getConfig

В подкаталоге var/cron, расположены несколько заданий для cron. Здесь действуем аналогично, то есть убраем из имени префикс dist, а для запуска следует использовать свой скрипт bin/Cron.sh.

Для того чтобы веб-сервер «видел» новые каталоги, добавляем в конфигурационный файл /etc/apache2/apache2.conf:

Alias /otrs-web/ «/opt/otrs/var/httpd/htdocs/»

ScriptAlias /otrs/ «/opt/otrs/bin/cgi-bin/»

Как вариант можно использовать один из готовых шаблонов расположенных в подкаталоге scripts.

$ sudo cp scripts/apache2-httpd-new.include.conf /etc/apache2/sites-enabled/otrs.conf

И перезапускаем веб-сервер.

$ sudo /etc/init.d/apache2 restart

Чтобы создать базу данных вручную следует использовать готовый шаблон, находящийся в каталоге scripts/database, но так как это легко можно проделать через веб-интерфейс, рассматривать подробно мы этот шаг не будем.

Настройки через веб-интерфейс

Для последующей настройки заходим на страницу http://host/otrs/installer.pl. Теперь осталось пройти четыре шага. Сначала следует принять условия GNU GPL, далее указываем параметры доступа к используемой базе, пароль администратора и учетную запись для OTRS.

Настройка доступа к базе данных

Если все нормально после нажатия на кнопку Next будут созданы необходимые таблицы. В следующем окне указываем System ID, FQDN имя системы и e-mail администратора, название организации, месторасположение файлов журнала, кодировку (лучше использовать UTF8), язык по умолчанию и проверку MX записи домена. Теперь по ссылке заходим на страницу http://localhost/otrs/index.pl, для регистрации используем учетную запись root@localhost и пароль root, не забыв выставить русский язык интерфейса.

На освоение интерфейса вполне естественно придется потратить некоторое время, но особых трудностей здесь быть не должно. После входа первым шагом следует зайти во вкладку Администрирование и настроить основные параметры OTRS. Здесь четыре пункта. Зайдя в «Пользователи & Группы & Роли» добавляем пользователей которые будут обрабатывать заявки, группы и соответствующие роли, а также клиентов. По умолчанию в системе присутствует три группы - admin, stats и user, назначение которых очевидно, но для контроля доступа различных групп агентов (например отдел закупок, техподдержка и т.п.) можно создать свои группы. Для изменения и добавления очередей, закрепления за ними групп, которые будут обрабатывать заявки следует перейти в пункт «Очередь & Ответы«. Здесь же настраиваются автоответы на заявки и прикрепленные файлы. Колонка «Система» позволяет настроить подписи, приветствия, список системных электронных адресов, здесь же настраиваются PGP, SMIME и распределение сообщений по очередям. И наконец последняя, но не менее важная вкладка «Дополнительно«. Здесь настраиваются почтовые адреса на которые будут приходить сообщения, управление фильтром postmaster, планировщик задач, сообщения администратора, и прочее. После этого можно протестировать систему, отправив сообщение на указанный адрес. В OTRS должна появиться новая заявка. Работу PostMaster можно проверить прямо из командной строки.

$ cat /opt/otrs/doc/test-email-1.box | /opt/otrs/bin/PostMaster.pl

Настройка отправки сообщений

Сейчас OTRS принимает сообщения от клиентов, но отправить с его помощью нет возможности. Поэтому следующим шагом настраиваем связку с SMTP сервером. В качестве которого может выступать Sendmail, Postfix, Qmail, Exim или любой другой. Настройка связки с SMTP сервером производятся в Администрирование – Дополнительно – Конфигурация системы, затем в раскрывающемся списке «Выбор группы» указываем Framework и в появившемся списке подгрупп нажимаем на Core::Sendmail.

Настройка доступа к базе данных

По умолчанию в списке SendmailModule установлен Sendmail, а в SendmailModule::CMD команда для отправки сообщения. Если в качестве SMTP сервера используется Sendmail, просто указываем в SendmailModule::Host название узла и можно тестировать отправку сообщения. Иначе в SendmailModule выбираем SMTP и в строке ниже указывает логин и пароль для аутентификации. В файле Kernel/Config.pm последний вариант выглядит так:

# SendmailModule

$Self->{«SendmailModule»} = «Kernel::System::Email::SMTP»;

$Self->{«SendmailModule::Host»} = «mail.example.com»;

$Self->{«SendmailModule::AuthUser»} = «user»;

$Self->{«SendmailModule::AuthPassword»} = «password»;

Советую пройтись по модулям доступным в «Конфигурация системы«, здесь спрятано большое количество всевозможных параметров и настроек.

Итак, система управления запросами OTRS готова к выполнению своих функций. Дополнительно хочется отметить подробную документацию в виде 500-страничного руководства «OTRS Admin Book«, которая поможет разобраться со всеми вопросами по администрированию OTRS.

Ссылки:1. Сайт проекта OTRS – http://www.otrs.org/

2. Демоверсия OTRS – http://otrs.org/demo/

3. Сравнение ticket tracking systems – http://en.wikipedia.org/wiki/Comparison_of_ticket-tracking_systems

4. Репозитарий модулей Perl CPAN – http://www.cpan.org/

2 Комментариев к Система управления запросами OTRS

Аватар

Maxim Fedrak

Декабрь 14th, 2008 | 20:42

А есть какие то рускоязычные форумы по теме?
Нарвался на проблему с системой
и пока не особо представляю как ее решать
вот думаю где поспрошать можно

Аватар

grinder

Декабрь 14th, 2008 | 21:32

Комментировать

Наверх