Exemple de remplacement de formule
Utilisez l’exemple de remplacement de formule suivant pour créer vos propres remplacements de formule.
Définitions de l’état de fin du groupe
L’état final d’une conversation indique comment une conversation s’est terminée. Par exemple, il se peut que l’utilisateur ne réponde pas ou que l’utilisateur ferme la fenêtre de messagerie instantanée. Il existe 12 définitions par défaut de l’état final. Pour en savoir plus sur les états de fin de conversation, reportez-vous à Agent virtuel Enregistrements d’interaction. Le script suivant les regroupe comme suit :
- VA a fermé la session de messagerie instantanée
- Système fermé VA – Aucune réponse de l’utilisateur
- Système fermé VA – Rubrique terminée
- Système fermé VA - Gauche avec Recherche IA
- Système fermé VA – Fermé automatiquement
- Système fermé VA – L’utilisateur n’est jamais engagé
- L’agent actif a fermé la session de messagerie instantanée
- Système fermé LA – Aucune réponse de l’utilisateur
- Système fermé LA – Messagerie instantanée terminée
- Agent fermé LA – Clic sur Fin/X
- Système fermé LA – Avant l’engagement de l’agent
- L’utilisateur a fermé la session de messagerie instantanée
- L’utilisateur a fermé LA – Clic sur Fin/X
- VA fermé par l’utilisateur : a cliqué sur Fin/X
- Utilisateur fermé LA : avant l’engagement de l’agent
Pour créer ces regroupements des 12 états finaux, suivez les instructions de création d’un remplacement de formule et utilisez le script suivant.
(function calc(convGr) {
// Returns 'System Closed VA', 'System Closed LA', 'User Closed' states.
function getFinalEndState(state) {
var arrayUtil = new global.ArrayUtil();
VA_END_STATE = ['System Closed VA – User No Response',
'System Closed VA – Topic Complete',
'System Closed VA – Left With AI Search',
'System closed VA – Auto Closed',
'System Closed VA – User Never Engaged'
];
LA_END_STATE = ['System Closed LA – User No Response',
'System Closed LA – Chat Complete',
'Agent Closed LA – Clicked End/X',
'System Closed LA – Before Agent Engagement'
];
USER_CLOSED_END_STATE = ['User Closed LA – Clicked End/X',
'User Closed VA – Clicked End/X',
'User Closed LA - Before Agent Engagement'
];
if (state) {
if (arrayUtil.contains(VA_END_STATE, state))
return 'System Closed VA';
if (arrayUtil.contains(LA_END_STATE, state))
return 'System Closed LA';
if (arrayUtil.contains(USER_CLOSED_END_STATE, state))
return 'User Closed';
}
return state;
}
var conversationId = convGr.getValue('sys_id');
var interactionGr = new GlideRecord('interaction');
interactionGr.addQuery('channel_metadata_document', conversationId);
interactionGr.addQuery('channel_metadata_table', 'sys_cs_conversation');
interactionGr.query();
if (interactionGr.next()) {
var state = interactionGr.getValue('state');
var reason = interactionGr.getValue('state_reason');
var isVAChat = interactionGr.getValue('virtual_agent');
var isLAChat = interactionGr.getValue('agent_chat');
var endState = new CAUtil().getEndState(state, reason, isVAChat, isLAChat);
return getFinalEndState(endState);
}
})(convGr);