VoiceTranscriptObject – Umfang
Die VoiceTranscriptObject Die skriptfähige API bietet Methoden zum Speichern von Transkriptdaten für Sprachkonversationen von Drittparteien in einer Tabelle in ServiceNow Instanz.
Beim Aufruf von VoiceTranscriptObject -Klasse verwenden sn_cs Namespace-Bezeichner.
Verfügbarkeit
Diese API ist in der Basis verfügbar ServiceNow System. Der Zugriff wird durch die ACLs eingeschränkt, die in den Tabellen „Interaktion“ [Interaktion] und „Konversation“ [sys_cs_Conversation] festgelegt sind.
VoiceTranscriptObject – addVoiceInteractionMessage(Zeichenfolge interactionId, Zeichenfolge JSON)
Fügt die angegebenen Nachrichten dem angegebenen Sprachtransaktionsdatensatz hinzu.
Sie können diesen Endpunkt während der Echtzeit-Transkription des Anrufs mehrmals anrufen oder alle Nachrichten in einem einzigen Anruf übergeben, wenn Sie den Anruf zu Verlaufszwecken transkribieren. Wenn Sie eine Echtzeitkonversation verarbeiten, sollten Sie diesen Endpunkt häufig anrufen, damit die Nachrichten in angezeigt werden Mitarbeiterbereich Zeitnah. Nachrichten werden basierend auf ihren Start- und Endzeiten in Bezug auf den Beginn des Anrufs sortiert.
| Name | Typ | Beschreibung |
|---|---|---|
| interactionId | Zeichenfolge | SYS_ID des Interaktionsdatensatzes, dem die angegebenen Nachrichten hinzugefügt werden sollen. Dieser Wert wird von zurückgegeben VoiceTranscriptObject – startVoiceInteraction(Zeichenfolge JSON) Methode. Tabelle: Interaktion [Interaktion] |
| <json_string> | Zeichenfolge (Array von Objekten) | Liste der Nachrichten, die an die angegebene Sprachinteraktion angehängt werden sollen.
|
| <json_string>.Attribute | Array von Objekten | Schlüssel-Wert-Paare, die der Sprachinteraktion zugeordnet werden sollen.
Dies kann eine beliebige Art von Datenobjekt sein, von einfachen Objekten bis zu komplexen zusammengesetzten Objekten. Sie werden als eindeutige Bezeichner beim Aufrufen von Amazon Web Services APIs verwendet. Standard: Keine |
| <json_string>.beginOffsetMillis | Lang | Erforderlich. Zeitversatz zwischen dem Beginn der Sprachinteraktion und dem Beginn der zugehörigen Nachricht. Beispiel: „BeginOffsetMillis“: 2650. Einheit: Millisekunden |
| <json_string>.Inhalt | Zeichenfolge | Erforderlich. Text der Nachricht, die der Sprachinteraktion hinzugefügt werden soll. |
| <json_string>.endOffsetMillis | Lang | Erforderlich. Zeitversatz zwischen dem Beginn der Sprachinteraktion und dem Ende der Nachricht. Beispiel: „EndOffsetMillis“: 9380. Einheit: Millisekunden |
| <json_string>.ID | Zeichenfolge | Nachrichten-UUID der Quelle dieser Sprachkonversation, z. B. für AmazonConnect. Legt den Spaltenwert der Quellnachrichten-ID fest. Standard: Keine |
| <json_string>.isEreignis | Boolean | Von Amazon Connect festgelegt, aber derzeit nicht von der Methode verwendet. Kennzeichnung, die angibt, ob die zugeordnete Nachricht ein Ereignis ist.
Gültige Werte:
Standardwert: false |
| <json_string>.isInternalNachricht | Boolean | Kennzeichnung, die angibt, ob dies eine interne Nachricht ist und dem Anrufer nicht angezeigt werden soll.
Transkriptionen werden normalerweise als interne Nachrichten betrachtet und werden nur für den Service Desk-Mitarbeiter und nicht für den Anrufer angezeigt. Darüber hinaus wird Agent Whisper verwendet, wenn eine stille Drittpartei mit einer stillen Drittpartei chattet oder zu einer Telefonkonversation gebracht wird, ohne dass der Anrufer dies weiß und einem Service Desk-Mitarbeiter Rat anbietet. Der Anrufer hört oder sieht diese Nachrichten nicht, der Service Desk-Mitarbeiter jedoch. Gültige Werte:
Standardwert: false |
| <json_string>.LoudnessPunktzahl | Anzahl | Messung, wie laut ein Kunde oder Service Desk-Mitarbeiter während eines Anrufs spricht.
Kontaktobjektiv zeigt eine Analyse der Konversation an, die zeigt, wo sie möglicherweise laut sprechen und eine negative Stimmung haben. Standard: Null |
| <json_string>.partizipierende ID | Zeichenfolge | Erforderlich. Teilnehmer, der der Nachricht zugeordnet ist. Gültige Werte:
|
| <json_string>.Stimmung | Zeichenfolge | Stimmung der Nachricht.
Dieser Wert wird von einem Drittanbieter generiert. Basierend auf ServiceNow Instanzkonfigurationseinstellungen. Dieser Wert wird dann entweder als positiv, negativ oder neutral übersetzt und im Konversations- und Interaktionsdatensatz gespeichert. Gültige Werte:
Standard: Null |
| Typ | Beschreibung |
|---|---|
| Zeichenfolge | Nachricht, die die Ergebnisse des Anrufs beschreibt. |
| Zeichenfolge | Wenn erfolgreich, sys_ID des Datensatzes der Sprach-Interaktionsnachricht, der erstellt wurde. Wenn ein Fehler aufgetreten ist, wird eine Fehlermeldung angezeigt, die den Grund für den Fehler beschreibt. Tabelle: Sprach-Transkript-Konversationsnachricht [sys_cs_message_Voice_Transcript] |
Das folgende Beispiel zeigt, wie Sie einem vorhandenen Sprachinteraktionsdatensatz Nachrichten hinzufügen.
var request = [
{
"isEvent":"False",
"isInternalMessage":"False",
"beginOffsetMillis":100000,
"content":"This is John. How can I help you?",
"endOffsetMillis":150000,
"id":"954c4edc-31a8-48b0-8f6e-7fa0c4ca00a8",
"participantId":"AGENT",
"sentiment":"NEUTRAL"
},
{
"isEvent":"False",
"isInternalMessage":"False",
"beginOffsetMillis":200000,
"content":"Uh, yes, John. Um, I'm a little very frustrated right now.",
"endOffsetMillis":25000,
"id":"18bcf19c-4a9b-4af1-9bd7-7bfb5ba53b9f",
"participantId":"CUSTOMER",
"sentiment":"NEGATIVE"
}
];
gs.log(sn_cs.VoiceTranscriptObject.addVoiceInteractionMessage("1f4ed6fdb7471110b6e8bc15ae11a971", JSON.stringify(request)));
Ausgabe:
// Success
Voice conversation transcript has been successfully saved. Conversation id: ea01113cb7f71110b6e8bc15ae11a94d
// Error
Exception occurred while adding the message: <error message>
VoiceTranscriptObject – createConversation(Zeichenfolge interactionId, Zeichenfolge JSON)
Erstellt einen Konversationsdatensatz in der Konversationstabelle [sys_cs_Conversation] für die angegebene Interaktion.
| Name | Typ | Beschreibung |
|---|---|---|
| interactionId | Zeichenfolge | SYS_ID des Interaktionsdatensatzes, für den ein Konversationsdatensatz erstellt werden soll. Dieser Wert wird von zurückgegeben VoiceTranscriptObject – startVoiceInteraction(Zeichenfolge JSON) Methode und in der Interaktionstabelle [Interaktion] gespeichert. |
| <json_string> | Zeichenfolge | JSON-Zeichenfolge der Eingabeparameter. |
| <json_string>.AGENTID | Zeichenfolge | Eindeutiger Bezeichner des Service Desk-Mitarbeiters, dem die Sprachinteraktion zugewiesen werden soll. Standard: Keine. Dem nächsten verfügbaren Service Desk-Mitarbeiter zugewiesen. Tabelle: Im Feld Anwender-ID der Anwendertabelle [sys_user]. |
| <json_string>.AnruferTelefonnummer | Zeichenfolge | Rückruftelefonnummer des Anrufers. Dies ist die Nummer, die der Service Desk-Mitarbeiter verwendet, um den Anrufer zu erreichen, falls der Anruf abbricht. Format: E.164-Standard konform Standard: Keine |
| <json_string>.clientSessionId | Zeichenfolge | Eindeutiger Bezeichner eines Datensatzes in einem externen System, der zum Nachverfolgen dieses Telefonanrufs systemübergreifend verwendet wird, wodurch die Integration zwischen ServiceNow und Drittpartei-Plattformen (z. B. CCaaS-Anbieter) ermöglicht wird. Standard: Keine |
| <json_string>.ingrenzId | Zeichenfolge | Eindeutiger Bezeichner des Anwendungsanbieters für den Sprachservice. Standard: Aus Chat abrufen Tabelle: Im Feld „eingehende ID“ der Tabelle „Anbieterkanalanwendung“ [sys_cs_Provider_Application]. |
| <json_string>.userid | Zeichenfolge | Erforderlich. Telefonnummer des Anrufers, der den Anruf getätigt hat, der der Sprachtransaktion zugeordnet ist. Format: Definiert durch die Software, die das Sprachkonversationsskript erstellt hat. Normalerweise entspricht der E.164-Standard. |
| Typ | Beschreibung |
|---|---|
| Zeichenfolge | Wenn erfolgreich, wird die sys_ID des neu erstellten Konversationsdatensatzes zurückgegeben. Wenn ein Fehler auftritt, gibt eine detaillierte Fehlermeldung zurück. Tabelle: Konversation [sys_cs_Conversation] |
Das folgende Codebeispiel zeigt, wie Sie mit dieser Methode einen neuen Konversationsdatensatz erstellen.
var request = {
"userId": "+14089178877"
};
var response = sn_cs.VoiceTranscriptObject.createConversation("e0fc03d7b7a21110b6e8bc15ae11a96c", JSON.stringify(request));
gs.log("Conversation id: " + JSON.stringify(response));
Ausgabe:
// Success
{"conversationId":"28435dbcb7f71110b6e8bc15ae11a972","status":"SUCCESS"}
// Error
{"error":"Exception occurred while creating a conversation: <error message>","status":"FAILED"}
VoiceTranscriptObject – endVoiceInteraction(String interactionId, String JSON)
Beendet die angegebene Sprachinteraktion. Nach dem Anruf werden keine zusätzlichen Sprachnachrichten für die Telefonkonversation übersetzt und gespeichert.
| Name | Typ | Beschreibung |
|---|---|---|
| interactionId | Zeichenfolge | SYS_ID des Interaktionsdatensatzes, dessen Sprachinteraktion beendet werden soll. Befindet sich in der Tabelle „Interaktion“ [Interaktion]. |
| <json_string> | JSON-Zeichenfolge | Optional. Parameter, die zusätzliche Informationen zu den Sprachinteraktionen enthalten. |
| <json_string>.recordingURL | Zeichenfolge | Optional. URL, in der sich die ursprüngliche Sprachaufzeichnung befindet. Wenn dies konfiguriert ist, wird diese URL in angezeigt Mitarbeiterbereich. Standard: Keine |
| Typ | Beschreibung |
|---|---|
| Zeichenfolge | Wenn erfolgreich, wird zurückgegeben Erfolg . Wenn ein Fehler auftritt, gibt eine detaillierte Fehlermeldung zurück. |
Das folgende Codebeispiel zeigt, wie eine aktive Sprachinteraktion beendet und die ursprüngliche Sprachaufzeichnungs-URL übergeben wird.
var request = {
"recordingURL": "https://servicenow.zoom.us/rec/QbF7XmPFHPlX1LG"
};
gs.log(sn_cs.VoiceTranscriptObject.endVoiceInteraction("1f4ed6fdb7471110b6e8bc15ae11a971", JSON.stringify(request)));
Ausgabe:
// Success
Success
// Error
Exception occurred while ending the interaction: <error message>
VoiceTranscriptObject – saveVoiceConversationTranscript(String voiceConversationJson)
Speichert Transkriptdaten für Sprachkonversationen von Drittparteien in Tabellen in einem ServiceNow Instanz, auf die dann über zugegriffen werden kann Kundenservice-Management (CSM).
Diese Sprachkonversationen werden normalerweise mit Drittanbietersoftware generiert. Diese Methode analysiert die übergebene JSON und speichert die Daten in den Tabellen Konversation [sys_cs_Conversation], Konversationsnachricht [sys_cs_message] und Sprachtranskript-Konversationsnachricht [sys_cs_message_Voice_Transcript] innerhalb von ServiceNow Instanz. CSM greift auf die Informationen in diesen Tabellen zu, um die Sprachkonversationstranskripte anzuzeigen.
| Name | Typ | Beschreibung |
|---|---|---|
| VoiceConversationJSON | Zeichenfolge | JSON, das die zu speichernde Sprachkonversation darstellt. Diese JSON wird von einem anderen gesendet ServiceNow Plugin, z. B. OpenFrame. Drittpartei-Lieferanten wie Amazon senden die JSON an das Plugin. Das zugehörige Plugin analysiert die Sprachkonversation und sendet die JSON im erforderlichen Format an Virtual Agent. Das folgende Beispiel ist ein Beispiel für eine Amazon Connect-Konversation: |
| Typ | Beschreibung |
|---|---|
| Zeichenfolge | Ergebnisse des Methodenaufrufs. Mögliche Rückgabeergebnisse:
|
Dieses Beispiel zeigt, wie Sie aufrufen SaveVoiceConversationTranscript() Methode zum Speichern eines Amazon Connect-Transkript.
var voiceConversationJson = "{\n" +
" \"interactionId\":\"e67a6c30c7233010967a34c91dc26068\",\n" +
" \"source\":\"AmazonConnect\",\n" +
" \"conversationStarted\":\"2021-08-06 15:07:51\",\n" +
" \"transcript\":[\n" +
" {\n" +
" \"isEvent\":\"False\",\n" +
" \"isInternalMessage\":\"False\",\n" +
" \"beginOffsetMillis\":2650,\n" +
" \"content\":\"This is John. How can I help you? Yeah,\",\n" +
" \"endOffsetMillis\":9380,\n" +
" \"id\":\"954c4edc-31a8-48b0-8f6e-7fa0c4ca00a8\",\n" +
" \"participantId\":\"AGENT\",\n" +
" \"sentiment\":\"NEUTRAL\",\n" +
" \"loudnessScore\":\"null,null\",\n" +
" \"attributes\": [{\n" +
" \"key\":\"key1\",\n" +
" \"value\":\"value1\"\n" +
" },{\n" +
" \"key\":\"key2\",\n" +
" \"value\":\"value2\"\n" +
" }\n" +
" ]\n" +
" },\n" +
" {\n" +
" \"isEvent\":\"False\",\n" +
" \"isInternalMessage\":\"False\",\n" +
" \"beginOffsetMillis\":9120,\n" +
" \"content\":\"Uh, yes, John. I'm a little frustrated right now.\",\n" +
" \"endOffsetMillis\":22900,\n" +
" \"id\":\"18bcf19c-4a9b-4af1-9bd7-7bfb5ba53b9f\",\n" +
" \"participantId\":\"CUSTOMER\",\n" +
" \"sentiment\":\"NEGATIVE\",\n" +
" \"loudnessScore\":\"null,null\",\n" +
" \"attributes\": [{\n" +
" \"key\":\"key1\",\n" +
" \"value\":\"value1\"\n" +
" },{\n" +
" \"key\":\"key2\",\n" +
" \"value\":\"value2\"\n" +
" }\n" +
" ]\n" +
" },\n" +
" {\n" +
" \"isEvent\":\"False\",\n" +
" \"isInternalMessage\":\"False\",\n" +
" \"beginOffsetMillis\":9120,\n" +
" \"content\":\"I am sorry to hear that\",\n" +
" \"endOffsetMillis\":22900,\n" +
" \"id\":\"18bcf19c-4a9b-4af1-9bd7-7bfb5ba53b9f\",\n" +
" \"participantId\":\"AGENT\",\n" +
" \"sentiment\":\"NEGATIVE\",\n" +
" \"loudnessScore\":\"null,null\",\n" +
" \"attributes\": [{\n" +
" \"key\":\"key1\",\n" +
" \"value\":\"value1\"\n" +
" },{\n" +
" \"key\":\"key2\",\n" +
" \"value\":\"value2\"\n" +
" }\n" +
" ]\n" +
" },\n" +
" {\n" +
" \"isEvent\":\"false\",\n" +
" \"isInternalMessage\":\"false\",\n" +
" \"beginOffsetMillis\":23590,\n" +
" \"content\":\"I am having problems with my computer\",\n" +
" \"endOffsetMillis\":30610,\n" +
" \"id\":\"ab09b3b6-23fd-4e41-be05-6b2b53c19059\",\n" +
" \"participantId\":\"CUSTOMER\",\n" +
" \"sentiment\":\"NEUTRAL\",\n" +
" \"loudnessScore\":\"null,null,null,null\",\n" +
" \"attributes\": [\n" +
" ]\n" +
" },\n" +
" {\n" +
" \"isEvent\":\"True\",\n" +
" \"isInternalMessage\":\"True\",\n" +
" \"beginOffsetMillis\":23590,\n" +
" \"content\":\"Agent asked for help in chat\",\n" +
" \"endOffsetMillis\":30610,\n" +
" \"id\":\"ab09b3b6-23fd-4e41-be05-6b2b53c19059\",\n" +
" \"participantId\":\"CUSTOMER\",\n" +
" \"sentiment\":\"NEUTRAL\",\n" +
" \"loudnessScore\":\"null,null,null,null\",\n" +
" \"attributes\": [\n" +
" ]\n" +
" }\n" +
" ]\n" +
"}\n";
var result = sn_cs.VoiceTranscriptObject.saveVoiceConversationTranscript(voiceConversationJson);
gs.log(result);
Ausgabe:
Voice conversation transcript has been successfully saved. Conversation id: 9c573169c611228700193229fff72400
VoiceTranscriptObject – startVoiceInteraction(Zeichenfolge JSON)
Erstellt einen Sprachinteraktionsdatensatz in der Tabelle „Interaktion“ [Interaktion].
Sie müssen diesen Datensatz erstellen, bevor Sie versuchen, transkribierte Sprachnachrichten zu speichern. Sie können diese Methode auch verwenden, um einem bestimmten Service Desk-Mitarbeiter einen Anruf zuzuweisen, indem Sie übergeben ir Spezifische Anwender-ID.
| Name | Typ | Beschreibung |
|---|---|---|
| <json_string> | Zeichenfolge | JSON-Zeichenfolge der Eingabeparameter. |
| <json_string>.AGENTID | Zeichenfolge | Eindeutiger Bezeichner des Service Desk-Mitarbeiters, dem die Sprachinteraktion zugewiesen werden soll. Standard: Keine. Dem nächsten verfügbaren Service Desk-Mitarbeiter zugewiesen. Tabelle: Im Feld Anwender-ID der Anwendertabelle [sys_user]. |
| <json_string>.AnruferTelefonnummer | Zeichenfolge | Rückruftelefonnummer des Anrufers. Dies ist die Nummer, die der Service Desk-Mitarbeiter verwendet, um den Anrufer zu erreichen, falls der Anruf abbricht. Format: E.164-Standard konform Standard: Keine |
| <json_string>.clientSessionId | Zeichenfolge | Eindeutiger Bezeichner eines Datensatzes in einem externen System, der zum Nachverfolgen dieses Telefonanrufs systemübergreifend verwendet wird, wodurch die Integration zwischen ServiceNow und Drittpartei-Plattformen (z. B. CCaaS-Anbieter) ermöglicht wird. Standard: Keine |
| <json_string>.ingrenzId | Zeichenfolge | Eindeutiger Bezeichner des Anwendungsanbieters für den Sprachservice. Standard: Aus Chat abrufen Tabelle: Im Feld „eingehende ID“ der Tabelle „Anbieterkanalanwendung“ [sys_cs_Provider_Application]. |
| <json_string>.userid | Zeichenfolge | Erforderlich. Telefonnummer des Anrufers, der den Anruf getätigt hat, der der Sprachtransaktion zugeordnet ist. Format: Definiert durch die Software, die das Sprachkonversationsskript erstellt hat. Normalerweise entspricht der E.164-Standard. |
| Typ | Beschreibung |
|---|---|
| Zeichenfolge | Ergebnisse des Methodenaufrufs. Mögliche Rückgabeergebnisse:
|
Das folgende Codebeispiel zeigt, wie Sie einen Sprachinteraktionsdatensatz erstellen.
var request = {
"userId": "+14089178877",
"callerPhoneNumber": "+14089178878",
"clientSessionId": "f8453abb-a33d-45b7-bf01-52b7a821e99z"
};
var response = sn_cs.VoiceTranscriptObject.startVoiceInteraction(JSON.stringify(request));
gs.log(JSON.stringify(response));
Ausgabe:
// Success
{"interactionId":"ea01113cb7f71110b6e8bc15ae11a950","status":"SUCCESS"}
// Error
{"error":"Exception occurred while starting the interaction: <error message>","status":"FAILED"}