OTRS Queues, Groups, Roles and Agent Creation

For this post we’re going to explore the basics of OTRS and how to start making configurations for specific use.

OTRS has 5 basic elements for its functionality. These are:

  • Tickets: these are the main element of OTRS. A ticket is a request or problem that a customer makes or reports. They’re the mean on which customers interact with the people of the organization. All of the interactions are saved and archived. 
  • Queues: they are the holders of tickets. You can create as many queues as you’d like in order to assing tickets to queues according to business criteria. 
  • Groups: these are sets of permissions for the queues.
  • Roles: this element is optional, yet I like to see it as mandatory. Roles are assigned to groups, so they’re as well a set of permissions. But what’s the difference? When you want to give permissions to an agent, you can either assign an agent to a group or to a role. The difference is that if you don’t have roles and want to change the permissions to a group of agents, you’ll have to change those permissions individually for each agent. If you have agents assigned to a role, you’ll just have to change their role to another one that has the permissions you need them to have.
  • Agents: these are the people that login and attend all of the tickets, as well as the administrator of the system. Agents can also have multiple roles.

Getting started

Before we get started with creating all of the elements, please note that queues, roles and groups are dependent to your organization. This means that the elements I create in this post, shouldn’t be the same for your company and that before creating them, you should study your business’ processes in order to make an effective configuration of OTRS.

For this post I’m going to make up an organization that sells a electronic components with their own software. The basic structure would be something similar to this:

structure

 

There’s the Customer Support Department, and the Development Department. There’s of course more roles like supervisers and all of that, but I just omitted them for this post’s scope.

The Customer Support Department, has 3 Customer Support Groups: the Customer Support group, the Hardware Support Group and the Software Support Group. The Customer Support will handle all the requests that customers have regarding everything (problems or simple questions). If they can’t solve it because it’s out of their knowledge reach, then, according to the problem (software or hardware) they elevate the issue to the support team that has more knowledge on the subject. If they can’t solve it, and this should be very in very few ocasions, they elevate the ticket to the Development Team and they should know how to resolve the issue; if they can’t resolve the issue, then they file a bug report.

Here’s a simple diagram for the process created using the BPMN notation (This is a interesting topic to check on. I’ll probably make a post about this later.):

process

 

 

After defining the process, let’s define the queues, groups and roles we’re going to use in OTRS, but first, let’s analyze the permissions available in OTRS. In the following picture, there’s a description for all of them:

permissions

 

As you can see in the picture, the permissions are self-explanatory so I won’t get into details over this. For the post’s purpose, I’m going to define the permissions for each group and queue. For this we have to analyze the process flow and the organizational structure. In the structure, we defined 4 types of support, so there’s going to be a queue for each type of support.

After defining the queues, we have to define the groups of permissions for the different queues. I like to name it the same as the queue, on which it has major permissions. So, in this case we’re going to define 4 groups and 4 roles as well:

map

This is a very example of a Queue-Group-Role map. More effort should be put in order to define owners and limit the permissions even more, specially in big organizations, but for this post’s scope, this does the job.

Now that everything is defined, let’s see how to represent it in OTRS.

Step 1 – Login: login as an Admin user. 

Step 2 – Administration View: Press the Admin button in the navigation bar.

Step 3 – Group Creation: In the Agent Management Panel, press the Groups button. This panel will be mentioned a lot in this post so don’t forget about it.

3.0.0

3.1 – New Group: In this page, you should see a list of all created groups. If this is a fresh installation, then you should see the users, admin and stats groups. If you have ITSM installed then you see some more. To create a new group, press the Add Group button in the Actions panel to the left.

3.1.0

3.2 – Filling Group Form: this is the form for creating a new group. It’s very straightforward. Go ahead and fill it with the information of your group. The Validity entry means if the group is valid or not. Groups can not be permanently deleted, so setting the Validity to Invalid would be the equivalent of deleting a group. After finishing press the Submit button. 

3.2.0

3.3 – Agent-Group Relations: after creating a new group, you’ll be prompted with assigning new agents to groups. Leave it blank and then press submit.

3.3.0

This is everything you need to create a group. Repeat this process for all groups you defined.

Step 4 – Queue Creation: go back to the Admin tab, and look for the Queue Settings Panel. Press the Queues button.

4.0.0

4.1 – New Queue: in this page, you should see a list of all queues. If this is a fresh installation, then you should see the RawJunk, Postmaster and Misk queues. To create a new queue, press the Add Queue button in the Actions panel to the left.

4.1.0

4.2 – Filling Queue Form: this is the form for creating a new queue. It’s very straightforward. Go ahead and fill it with the information of your queue. The Validity entry means if the queue is valid or not. Queues can not be permanently deleted, so setting the Validity to Invalid would be the equivalent of deleting a queue. Note that there is a Group field and a Subqueue field. The Group field will be the default group for the queue, so make sure you choose the correct group and the Subqueue field is the parent queue of the new queue. You can leave this field blank.

