How to create a simple approval queue with Request Tracker (RT) 3.8

Introduction

In this post I will show how to create a simple approval queue in Request Tracker 3.8.

Request Tracker

The General queue will be used as the approval queue.

Here are the different entities (groups) we will create:

  • Submitters: they can submit new tickets only to the General Queue.
  • Approvers: they can approve tickets (move them from the general queue to another queue)

I will also show how to add a new dashlet (“RT at a glance“) containing all the tickets the user created (“My issues”).

Permissions and Rights

In preferences, make sure the General queue is the default queue.

Create your other queues as needed.

First, we’ll allow all requestors (person who created/initiated a new ticket) to see all tickets they created and also be able to reply to them. In Configuration > Global > Group rights, for the Requestors group add the following rights:

  • ShowTicket
  • ReplyTicket

Submitters

In Configuration > Groups > Create, create a group called “Submitters”.

To allow the submitters to create new tickets to the general queue, go to Configuration > Queues open the General queue, click on Group Rights (top menu), add the following rights to the “Submitters” group:

  • SeeQueue
  • ShowTicket
  • CreateTicket

For the submitters to be able to see their tickets (which they created) after they have been moved to another queue, they need some READ rights on all other queues. Go to Configuration > Queues, for each queue, add the following Group Rights to the Submitters group:

  • SeeQueue
  • ShowTicket

Approvers

In Configuration > Groups > Create, create a group called “Approvers”.

We need to allow the Approvers to see and create tickets in every queue, go to Configuration > Queues and for each queue click on Group Rights (top menu), add the following rights to the “Approvers” group:

  • SeeQueue
  • ShowTicket
  • CreateTicket

Now they need to be able to modify tickets that are in the General Queue, go to Configuration > Queues > General click on Group Rights (top menu), add the following rights to the “Approvers” group:

  • SeeQueue
  • ShowTicket
  • CreateTicket
  • ModifyTicket

Dashlet for “My Issues”

Now we allow the privileged users to use saved searches and dashboards: in Configuration > Global > Group Rights, find the “Privileged” group and add the following rights:

  • LoadSavedSearch
  • ModifyOwnDashboard
  • ShowSavedSearches
  • SubscribeDashboard

In Tickets go to Advanced (top menu), copy and paste the following query in the first textfield:

(Creator = '__CurrentUser__')

Click on Edit Search (top menu), tweak the search as necessary. When done, save it as an RT’s system saved search (in the dashlet called “Saved searches”). Pick a name (“My Issues” for example).

Then we need to the change the default RT at a glance, go to Configuration > Global > RT at a glance

In RT at a glance: body, on the left column select your saved search (“My Issues”) and click the right arrow. Then in the right column, you can move your dashlet up and down.

Conclusion

Now you can add new users and assign them to the Submitters group or the Approvers group, or even both.
Submitters can create new tickets and still see them if they are moved to another queue or changed ownership.
Approvers can move tickets from the General queue to other queues.
Every privileged user should now see the “My issues” dashlet on their dashboard.

Of course, I am giving the strict minimum amount of rights necessary to achieve this, but you are free to add more rights (e.g. add the Watch right, or ReplyTicket right to Approvers) if you need them

3 Replies to “How to create a simple approval queue with Request Tracker (RT) 3.8”

  1. What you’ve described doesn’t sound much like the RT ‘Approval’ technology that is discussed at
    http://requesttracker.wikia.com/wiki/ApprovalCreation

    The RT ‘approval’ technology forces a ticket to not be resolvable until an ‘approve’ ticket has been resolved/rejected by another user, and permissions around enforcing that.

    What this article describes doesn’t seem to enforce that.
    Should this article really be titles ‘a simple approval queue’?

  2. Geoff,
    No it does not really enforce anything, my goal was to create a non-restrictive approval queue or dispatching queue.
    Mainly, I think it was more of a dispatch queue. A ticket is created in the General Queue, and then a reviewer dispatches it to the appropriate queue.

Leave a Reply