Tutorial: So legen Sie ein eigenes Feedback-System für Lösungen in ServiceDesk Plus an

Eine gut gepflegt Lösungsdatenbank, die sowohl Lösungen für Anwender als auch für Techniker enthält, ist in vielen IT-Abteilungen zu einem festen Bestandteil des Servicedesks geworden. Um eine hohe Qualität und Aktualität der bereit gestellten Lösungen sicherzustellen, sollten Helpdesks u. a. das Feedback ihrer Anwender zur Überarbeitung der Lösungen nutzen.

Wir zeigen Ihnen in diesem Tutorial, wie Sie in ServiceDesk Plus mit ein paar Handgriffen ein eigenes Feedback-System für Lösungen aufbauen können.

Dadurch erleichtern Sie es Ihren Anwendern, Feedback zu Lösungen zu geben. Und dieses hilft Ihnen wiederum, die Qualität der bereit gestellten Lösungen kontinuierlich zu verbessern.

Weitere Tipps zu IT-Helpdesk & ServiceDesk Plus finden Sie hier.

Zusatz-Tipp:
Dieses Tutorial soll Ihnen – anhand des Beispiels der Feedback-Funktion – einen Eindruck davon geben, wie einfach sich ServiceDesk Plus an individuelle Anforderungen anpassen lässt. Mit den vorgestellten einfachen Schritten (und etwas Scripting) können Sie – entsprechend angepasst – auch zahlreiche weitere eigene Funktionen und Workflows abbilden / integrieren.

Ausgangslage

Stellen Sie sich vor, Sie haben in ServiceDesk Plus eine umfangreiche Lösungsdatenbank erstellt. Diese enthält sowohl Lösungen für Ihre Techniker als auch für Ihre Anwender.

Die Lösungsdatenbank kann Ihnen dabei helfen, Anfragen von Anwendern zu reduzieren. Jedes Mal, wenn ein Anfrager einen neuen Vorfall (Incident) erstellt und einen Betreff eingibt, prüft ServiceDesk Plus anhand der eingegebenen Wörter, ob in der Lösungsdatenbank passende Lösungen vorhanden sind und zeigt die gefundenen Treffer an.

Übrigens:
Die Basis zum Anlegen von Lösungen, Workarounds und FAQs in ServiceDesk Plus bildet die Wissensdatenbank für Techniker. Zudem können Sie Ihre Anwender über das Self-Service-Portal auf Lösungen für einfache und wiederkehrende Probleme zugreifen lassen oder ihnen diese bei der Ticketerstellung automatisch vorschlagen.

ServiceDesk Plus Tutorial: Lösungsvorschlag bei Eingabe eines neuen Incidents
ServiceDesk Plus Tutorial: Lösungsvorschlag bei Eingabe eines neuen Incidents

Diese Funktion hilft, die Erstellung von Tickets zu reduzieren, da die User einen Teil ihrer IT-Probleme mit einer guten Lösung selbst beheben können.

Leider bietet ServiceDesk Plus derzeit keine native Möglichkeit, eine Art Feedback zu einer Lösung zu geben. Rechtschreibfehler, nicht mehr aktuelle, unklare oder unvollständige Anweisungen oder andere Fehler / Anmerkungen können so von den Usern nicht direkt weitergegeben werden. Dabei kann gerade dieses Feedback zur Qualitätssteigerung einer Lösung beitragen.

In diesem Tutorial zeigen wir Ihnen, wie Sie mit ein paar Handgriffen ein eigenes Feedback-System für Lösungen in ServiceDesk Plus aufbauen können.

Am Ende dieses Tutorials haben Sie folgende Änderungen und Einstellungen vorgenommen:

1. Erstellen Sie eine Ticket-Vorlage

