Open Source im professionellen Einsatz
Linux-Magazin 03/2009
521

Standardverhalten von OTRS ändern

Der Service Desk des Uni-Rechenzentrums nutzt zur Überwachung von Tickets die Standardansicht »Meine Queues« von OTRS, die alle offenen und nicht in aktiver Bearbeitung befindlichen (daher gesperrten) Tickets anzeigt. Dabei erwies es sich in der täglichen Praxis als erforderlich, bei der expliziten Zuweisung an einen weiteren Bearbeiter das zugrunde liegende Ticket nicht zu sperren, da bei diesem Vorgang das Ticket aus der Standardansicht des zweiten Bearbeiters verschwindet, ohne dass aus Sicht des Kunden das Ticket explizit bearbeitet worden wäre.

Das geschilderte Verhalten zu ändern, geht nur direkt im Quellcode. Die Suche nach dem dafür verantwortlichen OTRS-Modul gestaltet sich sehr einfach. OTRS bildet das für die Aktion verantwortliche Modul stets in der URL mit ab. So zeigt die URL beim Ändern des Besitzers eines Tickets »Action=AgentTicketOwner« an. Der dafür verantwortliche Quellcode befindet sich in »OTRS-Pfad/Kernel/Modules/AgentTicketOwner.pm« und ist damit schnell identifiziert (Listing 1). Die erforderliche Anpassung nebst Kommentar ist schnell gemacht (Listing 2).

Es ist sehr empfehlenswert, nicht nur die Art der Änderung zu kommentieren, sondern auch durch eindeutige Tags (hier »custom unibwm«) hervorzuheben. Dadurch lassen sich bei Updates und - wichtiger noch - Upgrades die modifizierten Stellen einfach identifizieren.

Listing 1: Ticket-Lock nach
Ändern des Besitzers

01 if ($Self->{Config}->{Owner}) {
02      if ($GetParam{NewOwnerType} eq 'Old' && $GetParam{OldOwnerID}) {
03         $Self->{TicketObject}->LockSet(
04            TicketID => $Self->{TicketID},
05            Lock => 'lock',
06            UserID => $Self->{UserID},
07         );

Listing 2: Keine Sperre nach
Ändern des Besitzers

01 # Wenn neuer Besitzer gesetzt, Ticket immer entsperren!
02 # custom unibwm (lock->unlock)
03 if ($Self->{Config}->{Owner}) {
04      if ($GetParam{NewOwnerType} eq 'Old' && $GetParam{OldOwnerID}) {
05         $Self->{TicketObject}->LockSet(
06            TicketID => $Self->{TicketID},
07            Lock => 'unlock',
08            UserID => $Self->{UserID},
09         );

Die Lösung: Herrenlose Tickets

Auf die gleiche Weise hat das Uni-Rechenzentrum ein anderes nicht passendes Standardverhalten geändert: OTRS belegt auch frisch erzeugte Tickets sofort mit einer Sperre. Wenn nämlich ein Service-Desk-Mitarbeiter telefonisch oder persönlich eine Störung entgegennimmt, wird dieser automatisch zum Bearbeiter des Tickets, statt des für die Aufgabe eigentlich vorgesehenen Agenten. Die ersonnene Lösung sieht vor, zunächst keinen Agenten als Besitzer zu deklarieren. Dies passiert in OTRS durch Setzen des Besitzers auf »root« (id=1) im Modul »AgentTicketPhone« (Listing 3).

Das OTRS-Team im Rechenzentrum hat im Zuge der beiden Quelltext-Änderungen gleich einen lästigen Bug im FAQ-Modul gefixt: Explizite »<br>«-Zeilenumbrüche auch innerhalb von »<href>«-Tags verhinderten die Nutzung von längeren Hypertext-Links in FAQ-Artikeln. Der eingereichte Bugzilla-Report schlummerte unbeachtet vor sich hin. Lediglich eine eingefügte Quellcodezeile in »OTRS-PfadKernel/Modules/FAQ.pm« löst das Problem (Listing 4).

Listing 3: Root als Owner eines
neuen Tickets

01 # custom unibwm: Owner bei neuem Ticket ist stets root (id=1)
02 # OwnerID =&gt; $Self-&gt;{UserID},
03 OwnerID =&gt; '1',

Listing 4: Bugfix im
FAQ-Modul

01 $ItemData{$Key} = $Text;
02 # custom unibwm
03 # protect against line-breaks within anchor-tags
04 $ItemData{$Key} =~ s/&lt;br&gt;href/ href/g;

Diesen Artikel als PDF kaufen

Express-Kauf als PDF

Umfang: 5 Heftseiten

Preis € 0,99
(inkl. 19% MwSt.)

Linux-Magazin kaufen

Einzelne Ausgabe
 
Abonnements
 
TABLET & SMARTPHONE APPS
Bald erhältlich
Get it on Google Play

Deutschland

Ähnliche Artikel

  • Ticketsysteme

    So genannte Trouble-Ticket-Systeme helfen dabei, die Anfragen von Kunden schnell und effizient zu beantworten. Die ausgereiften Open-Source-Lösungen Request Tracker und OTRS unterstützen beim professionellen Service und sind bei großen und kleinen Unternehmen im Einsatz.

  • Simple Defects

    Simple Defects macht für Bugs, was Git für Programmecode tut: Die Entwickler können sich eigene Kopien der Bugdatenbank ziehen, sie bearbeiten und mit anderen synchronisieren. Doch leider dümpelt die vielversprechende Software im Betastadium vor sich hin.

  • Hilfe mit System

    Ab einer gewissen Zahl von Supportanfragen sind Trouble-Ticket-Systeme unverzichtbar, um effizient zu bleiben. Das OTRS ist ein quelloffenes System, das die Arbeit am Helpdesk enorm erleichtert. Es hat sich bereits bei Firmen bewährt, bei denen täglich Zehntausende Fragen eintreffen.

  • Passgenau zugeteilt

    Wenn in einem Team Probleme auftauchen, ist es wichtig, die Vorgänge zu protokollieren und Lösungsschritte zu planen. Ticket-Systeme helfen den Überblick zu behalten und die Ressourcen effizient einzuteilen.

  • Erste Beta des Ticketsystems OTRS 4

    Der neuen Version 4 des Helpdesks OTRS haben die Entwickler unter anderem einen Facelift spendiert. Nun wurde die Beta 1 veröffentlicht.

comments powered by Disqus

Ausgabe 10/2016

Artikelserien und interessante Workshops aus dem Magazin können Sie hier als Bundle erwerben.