setBotAuthTokenProvider

Το Πανκαναλικό για Customer Service προσφέρει δυνατότητες που επεκτείνουν την ισχύ του Dynamics 365 Customer Service Enterprise για να έχουν οι οργανισμοί τη δυνατότητα να συνδεθούν και να επικοινωνήσουν άμεσα με τους πελάτες τους μέσω καναλιών όπως η Live Συνομιλία και το SMS. Απαιτείται μια πρόσθετη άδεια χρήσης για την πρόσβαση στο Πανκαναλικό για Customer Service. Για περισσότερες πληροφορίες δείτε τις σελίδες Επισκόπηση τιμολόγησης Dynamics 365 Customer Service και Πλάνο τιμολόγησης Dynamics 365 Customer Service.

Η λειτουργία παροχής διακριτικού ελέγχου ταυτότητας bot, όταν καλείται με μια συνάρτηση επιστροφής κλήσης ως παράμετρο, επιστρέφει το botAuthUrlγια αποστολή του διακριτικού στο bot και καλεί τη λειτουργία επιστροφής κλήσης για να ορίσει την ορατότητα της κάρτας εισόδου.

Σύνταξη

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

Παράμετροι

Παράμετρος Type Περιγραφή
authTokenProvider Λειτουργία Συνάρτηση η οποία όταν καλείται με μια συνάρτηση επιστροφής κλήσης ως παράμετρο, επιστρέφει την αποστολή του botAuthUrl διακριτικού στο bot και καλεί τη συνάρτηση επιστροφής κλήσης για να ορίσει την ορατότητα της κάρτας εισόδου.

Τιμή επιστροφής

Διεύθυνση URL ελέγχου ταυτότητας bot.

Παράδειγμα

Ακολουθεί ένα δείγμα κώδικα που δείχνει πώς μπορείτε να μεταβιβάσετε ένα διακριτικό ελέγχου ταυτότητας σε ένα bot Azure ή Copilot Studio κατά τη διάρκεια της καθολικής σύνδεσης.

const signInIds = [];
window.Microsoft.Omnichannel.LiveChatWidget.SDK.setBotAuthTokenProvider(async (botTokenUrl, callback) => {
  const urlSearchParams = new URLSearchParams(botTokenUrl);
  const signInId = urlSearchParams.get("state");

  if (signInIds.includes(signInId)) { // Ignore authenticated sign-in cards
    callback({show: false});  // Hide card
    return;
  }

  signInIds.push(signInId);

  const authUrl = ""; // Customer's Authentication API
  const authResponse = await fetch(authUrl, method: "POST"});
  const {token} = authResponse;  // Customer's Auth Token

  const data = {
    token: "token",
    type: "TokenExchangeRequest"
  };

  const payload = {
    method: "POST",
    headers: {
      "Content-Type": "application/json"
    },
    body: JSON.stringify(data)
  };

  try {
    const botAuthResponse = await fetch(botTokenUrl, payload); // Posts Auth Token to Bot directly
    
    // Sign in through Bot is successful
    if (botAuthResponse.status === 200) {
      signInIds.push(signInId); // Track authenticated sign-in card
      callback({show: false}); // Hide card
    }

    if (botAuthResponse.status === 404 || botAuthResponse.status == 202) {
      callback({show: false}); // Hide card
      return;
    } else {
      // Other condition handling    
    }

    return;
  } catch (error) {
  
  }

  callback({show: true});  // Show sign-in card by default
});

Αναφορά API JavaScript για SDK ζωντανής συζήτησης
Μεταβίβαση διακριτικού ελέγχου ταυτότητας σε bot κατά τη διάρκεια καθολικής σύνδεσης στη ζωντανή συνομιλία