Als Erstes erstellen Sie eine neue Ticket-Vorlage, die für das Lösungs-Feedback verwendet werden soll. Bitte beachten Sie, dass in diesem Tutorial die Vorlage als Vorfallvorlage (Incident) erstellt wird. Sie können selbstverständlich auch eine Service-Vorlage verwenden, jedoch können die hier gezeigten Konfigurationen leicht abweichen.

Erstellen Sie über Admin -> Vorfallvorlage eine neue Vorlage.
 
Wir werden die Vorlage in diesem Beispiel recht einfach halten. Sie enthält nur die wichtigsten Informationen. Damit eine Auswertung (Reporting) von Feedback-Anfragen erfolgen kann, wird das Feld "Anfragetyp" verwendet und der Wert auf "Lösungsfeedback" gesetzt. Den Wert können Sie an Ihre Bedürfnisse und Richtlinien anpassen.

Die Vorlage sieht dann wie folgt aus:

Screenshot ServiceDesk Plus: Technikeransicht der Ticket-Vorlage für das Lösungs-Feedback
Screenshot ServiceDesk Plus: Technikeransicht der Ticket-Vorlage für das Lösungs-Feedback


Screenshot ServiceDesk Plus: Anfrageransicht der Ticket-Vorlage für das Lösungs-Feedback
Screenshot ServiceDesk Plus: Anfrageransicht der Ticket-Vorlage für das Lösungs-Feedback

Damit das Feedback der richtigen Lösung zugeordnet wird, muss das Feld „Solution ID“ als zusätzliches Feld erstellt werden. Sie können es in der Technikeransicht über „Neues Feld“ hinzufügen. Wählen Sie als Typ „Einzeiliger Text“ aus.

In diesem Beispiel wurde das Feld als Pflichtfeld markiert, da ein Anwender die Vorlage beispielsweise auch direkt aus dem Portal aufrufen könnte. Um sicherzugehen, dass ein Feedback nicht ohne Verweis auf die Lösung erstellt wird, sollte dieses Feld in jedem Fall befüllt werden.

Damit haben Sie die Feedback-Vorlage erstellt. Als Nächstes erstellen Sie Automatisierungen in Form von Feld- und Formularregeln.

2. Erstellen Sie Feld- und Formularregeln (FuF)

Bei einer Feedback-Anfrage seitens eines Anfragers sollte Ihnen ServiceDesk Plus so viele Aufgaben wie möglich abnehmen. Eine dieser Aufgaben ist das automatische Eintragen der Lösungs-ID, auf die sich das Feedback bezieht, in das Feld „Solution ID“.

Zum Erstellen einer Feld- und Formularregel gehen Sie in dem in Schritt 1 angelegten Template in den Reiter „Feld- und Formularregeln“.


2.1 Erste Feld- und Formularregel (FuF 1): Lösungs-ID eintragen

In der ersten Feld- und Formularregel wird mittels eines Skripts die Lösungs-ID automatisch in das in Schritt 1 erstellte Feld eingefügt. Das Skript greift dazu auf den sogenannten „Referrer“ zurück, der die URL der zuletzt besuchten Seite anzeigt. Im Idealfall gehen die Benutzer immer direkt über eine Lösung in das Feedback-Formular.

Regelkonfiguration

Erstellen Sie die Regel nach dem folgenden Muster:

Screenshot ServiceDesk Plus: Feld- und Formularregel Übernahme der Lösungs-ID
Screenshot ServiceDesk Plus: Feld- und Formularregel für die Übernahme der Lösungs-ID

Skript

Bitte geben Sie folgenden Code in das Skript-Feld ein:

var url = new URL(document.referrer);
var solutionID = url.searchParams.get('solutionID');
if (solutionID) {
  $CS.setValue('WorkOrder_Fields_UDF_CHAR18', solutionID);
}

Übrigens:
Bitte setzen Sie in der Funktion $CS.setValue() den Feldbezeichner auf den Bezeichner Ihres Feldes.
Sie finden den Bezeichner im Skript-Editor links in der Feldauswahl. Klicken Sie auf das korrekte Feld und beziehen Sie den Bezeichner aus dem Feldnamen.

