Opětovné použití proměnných napříč tématy
Důležité
Schopnosti a funkce Power Virtual Agents jsou nyní součástí Microsoft Copilot Studio po významných investicích do generativní umělé inteligence a vylepšených integracích napříč Microsoft Copilot.
Některé články a snímky obrazovky mohou odkazovat na Power Virtual Agents, zatímco aktualizujeme dokumentaci a obsah školení.
Proměnné ukládají odpovědi vašich zákazníků do otázek vašeho kopilota. Můžete například uložit jméno zákazníka do proměnné s názvem UserName
. Kopilot pak může oslovit zákazníka jménem, zatímco konverzace pokračuje.
Ve výchozím nastavení lze hodnotu proměnné použít pouze v tématu, kde je tato proměnná vytvořena. Je však možné znovu použít stejnou hodnotu napříč tématy. Například v tématu „Vítejte“ se robot zeptá na jméno a e-mailovou adresu zákazníka. V tématu rezervace schůzky chcete, aby si kopilot pamatoval, co zákazník zadal, a neptal se znovu.
Jedním ze způsobů, jak znovu použít proměnnou, je předat ji mezi tématy. Dalším způsobem je proměnnou nastavit jako globální v daném rozsahu, a právě tímto se zabývá tento článek. Globální proměnné se tak nazývají, protože jsou dostupné ve všech tématech v rámci celého kopilota.
Proměnné kopilota se použijí během jedné uživatelské relace. Určíte, které proměnné by se měly považovat za proměnné kopilota, abyste je odlišili od proměnných na úrovni tématu.
Vytvoření globální proměnné
Globální proměnnou vytvoříte změnou rozsahu proměnné tématu.
Vytvořte proměnnou nebo v podokně Proměnné otevřete existující proměnnou.
V podokně Vlastnosti proměnné vyberte Globální (kterékoli téma má přístup).
Název proměnné dostane předponu
Global.
, abyste ji odlišili od proměnných na úrovni tématu. Například proměnnáUserName
se nyní zobrazuje jakoGlobal.UserName
.Uložte téma.
Název globální proměnné musí být jedinečný ve všech tématech. V případě konfliktu budete muset před uložením tématu proměnnou přejmenovat.
Použití globálních proměnných
Když v uzlu Zpráva nebo Otázka vytváříte zprávu kopilota, vyberte ikonu {x} pro zobrazení proměnných, které jsou k dispozici pro dané téma. Globální proměnné se zobrazí na kartě Vlastní vedle všech proměnných tématu. Proměnné jsou uvedeny v abecedním pořadí.
Vyhledání všech témat pomocí globální proměnné
Můžete zjistit, kde je definována globální proměnná a jaká další témata ji používají. To může být užitečné, pokud pracujete na novém kopilotu nebo pokud máte více proměnných a komplexní větvení tématu.
V plátně pro vytváření obsahu vyberte globální proměnnou nebo otevřete podokno Proměnné a vyberte globální proměnnou.
V podokně Vlastnosti proměnné v části Reference vyberte libovolné z témat, kde se proměnná používá, abyste se dostali přímo k tomuto tématu a uzlu.
Životní cyklus globálních proměnných
Ve výchozím nastavení hodnota globální proměnné přetrvává, dokud relace neskončí. Uzel Vymazat hodnoty proměnných resetuje hodnoty globálních proměnných a použije se v systémovém tématu Resetování konverzace. Toto téma lze aktivovat buď přesměrováním, nebo když uživatel zadá spouštěcí frázi, například „Začít znovu“. V takovém případě jsou všechny globální proměnné resetovány.
Nastavení hodnoty globální proměnné z externích zdrojů
Pokud se chcete ujistit, že kopilot zahájí konverzaci s určitým kontextem, můžete inicializovat globální proměnnou s externím zdrojem. Řekněme, že váš web vyžaduje přihlášení uživatelů. Protože váš kopilot již zná jméno uživatele, může zákazníky pozdravit jménem, než začnou psát svou první otázku.
Vyberte globální proměnnou.
V podokně Vlastnosti proměnné vyberte možnost Externí zdroje mohou nastavovat hodnoty.
Nastavení globálních proměnných ve vestavěném kopilotu
Pokud vkládáte svého kopilota na jednoduchou webovou stránku, můžete k URL kopilota připojit proměnné a jejich definice. Nebo, pokud chcete trochu více kontroly, můžete použít blok kódu <script>
k volání a používání proměnných programově.
Název proměnné v řetězci dotazu adresy URL musí odpovídat názvu globální proměnné bez předpony Global.
. Například globální proměnná Global.UserName
bude v dotazu označována jako UserName
.
Následující příklady nabízejí jednoduchou deklaraci proměnných. V produkčním scénáři můžete jako parametr dotazu nebo definici proměnné předat jinou proměnnou, která již má uložené jméno uživatele (například pokud máte uživatelské jméno z přihlašovacího skriptu).
Připojte proměnné a jejich definice k adrese URL kopilota jako parametry řetězce dotazu ve formátu botURL?variableName1=variableDefinition1&variableName2=variableDefinition2
.
Příklad:
- Máte globální proměnnou s názvem
Global.UserName
. - Adresa URL kopilota je https://web.powerva.microsoft.com/webchat/bots/12345.
- Chcete-li zadat uživatelské jméno při zahájení konverzace kopilota na webu, připojte řetězec dotazu
UserName=
: https://web.powerva.microsoft.com/webchat/bots/12345?UserName=Renata.
V názvu parametru nezáleží na velikosti písmen.
To znamená username=Renata
bude také fungovat v tomto příkladu.
Přidání globálních proměnných do vlastního plátna
Proměnnou můžete přidat také do vlastního plátna.
V části
<script>
na stránce, kde máte svého kopilota, definujte proměnné následovně, nahraďtevariableName1
za název proměnné bez předponyGlobal.
avariableDefinition1
za definici. Více proměnných oddělujte čárkami (,
).const store = WebChat.createStore({}, ({ dispatch }) => next => action => { if (action.type === 'DIRECT_LINE/CONNECT_FULFILLED') { dispatch({ type: "WEB_CHAT/SEND_EVENT", payload: { name: "pvaSetContext", value: { "variableName1": "variableDefinition1", "variableName2": "variableDefinition2" } }, }); } return next(action); });
V rámci části
<script>
zavolejtestore
, když vložíte kopilota, jako v následujícím příkladu, kdestore
je voláno hned nad tím, kde je volánostyleOptions
(budete muset nahraditBOT_ID
vaším ID):const BOT_ID = "12345-5678"; const theURL = "https://powerva.microsoft.com/api/botmanagement/v1/directline/directlinetoken?botId=" + BOT_ID; fetch(theURL) .then(response => response.json()) .then(conversationInfo => { window.WebChat.renderWebChat( { directLine: window.WebChat.createDirectLine({ token: conversationInfo.token, }), store, styleOptions }, document.getElementById('webchat') ); }) .catch(err => console.error("An error occurred: " + err));
Příbuzná témata
Váš názor
https://aka.ms/ContentUserFeedback.
Připravujeme: V průběhu roku 2024 budeme postupně vyřazovat problémy z GitHub coby mechanismus zpětné vazby pro obsah a nahrazovat ho novým systémem zpětné vazby. Další informace naleznete v tématu:Odeslat a zobrazit názory pro