Other important fields are the Salutation and Signature fields. In OTRS you define templates so that every tickets has certain structure and standarization. In this fields, you choose the template for the Salutation and Signature. In this example we’ll use the default one. In a later post I’m going to write about making new templates.

Press Submit after you’re done filling the form.

4.3 – Template-Relations: after hitting the Submit button, you’ll be redirected to a Template-Queue page. In this page you define the answer templates associated to the queue. You can have predefined answers to known problems or questions. You need to have at least one associated template to a queue in order to define tickets. Make sure you choose at least one.

Then hit the Submit button.

4.3.0

This is everything you need to create a queue. Repeat this process for all queues you defined.

Step 5 – Role Creation: go back to the Admin tab, and in the Agent Management panel press the Roles button.

5.1 – New Role: in this page, you should see a list of all roles. If this is a fresh installation, then you should see no roles created. To create a new role, press the Add Role button in the Actions panel to the left.

5.1.0

5.2 – Filling Role Form: this is the form for creating a new role. It’s very straightforward. Go ahead and fill it with the information of your queue. The Validity entry means if the role is valid or not. Roles can not be permanently deleted, so setting the Validity to Invalid would be the equivalent of deleting a role. After finishing press the Submit button.

Step 6 – Role-Group association: go back to the Admin tab and press the Roles <-> Groups button in the Agent Management panel. This will redirect you to the following page: 

6.0.0

Click one of the roles you created. 

6.1 – Permissions: to assign the permissions you defined, you’ll see the following view:

6.1.0

Check the permissions according to what you defined and press Submit. 

6.1.1

Step 7 – Agent Creation: go back to the Admin tab, and in the Agent Management panel press the Agents button.

7.1 – New Agent: in this page, you should see a list of all agents. If this is a fresh installation, then you should see root@localhost and the admin user if you created one. To create a new agent press the Add Agent button in the Actions panel to the left.

7.2 – Filling Agent Form: this is the form for creating a new agent. It’s very straightforward. Go ahead and fill it with the information of your agent. After finishing press the Submit button.

7.3 – Agent-Group Relations: after creating a new agent, you’ll be prompted with assigning the agent to groups. Leave it blank and then press submit.

Step 8 – Role-Agent association: go back to the Admin tab and press the Agents <-> Roles button in the Agent Management panel. This will redirect you to the following page: 

8.0.0

Click one of the agents you created. 

8.1 – Role: to assign a role you defined to the agent you selected, you’ll see the following view:

8.1.0

Check the roles according to the agent you selected and press Submit.

8.1.1

Your agent now has role(s), and therefore permissions to the queues you associated the role with. 

This is it for the queue, group, role and agent creation. Repeat all of the processes in order to make all the queues, groups, roles and agents you defined for your organization. I hope this helped you understand a little bit better the basics of OTRS.

See you in the next post!

OTRS Windows installation

Featured

For my first actual post, I’m going to make a tutorial on how to install OTRS in Windows. Linux installation tutorial will most likely come in the future.

About OTRS

OTRS is an Open Source Ticket Request System. This kind of software is great for handling trouble tickets of every kind within or outside an organization. You can see tickets as requests from internal collaborators such as employers of a department asking for air conditioning maintenance to the maintenance department, or a customer that asks for support or making a complain.

What the system allows is to manage all this incoming requests in different categories (queues in OTRS) and it also makes it possible a complete tracking of the tickets. A person can see all the communication necessary for resolving a ticket, it’s state, it’s owner and responsible and every possible information you can imagine. The system also permits for the administrator to create roles and responsibilities to different queues and the hability to assign agents to those roles. This allows administrators to mantain the information secure and visible only to the people that are meant to see that information.

Another feature of OTRS is that it is highly customizable as it is Open Source and configurable as well. There are lots and lots of options varying from telling the system what fields of tickets to show and which ones to hide; to customizing the GUI to create filters for incoming mail from customers to automatically assign to a queue or just delete them if they’re spam.

There is also an option for adding third-party modules, such as ITSM (Information Technology Service Management) module meant to aid in ITSM activities and processes. This module is ITIL (Information Technology Infrastructure Library) certified and I’ll talk about it more later in this post.

OTRS Windows Installation with PostgreSQL

Installing OTRS in Windows is actually very simple, as you would expect in a Windows environment. Here’s a step by step guide:

Step 1 – Download OTRS: go to this link, look for the Windows Installer and download it.

Step 2 – Install OTRS: go to the directory where OTRS installer was downloaded and execute it.

2.1 – Choosing installation language: choose the installation language you feel more comfortable with. This language will not be the final installation language. Hit Ok and then press Next.

2.2 – Choosing Perl version: OTRS is written in Perl and you can choose whether using ActiveState Perl or the bundled version of Perl. I tried installing it with ActiveState since the installer said it has a better performance than the bundled one, but I run into some issues which I could not resolve, so for this tutorial i’ll be using the bundled version. This said, hit Next to continue with the installation.

2.3 – Destination Folder: choose the folder where you want to install OTRS and hit Next.