Screenshot ServiceDesk Plus: Ermitteln des Feldbezeichners
Screenshot ServiceDesk Plus: Ermitteln des Feldbezeichners für das Feld "Solution ID"


2.2 Zweite Feld- und Formularregel (FuF 2): Lösungs-Link in Beschreibung eintragen

Die nächste Feld- und Formularregel ist eher optional anzusehen und soll Ihre Techniker dabei unterstützen, schnell in die entsprechende Lösung zu gelangen. Die Lösungs-ID ist zwar im Feld „Solution ID“ vorhanden, der Techniker muss jedoch erst in die Lösungsdatenbank springen und dort nach der ID suchen. Um dies zu vereinfachen, wird eine weitere Regel erstellt, die am Anfang des Beschreibungsfeldes im Ticket die URL zur Lösung einfügt.

Regelkonfiguration

Orientieren Sie sich an folgendem Muster:

Screenshot ServiceDesk Plus: Feld- und Formularregel Loesungs-URL eintragen
Screenshot ServiceDesk-Plus: Feld- und Formularregel Loesungs-URL eintragen

Skript

Bitte geben Sie folgenden Code in das Skript-Feld ein:

var description = $CS.getText("DESCRIPTION");
var solutionID = $CS.getValue("WorkOrder_Fields_UDF_CHAR18");
var newDescription = "<a href='/AddSolution.do?submitaction=viewsolution&fromListView=true&solutionID=" + solutionID +"'>Link zur Lösung</a><br /><br /><br />" + description;

if ($CS.isFormSubmit() && !isSolutionLinkAlreadyInserted()) {
    $CS.setText("DESCRIPTION", newDescription);
}

function isSolutionLinkAlreadyInserted() {
   return description.indexOf("solutionID=" + solutionID) !== -1;
}

Hinweis:
Bitte passen Sie auch hier wieder den Feldbezeichner an!
(siehe Hinweis bei FuF 1)


Das Ergebnis der beiden Feld- und Formularregeln sieht dann wie folgt aus:

ServiceDesk Plus Tutorial: Feld- und Formularregeln in Aktion
ServiceDesk Plus Tutorial: Feld- und Formularregeln in Aktion

Wie Sie sehen können, wird beim Aufrufen der Feedback-Vorlage aus der Lösung die erste Feld- und Formularregel selbständig ausgeführt und die Lösungs-ID automatisch in das betreffende Feld eingetragen. Beim Abspeichern des Tickets wird am Anfang der Beschreibung der Link zur Lösung hinzugefügt.

Damit Anwender nicht jedes Mal über den Problemkatalog die richtige Vorlage auswählen müssen, erstellen wir im nächsten Schritt eine Schaltfläche in der jeweiligen Lösungsansicht. Darüber gelangen Anwender direkt in das Feedback-Formular.

3. Erstellen Sie einen Feedback-Button in der Lösungsansicht

Damit die erste Feld- und Formularregel greift, sollte die Feedback-Vorlage idealerweise direkt aus einer Lösung heraus aufgerufen werden.

Eine Möglichkeit, wie das funktioniert, haben Sie bereits gesehen: Der Anwender wählt innerhalb der Lösung aus dem Problemkatalog die Vorlage aus. Eine weitere Möglichkeit ist es, den Link zur Feedback-Vorlage an das Ende einer Lösung zu kopieren

Hier ein Beispiel, wie dies aussehen könnte:

Screenshot ServiceDesk Plus: Lösungsvorschlag für Link zur Feedbackfunktion
Screenshot ServiceDesk Plus: Lösungsvorschlag für Link zur Feedbackfunktion

Bei dieser Variante müssten Sie allerdings den Link in jede Lösung manuell eintragen. Aber keine Sorge: Es geht auch nutzerfreundlicher als in der ersten Möglichkeit beschrieben, indem Sie einen Feedback-Button direkt in der Lösungsansicht einblenden.

