ResponseTemplate – Scoped, Global
Die ResponseTemplate- API stellt Methoden zum Verwalten von Antwortvorlagen bereit.
Antwortvorlagen sind wiederverwendbare Nachrichten, die Service Desk-Mitarbeiter in Fall- oder Aufgabenformulare kopieren können. Sie stellen Benutzern schnelle und konsistente Nachrichten bereit und zeigen anfordernden Personen Standard-Chatantwortnachrichten in Mitarbeiterchatan. Diese API erfordert das Plugin „Templated Responses“ (com.sn_templated_snip), das standardmäßig aktiviert ist. Diese API wird im Namespace sn_templated_snip bereitgestellt.
Weitere Informationen zu Antwortvorlagen finden Sie unter Antwortvorlagen.
ResponseTemplate – ResponseTemplate()
Instanziiert ein neues ResponseTemplate-Objekt.
| Name | Typ | Beschreibung |
|---|---|---|
| Keine |
Beispiel
new sn_templated_snip.ResponseTemplate().query("incident","ef4225a40a0a0b5700d0b8a790747812", "", 0, 0, true, "");
ResponseTemplate – query(String tableName, String recordId, String searchTerm, Number limit, Number offset, Boolean includeEvaluatedBody, String errorFormat, Object opts)
Gibt alle Antwortvorlagen aus einer angegebenen Tabelle zurück, die den übergebenen Abfragekriterien entsprechen.
| Name | Typ | Beschreibung |
|---|---|---|
| tableName | Zeichenfolge | Name der Tabelle, die zum Durchsuchen der Tabelle „sn_templated_snip_note_template“ nach entsprechenden Antwortvorlagen verwendet werden soll. Zum Beispiel Incident oder sn_hr_core_case. |
| recordId | Zeichenfolge | Sys-ID des Datensatzes, der zum Rendern der Variablen in der Antwortvorlage verwendet werden soll. |
| searchTerm | Zeichenfolge | Optional. Text, der zum Filtern der Liste der übereinstimmenden Antwortvorlagen verwendet werden soll. Die Methode führt eine ENTHÄLT-Suche dieses Texts in den Feldern „Name“ und „Text“ und eine STARTS-MIT-Suche im Feld „Kurzname“ durch. Beispiel: Wenn der Suchbegriff „crash“ lautet, gibt die Methode eine beliebige Antwortvorlage zurück, die den Abfragekriterien entspricht und im Namen oder Text Absturz enthält oder der Kurzname mit „crash“ beginnt. Antwortvorlagen mit genauen Übereinstimmungen mit dem Kurznamen werden in den Rückgabeergebnissen zuerst angezeigt. Alle anderen zurückgegebenen Antwortvorlagen werden nach Namen sortiert. Standard: Gibt alle übereinstimmenden Antwortvorlagen zurück. |
| limit | Nummer | Optional. Maximale Anzahl der zurückzugebenden Antwortvorlagen. Standard: 50 |
| Offset | Nummer | Optional. Für die Paginierung der Index, bei dem die Suche beginnen soll. Standard: 0 |
| includeEvaluatedBody | Boolean | Optional. Kennzeichnung, die angibt, ob die Vorlagenvariablen gerendert werden sollen. Gültige Werte:
Standardwert: false |
| errorFormat | Zeichenfolge | Optional. HTML-Formatierung, die für Fehler verwendet werden soll. Beispiel:
Standard: |
| Optimiert | Objekt | Optional. Parameter, die an den Erweiterungspunkt sn_templated_snip.response_template übergeben werden sollen. Format und Inhalt dieser Parameter hängen von der Implementierung des Erweiterungspunkts ab. Weitere Informationen zu Erweiterungspunkten finden Sie unter Erweiterungspunkte zur Erweiterung der Anwendungsfunktionalität verwenden. |
| Typ | Beschreibung |
|---|---|
| Objekt | Array aller Vorlagen, die den angegebenen Suchkriterien entsprechen. Antwortvorlagen mit genauen Übereinstimmungen mit dem Kurznamen werden in den Rückgabeergebnissen zuerst angezeigt. Alle anderen zurückgegebenen Antwortvorlagen werden nach Namen sortiert. Jeder Knoten im Array kann die folgenden Parameter enthalten:
|
Dieses Beispiel zeigt, wie Antwortvorlagen abgefragt werden, die der Incident-Tabelle zugeordnet sind.
query("incident","ef4225a40a0a0b5700d0b8a790747812", "", 0, 0, false, "");
Erfolgreiche Antwort:
[
{
"sys_id": "5fc1d65993003300a9bc1d1e867ffb9c",
"name": "Incident escalation",
"short_name": "escalation",
"template_body": "<p>Dear ${caller_id.first_name},</p>\r\n<p>Please note that your incident ${number} has been escalated to ${assignment_group}. An agent will be assigned on your case and will keep you updated. If you have more questions please reach out to our team.</p>\r\n<p>Regards,</p>\r\n<p>${sys_updated_by}</p>"
}
]
Gleiche Abfrage mit einer Fehlerantwort.
query("incident","fe4225a40a0a0b5700d0b8a790747812", "", 0, 0, false, "");
Fehlerantwort:
[
{
"sys_id": "5fc1d65993003300a9bc1d1e867ffb9c",
"name": "Incident escalation",
"short_name": "escalation",
"template_body": "<p>Dear ${caller.first_name},</p>\r\n<p>Please note that your incident ${number} has been escalated to ${assignment_group}. An agent will be assigned on your case and will keep you updated. If you have more questions please reach out to our team.</p>\r\n<p>Regards,</p>\r\n<p>${sys_updated_by}</p>",
"evaluated_response": {
"success": false,
"error": {
"unEvaluatedVariables": "caller.first_name",
"message": "Cannot evaluate following variables: caller.first_name"
},
"evaluated_body": "<p>Dear <span style='color:#ff0000'>${caller.first_name}</span>,</p>\r\n<p>Please note that your incident INC0000049 has been escalated to Hardware. An agent will be assigned on your case and will keep you updated. If you have more questions please reach out to our team.</p>\r\n<p>Regards,</p>\r\n<p>admin</p>"
}
}
]
ResponseTemplate – render(String templateId, String tableName, String recordId, String errorFormat, Object opts)
Rendert den HTML-Text einer angegebenen Antwortvorlage.
Während des Renderns werden alle Variablen anhand der Informationen aus der angegebenen Tabelle und dem angegebenen Datensatz aufgelöst. Wenn Variablen nicht aufgelöst werden können oder während des Renderns ein anderes Problem auftritt, gibt die Methode eine Fehlermeldung in den Ergebnissen zurück.
| Name | Typ | Beschreibung |
|---|---|---|
| templateId | Zeichenfolge | Sys-ID der zu rendernden Antwortvorlage. |
| tableName | Zeichenfolge | Name der Tabelle, die beim Rendern der Variablen in der Antwortvorlage verwendet werden soll. |
| recordId | Zeichenfolge | Sys-ID des Datensatzes, der beim Rendern der Variablen in der Antwortvorlage verwendet werden soll. Dieser Datensatz muss sich in der durch tableNameangegebenen Tabelle befinden. |
| errorFormat | Zeichenfolge | Optional. HTML-Formatierung, die für Fehler verwendet werden soll. Beispiel:
Standard: |
| Optimiert | Objekt | Optional. Parameter, die an den Erweiterungspunkt sn_templated_snip.response_template übergeben werden sollen. Format und Inhalt dieser Parameter hängen von der Implementierung des Erweiterungspunkts ab. Weitere Informationen zu Erweiterungspunkten finden Sie unter Erweiterungspunkte zur Erweiterung der Anwendungsfunktionalität verwenden. |
| Typ | Beschreibung |
|---|---|
| Objekt | Ergebnisse des Renderings.
|
Dieses Codebeispiel zeigt, wie eine gerenderte Antwortvorlage für die Incident-Tabelle angefordert wird.
render("5fc1d65993003300a9bc1d1e867ffb9c","incident","ef4225a40a0a0b5700d0b8a790747812", "")
Erfolgreiche Antwort:
{
"success": true,
"evaluated_body": "<p>Dear Beth,</p>\r\n<p>Please note that your incident INC0000049 has been escalated to Hardware. An agent will be assigned on your case and will keep you updated. If you have more questions please reach out to our team.</p>\r\n<p>Regards,</p>\r\n<p>admin</p>"
}
Gleiche Renderanforderung, aber Rückgabe einer Fehlerantwort.
render("5fc1d65993003300a9bc1d1e867ffb9c","incident","ef4225a40a0a0b5700d0b8a790747812", "")
Fehlerantwort:
{
"success": false,
"error": {
"unEvaluatedVariables": "caller.first_name",
"message": "Cannot evaluate following variables: caller.first_name"
},
"evaluated_body": "<p>Dear <span style='color:#ff0000'>${caller.first_name}</span>,</p>\r\n<p>Please note that your incident INC0000049 has been escalated to Hardware. An agent will be assigned on your case and will keep you updated. If you have more questions please reach out to our team.</p>\r\n<p>Regards,</p>\r\n<p>admin</p>"
}