Notatka
Dostęp do tej strony wymaga autoryzacji. Może spróbować zalogować się lub zmienić katalogi.
Dostęp do tej strony wymaga autoryzacji. Możesz spróbować zmienić katalogi.
Note
W tym artykule opisano funkcje używane w agentach lub przepływach agentów obsługiwanych przez standardowe środowisko uruchomieniowe.
W tym artykule wyjaśniono, jak utworzyć i połączyć agenta Salesforce Einstein Bot z agentem Copilot Studio. Integrując te platformy, możesz ulepszyć środowisko agenta dzięki połączonym możliwościom obu tych platform.
W tym wzorcu integracji Einstein Bot służy jako interfejs i używa Copilot Studio jako mechanizm zapasowy za pośrednictwem tematu dotyczącego problemów elementu Einstein. Zamiast mapować intencje między dwiema platformami, Einstein Bot przekazuje zapytanie użytkownika, którego nie rozumie, do Copilot Studio. Copilot Studio przetwarza zapytanie i zwraca odpowiedź. Ten model żądania/odpowiedzi oznacza, że program Copilot Studio zapewnia odpowiedzi oparte na sztucznej inteligencji na podstawie zapytania użytkownika.
Einstein Bot w pełni kontroluje przekazanie rozmowy do prawdziwego agenta. Ta implementacja nie nasłuchuje zdarzeń przekazania kontroli z Copilot Studio. Wyzwalacze eskalacji można skonfigurować bezpośrednio w elemencie Einstein w celu kierowania konwersacji do kolejek wielokanałowych usługi Salesforce.
Wymagania wstępne
Przed rozpoczęciem upewnij się, że masz następujące elementy:
- Konto Salesforce z włączonymi botami Einstein.
- Konto usługi Copilot Studio.
- Uprawnienia administratora lub dewelopera w usługach Salesforce i Microsoft Power Platform.
Krok 1: Pobierz tajny klucz Direct Line dla agenta
- W aplikacji Copilot Studio otwórz agenta i przejdź do pozycji Ustawienia.
- Wybierz pozycję Bezpieczeństwo>bezpieczeństwo kanału internetowego.
- W obszarze Wpisy tajne i tokeny skopiuj wpisy tajne 1 lub Tajne 2.
Ważne
Ta integracja obsługuje tylko agentów copilot Studio skonfigurowanych bez uwierzytelniania. Uwierzytelnione źródła wiedzy, takie jak SharePoint, nie są obsługiwane w przypadku tego podejścia.
Porada
Wdrożenie automatyczne: jeśli masz zainstalowany interfejs wiersza polecenia usługi Salesforce , możesz użyć skryptów wdrażania automatycznego , aby wykonać kroki od 2 do 5. Po zakończeniu działania skryptu postępuj zgodnie z instrukcjami, aby skonfigurować tajny klucz Direct Line. Następnie przejdź do kroku 6: Konfigurowanie bota Einsteina. Jeśli chcesz skonfigurować ręcznie, przejdź do kroku 2.
Krok 2. Konfigurowanie ustawień lokacji zdalnej usługi Salesforce
- Zaloguj się na koncie Salesforce.
- Przejdź do pozycji Konfiguracja.
- W Szybkim wyszukiwaniu wprowadź Ustawienia Lokacji Zdalnej, a następnie wybierz pozycję Ustawienia Lokacji Zdalnej.
- Dodaj nową lokację zdalną, wprowadź directline jako nazwę lokacji zdalnej i wprowadź wartość https://directline.botframework.com w polu Adres URL lokacji zdalnej.
- Wybierz Zapisz.
Note
W przypadku innych regionów użyj właściwego adresu URL dla interfejsu API DirectLine. Zobacz dokumentację interfejsu API Direct Line dotyczącą regionalnych punktów końcowych.
Krok 3: Utwórz klasy Apex, aby połączyć się z API DirectLine
W usłudze Salesforce przejdź do pozycji Konfiguracja.
W opcji Szybkie wyszukiwanie wprowadź Klasy Apex.
Utwórz następujące klasy Apex, kopiując kod źródłowy z przykładu integracji usługi Salesforce:
-
DL_GetConversation: rozpoczyna nową konwersację przez Direct Line i zwracaconversationId. -
DL_PostActivity: wysyła wiadomość użytkownika do konwersacji za pośrednictwem interfejsu API DirectLine. -
DL_GetActivity: pobiera odpowiedź agenta z wbudowanym opóźnieniem i logiką ponawiania prób do obsługi odpowiedzi asynchronicznych.
-
Krok 4. Konfigurowanie nazwanego poświadczenia na potrzeby bezpiecznego uwierzytelniania
Firma Microsoft zaleca używanie nazwanych poświadczeń zamiast zakodowanych na stale wpisów tajnych w klasach Apex. Nazwane poświadczenia zapewniają bezpieczny sposób przechowywania sekretów i są łatwiejsze do zarządzania i zmiany bez modyfikowania kodu.
Tworzenie poświadczeń zewnętrznych
- W Konfiguracji usługi Salesforce wyszukaj Nazwane Poświadczenia i wybierz Nazwane Poświadczenia.
- Wybierz kartę Poświadczenia zewnętrzne.
- Wybierz pozycję Nowy i skonfiguruj:
-
Etykieta:
Directline -
Nazwa:
Directline -
Protokół uwierzytelniania:
Custom
-
Etykieta:
- Wybierz Zapisz.
Tworzenie podmiotu zabezpieczeń
- W utworzonym poświadczeniu zewnętrznym w obszarze Podmioty wybierz Nowy.
- Skonfiguruj
-
Nazwa parametru:
Directline_Principal -
Numer sekwencji:
1 -
Typ tożsamości:
Named Principal
-
Nazwa parametru:
- Wybierz Zapisz.
- W obszarze Parametry uwierzytelniania wybierz pozycję Dodaj.
- Skonfiguruj
-
Nazwa:
Token - Wartość: Twój tajny kod Direct Line z kroku 1
-
Nazwa:
- Wybierz Zapisz.
Tworzenie nagłówka niestandardowego
- W poświadczeniu zewnętrznym w obszarze Nagłówki niestandardowe wybierz pozycję Nowy.
- Skonfiguruj
-
Nazwa:
Authorization -
Wartość:
{!'Bearer ' & $Credential.Directline.Token} -
Numer sekwencji:
1
-
Nazwa:
- Wybierz Zapisz.
Utwórz nazwane poświadczenie
- Wróć do karty Nazwane poświadczenia.
- Wybierz Nowe>Nowe Nazwane Poświadczenie.
- Skonfiguruj
-
Etykieta:
Directline -
Nazwa:
Directline -
Adres URL:
https://directline.botframework.com - Włączone dla komunikatów: zaznaczone
-
Poświadczenia zewnętrzne: wybierz pozycję
Directline - Generowanie nagłówka autoryzacji: niezaznaczone
- Zezwalaj na formuły w nagłówku HTTP: zaznaczone
-
Etykieta:
- Wybierz Zapisz.
Krok 5. Udzielanie uprawnień botowi
Boty Einsteina wymagają dedykowanego zestawu uprawnień dostępu do klas Apex i poświadczeń zewnętrznych. Musisz udzielić botowi dostępu do utworzonych składników.
Przyznanie dostępu do klasy Apex
- W obszarze Konfiguracja usługi Salesforce wyszukaj pozycję Zestawy uprawnień i wybierz pozycję Zestawy uprawnień.
- Znajdź i wybierz zestaw uprawnień Czatbot (nazwa interfejsu API:
sfdc_chatbot_service_permset). - Wybierz Dostęp do klasy Apex>Edytuj.
- Dodaj następujące klasy:
DL_GetConversationDL_PostActivityDL_GetActivity
- Wybierz Zapisz.
Udzielanie dostępu podmiotowi zewnętrznych poświadczeń
- W zestawie uprawnień Czatbot wybierz Dostęp do podmiotu głównego poświadczeń zewnętrznych>Edytuj.
- Dodaj
Directline - Directline_Principal. - Wybierz Zapisz.
Krok 6. Konfigurowanie bota Einsteina
- W usłudze Salesforce przejdź do pozycji Konfiguracja.
- W obszarze Szybkie wyszukiwanie wpisz Einstein i wybierz pozycję Boty Einsteina.
- Utwórz nowego bota Einsteina, postępując zgodnie z instrukcjami w dokumentacji Salesforce Einstein.
Krok 7. Łączenie Bota Einsteina z Copilot Studio
W bocie Einsteina skonfiguruj dwa okna dialogowe, aby połączyć się z Copilot Studio: okno dialogowe Powitanie rozpoczyna konwersację Direct Line. Okno dialogowe Zdezorientowane przekazuje nierozpoznane komunikaty użytkownika do programu Copilot Studio i zwraca odpowiedź.
Konfigurowanie okna dialogowego Powitanie
Okno powitania inicjuje konwersację Direct Line, gdy użytkownik zaczyna rozmawiać.
W oknie dialogowym Powitanie dodaj krok Komunikatu powitalnego (opcjonalnie).
Dodaj krok akcji z Action Type Apex i nazwą akcji Rozpocznij konwersację DirectLine (
DL_GetConversation).Zamapuj wyjściowy identyfikator konwersacji na zmienną (na przykład
ConversationID). Ta zmienna jest używana przez kolejne działania w oknie dialogowym "Confused".Ustaw Kolejny Krok na menu główne lub okno konwersacji.
Einstein Bot Builder przedstawiający przepływ Dialogu Powitania z komunikatem powitalnym, akcją Rozpocznij konwersację DirectLine oraz następnym krokiem do Menu Głównego.
Panel właściwości kroku pokazuje mapowanie zmiennych dla akcji Rozpocznij rozmowę DirectLine.
-
Dane wejściowe: nazwane Poświadczenie: ustaw na
Directline(nazwane poświadczenie z kroku 4) -
Dane wyjściowe:
-
Identyfikator konwersacji:
ConversationID(tekst): używane przez akcje okna dialogowego z problemami. -
Kod odpowiedzi:
responseCode(numer): kod stanu HTTP. -
Komunikat o błędzie:
errorMessage(Tekst): Szczegóły błędu, jeśli wywołanie nie powiedzie się.
-
Identyfikator konwersacji:
Porada
Dodaj krok Warunek po tej akcji, aby sprawdzić zmienną responseCode . Jeśli wartość nie jest 200, wyświetl komunikat błędu, aby ułatwić diagnozowanie problemów z połączeniem podczas instalacji.
Skonfiguruj okno dialogowe Zdezorientowany
Okno dialogowe 'Zdezorientowane' obsługuje każdy komunikat użytkownika, którego Einstein nie rozumie, przekazując go do Copilot Studio.
Dodaj krok Akcja z typem akcji Apex i nazwą akcji Publikuj komunikat w funkcji Copilot Studio (
DL_PostActivity).-
Dane wejściowe:
-
Komunikat użytkownika:
[System] Last Customer Input(wymagane) -
Identyfikator konwersacji:
ConversationIDzmienna z okna dialogowego Powitanie (wymagane) - Nazwa użytkownika, ID użytkownika, Poświadczenie nazwane: opcjonalne
-
Komunikat użytkownika:
-
Dane wyjściowe:
-
Kod odpowiedzi (
responseCode) [Liczba] -
Komunikat o błędzie (
errorMessage) [Tekst] -
Znak wodny (
watermark) [Tekst]: przekazano do następnej akcji.
-
Kod odpowiedzi (
Panel Właściwości kroku pokazuje akcję Post Message to Copilot Studio ze wszystkimi danymi wejściowymi (Komunikat użytkownika, Identyfikator konwersacji) i danymi wyjściowymi (Kod odpowiedzi, Komunikat o błędzie, Znak wodny) przypisane do zmiennych.
-
Dane wejściowe:
Dodaj krok Akcja z typem akcji Apex i nazwą akcji Pobierz odpowiedź funkcji Copilot Studio (
DL_GetActivity).-
Dane wejściowe:
-
Identyfikator konwersacji:
ConversationIDzmienna (wymagana) -
Znak wodny:
watermark: zmienna z poprzedniej akcji. -
Maksymalna liczba ponownych prób:
5(ustawienie domyślne) -
Opóźnienie początkowe (sekundy):
5(ustawienie domyślne) -
Poświadczenie nazwane:
Directline
-
Identyfikator konwersacji:
-
Dane wyjściowe:
-
Kod odpowiedzi:
responseCode(liczba) -
Komunikat:
mcsResponse(tekst): odpowiedź agenta Copilot Studio. -
Komunikat o błędzie:
errorMessage(tekst) - Znak wodny: zaktualizowano znak wodny dla kolejnych wywołań.
- Ma więcej komunikatów: (wartość logiczna): wskazuje, czy jest dostępnych więcej komunikatów.
- Jest przekazaniem: (wartość logiczna): wskazuje, czy Copilot Studio żąda przekazania agenta.
-
Kod odpowiedzi:
-
Dane wejściowe:
Note
Klasa DL_GetActivity zawiera wbudowane opóźnienie i logikę ponawiania prób do obsługi asynchronicznych odpowiedzi z programu Copilot Studio. Domyślnie czeka 5 sekund przed pierwszą próbą i ponawia próbę maksymalnie pięć razy. To zachowanie można dostosować przy użyciu opcjonalnych delaySeconds i maxRetries wejściowych parametrów.
- Dodaj krok Komunikat , aby wyświetlić odpowiedź użytkownikowi przy użyciu zmiennej
mcsResponse. - Ustaw następny krok naoczekiwanie na dane wejściowe od klienta, aby pętla konwersacji była kontynuowana.
Pełny przebieg dialogu Confused wygląda następująco:
Krok 8: Obsługa przekazania do agenta
Aby włączyć eskalację prawdziwego agenta, skonfiguruj wyzwalacze eskalacji bezpośrednio w bocie Einsteina Bot. Korzystając z tej konfiguracji, możesz kierować użytkowników do odpowiednich kolejek usługi Salesforce Omni-Channel, gdy potrzebują pomocy ludzkiej.
Aby uzyskać więcej informacji, zobacz dokumentację programu Salesforce Rozsyłanie konwersacji z ulepszonego bota.