Implémenter une option Ignorer

  • Rversion finale: Yokohama
  • Mis à jour 30 janv. 2025
  • 1 minute de lecture
  • Utilisez un contrôle enrichi pour offrir aux utilisateurs la possibilité d’ignorer une question.

    Utilisez le contrôle enrichi \nTapez SKIP pour ignorer la question afin de permettre à un utilisateur d’ignorer une question. Il existe deux façons de configurer une option Ignorer :
    • Dans le script des attributs du fournisseur, utilisez _skip_internal pour déclencher un service d’action contextuelle afin d’ignorer la question.
    • Mappez une action contextuelle pour le fournisseur et utilisez request_context.contextual_action = « SKIP » pour ignorer la question. Consultez la rubrique Actions contextuelles pour les intégrations de messagerie instantanée personnalisées pour en savoir plus sur le mappage des entrées de l’utilisateur aux actions contextuelles.
    Exemple de script :
    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);