Diesen Button können die Anwender dann verwenden, um direkt in die Feedback-Vorlage zu gelangen. Bei einem Klick auf die Schaltfläche „Feedback“, wird der User in die Feedback-Vorlage weitergeleitet.

Das könnte in etwa so aussehen:

Screenshot ServiceDesk Plus: Lösungsvorschlag Feedback-Button
Screenshot ServiceDesk Plus: Lösungsvorschlag Feedback-Button

Feedback-Button erstellen:

Erstellen Sie hierzu ein neues Seiten-Skript unter Admin -> Seitenskripte und konfigurieren Sie es nach folgendem Schema:

Screenshot ServiceDesk Plus: Erstellung einer Feedback-Schaltfläche
Screenshot ServiceDesk Plus: Erstellung einer Feedback-Schaltfläche


Skript

Das Skript lautet wie folgt:

var button = document.createElement("a");
button.href = "/WorkOrder.do?woMode=newWO&reqTemplate=11701";
button.textContent = "Feedback";
button.classList.add("btn", "btn-default", "btn-xs", "mr10");

var btnGroup = document.querySelector("#actionsBar .btn-group");
if (btnGroup) btnGroup.appendChild(button);

Hinweis:
Auch hier gilt, dass Sie die korrekte Vorlagen-ID in das Skript eintragen müssen (siehe hervorgehobene Stelle, in unserem Beispiel „11701“). Zusätzlich können Sie den Text des Feedback-Buttons ändern, indem Sie das Wort „Feedback“ im Skript durch Ihren gewünschten Text ersetzen.

Die Schaltfläche kann auf verschiedenste Arten umgesetzt werden, was je nach Layout, Formatierung und Platzierung im DOM hinsichtlich des JavaScripts allerdings komplexer werden kann.

Über die Seiten-Skripte haben Sie viel Kontrolle und können auf alle Bereiche der Seite zugreifen.

4. Erstellen Sie einen benutzerdefinierten Auslöser, damit das Ticket automatisch dem Lösungsverantwortlichen zugewiesen wird

Um den Feedback-Workflow komplett abzuschließen, sollte das Ticket automatisch dem Lösungsverantwortlichen zugewiesen werden. Sollten mehrere Lösungsverantwortliche hinterlegt sein, wird vom Skript immer der erste Eintrag als Techniker verwendet.

Hierfür erstellen wir ein Deluge-Skript (Sie können das Skript auch mit jeder anderen Programmiersprache umsetzen, solange dieses HTTP-Abfragen durchführen kann) und einen benutzerdefinierten Auslöser.

Hinweis: Falls Sie das Feld „Lösungsverantwortlicher“ innerhalb der Lösungen nicht pflegen, können Sie diesen Schritt überspringen.

Skript

Erstellen Sie unter Admin -> „Spezifische Funktion erbitten“ ein neues Deluge-Skript.
Das Skript lautet wie folgt:

// Config
server = "XXXXXX";
apiKey = "XXXXXX";
solutionIDFieldName = "XXXXX";

solutionID = requestObj.get("udf_fields").get(solutionIDFieldName);
returnObj = Collection();

if (isNull(solutionID)) {
   returnObj.insert("result": "failed");
   returnObj.insert("message": "Feld '" + solutionIDFieldName + "' nicht gefunden.");
   return returnObj;
}

res = invokeurl
[
   url: server + "/api/v3/solutions/" + solutionID
   type: GET
   parameters: { "TECHNICIAN_KEY": apiKey }
];

if (res.get("response_status").get("status").equalsIgnoreCase("failed")) {
   returnObj.insert("result": "failed");
   returnObj.insert("message": "Lösung " + solutionID + " ist nicht vorhanden.");
   return returnObj;
}

solutionOwner = res.get("solution").get("solution_owner");

