Advertisment

Helpdesk on Linux

author-image
PCQ Bureau
New Update

Request Tracker (RT) is a trouble-ticketing system. With the help of this package a company can efficiently manage queries submitted to it by its clients, partners or employees. Users can submit their requests via e-mail or a Web browser. When RT gets the request, it e-mails an automatic reply to the sender, which contains an electronic ticket stub for reference in further correspondence. This is also shown on the Web interface to the concerned helpdesk staff. The concerned support staff then takes ownership of the request and drafts a reply to the user. This is recorded by RT and forwarded to the user. The software is good for tracking requests, bugs, queries, etc that generally arise in a variety of applications like system administration, customer support, software development, etc. It’s a Linux-based software, and we’ve given it on this month’s CD. 

Advertisment

To set up RT you will need a Linux Machine running a Web server (preferably Apache) with mod_perl support, and a database server like PostgerSQL or MySQL. We installed it on PCQLinux 7.1 with Apache 1.3.27 and

PostgreSQL.

Installing RT



Before doing the installation, check the version of Linux that you are using. If it’s PCQ Linux 7.1, then you’ll need to take the following files from this month’s CD. 

rt.tar.gz



rtdeps.tar.gz


rtdeps.tar.gz

Advertisment

Copy these files to the /temp directory on your Linux box with the standard “cp rt*.gz /temp”

command. Then untar these files  as follows.

tar -zxvf rt.tar.gz



tar -zxvf rtdeps.tar.gz


tar -zxvf rtdeps4PCQLinux.tar.gz

Now go to the rtdeps directory and execute the following commands.

Advertisment

tar -zxvf HTML-Mason-1.02.tar.gz



cd HTML-Mason-.02


perl Makefile.PL


make && make install

A ticket is a

request, while a queue is a particular category

Next, go to the rt directory and issue the ‘make testdeps’ command. This will check whether all perl modules, which RT depends on, are installed or not. Make a note of the packages that are not installed. You should find them in either the tdeps or rtdeps4PCQL directory. Install them using the following command.

Advertisment

tar -zxvf filename. tar.gz



cd filename


perl Makefile.PL


make && make install

Instead of doing everything manually, you can also install the dependency packages automatically using ‘make fixdeps’. This will try to download them from the Internet. You would of course need a decent Internet connection for this. 

Next go back to the rt directory and check the dependencies again using “make testdeps”. Hopefully, this shouldn’t return any value, which means that you’re now ready to configure the helpdesk management system.

Advertisment

Once all the prerequisites are met, you have to modify Apache so that rt can use it. Open httpd.conf and change the following lines. 

ServerType stand



MinSpareServers 5


MaxSpareServers 20


StartServers 8


MaxClients 150


MaxRequestsPerChild 100


Listen 80


Port 80


User apache


Group apache







After doing this you have to create a user for rt as follows:

Advertisment

groupadd -g 35 rt



useradd -m -d /home/rt -u 4040 -g 35 rt

Next you have to do change the Makefile of rt, which is located in the /temp/rt directory. Open Makefile using any text editor like vi and change the following lines

RT_PATH = /opt/rt2 RT_LOG_PATH = /var/log/rt2



DB_TYPE = Pg DB_HOME = /usr/bin/mysql


DB_DBA = postgres DB_RT_USER = rt


WEB_USER = apache WEB_GROUP = apache

Advertisment

After doing this make a directory where rt will store its log files and take ownership of it as follows:

mkdir -p /var/log/rt2



chown -R root:rt /var/log/rt2


chmod 755 /var/log/rt2


Configuring RT

To install RT, go to its directory and install it using the “make install” command. Next in order to get the Web interface of rt, you have to configure Apache. For this, open httpd.conf and make a new ip based Virtual Host By adding the following lines to the file





DocumentRoot /opt/rt2/WebRT/ html


PerlModule Apache::DBI


PerlRequire /opt/rt2/bin/webmux.pl





SetHandler perl-script


PerlHandler RT::Mason


Order allow,deny













Now you have to add Apache so that it can run scripts. Do this with the following commands: 

cp /etc/httpd/bin/ apachect1 /etc/init.d/



ln -s /etc/init.d/apachect1 /etc/rc3.d/S99httpd

Now you have to configure sendmail so that it can receive connections outside of localhost. By default, Sendmail doesn’t allow outside email, and you have to modify the /etc/mail/sendmail.mc file to make it do so. Add ‘dnl’ before the following line to remark it

dnl DAEMON_OPTIONS (`Port=smtp,Addr=127.0.0.1, Name=MTA’)

Next give the following command.

m4 /etc/mail/sendmail.mc > /etc/sendmail.cf

Add the following entry to /etc/aliases file.

rt-comment: “/opt/rt2/bin/rt-mailgate –queue general –action comment”t"



rt: “/opt/rt2/bin/rt-mailgate –queue general –action correspond”d"

Finally, reboot your machine, and your Request Tracker is ready for action. We’ll now see how to configure it. 

Using RT



To use RT, open your Web browser and type in the virtual host IP address of RT. You will get a login screen, which has to be first entered by the administrator or root in order to configure it. The root user has to then create accounts for all users who would be accessing the system, defining their rights, creating

different helpdesk categories (known as Queues), and assigning them to different helpdesk-management staff. 

Upon login, the main screen shows information about tickets and queues. A ticket is a customer request, which also includes information like who requested it (Requester), what action has been taken, its current status, and the request details. On the other hand, a queue is a particular category of requests, for example, technical support, marketing, etc. Queues are an administrative unit with their own privileges, templates and keywords. Each ticket can only be associated with one queue.

Surely, there will be many different types of queries coming into a helpdesk system, that’s why one needs to create multiple queues. Each queue will have an e-mail address to which all queries pertaining to it will go. So you might have a queue called tech@PCQLabs.com, which is monitored by technical staff and billing@PCQLabs.com, which is used by accounts staff. Tickets may be moved between queues, so a tech could pass a ticket onto the accounts department once work has completed. Each ticket is identified by a unique ticket number. The terms ticket and request are used interchangeably. 

By default only the root user can access the created tickets, so you have to create other user accounts and grant them rights according to queues they are going to join. To do this, go to the Users links in Configuration menu and click Create New Users. This will show you a list of required information to create a new account. To grant the user access to the required queues, go to the Queues Link in configuration menu and click the appropriate Queue. Then select the User Rights link and add all the required rights to the user. Now the user can log in through the Web interface and create a new ticket, which will be added to the queue and the message in the ticket will be automatically forwarded to the AdminCcs. These are people who will handle the queries. They can then answer the query, disable it, or mark it as Solved for further reference by other users.

Anindya Roy

Advertisment