Implementieren Sie eine Überspringen-Option

  • Freigeben Version: Xanadu
  • Aktualisiert 1. August 2024
  • 1 Minute Lesedauer
  • Verwenden Sie ein Rich Control, um Anwendern die Möglichkeit zu geben, eine Frage zu überspringen.

    Verwenden Sie die Rich Control \nTyp SKIP, um Frage zu überspringen, um einem Anwender die Möglichkeit zu geben, eine Frage zu überspringen. Es gibt zwei Möglichkeiten, eine Überspringungsoption zu konfigurieren:
    • Verwenden Sie im Skript für Anbieterattribute _skip_internal, um einen Kontextaktionsservice zum Überspringen der Frage auszulösen.
    • Ordnen Sie dem Anbieter eine kontextbezogene Aktion zu, und verwenden Sie „//request_context.contextual_action = „SKIP“, um die Frage zu überspringen. Unter Kontextbezogene Aktionen für anwenderdefinierte Chatintegrationen finden Sie weitere Informationen über die Zuordnung von Benutzereingaben zu kontextbezogenen Aktionen.
    Beispielskript:
    va_sms_twilio_adapter_default_text_outbound_transformer
    (function execute(inputs, outputs) {
      try {
        var richControl = inputs.rich_control;
        outputs.result = richControl['label'];
        if (richControl['required'] === false && richControl['uiType'] != "OutputText") { // new
          outputs.result += "\nType SKIP to skip question"; // new
        } // new
      } catch(e){
        gs.error('Error in default text outbound transformer: ' + e.message);
        throw e; 
      }
    })(inputs, outputs);
    va_sms_twilio_adapter_provider_attributes
    (function execute(inputs, outputs) {
        try {
            var headers = (inputs.headers);
            var payload = (inputs.payload);
            var smsUtil = new VASMSTwilioUtil();
            outputs.token = JSON.stringify(smsUtil.getToken(headers, payload));
            var data = payload.data;
            var request_context = {}; 
            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 {
               var b = data['Body']; // new
               request_context.typed_value = b; // new
               if (b === "SKIP") { // new
                 request_context.typed_value = "_skip_internal"; // new
                 //request_context.contextual_action = "SKIP"; // new
               } // new
            }
            outputs.request_context = request_context;
            outputs.provider_user_id = data.From;
        } catch (e) {
            gs.error("Error in va_sms_twilio_adapter_provider_attributes : " + e.message);
        }
    })(inputs, outputs);
    contextual_action (all new)
    (function execute(inputs, outputs) {
      var contextual_action = inputs.request_context.contextual_action;
      if (contextual_action === "SKIP") {
          sn_cs.VASystemObject.skipOptionalQuestion(inputs.conversation_id);
      }
    })(inputs, outputs);