Praca ze zmiennymi
Zmiennych można używać do zapisywania odpowiedzi klientów i ponownego wykorzystania ich zawartości w dalszej części rozmowy.
Zmiennych można również używać do tworzenia wyrażeń logicznych, które dynamicznie przekierowują klienta do różnych ścieżek konwersacji. Można na przykład zapisać nazwę klienta w zmiennej o nazwie UserName
, a pracownik może zwracać się do klienta przy użyciu tej nazwy w trakcie rozmowy.
Zmienne mogą być również przekazywane do i zwracane z innych tematów i przepływów usługi Power Automate.
Zmienne mogą istnieć na czterech poziomach lub w zakresach:
- Zmiennych tematu można używać tylko w tematach, w których zostały utworzone. Ten zakres jest domyślny w przypadku tworzonych przez Ciebie zmiennych.
- Zmienne globalne mogą być używane we wszystkich tematach. Zakres zmiennej tematu można zmienić, aby była zmienną globalną.
- Zmienne systemowe są tworzone automatycznie przez drugiego pilota. Dostarczają one bardziej kontekstowych informacji o konwersacji lub użytkowniku. Są one dostępne we wszystkich tematach.
- Zmienne środowiskowe są tworzone w programie i są tylko Power Platform do odczytu Copilot Studio. Przechowują klucze parametrów i wartości, które następnie służą jako dane wejściowe dla różnych innych obiektów aplikacji , w tym Copilot Studio. Dzielenie parametrów od obiektów zużywających dane pozwala na zmianę wartości w tym samym środowisku lub migrowanie rozwiązań do innych środowisk. Alternatywa to pozostawienie w składnikach, które z nich korzystają, wartości parametrów zakodowanych „na twardo”.
Typy zmiennych
Zmienna jest skojarzona z typem podstawowym. Typ określa, jakie wartości może zawierać zmienna oraz operatory, których można użyć podczas konstruowania wyrażenia logicznego przy jej użyciu.
Type | opis |
---|---|
String | Sekwencja znaków używanych do reprezentowania tekstu |
Wartość logiczna | Wartość logiczna, która może być tylko wartością true lub false |
telefonu | Dowolna liczba rzeczywista |
Table | Lista wartości, ale wszystkie wartości muszą być tego samego typu |
Nagraj | Zbiór par typu nazwa-wartość, w których mogą być wartości dowolnego typu |
DateTime | Data, godzina, dzień tygodnia lub miesiąc względem punktu w czasie |
Opcja wyboru | Lista wartości ciągów ze skojarzonymi synonimami |
Pusta | Symbol zastępczy elementu „brak wartości” lub „nieznana wartość”. Aby uzyskać więcej informacji, zobacz temat Wartości puste w programie Power Fx |
Typ zmiennej jest ustawiany przy pierwszym przypisywaniu do niego wartości Po tym typ tej zmiennej jest stały i nie można przypisać do niej wartości innych typów. Na przykład zmiennej z wartością początkową 1
przypisano typ Liczba. Próba przypisania go do wartości String powoduje "apples"
błąd.
Podczas testowania drugiego pilota zmienna może być tymczasowo wyświetlana jako typ nieznany. Nieoznaona zmienna nie została jeszcze przypisana do wartości.
Kolejność zmiennych jest określana od góry do dołu na kanwie tworzenia. Węzły w górnej części kanwy tworzenia są brane pod uwagę przed węzłami na dole.
Podczas tworzenia odgałęzień z węzłów Warunek odgałęzienia są uporządkowane od lewej do prawej strony. Węzły w gałęzi po lewej stronie są uwzględniane przed węzłami w gałęzi po prawej stronie.
Jednostki
Copilot Studio używa encji do identyfikowania określonego typu informacji z odpowiedzi użytkownika. Zidentyfikowane informacje są zapisywane w zmiennej typu, która jest odpowiednia dla tych informacji. W poniższej tabeli wymieniono typ podstawowy zmiennej skojarzony ze wstępnie utworzonymi jednostkami.
Jednostka | Typ podstawowy zmiennej |
---|---|
Wiele opcji wyboru | Opcja wyboru |
Cała odpowiedź użytkownika | String |
Wiek | telefonu |
Wartość logiczna | Wartość logiczna |
City | String |
Color | String |
Kontynent | String |
Kraj lub region | String |
Data i godzina | DateTime |
String | |
Wydarzenie | String |
Integer | Integer |
Język | String |
Money | telefonu |
telefonu | telefonu |
Liczba porządkowa | telefonu |
Organizacja | String |
Wartość procentowa | telefonu |
Imię i nazwisko osoby | String |
Numer telefonu | String |
Punkt orientacyjny | String |
Szybkość | telefonu |
State | String |
Ulica | String |
Temperatura | telefonu |
URL | String |
Weight | telefonu |
Kod pocztowy | String |
Obiekt niestandardowy | Opcja wyboru |
Tworzenie zmiennej
Każdy węzeł monitujący o wybranie zmiennej jako danych wyjściowych, taki jak węzeł Pytanie, automatycznie tworzy zmienną wyjściową odpowiedniego typu.
Porada
Zmień nazwy węzłów, aby ułatwić ich identyfikację. Zaznacz pole nazwy węzła, aby bezpośrednio zaktualizować nazwę lub wybierz ikonę Więcej (…) w węźle i w menu wybierz polecenie Zmień nazwę. Możesz także zmienić nazwy węzłów w edytorze kodu.
Nie można zmienić nazw węzłów wyzwalania i przechodzenia do węzłów kroku .
Długość nazwy węzła nie może przekraczać 500 znaków.
Wybieranie encji do użycia
Węzły pytań są domyślnie tworzone z opcjami wielokrotnego wyboru. Aby użyć innej wstępnie utworzonej lub niestandardowej encji, zaznacz pole Identyfikuj i wybierz typ informacji, których powinien nasłuchiwać pomocnik.
Zmienianie nazwy zmiennej
Podczas tworzenia zmienne mają automatycznie przypisywaną nazwę. Najlepszym rozwiązaniem jest nadanie zmiennych znaczących nazw, aby ich przeznaczenie było jasne dla wszystkich innych, którzy muszą zarządzać pomocnikiem.
Wybierz zmienną, by otworzyć ją w okienku właściwości zmiennych.
W obszarze Nazwa zmiennej wprowadź nową nazwę zmiennej.
Ustaw zmienną
Zazwyczaj używa się węzła Pytanie , aby zapisać dane wejściowe użytkownika w zmiennej. Mogą jednak zaistnieć sytuacje, w których będziesz chciał samodzielnie ustawić wartość. W takim przypadku należy użyć węzła Ustaw wartość zmiennej.
Wybierz Dodaj węzeł (+), aby dodać węzeł, a następnie wybierz Zarządzanie zmianami>Ustaw wartość zmiennej.
Zaznacz pole w obszarze Ustaw zmienną, a następnie wybierz pozycję Utwórz nową zmienną.
Została utworzona nowa zmienna. Jej typ jest nieznany, dopóki nie zostanie przypisana do niej wartość.
W przypadku Do wartości przypisz wartość, korzystając z jednej z następujących opcji:
- Wpisz wartość literału.
- Wybierz istniejącą zmienną tego samego typu. Ta akcja ustawi Twoją zmienną na taką samą wartość jak wybrana zmienna.
- Użyj formuły Power Fx. Formuły Power Fx są przydatne w przypadku bardziej złożonych typów, w których nie można używać wartości literałów, takich jak Tabela i Typy rekordów.
Uwaga
Jeśli podczas ustawiania zmiennej typu ciągu wystąpi niezgodność między wartością Ustaw zmienną a wartością Do, pojawi się komunikat o błędzie i przycisk Napraw niezgodność typu. Wybierz przycisk, aby Copilot Studio automatycznie wygenerować formułę Power Fx , która rozwiązuje niezgodność.
Użyj wartości dosłownych
Zamiast wybierać wartość zmiennej, możesz wprowadzić wartość literału w dowolnej zmiennej.
Węzeł próbuje zinterpretować wartości literału jako ciąg, liczbę lub wartości logiczne. Na przykład wartość 123
jest interpretowana jako liczba. Jeśli chcesz, aby wartość była w zamian interpretowana jako wartość ciągu, możesz umieścić tę wartość w podwójnych cudzysłowach, na przykład tak: "123"
.
W przypadku niektórych scenariuszy lub gdy używasz bardziej złożonych typów, użyj odpowiedniej formuły programu Power Fx, aby ustawić określony typ.
Okienko Zmiennych
W okienku Zmienne można wyświetlić wszystkie zmienne dostępne w temacie, niezależnie od tego, w których węzłach są definiowane lub używane. Dla każdej zmiennej można wybrać, czy może otrzymywać jej wartości z innych tematów, zwracać jej wartość do innych tematów, czy mieć obie te możliwości. Zmienną, której właściwości chcesz edytować, można również wybrać w okienku Właściwości zmiennej.
Aby otworzyć okienko Zmienne, na pasku menu tematu wybierz pozycję Zmienne.
Okienko Właściwości zmiennej
W okienku właściwości zmiennej można zmienić nazwę zmiennej, sprawdzić, gdzie jest używana, lub przekonwertować ją na zmienną globalną. Nie można jednak przekonwertować jej ze zmiennej globalnej z powrotem na zmienną tematu. Można także wybrać, czy może ona odbierać wartości z, czy też przekazywać swoje wartości do innych tematów.
Aby otworzyć okienko właściwości zmiennych, wybierz zmienną w okienku zmiennych. Okienko właściwości zmiennej można również otworzyć, wybierając zmienną w dowolnym węźle.
Zmienne środowiskowe
Zmienne środowiskowe to Power Platform pojęcie. Zmienne środowiskowe umożliwiają podstawowy scenariusz zarządzania cyklem życia aplikacji (ALM) w zakresie przenoszenia aplikacji między środowiskami Power Platform. W tym scenariuszu aplikacja pozostaje taka sama z wyjątkiem kilku kluczowych odwołań zewnętrznych różnych między środowiskiem źródłowym a środowiskiem docelowym.
Zmienne środowiska są takie same, jak Temat, Globalne i Systemowe. Jedyna różnica jest taka, że zmiennych środowiskowych można używać tylko w trybie tylko do odczytu. Twórcy Copilot nie mogą modyfikować zmiennej środowiskowej w programie Copilot Studio. Administratorzy mogą jednak zmieniać wartość zmiennych środowiska w portalu PowerApps.
Typy zmiennych środowiskowych w mapowaniu Copilot Studio na typy danych PowerApps w następujący sposób:
Typ w usłudze Copilot Studio | Typ w usłudze PowerApps |
---|---|
Liczba dziesiętna | telefonu |
JSON | Wykryj typ na podstawie wartości. Jeśli nie Json => Nieokreślony (błąd weryfikacji) |
Tekst | string |
Tak/Nie | Wartość logiczna |
Źródło danych | string |
Klucz tajny | String |
Uwaga
Błędy zmiennych środowiskowych są widoczne w czacie Test podczas publikowania. Te błędy nie są jednak wyświetlane na liście Temat, ponieważ nie są to zmienne tematu.
Nie można tworzyć ani edytować zmiennych środowiska w Copilot Studio. Należy korzystać z portalu PowerApps zmiany lub ustawienia zmiennych środowiska. W Copilot Studio możesz użyć okienka Zmienne, by wyświetlić informacje o zmiennej środowiska. Okienko Zmienne zawiera także łącze do tworzenia środowiska.
Uźywanie zmiennych środowiskowych dla wpisów tajnych Azure Key Vault
Zmienna środowiskowa może się odwoływać do klucza w magazynie Key Vault. Jest to specjalny przykład zmiennych środowiskowych z unikatowymi rozważaniami.
Aby utworzyć tajną zmienną środowiskową w portalu PowerApps, należy skonfigurować jej magazyn kluczy Key Vault.
Oprócz powyższej konfiguracji należy wykonać następujące akcje w celu autoryzowania Copilot Studio do przeczytania niniejszego Magazynu kluczy Key Vault:
Przypisz rolę
Key Vault Secrets User
do aplikacjiMicrosoft Virtual Agents Service
.Aby autoryzować wszystkich pomocników ze środowiska w celu uzyskania dostępu do wpisu tajnego, należy utworzyć tag
AllowedEnvironments
we wpisie tajnym i dodać identyfikatory dozwolonych środowisk rozdzielone przecinkami.Aby zezwolić tylko konkretnym pomocników ze środowiska na korzystanie z tego magazynu kluczy Key Vault, należy utworzyć tag
AllowedCopilots
i umieścić identyfikator pomocnika w formacie{envId}/{schemaName}
. W przypadku wielu wartości, rozdziel wartości przecinkami.
Jeśli osiągniesz maksymalną liczbę znaków, ale nadal trzeba dodać więcej pomocników, dodaj kolejny tag z opisową, ale unikatową nazwą (na przykład: AllowedCopilots2
).
Wartość wpisy tajnego jest buforowana w czasie wykonywania dialogu przez pięć minut. Odczyty nieudane są przechowywane w pamięci podręcznej przez 30 sekund.
Ostrzeżenie
Dodanie wpisu tajnego w pomocniku może spowodować udostępnienie wartości tego wpisu tajnego wszystkim użytkownikom, którzy mogą edytować kod pomocnika w środowisku, ponieważ użytkownicy ci mogą edytować wartość pomocnika w celu zwrócenia wartości w węźle SendMessage
.
Zmienne systemowe
Każdy pomocnik ma wbudowane zmienne systemowe, które dostarczają dodatkowych informacji o konwersacji.
Uwaga
Aby uzyskać więcej informacji o zmiennych pomocnika z obsługą głosową, zobacz temat Używanie zmiennych głosowych.
Nie wszystkie zmienne systemowe są wyświetlane na liście. Te ukryte zmienne systemowe muszą być dostępne za pomocą formuły Power Fx.
Aby używać zmiennych systemowych w formułach Power Fx, należy dodać System.
przed nazwą zmiennej. Na przykład aby uwzględnić zmienną systemową User.DisplayName
w formule, odnieś się do niej jako System.User.DisplayName
.
Nazwa/nazwisko | Type | Definicja |
---|---|---|
Activity.Attachments |
tabela | Pliki załączników dostarczone przez użytkownika |
Activity.Channel |
opcja wyboru | Identyfikator kanału bieżącej konwersacji |
Activity.ChannelData |
dowolny | Obiekt zawierający zawartość specyficzną dla kanału |
Activity.ChannelId |
string | Identyfikator kanału bieżącej konwersacji jako ciąg |
Activity.From.Id |
string | Unikalny identyfikator nadawcy specyficzny dla kanału |
Activity.From.Name |
string | Przyjazna dla użytkownika ustalona dla kanału nazwa nadawcy |
Activity.Name |
string | Nazwa zdarzenia |
Activity.Recipient.Id |
string | Właściwość Typ działania przychodzącego. |
Activity.Recipient.Name |
string | Reprezentuje nazwę wyświetlaną pomocnik kanału. W kontekście kanału telefonii wartość tej zmiennej będzie numerem telefonu, do którego pomocnik jest dołączony. |
Activity.Text |
string | Najnowsza wiadomość wysłana przez użytkownika |
Activity.Type |
opcja wyboru | Typ działania |
Activity.TypeId |
string | Typ działania w postaci ciągu |
Activity.Value |
dowolny | Wartość nieograniczona |
Bot.EnvironmentId |
string | Nazwa identyfikatora środowiska pomocnika |
Bot.Id |
string | Identyfikator pomocnika |
Bot.Name |
string | Nazwa Twojego pomocnika |
Bot.SchemaName |
string | Nazwa schematu pomocnika |
Bot.TenantId |
string | Identyfikator dzierżawy pomocnika |
ClientPluginActions |
opcja wyboru | Zbiór dynamicznych akcji dodatków plug-in klienta, które należy uwzględnić w przypadku akcji generujących |
Conversation.Id |
string | Unikalny identyfikator bieżącej konwersacji |
Conversation.InTestMode |
wartość logiczna | Wartość logiczna reprezentująca, jeśli rozmowa dzieje się na kanwie testowej |
Conversation.LocalTimeZone |
string | Nazwa strefy czasowej, która ma być używana przez użytkownika w formacie bazy danych strefy czasowej IANA |
Conversation.LocalTimeZoneOffset |
datetime | Przesunięcie czasu przesunięcia czasowego dla bieżącej lokalnej strefy czasowej |
Error.Code |
string | Kod błędu bieżącego błędu. Uwaga: Ta zmienna jest obsługiwana tylko wtedy, gdy wyzwalacz jest |
Error.Message |
string | Komunikat o błędzie zdefiniowany dla bieżącego błędu. Uwaga: Ta zmienna jest obsługiwana tylko wtedy, gdy wyzwalacz jest |
FallbackCount |
numer | Ta zmienna zlicza czas, w temat nie można jej dopasować do danych wejściowych użytkownika. Uwaga: Ta zmienna jest obsługiwana tylko wtedy, gdy wyzwalacz jest |
InactivityTimer.Continue |
wartość logiczna | Wartość logiczna reprezentująca, czy czasomierz ma być kontynuowany. Uwaga: Ta zmienna jest obsługiwana tylko wtedy, gdy wyzwalacz jest |
InactivityTimer.Count |
numer | Liczba czasu, przez który po skonfigurowaniu czasomierza OnInactivity został opuszczony z powodu braku aktywności użytkownika. Uwaga: Ta zmienna jest obsługiwana tylko wtedy, gdy wyzwalacz jest |
LastMessage.Id |
string | Identyfikator poprzedniej wiadomości wysłanej przez użytkownika |
LastMessage.Text |
string | Poprzednia wiadomość wysłana przez użytkownika |
Recognizer.ExtractedEntities |
opcja wyboru | Reprezentuje wyodrębnione encje z komunikatu uruchamiającego. Uwaga: Ta zmienna jest obsługiwana tylko wtedy, gdy wyzwalacz jest |
Recognizer.IntentOptions |
opcja wyboru | Reprezentuje opcje opcji zamiaru w przypadku zwrócenia przez użytkownika jednoznacznych wyników. Uwaga: Ta zmienna jest obsługiwana tylko wtedy, gdy wyzwalacz jest |
Recognizer.SelectedIntent |
opcja wyboru | Reprezentuje zamiar wybrany w aparacie rozpoznawania. Uwaga: Ta zmienna jest obsługiwana tylko wtedy, gdy wyzwalacz jest |
Recognizer.TriggeringMessage.Id |
string | Identyfikator wiadomości użytkownika, która spowodowała wyzwolenie bieżącego tematu |
Recognizer.TriggeringMessage.Text |
string | Wiadomość użytkownika, która spowodowała wyzwolenie bieżącego tematu |
Recognizer.MultipleTopicsMatchedReason |
string | Wykorzystano do ustalenia, dlaczego dopasowano wiele tematów. Uwaga: Ta zmienna jest obsługiwana tylko wtedy, gdy wyzwalacz jest |
User.Language |
opcja wyboru | Ta zmienna służy do ustawienia regionalnych języków użytkownika na rozmowę. |
SignInReason |
opcja wyboru | Używany do określenia, jaka opcja logowania jest potrzebna podczas wyzwalania temat. Uwaga: Ta zmienna jest obsługiwana tylko wtedy, gdy wyzwalacz jest |
Zmienne do uwierzytelniania zintegrowanego (domyślne)
Poniższe zmienne są dostępne po skonfigurowaniu serwera pomocnik do uwierzytelniania w firmie Microsoft. To umożliwia uwierzytelnianie za pomocą identyfikatora Tożsamość i umożliwia korzystanie tylko z zespołów i kanałów PowerApps. Jest to wartość domyślna dla nowych pomocników.
Aby uzyskać więcej informacji, zobacz Zmienne uwierzytelniania.
Nazwa/nazwisko | Type | Definicja |
---|---|---|
User.DisplayName |
string | Wyświetlana nazwa użytkownika rozmawiającego obecnie z pomocnikiem. |
User.Email |
string | Adres e-mail użytkownika rozmawiającego obecnie z pomocnikiem. |
User.FirstName |
string | Imię użytkownika rozmawiającego obecnie z pomocnikiem. |
User.Id |
string | Identyfikator unikatowy użytkownika rozmawiającego obecnie z pomocnikiem. |
User.IsLoggedIn |
wartość logiczna | Wartość logiczna reprezentująca, czy użytkownik rozmawia obecnie z pomocnik jest uwierzytelniony, czy nie. |
User.LastName |
string | Nazwisko użytkownika rozmawiającego obecnie z pomocnikiem. |
User.PrincipalName |
string | Główna nazwa użytkownika rozmawiającego obecnie z pomocnikiem. |
Zmienne do ręcznego uwierzytelniania za pomocą ogólnego OAuth 2
Następujące zmienne są dostępne po skonfigurowaniu drugiego pilota do korzystania z dostawcy usług Generic OAuth 2.
Nazwa/nazwisko | Type | Definicja |
---|---|---|
User.AccessToken |
string | Token dostępu dla użytkownika uwierzytelniania przy użyciu pomocnika. |
User.DisplayName |
string | Wyświetlana nazwa użytkownika rozmawiającego obecnie z pomocnikiem. |
User.Id |
string | Identyfikator unikatowy użytkownika rozmawiającego obecnie z pomocnikiem. |
User.IsLoggedIn |
wartość logiczna | Wartość logiczna reprezentująca, czy użytkownik rozmawia obecnie z pomocnik jest uwierzytelniony, czy nie. |
Zmienne do uwierzytelniania ręcznego przy użyciu ogólnego Tożsamość Microsoft Entra
Poniższe zmienne są dostępne po skonfigurowaniu serwera pomocnik do używania dostawców usługi Tożsamości Microsoft Entra (poprzednio pod nazwą Azure Active Directory).
Nazwa/nazwisko | Type | Definicja |
---|---|---|
User.AccessToken |
string | Token dostępu dla użytkownika uwierzytelniania przy użyciu pomocnika. |
User.DisplayName |
string | Wyświetlana nazwa użytkownika rozmawiającego obecnie z pomocnikiem. |
User.Email |
string | Adres e-mail użytkownika rozmawiającego obecnie z pomocnikiem. |
User.FirstName |
string | Imię użytkownika rozmawiającego obecnie z pomocnikiem. |
User.Id |
string | Identyfikator unikatowy użytkownika rozmawiającego obecnie z pomocnikiem. |
User.IsLoggedIn |
wartość logiczna | Wartość logiczna reprezentująca, czy użytkownik rozmawia obecnie z pomocnik jest uwierzytelniony, czy nie. |
User.LastName |
string | Nazwisko użytkownika rozmawiającego obecnie z pomocnikiem. |
User.PrincipalName |
string | Główna nazwa użytkownika rozmawiającego obecnie z pomocnikiem. |
Zmienne dla pomocników z włączoną obsługą głosową
Poniższe zmienne są dostępne tylko w pomocnikach z włączoną opcją głosową.
Uwaga
Aby uzyskać więcej informacji o zmiennych pomocnika z obsługą głosową, zobacz temat Używanie zmiennych głosowych.
Nazwa/nazwisko | Type | Definicja |
---|---|---|
Activity.InputDTMFKeys |
string | Nieprzetworzone wartości klucza DTMF, które odebrano z telefonii. |
Activity.SpeechRecognition.Confidence |
numer | Wyniki współczynnik ufności ASR zakończyły się od 0 do 1. |
Activity.SpeechRecognition.MinimallyFormattedText |
string | Nieco sformatowany tekst w wyniku ASR. Przykład: pięćset dolarów. Wyrazy są pisane z pisownią, ale uwzględniana jest podstawowa litera ze znakiem przestankym. |
Activity.UserInputType |
opcja wyboru | Typ danych wejściowych w najnowszych danych wejściowych użytkownika końcowego. Wartość może mieć wartość test, mowa lub DTMF. |
Conversation.OnlyAllowDTMF |
wartość logiczna | Wartość logiczna reprezentująca, czy w czasie wykonywania IVR ma być ustawiany tryb tylko do pracy z programem DTMF. |
Conversation.SipUuiHeaderValue |
string | Ciąg nagłówka UUI używany do przekazania kontekstu do narzędzia IVR w sprawie rozpoczęcia rozmowy. |
Przekazywanie zmiennych między tematami
Podczas przekierowywania jednego tematu do innego można przekazać wartości zmiennych między tematem oryginalnym i docelowym. Przekazywanie zmiennych między tematami jest szczególnie przydatne, gdy we wcześniejszym temacie znajdują się już informacje, których potrzebuje późniejszy temat. Użytkownicy będą wdzięczni za to, że nie będą odpowiadać ponownie na te same pytania.
Odbieraj wartości z innych tematów
Gdy temat definiuje zmienną (na przykład w węźle Pytanie), pomocnik prosi użytkownika o wypełnienie wartości zmiennej. Jeśli wartość została już pozyskana przez pomocnika we wcześniejszym temacie, nie ma powodu, aby ponownie zadawać to pytanie. Dla tych przypadków można ustawić zmienną na Odbieraj wartości z innych tematów. Kiedy inne tematy przekierowują do tego tematu, może on przekazać wartość zmiennej (lub wartość literału) do tej zmiennej i pominąć pytanie. Prowadzi to do bezproblemowego doświadczenia użytkownika końcowego rozmawiającego z pomocnikiem.
W tym przykładzie użyjemy dwóch tematów: Powitanie i Rozmowa z klientem. Oba tematy zawierają pytanie o nazwę klienta. Jeśli jednak najpierw zostanie uruchomiony temat Powitanie, to pytanie zostanie pominięte w temacie Rozmowa z klientem. Zamiast tego zostanie użyta wartość przekazania z tematu Powitanie.
Oto przepływ tematu Rozmowa z klientem:
Jak pokazano w okienku Testowanie pomocnika, jeśli temat jest najpierw wyzwalany, użytkownik jest pytany „Jak mam się do Ciebie zwracać?”. Wartość jest przechowywana w zmiennej ciągu o nazwie userName
. Zmienna userName
ma też ustawioną wartość z innych tematów. Temat kończy się wiadomością „Mam nadzieję, że Twój dzień jest udany, {userName}!”
Oto przepływ tematu Powitanie:
Jak pokazano w okienku Testowanie pomocnika, jeśli temat jest najpierw wyzwalany, użytkownik jest pytany „Jak masz na imię?”. Wartość jest przechowywana w zmiennej ciągu o nazwie UserName
. Temat wysyła wiadomość „Miło mi Cię poznać {UserName}!”. Następnie przekierowuje on użytkownika do tematu Rozmowa z klientem, która wysyła wiadomość „Mam nadzieję, że Twój dzień jest udany, {userName}!”. Należy jednak zauważyć, że temat Rozmowa z klientem pominął ponowne pytanie o imię użytkownika. Zamiast tego została użyta wartość UserName
przekazana z tematu Powitanie.
Na koniec oto ponownie druga konwersacja, tym razem z perspektywy tematu Rozmowa z klientem:
Przejdźmy teraz przez kolejne kroki, aby skonfigurować temat do odbierania wartości z innych tematów. Użyjemy bieżącego przykładu, ale te same kroki będą działać w dowolnym momencie, gdy temat będzie musiał uzyskać wartość z wcześniejszego tematu.
Konfigurowanie tematu docelowego
Temat docelowy to temat, do którego następuje przekierowanie i który będzie odbierać wartości z innych tematów. W naszym przykładzie to Rozmowa z klientem.
Utwórz temat docelowy lub przejdź do niego.
Dodaj węzeł Pytanie i wprowadź wiadomość
What should I call you?
.W obszarze Zidentyfikuj wybierz wstępnie zbudowaną encję Imię i nazwisko osoby.
Wybierz zmienną, aby otworzyć okienko Właściwości zmiennej. Nazwij ją
userName
, a następnie wybierz opcję Odbieraj wartości z innych tematów.Dodaj węzeł Komunikat.
W polu wiadomości wpisz
I hope you're having a wonderful day,
.Wybierz ikonę Wstaw zmienną ({x}), a następnie wybierz opcję userName.
Wybierz miejsce za zmienną i wpisz
!
.Zapisz temat.
Konfigurowanie tematu źródłowego
Temat źródłowy to temat dokonujący przekierowania, czyli ten, który dostarcza wartość przekazywaną do tematu źródłowego. W naszym przykładzie jest to temat Powitanie.
Przejdź do tematu źródłowego.
Dodaj węzeł Przekieruj i wybierz temat docelowy.
Wybierz pozycję + Dodaj wartość wejściową, a następnie wybierz zmienną z tematu docelowego, do którego chcesz przekazać wartość.
Wybierz ikonę >, a następnie wybierz zmienną, której wartość chcesz przekazać.
Węzeł Przekieruj powinien teraz wyglądać następująco:
Zapisz temat.
Zwróć wartości do oryginalnych tematów
Kiedy temat jest przekierowywany i uzyskuje zmienną, zadając pytanie lub w inny sposób, zmienna może być zwrócona do oryginalnego tematu. Zmienna staje się również częścią oryginalnego tematu i może być używana jak każda inna zmienna. Informacje uzyskiwane przez pomocnika są więc dostępne w różnych tematach, co zmniejsza konieczność wyszukiwania zmiennych globalnych.
Kontynuujmy pracę z przykładem z poprzedniej sekcji. Zadajmy nowe pytanie w temacie Rozmowa z klientem, a następnie zwrócimy odpowiedź do tematu Powitanie.
Konfigurowanie tematu źródłowego na potrzeby zwróconej zmiennej
Gdy zmienna jest zwracana do tematu, temat źródłowy to temat, do którego następuje przekierowanie, czyli ten, który zapewnia wartość, która zostanie przekazana z powrotem do tematu oryginalnego. W tym przykładzie to Rozmowa z klientem.
Przejdź do tematu źródłowego.
Dodaj węzeł Pytanie i wprowadź wiadomość
What city do you live in?
.W obszarze Zidentyfikuj wybierz wstępnie zbudowaną encję Miasto.
Wybierz zmienną, aby otworzyć okienko Właściwości zmiennej. Nazwij ją
userCity
, a następnie wybierz opcję Zwróć wartości do oryginalnych tematów.Zapisz temat.
Konfigurowanie tematu docelowego na potrzeby zwróconej zmiennej
Gdy zmienna jest zwracana do tematu, temat docelowy to temat dokonujący przekierowania, czyli ten, który będzie odbierać wartości z innych tematów. W naszym przykładzie jest to temat Powitanie.
Przejdź do tematu docelowego.
Zmienna wybrana w temacie źródłowym powinna być wyświetlana w węźle Przekieruj jako zmienna wyjściowa.
Zapisz temat.