Partager via


setContextProvider

Omnicanal pour Customer Service contient une suite de capacités qui étendent la puissance de Dynamics 365 Customer Service Enterprise pour permettre aux organisations de se connecter et d’interagir instantanément avec leurs clients sur les canaux de messagerie numérique. Une licence supplémentaire est requise pour accéder à Omnichannel pour Customer Service. Pour plus d’informations, voir les pages Vue d’ensemble de la tarification de Dynamics 365 Customer Service et Plan de tarification de Dynamics 365 Customer Service.

Définit le fournisseur de contexte pour les canaux de chat en direct. La fonction de fournisseur de contexte, lorsqu’elle est appelée, renvoie le contexte à utiliser pour initialiser une session de conversation.

Important

  • La méthode setContextProvider n’est prise en charge que pour le chat non authentifié. Pour le chat authentifié, vous devez utiliser le jeton Web JSON (JWT). Pour plus d’informations : Envoyer des jetons d’authentification
  • Vous ne pouvez transmettre que 100 variables de contexte personnalisées au cours de chaque session de chat.
  • Les méthodes SDK de chat en direct doivent être appelées après le déclenchement de l’événement lcw :ready . Vous pouvez écouter cet événement en ajoutant votre propre écouteur d’événements sur l’objet window.
  • Vous n’avez pas besoin d’utiliser cette setContextProvider méthode si vous utilisez l’API SDK startChat pour transmettre le contexte et initialiser la session de conversation.

Syntaxe

Microsoft.Omnichannel.LiveChatWidget.SDK.setContextProvider(contextProvider);

Paramètres

Paramètre Type Descriptif
contextProvider Fonction Fonction qui, lorsqu’elle est appelée, renvoie le contexte personnalisé

Valeur retournée

Aucun

Example

window.addEventListener("lcw:ready", function handleLivechatReadyEvent(){
        // Set the custom context provider
        // Throws error if contextProvider is not a function
        Microsoft.Omnichannel.LiveChatWidget.SDK.setContextProvider(function contextProvider(){
                   //Here it is assumed that the corresponding work stream would have context variables with logical name of 'contextKey1', 'contextKey2', 'contextKey3'. If no context variable exists with a matching logical name, items are created assuming Type:string               
	               return {
                             'contextKey1': {'value': 'contextValue1', 'isDisplayable': true},
                             'contextKey2': {'value': 12.34, 'isDisplayable': false},
                             'contextKey3': {'value': true}
                   };
        });
});

Dans l’exemple de code précédent, l’attribut value contient la valeur des variables de contexte.

L’attribut isDisplayable , s’il est défini sur true, affichera les éléments transmis dans le troisième onglet du contrôle de résumé de conversation pour une conversation.

Note

Si aucune variable de contexte n’a été créée dans le cadre d’un flux de travail en direct avec un nom logique correspondant, les variables sont créées au moment de l’exécution avec le type String. Pour plus d’informations : Variables de contexte

Afficher les clés de contexte.

Passez le libre-service du client comme contexte

Vous pouvez transmettre le libre-service d’un client en tant que contexte au début d’une conversation avec ce client. La setContextProvider méthode transmet les actions récentes du client dans le cadre du contexte avec le type de libre-service, pour une nouvelle conversation entre le client et l’agent. Un enregistrement de parcours visiteur est créé pour chaque action en libre-service.

Voici un exemple de code qui montre comment utiliser la setContextProvider méthode.

window.addEventListener("lcw:ready", function handleLivechatReadyEvent(){

Microsoft.Omnichannel.LiveChatWidget.SDK.setContextProvider(function contextProvider(){
    return {
            'SelfService': { 'value' : 
                '[ {"msdyn_displaytitle":"Page visited", "msdyn_starttime":"yyyy-mm-ddThh:mm:ssZ","msdyn_type":192350000}, \
                   {"msdyn_displaytitle":"Phrase searched", "msdyn_starttime":"yyyy-mm-ddThh:mm:ssZ","msdyn_type":192350001}, \
                   {"msdyn_displaytitle":"Knowledge article viewed", "msdyn_starttime":"yyyy-mm-ddThh:mm:ssZ","msdyn_type":192350002}, \
                   {"msdyn_displaytitle":"Custom action performed", "msdyn_starttime":"yyyy-mm-ddThh:mm:ssZ","msdyn_type":192350003} \
                 ]'
             }, // Additional context can be added as shown below
                //Here it is assumed that the corresponding work stream would have context variables with logical name of 'contextKey1', 'contextKey2', 'contextKey3'. If no context variable exists with a matching logical name, items are created assuming Type:string
                'contextKey1': {'value': 'contextValue1', 'isDisplayable': true},
                'contextKey2': {'value': 12.34, 'isDisplayable': false},
                'contextKey3': {'value': true}
         };
    });
});

Pour obtenir l’exemple de script permettant de suivre les actions en libre-service qui peuvent être incluses dans le portail libre-service, reportez-vous à la section Exemple de code en libre-service.

Codes d’erreur

L’erreur suivante peut se produire pour cette méthode.

Code d’erreur Message d'erreur
1 Échec de l’exécution de la méthode du fournisseur de contexte

Référence de l’API JavaScript pour le SDK de chat en direct
Afficher un contexte personnalisé