if (isNull(solutionOwner)) {
   returnObj.insert("result": "failed");
   returnObj.insert("message": "In der Lösung " + solutionID + " ist kein Lösungsverantwortlicher vorhanden.");
   return returnObj;
}

input_data = {"request": {"technician": solutionOwner.get(0)}};
res = invokeurl
[
url: server + "/api/v3/requests/" + requestObj.get("id")
type: PUT
parameters: { "input_data": input_data, "TECHNICIAN_KEY": apiKey }
];

if (res.get("response_status").get("status").equalsIgnoreCase("failed")) {
   returnObj.insert("result": "failed");
   returnObj.insert("message": "Ticket " + requestObj.get("id") + " konnte nicht aktualisiert werden.");
   return returnObj;
}

returnObj.insert("result": "success");
returnObj.insert("message": "Lösungsverantwortlicher erfolgreich als Techniker eintragen.");
return returnObj;

Hinweis:
Bitte passen Sie die ersten drei Zeilen folgendermaßen an:

Die Variable „solutionIDFieldName“ enthält den Feldbezeichner des Feldes „Solution ID“, das Sie als zusätzliches Feld erstellt haben.

Den Feldbezeichner finden Sie unter Admin -> Vorfall – Zusatzfelder in der Spalte „API-Feldname“.

Den API Key erstellen Sie rechts oben über das Benutzersymbol via „API-Schlüssel erzeugen“.

Benutzerdefinierter Auslöser

Anschließend verknüpfen Sie das Deluge-Skript noch mit einem benutzerdefinierten Auslöser. Sofern ein Lösungsverantwortlicher in der Lösung vorhanden ist, wird der Techniker bei der Erstellung des Tickets automatisch eingetragen.

Die Konfiguration hierfür sieht wie folgt aus:

Screenshot ServiceDesk Plus: Erstellung eines benutzerdefinierten Auslösers
Screenshot ServiceDesk Plus: Erstellung eines benutzerdefinierten Auslösers

Fazit

Damit sind Sie am Schluss des Tutorials angelangt: Sie haben eine neue Vorlage erstellt, die Sie für das Lösungs-Feedback verwenden können. Diese Vorlage enthält zwei Feld- und Formularregeln, die die Lösungs-ID automatisch ermitteln und in ein Feld Ihrer Wahl eintragen. Des Weiteren wird der Link zur Lösung beim Abspeichern des Tickets automatisch in das Beschreibungsfeld eingetragen, damit der Techniker mit einem Klick in die richtige Lösung gelangen kann.

Damit das Feedback für den Anwender einfacher vonstattengeht, haben Sie ein zusätzliches Feld in der Lösungsansicht eingetragen, sodass User mit einem Klick in die Vorlage für das Lösungs-Feedback gelangen. Außerdem erledigt ein Deluge-Skript in Verbindung mit einem benutzerdefinierten Auslöser die automatische Zuweisung des Feedback-Tickets an den entsprechenden Lösungsverantwortlichen – sofern dieser in der Lösung eingetragen wurde.

Hinweis:
Sie können die einzelnen Schritte bei Bedarf selbstverständlich weiter ausbauen und an Ihre Bedürfnisse anpassen.

Wir wollten Ihnen mit diesem Tutorial aufzeigen, wie einfach sich ServiceDesk Plus mit einfachen Schritten (und etwas Skripting) um eigene Funktionen und Workflows erweitern lässt.

Die komplette Feedback-Funktion sieht dann wie folgt aus:

ServiceDesk Plus Tutorial: Fertiger Workflow Feedback Funktion
ServiceDesk Plus Tutorial: Fertiger Workflow für die Feedback-Funktion


Diese Anleitung finden Sie als Video auf unserem YouTube-Kanal.

ManageEngine – Support & Kontakt


MicroNova AG
Unterfeldring 6
85256 Vierkirchen

Vertrieb
   +49 8139 9300-456
   Sales-ManageEngine@micronova.de

Technische Unterstützung
   +49 8139 9300-13
   Support kontaktieren