Partajați prin


setAuthTokenProvider

Omnicanal pentru Customer Service oferă o suită de capacități care extinde puterea Dynamics 365 Customer Service Enterprise pentru a permite organizațiilor să se conecteze instantaneu și să interacționeze cu clienții lor prin canale de mesagerie digitală. Este necesară o licență suplimentară pentru a accesa Omnicanal pentru Customer Service. Pentru mai multe informații, consultați paginile Prezentare generală a prețurilor Dynamics 365 Customer Service și Planul de prețuri Dynamics 365 Customer Service .

Setează furnizorul de simboluri de autentificare.

Funcția furnizor de token de autentificare, atunci când este apelată cu o funcție de apel invers ca parametru, invocă funcția de apelare inversă cu un șir JSON Web Token (JWT) valid ca argument.
Această metodă generează o eroare dacă valoarea authTokenProvider parametrului nu este o funcție.

Important

  • În sarcina utilă a tokenului JWT, valoarea furnizată pentru lwicontexts cheie ar trebui să fie contextul personalizat serializat.
  • Contextul personalizat este o colecție de perechi cheie/valoare. Doar valorile primitive sunt permise pentru orice cheie.
  • Cheile contextului particularizat trebuie să corespundă variabilelor de context create pentru fluxul de lucru asociat în Omnicanal pentru Customer Service.
  • Furnizorul de tokenuri de autentificare va fi invocat de widget-ul de chat live atunci când începeți un chat nou.

Notă

Metodele SDK de chat live ar trebui invocate după ce este ridicat evenimentul lcw:ready . Puteți asculta acest eveniment adăugând propriul ascultător de evenimente pe obiectul window.

Acest SDK este aplicabil numai dacă autentificarea este activată pentru widget. Pentru a activa autentificarea pentru widget, consultați Crearea setărilor de autentificare prin chat.

Sintaxă

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

Parametrii

Parametru Tip Descriere
authTokenProvider Funcționa Funcție care, atunci când este invocată cu o funcție de apel invers ca argument, preia simbolul JWT și invocă funcția de apel invers cu simbolul JWT ca argument

Valoare returnată

Nici unul

Exemplu

Exemplu de sarcină utilă a tokenului

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

Notă

În sarcina de mai sus, valoarea corespunzătoare cheii lwicontexts ar trebui să fie contextul personalizat serializat. Cheile msdyn_cartvalue și msdyn_isvip în contextul particularizat serializat corespund variabilelor de context care sunt create pentru fluxul de lucru asociat în Omnicanal pentru Customer Service.

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);
        });
    });
});

Coduri de eroare

Următoarele erori pot apărea cu această metodă.

Cod de eroare Mesaj de eroare
2 Executarea metodei furnizorului de token de autentificare a eșuat
3 Furnizorul de tokenuri de autentificare nu a furnizat niciun token
4 Furnizorul de token de autentificare a furnizat un token nevalid

Referință API JavaScript pentru SDK-ul de chat live