ResponseTemplate: Bereichsbezogen, global

  • Freigeben Version: Xanadu
  • Aktualisiert 1. August 2024
  • 5 Minuten Lesedauer
  • Die ResponseTemplate -Skripteinbindung 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 in MitarbeiterchatStandard-Chatantwortnachrichten an. Diese Skripteinbindung erfordert das Plugin „Templated Responses“ (com.sn_template_snip), das standardmäßig aktiviert ist und innerhalb des Namespace sn_template_snip ausgeführt wird.

    Weitere Informationen zu Antwortvorlagen finden Sie unter Antwortvorlagen.

    ResponseTemplate: ResponseTemplate()

    Instanziiert ein neues ResponseTemplate-Objekt.

    Tabelle : 1. Parameter
    Name Typ Beschreibung
    Keine
    new sn_templated_snip.ResponseTemplate().query("incident","ef4225a40a0a0b5700d0b8a790747812", "", 0, 0, true, ""); 

    ResponseTemplate – Abfrage (Zeichenfolge tableName, Zeichenfolge recordId, Zeichenfolge searchTerm, Anzahlbegrenzung, Anzahl Offset, Boolesche EinbindungEvaluatedBody, Zeichenfolge errorFormat, Objektoptionen)

    Gibt alle Antwortvorlagen aus einer angegebenen Tabelle zurück, die den übergebenen Abfragekriterien entsprechen.

    Tabelle : 2. Parameter
    Name Typ Beschreibung
    tableName Zeichenfolge Name der Tabelle, die zum Durchsuchen der Tabelle „sn_template_snip_note_template“ nach entsprechenden Antwortvorlagen verwendet werden soll. 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 zum Filtern der Liste der übereinstimmenden Antwortvorlagen.

    Die Methode führt für diesen Text eine CONTAINS-Suche in den Feldern „Name“ und „Textkörper“ sowie eine STARTS IT-Suche im Feld „Kurzname“ durch. Wenn der Suchbegriff beispielsweise „crash“ lautet, gibt die Methode eine beliebige Antwortvorlage zurück, die den Abfragekriterien entspricht und im Namen oder Text „crash“ 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 Name sortiert.

    Standard: Gibt alle übereinstimmenden Antwortvorlagen zurück.

    limit Nummer Optional. Maximale Anzahl der zurückzugebenden Antwortvorlagen.

    Standard: 50

    Offset Nummer Optional. Bei Paginierung der Index, bei dem die Suche gestartet werden soll.

    Standard: 0

    IncludeEvaluatedBody Boolean Optional. Kennzeichnung, die angibt, ob die Vorlagenvariablen gerendert werden sollen.

    Gültige Werte:

    • „falsch“: Vorlagenvariablen werden nicht gerendert. Die Antwort enthält die Nachrichtenvariablen.
      Beispiel:
      Beachten Sie, dass Ihr Fall ${number} zu ${assignment_group} eskaliert wurde.
    • „wahr“: Rendert die Vorlagenvariablen und gibt evaluated_response in den Rückgabeergebnissen zurück.
      Beispiel:
      Beachten Sie, dass Ihr Fall INC100001 an Facilitys eskaliert wurde.

    Standardwert: false

    FehlerFormat Zeichenfolge Optional. HTML-Formatierung für Fehler.

    Beispiel:

    "<span style='color:#ffff00'>${%s}</span>"

    Standard: „<span style='color:#ff0000'>${%s}</span>„

    Opt Objekt Optional. Parameter, die an den Erweiterungspunkt sn_template_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 zum Erweitern der Anwendungsfunktionalität verwenden.
    Tabelle : 3. Ergebnisse
    Typ Beschreibung
    Objekt Array von allen 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 Name sortiert.

    Jeder Knoten im Array kann die folgenden Parameter enthalten:

    • sys_id: Zeichenfolge. Eindeutiger Bezeichner der Antwortvorlage.
    • name: Zeichenfolge. Name der Antwortvorlage.
    • short_name: Zeichenfolge. Kurzer Name der Antwortvorlage.
    • body: HTML. Textkörper der Antwortvorlage.
    • short_name_match: Boolescher Wert. Kennzeichnung, die angibt, ob für den Kurznamen der Antwortvorlage eine genaue Übereinstimmung aufgetreten ist.
    • evaluated_response: Array. Ergebnisse der Vorlagenauswertung.
      • success: Boolescher Wert. Kennzeichnung, die angibt, ob alle Variablen ordnungsgemäß gerendert wurden.
      • evaluated_body: HTML. Gerenderter Textkörper der Antwortvorlage.
      • error: Array. Eintrag für jeden aufgetretenen Auswertungsfehler.
        • inAccessibleVariables: Zeichenfolge. Variablen im Antwortvorlagentext, die nicht aufgelöst werden konnten.
        • unEvaluatedVariables: Zeichenfolge. Variablenim Antwortvorlagentext, die nicht ausgewertet wurden.
        • message: Zeichenfolge. Fehlermeldung.

    In diesem Beispiel wird gezeigt, 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, Zeichenfolge tableName, Zeichenfolge recordId, Zeichenfolge errorFormat, Objektoptionen)

    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 beim Rendern ein anderes Problem auftritt, gibt die Methode in den Ergebnissen eine Fehlermeldung zurück.

    Tabelle : 4. Parameter
    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.
    Fehlerformat Zeichenfolge Optional. HTML-Formatierung für Fehler.

    Beispiel:

    "<span style='color:#ffff00'>${%s}</span>"

    Standard: „<span style='color:#ff0000'>${%s}</span>„

    Opt Objekt Optional. Parameter, die an den Erweiterungspunkt sn_template_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 zum Erweitern der Anwendungsfunktionalität verwenden.
    Tabelle : 5. Ergebnisse
    Typ Beschreibung
    Objekt Ergebnisse des Renderings.
    • success: Kennzeichnung, die angibt, ob das Rendern erfolgreich war.
    • evaluated_body: Zeichenfolge. Bei Erfolg gerenderter Antwortvorlagentext. Bei Fehler: Textkörper der Antwortvorlagen, der sowohl gerenderte als auch nicht renderbare Variablen enthält.
    • error: Objekt. Fehlermeldung, wenn das Rendern nicht erfolgreich war.
      • unEvaluatedVariables: Variablen, die nicht gerendert werden konnten.
      • message: Fehlermeldung.

    Dieses Codebeispiel zeigt, wie Sie eine gerenderte Antwortvorlage für die Incident-Tabelle anfordern.

    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>"
    }
    

    Dieselbe Renderanforderung, gibt jedoch eine Fehlerantwort zurück.

    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>"
    }