OTRS bietet die Möglichkeit der Eskalation von Tickets. Nachdem ein Ticket eskaliert ist, wird die Anzeige aller anderen Tickets in derselben Queue oder in der Queue-Ansicht so lange blockiert, bis das eskalierte Ticket gesperrt wird. Durch die Ticket-Eskalation kann also gewährleistet werden, dass Tickets die ein bestimmtes Alter überschreiten, auf jeden Fall beachtet werden müssen.
Die Eskalationszeit kann in den Einstellungen jeder Queue festgelegt werden. Mit Hilfe des GenericAgents werden Benachrichtigungen über eskalierte Tickets an die Agenten versendet, die die Queue mit dem eskalierten Tickets in "Meine Queues" aufgenommen haben und für die in den Benutzereinstellungen die Benachrichtigung über eskalierte Tickets aktiviert ist.
Beispiel 8.4. GenericAgent Job zum Versand von Eskalations Benachrichtigungen
In der Datei Kernel/Config/GenericAgent.pm
ist bereits
ein Job eingetragen, über den der GenericAgent, regelmäßig durch einen
cron-Job ausgeführt, Benachrichtigungen über eskalierte Tickets an die
Agenten verschickt. Öffnen Sie diese Datei und entfernen Sie die
Kommentarzeichen vor den entsprechenden Zeilen:
%Jobs = ( # -- # [name of job] -> send escalation notifications # -- 'send escalation notifications' => { Escalation => 1, # new ticket properties New => { Module => 'Kernel::System::GenericAgent::NotifyAgentGroupOfCustomQueue', }, }, # insert your jobs (see Kernel/Config/GenericAgent.pm.examples) );
Wird ein neues Ticket in einer Queue gespeichert für die eine Eskalationszeit festgelegt wurde, wird zunächst der positive Wert für die eingestellte Eskalationszeit angezeigt. Die Anzeige bleibt auf den für die Queue eingestellten Wert stehen, wenn das System sich nicht in den in TimeWorkingHours festgelegten Stunden befindet oder wenn aktuell ein in TimeVacationDays bzw. TimeVacationDaysOneTime definierter Tag ist, außerhalb der für das System relevanten Zeiten findet keine Berechnung der Eskalationszeit statt.
Befindet sich das System in einem für die Berechnung relevanten Zeitfenster, wird die Eskalationszeit heruntergezählt. Wird der Wert 0 erreicht, eskaliert das Ticket. Im weiteren Verlauf wird der Wert negativ, das Ticket hat die Eskalationszeit überschritten. Bei der nächsten Ausführung des GenericAgent-Jobs für das Versenden der Eskalationsbenachrichtigungen an die Agenten, werden die entsprechenden Mails verschickt, das eskalierte Ticket blockiert die Anzeige der anderen Tickets in der Queue. Auch wenn das eskalierte Ticket gesperrt und bearbeitet wird, wird der angezeigte Wert für die Eskalationszeit immer kleiner, der eigentliche Eskalationszeitpunkt rückt immer weiter in die Vergangenheit. An diesem Verhalten ändert sich nichts, so lange das Ticket sich in einem offenen Status befindet (open, new, pending, usw.). Erst wenn das Ticket geschlossen wird, also sich der Status von offen auf geschlossen ändert (closed), wird auch die Eskalationszeit zurück gesetzt. Wird dasselbe Ticket z. B. durch ein Follow-up wieder in einen offenen Status gebracht, beginnt das Herunterzählen der Eskalationszeit erneut beim für die Queue eingestellten positiven Wert.
Ein Ticket kann also nur eskalieren, wenn es nicht gesperrt ist und wenn es sich in einem offenen Status befindet. Ist es gesperrt und noch nicht geschlossen, wird die Eskalationszeit immer weiter herunter gezählt, das Ticket eskaliert beim Wert 0. Wird das Ticket geschlossen und z. B. durch ein Follow-up erneut durch das System geöffnet, beginnt der Eskalationsprozess erneut.