2.4 – Database Selection: this is an important step. For this tutorial we’re going to use an already installed version of PostgreSQL, so I’m going to choose Use an already  installed databse option. If you don’t have PostgreSQL you can install it if you want to, but it’s not necessary. You can choose the Install the bundled MySQL database option with no negative impact with the installation. Going this way is very straightforward and less complicated so choose what suits you best. Hit Next and then Install to continue.

2.5 – Installation: OTRS is now installing and wait a few minutes. After it’s finished hit Launch to continue.

Step 3 – OTRS Initial Configuration: after hitting Launch button a new window will open in your default browser with a look similar to this:

1

Hit the Next button and continue.

3.1 – Database Selection: in this step you’re going to select the database engine you have installed.

Note: if you chose to install with the bundled MySQL database these steps will be slightly different for you. From Step 3.3 everything should be the same again.

In this case, I’m going to choose PostgreSQL and the option Create a new database for OTRS and then hit Next.

2

3.2 – Connection Settings: in this step, OTRS is going to ask for your database user credentials and the host of the connection. Make sure you put the credentials of a user with CREATE DATABASE permissions and then hit Check Database Settings.

3

If the connection was successful you’ll get a new set of fields. These correspond to the database that OTRS will be using, so feel free to change them however you want. For this post’s purpose I’m going to be using otrsTutorial for the database and OTRS_Tut_User for the master user. Make sure you change the password to something you are more likely to remember or take note on the auto-generated password and then hit Next. This step might take a little while since the database will now be created.

4

After the database was succesfully configured, you’ll get this window:

5

Hit Next to continue.

3.3 – General settings: in this step you’ll be asked for some information.

6

SystemID: just change it to whatever you like best, but if you have multiple installations it’s better for them to be different.

System FQDN: put the name the domain name of the system you’re installing OTRS. It is generally filled by default.

AdminEmail: fill it with the administrator email.

Organization: put the name of your organization.

Default language: this will be the default language. This does not change the administrator’s frontend language automatically. We’re going to change that later in this post.

CheckMXRecord: this has to do with mail redirection. Choose No if your DNS server is slow.

Hit Next to continue.

3.4 – Email Settings: this is the last step of the installation. In here you’ll configure the email the system is going to be using. For this tutorial I’m going to use Gmail SMTP and POP hosting. The image will be self explanatory on how the configuration should be.

7

Outbound and Inbound mail type and host should stay the same as well as the port if you’re using Gmail, so don’t change them unless you’re completely certain of what you’re doing. For the user authentication, make sure you put your entire mail address, even if it ends with @gmail.com. 

If you’re using another mail host, make sure you follow their instructions on how POP and SMTP configuration should be in order to work.

Once you’re done with that, hit the Check mail configuration button to check the configuration is correct. It if is correct you’ll advance the installation automatically.

Step 4 – Admin configuration: you’ll now be prompted with a Finished view. Go the Start page link it shows and login with the root@localhost user and the generated password.

4.1 – Login successful: one you’re logged in. You’ll see this window:

8

This is the main view of OTRS. Here you can see information about tickets, but we’re get into that later. For now, focus on the red message. To avoid this message, we’re going to make a new user with Admin privileges.

4.2 – Creating new Admin user: press the Admin button in the upper left side of the screen. You’ll get redirected to the Admin panel. In here, press the Agents button as shown below.

9.1

You’ll now see this view. Hit the Add agent button:

10

You’ll now be prompted with a form. It’s a bit long so I won’t post a picture, but the basics are simple. Fill the user with the information you consider necessary, but make sure to fill every field with a *, since they’re a must. In here you can set the language of the user’s GUI. The user can later change this if he desires. There’s a bunch of important information you can put in here so make sure you take your time to analyze all of this fields and see what is relevant to fill for your organization. After you’re done hit Submit. 

4.3 – Group Relations: after the agent is created, you’ll be prompted with this window:

11

This group relations might look confusing, but we’ll get into more details in another post. To grant all permissions to the new user, check the top RW box. the table should now look like this:

12

Hit the Submit button to finish. Afer this you’ll be redirected to the agents view and you whould see your new user there.

4.4 – Changing root password: to get to the current user management view, go to the upper right corner and hit the name of the user. In this case it’s Admin OTRS since we’re using the Superuser. 

13

This will open the following view:

14

Here you can change the password by putting your Current password and the New password, and then pressing Update.

Also, you can change the language, the skin, office schedule, notifications and some other settings. Make sure to explore this panel to see if there’s something of value for your organization.

Step 5 – Logging out: after changing password, you might want to now login with your new Admin user. To Logout press icon next to Admin OTRS label in the upper right corner.

15

This will prompt you to the Login page and you can now login with your credentials.

And we’re done! This is everything for OTRS basic installation in Windows using an external database.

My next post is going to be about installing the ITSM module.

Reference for the Gmail configuration:  http://wiki.otterhub.org/index.php?title=Configure_OTRS_with_Gmail