setAuthTokenProvider

Multicanle para Customer Service ofrece un conxunto de capacidades que amplían o poder de Dynamics 365 Customer Service Enterprise para permitir ás organizacións conectarse instantáneamente e interactuar cos seus clientes a través de canles como o chat en directo e SMS. Requírese unha licenza adicional para acceder á Multicanle para Customer Service. Para obter máis información, consulte as páxinas Visión xeral dos prezos de Dynamics 365 Customer Service e Plan de prezos de Dynamics 365 Customer Service .

Establece o provedor de tokens de autenticación.

A función provedora de tokens de autenticación, cando se chama cunha función de callback como parámetro, invoca a función de callback cunha cadea JSON Web Token (JWT) válida como argumento.
Este método xera un erro se o valor do authTokenProvider parámetro non é unha función.

Importante

  • Na carga útil do token JWT, o valor proporcionado para lwicontexts a clave debe ser o contexto personalizado serializado.
  • O contexto personalizado é unha colección de pares clave/valor. Só se permiten valores primitivos para calquera chave.
  • As claves do contexto personalizado deben corresponder ás variables de contexto que se crean para o fluxo de traballo asociado en Omnicanal para o Servizo ao Cliente.
  • O provedor de tokens de autenticación sería invocado polo widget de chat en directo ao iniciar un novo chat.

Nota

Os métodos SDK de chat en directo deben ser invocados despois de que se levante o evento lcw:ready . Pode escoitar este evento engadindo o seu propio oínte de eventos no obxecto da xanela.

Este SDK só é aplicable se a autenticación está activada para o widget. Para activar a autenticación para o widget, consulte Crear configuración de autenticación de chat.

Sintaxe

Microsoft.Omnichannel.LiveChatWidget.SDK.setAuthTokenProvider(authTokenProvider);

Parámetros

Parámetro Type Descripción
AuthTokenProvider Función Función que, cando se invoca cunha función de chamada como argumento, obtén o token JWT e invoca a función de chamada co token JWT como argumento

Valor de devolución

Ningunha

Exemplo

Mostra de carga útil do token

{
    "sub" : "87b4d06c-abc2-e811-a9b0-000d3a10e09e",
    "lwicontexts" :"{\"msdyn_cartvalue\":\"10000\", \"msdyn_isvip\":\"false\"}",
    "iat" : 1542622071,
    "iss" : "contosohelp.com",
    "exp" : 1542625672,
    "nbf" : 1542622072
}

Nota

Na carga útil anterior, o valor correspondente á lwicontexts clave debe ser o contexto personalizado serializado. As claves msdyn_cartvalue e msdyn_isvip no contexto personalizado serializado corresponden a variables de contexto que se crean para o fluxo de traballo asociado en Omnicanal para o Servizo ao Cliente.

let payloadToEncrypt = {
    "sub" : "87b4d06c-abc2-e811-a9b0-000d3a10e09e",
    "lwicontexts" :"{\"msdyn_cartvalue\":\"10000\", \"msdyn_isvip\":\"false\"}",
    "iat" : 1542622071,
    "iss" : "contosohelp.com",
    "exp" : 1542625672,
    "nbf" : 1542622072
};

function convertToJwtToken(payloadToEncrypt){
    // Ideally, you call your service to convert the payload to a valid JWT token
    return Promise.resolve("eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJzdWIiOiI4N2I0ZDA2Yy1hYmMyLWU4MTEtYTliMC0wMDBkM2ExMGUwOWUiLCJsd2ljb250ZXh0cyI6IntcIm1zZHluX2NhcnR2YWx1ZVwiOlwiMTAwMDBcIiwgXCJtc2R5bl9pc3ZpcFwiOlwiZmFsc2VcIn0iLCJpYXQiOjE1NDI2MjIwNzEsImlzcyI6ImNvbnRvc29oZWxwLmNvbSIsImV4cCI6MTU0MjYyNTY3MiwibmJmIjoxNTQyNjIyMDcyfQ.r37z1M5rMyRYMOJ-rhyTRYFOgvl9N7KvTMueSFPkiuM");
}

window.addEventListener("lcw:ready", function handleLivechatReadyEvent(){
// Sets the auth-token provider
// Throws error if authTokenProvider is not a function
    convertToJwtToken(payloadToEncrypt).then(function (jwtToken){
        Microsoft.Omnichannel.LiveChatWidget.SDK.setAuthTokenProvider(function authTokenProvider(callback){
            callback(jwtToken);
        });
    });
});

Códigos de erro

Os seguintes erros poden producirse con este método.

Código de erro Mensaxe de erro
2 Fallou a execución do método do provedor de token de autenticación
3 O provedor de tokens de autenticación non proporcionou ningún token
4 O provedor de tokens de autenticación proporcionou un token non válido

Referencia da API JavaScript para o SDK de chat en directo