Implémenter une option Ignorer
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_internalpour 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);