Virtual Agent Aktionsskripts
Sie müssen eine Reihe von obligatorischen Workflow-Studio -Aktionen und Subflow-Skripts schreiben, um die Benutzerdaten an VACS zu übergeben, Transformationen anzuwenden und die Antwort an den Endpunkt der Chatoberfläche zurückzusenden.
Provider und eingehende/ausgehende Skripts
Ein -Anbieter wie Twilio stellt die Chat-Fähigkeit bereit. Anwenderaktionsskripts führen Anbieteraktionen sowie die Konfiguration der anwenderdefinierten Chatintegration für Konversationen für eingehende und ausgehende Umwandleraktionen für Ihren Chatbot oder anwenderdefinierte Konversationen aus. Für jedes Skript werden Beispiele bereitgestellt. Sie enthalten eine Beschreibung der Funktion jedes Skripts sowie die Aktionseingabe und -ausgabe. Außerdem sehen Sie Beispiele für das Skript JSON.
Sie verwenden Workflow-Studio, um diese Skripts zur Transformation von Server- und Client-Nachrichten zu erstellen. Die Skripts für den Anbieter, den Absender und den Umwandler für eingehenden/ausgehenden Datenverkehr sind erforderlich. Sie können die zusätzlichen Skripts verwenden, um Ihrem Chat weitere Funktionen hinzuzufügen.
| Skriptname | Zweck | Erforderlich (J/N) |
|---|---|---|
| Anbieterattribut | Enthält ein Anbieterauthentifizierungstoken, einen Anwenderbezeichner, Anwendereingaben und Kontextvariablen. | Y |
| Absenderaktion | Bündelt die Anforderung und sendet asynchron eine Antwort über Workflow-Studio oder Integration Hub. |
Y |
| Antwortprozessor | Führt Plattformaktionen aus, z. B. das Aktualisieren des Nachrichtenstatus, basierend auf der Antwort, die für eine ausgehende Nachricht empfangen wurde. | N |
| Kontextbezogene Aktion | Unterstützt kontextbezogene Aktionen. | N |
| Accountaktion verknüpfen | Stellt einen Rückruf bereit, ob die Account-Verknüpfung erfolgreich war oder nicht. | N |
| Ausgehender Umwandler | Transformiert das unterstützte Steuerelement eines Chat-Servers in ein für die Chatschnittstelle spezifisches Rendering. | Y |
| Eingehender Umwandler | Optional. Sie können die standardmäßigen Rich Controls verwenden, wenn sie für Ihren Chat-Anbieter gelten. Sie müssen nicht für jedes Eingabesteuerelement eine separate eingehende Transformation angeben. Wenn ein Standardverhalten nicht funktioniert, können Sie den Standard mit Ihrer eigenen eingehenden Transformation für ein bestimmtes Virtual Agent-Serversteuerelement überschreiben. | Y |
Aktionsskript für Anbieterattribute
| Eingabe | Ausgabe |
|---|---|
|
|
Beispiel: Aktionsskript für Anbieterattribute.
(function execute(inputs, outputs) {
var headers = (inputs.headers);
var payload = (inputs.payload);
// check if an authentication token was included. this is optional.
var smsUtil = new VASMSTwilioUtil();
outputs.token = JSON.stringify(smsUtil.getToken(headers, payload));
var data = payload.data;
var request_context = {};
// inspect the actual message. it could be an MMS (attachment) or raw text
if (data['MediaUrl0']) {
var attachment_value = {};
attachment_value.url = data['MediaUrl0'];
attachment_value.content_type = data['MediaContentType0'];
attachment_value.name = smsUtil.getFileName(attachment_value.url , attachment_value.content_type);
request_context.attachment_value = attachment_value;
} else {
request_context.typed_value = data['Body'];
}
// set the mandatory outputs
outputs.request_context = request_context;
outputs.provider_user_id = data.From;
})(inputs, outputs);
Absenderaktionsskript (Außer Betrieb genommen in Quebec, siehe Absender-Subflow)
Das Absenderaktionsskript weiß, wie eine Nachricht an den Anbieter gesendet wird. Das Skript sollte asynchron einen Workflow-Studio - oder IntegrationHub -Subflow aufrufen. Virtual Agent wird freigegeben, um die Verarbeitung von Nachrichten fortzusetzen, anstatt zu versuchen, externe Anforderungen zu senden.
| Eingabe | Ausgabe |
|---|---|
|
Keine |
Beispiel: Absenderaktionsskript.
(function execute(inputs, outputs) {
var results = inputs.results;
// transform the inputs to something this custom subflow knows about
var sendInputs = {
app_inbound_id : inputs["app_inbound_id"],
channel_user_id: inputs["channel_user_id"],
messages: JSON.stringify(results)
};
// invoke an asynchronous subflow which will send the external request. so this sender script will immediately return,
// freeing up the chat server thread to do further message processing while putting the external request work on the
// Workflow Studio/Integration Hub
sn_fd.FlowAPI.startSubflowQuick('sn_va_sms_twilio.va_sms_twilio_adapter_send_sms', sendInputs);
})(inputs, outputs);
Subflow-Skript des Senders
Das Subflow-Skript des Absenders weiß, wie eine Nachricht an den Anbieter gesendet wird. Das Skript sollte asynchron einen Workflow-Studio - oder IntegrationHub -Subflow aufrufen. Virtual Agent wird freigegeben, um die Verarbeitung von Nachrichten fortzusetzen, anstatt zu versuchen, externe Anforderungen zu senden. Wenn Sie einen Subflow erstellen, rufen Sie keine Aktion innerhalb des Subflows auf.
}else{
outputs.sendmessage = true;
messages = inputs.results.results;
outputs.from = from;
outputs.to = to;
outputs.messages = getMessages(messages);
}
Kontextbezogenes Aktionsskript
Das Skript für kontextbezogene Aktionen führt spezielle Stichwortaktionen aus, z. B. die Eingabe eines Agent, während es sich in einem Thema Virtual Agent befindet, um sofort an einen Servicemitarbeiter übergeben zu werden.
| Eingabe | Ausgabe |
|---|---|
|
Keine |
Beispiel: Kontextaktionsskript.
(function execute(inputs, outputs) {
var contextual_action = inputs.request_context.contextual_action;
if (contextual_action === "END_CONVERSATION") {
sn_cs.VASystemObject.endConversation(inputs.conversation_id);
} else if (contextual_action === "AGENT") {
sn_cs.VASystemObject.switchToLiveAgent(inputs.conversation_id);
} else if (contextual_action === "START_CONVERSATION") {
sn_cs.VASystemObject.startConversation(inputs.conversation_id);
}
})(inputs, outputs);
Skript für Aktion „Account verknüpfen“.
Das Skript für die Aktion „Account verknüpfen“ enthält Bezeichner für den Anwender, der die Verknüpfung herstellt. Das Skript enthält auch den Account, mit dem es verknüpft ist.
| Eingabe | Ausgabe |
|---|---|
|
Keine |
Beispiel: Aktionsskript zum Verknüpfen von Accounts.
(function execute(inputs, outputs) {
var richControl = (inputs.rich_control);
var value = richControl.value;
outputs.result = richControl.header + ': ' + value.action;
})(inputs, outputs);
Aktionsskript für Antwortprozessor
Das Aktionsskript des Antwortprozessors führt Spezialaktionen aus, die auf der Antwort auf eine Anforderung zum Senden einer Nachricht basieren. Das -Framework führt bereits eine grundlegende Nachverfolgung des Nachrichtenstatus durch.
| Eingabe | Ausgabe |
|---|---|
|
Keine |
Beispiel: Aktionsskript für Antwortprozessor.
(function execute(inputs, outputs) {
gs.debug("Response from provider: message_id = " + inputs.message_id + ", status_code = " +
inputs.status_code + ", headers = " + JSON.stringify(inputs.headers) + ", body = " + inputs.body);
})(inputs, outputs);
Ausgehende Umwandlerskripts
Die ausgehenden Umwandlerskripts konvertieren ausgehende Virtual Agent Nachrichten in ein Protokoll, das sich auf die anwenderdefinierte Chatintegration für Konversationen bezieht.
Eingabe.
- Rich_control (JSON): Virtual Agent Server-Rich-Control-Komponente, die transformiert werden muss.
- Nutzlast (JSON): Letzte Antwort, die von einer anfordernden Person empfangen wurde.
Ausgabe
result (Zeichenfolge): Für den Anbieter geeignete zu sendende Komponentennachricht.
| Name des ausgehenden Umwandlers | Skriptbeispiel |
|---|---|
| Adapter „ Virtual Agent – SMS Twilio“ – Ausgehender Umwandler für Standardtext [] | |
| Adapter „ Virtual Agent – SMS Twilio“ – Ausgehender Umwandler für Standardlink [] | |
| Adapter „Virtual Agent – SMS Twilio “ Standardauswahl Ausgehender Umwandler | |
| Adapter „Virtual Agent – SMS Twilio “ Standard Ausgehender Umwandler für MultiLink | |
| Adapter „Virtual Agent – SMS Twilio “ – Standardkarte – Ausgehender Umwandler | |
Eingehende Umwandlerskripts
Die eingehenden Umwandlerskripts konvertieren anwenderdefinierte eingehende Konversationsnachrichten für die Chatintegration in ein Protokoll, das von Virtual Agent erkannt wird. Bestimmt den erforderlichen Wert, der in das Rich Control eingefügt werden soll, das dem Benutzer angezeigt wird.
Eingabe.
- request_context (JSON): Die vom Anbieterattributskript übergebene Anforderung.
- Rich_control (JSON): Das letzte an die anfordernde Person gesendete Rich Control, das die ursprüngliche „Frage“ enthält.
Ausgabe
- Wert: sys_id oder Textwert.
- search_text: Text, der verwendet wird, wenn die anfordernde Person etwas Unerwartetes ausgewählt hat. Angenommen, ein Benutzer hat als Antwort auf eine Themenauswahlkomponente etwas eingegeben, bei dem die NLU helfen könnte, z. B. „Keine dieser Optionen stimmt mit dem überein, was ich möchte“.
| Name des eingehenden Umwandlers | Skriptbeispiel |
|---|---|
| Adapter „Virtual Agent – SMS Twilio “ [], Standard – Eingehender Textumwandler Zweck: Suchen Sie die Textantwort auf die gestellte InputText-Frage |
|
| Adapter „Virtual Agent – SMS Twilio “ Standard Eingehender Umwandler für Auswahl Zweck: Ermitteln Sie die sys_id der Option, die der Anwender für diese Auswahlfrage ausgewählt hat. Dieses Skript verwendet den gleichen Algorithmus des ausgehenden Umwandlers. Wenn keine Optionen ausgewählt sind und der Anwender stattdessen etwas eingegeben hat, wird „search_text“ festgelegt und in NLU eingespeist, sofern die Option in dieser Instanz aktiviert ist. |
|