Práce s globálními proměnnými

Proměnné ukládají odpovědi vašich zákazníků na otázky z vašeho agenta. Můžete například uložit jméno zákazníka do proměnné s názvem UserName. Agent pak může oslovit zákazníka jménem, zatímco konverzace pokračuje.

Ve výchozím nastavení můžete použít pouze hodnotu proměnné v tématu, ve kterém jste proměnnou vytvořili. Můžete ale chtít znovu použít hodnotu v různých tématech. 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ůzek chcete, aby si agent pamatoval, co už zákazník uvedl, a neptal se znovu.

Proměnnou můžete znovu použít předáním proměnné z jednoho tématu do jiného. Proměnnou můžete také nastavit jako globální v rámci rozsahu platnosti. Tento článek se zabývá globálními proměnnými. Označují se jako globální proměnné, protože jsou dostupné ve všech tématech celého agenta. Váš agent je také může nastavit z externích zdrojů.

Globální proměnné se použijí během jedné uživatelské relace. Sami určujete, které proměnné jsou globální, 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.

Note

Název globální proměnné musí být jedinečný ve všech tématech.

  1. Vytvořte proměnnou nebo použijte panel Proměnné k otevření existující proměnné.

  2. V panelu Vlastnosti proměnné vyberte Globální (s přístupem k libovolnému tématu). Název proměnné získá předponu Global. , aby ji odlišil od proměnných na úrovni tématu. Například proměnná UserName se stane Global.UserName.

  3. Uložte téma.

Použití globálních proměnných

Když vytváříte zprávu v uzlu Zpráva nebo v uzlu Otázky , vyberte ikonu {x} , abyste zobrazili proměnné, ke kterým má téma přístup. Globální proměnné můžete použít také v uzlech nástrojů , které volají výzvy nebo pracovní postupy. Globální proměnné se zobrazují na kartě Vlastní spolu s libovolnými proměnnými tématu. Proměnné jsou uvedeny v abecedním pořadí.

Vyhledání všech témat, která používají globální proměnnou

Můžete najít, kde je definována globální proměnná a která další témata ji používají. Tato funkce je užitečná, pokud pracujete na novém agentovi nebo máte více proměnných a složité větvení témat.

  1. Vyberte globální proměnnou, kterou chcete použít na plátně pro vytváření obsahu nebo na panelu Proměnné .

  2. Na panelu Vlastnosti v sekci Odkaz vyberte Zobrazit všechny odkazy.

  3. Přepněte na kartu Ostatní a vyberte libovolné téma, ve kterém se proměnná používá k přímému přechodu na toto téma a uzel.

Mazání globálních proměnných

Pokud odeberete globální proměnnou, která se používá v jiných tématech, odkazy na tuto proměnnou v tématech se zobrazí jako Unknown. Před potvrzením operace se zobrazí upozornění na odstranění globální proměnné.

Uzly, které obsahují odkazy na odstraněnou globální proměnnou označují, že obsahují neznámou proměnnou.

Témata s uzly obsahujícími odkazy na globální proměnné, které byly odstraněny, mohou přestat fungovat. Než svého agenta publikujete, nezapomeňte odebrat nebo opravit všechna témata, která používala nyní odstraněnou proměnnou.

Životní cyklus globálních proměnných

Ve výchozím nastavení se hodnota globální proměnné zachová až do konce relace . Uzel Vymazat hodnoty proměnných resetuje hodnoty globálních proměnných. Systémové téma Resetovat konverzaci používá tento uzel. Když přesměrování spustí toto téma (nebo když uživatel zadá frázi, například "Začít znovu"), všechny globální proměnné se resetují.

Nastavení globálních proměnný z externích zdrojů

Abyste zajistili, že agent spustí konverzaci s určitým kontextem, použijte globální proměnnou a nastavte její hodnotu z externího zdroje. Předpokládejme, že váš web vyžaduje, aby se uživatelé přihlásili. Pokud uložíte jméno uživatele do globální proměnné a předáte ho svému agentovi, může agent pozdravit zákazníky jménem předtím, než začnou psát svou první otázku. Dalším ukázkovým scénářem je předávání kontextu z Dynamics 365 Customer Service agentům, aby mohl zahájit konverzaci se znalostmi toho, čeho chce zákazník dosáhnout.

Pokud chcete zabránit nežádoucí latenci, určete, jak dlouho může agent čekat na hodnotu. Můžete také nastavit výchozí hodnotu, která se použije, když externí zdroj nereaguje včas.

Note

Agenti, kteří jsou publikováni v kanálu Dynamics 365 Contact Center pro případy použití IVR, nepodporují hodnoty časového limitu nakonfigurované pro globální proměnné nastavené externími zdroji.

  1. Vytvořte vyhrazené téma, které bude obsahovat konfiguraci pro všechny proměnné, které mají být nastaveny z externích zdrojů. Toto téma můžete pojmenovat například "Nastavení kontextových proměnných". Toto téma neslouží k žádným jiným účelům, takže nemusí mít nastavené spouštěcí fráze.

  2. Přidejte uzel Nastavit hodnotu proměnné do vyhrazeného tématu.

  3. V části Nastavit proměnnou otevřete volič proměnných a vyberte možnost Vytvořit novou proměnnou.

  4. Vyberte výchozí název nové proměnné. Zobrazí se panel Vlastnosti proměnných.

  5. Nahraďte výchozí název názvem, který odpovídá přesně názvu proměnné předávané z externího systému.

  6. V části Použití vyberte Globální (libovolné téma má přístup) a Externí zdroje mohou nastavovat hodnoty.

  7. V sekci Reference vyberte tři tečky () v pravém horním rohu a vyberte Získat hodnotu z tohoto uzlu, pokud je prázdný.

  8. (Volitelné) Nastavte prodlevu časového limitu v milisekundách. Tato hodnota určuje, jak dlouho může agent čekat na nastavení proměnné externím zdrojem, než vyprší časový limit, a bude pokračovat s výchozí hodnotou, kterou jste nastavili v uzlu Nastavit hodnotu proměnné. Toto nastavení je relevantní ve scénářích, kdy proměnná závisí na dlouhotrvajícím nebo asynchronním procesu, ale váš agent musí respektovat maximální latenci, aby se zajistilo dobré uživatelské prostředí.

    U proměnných pocházejících z Omnichannel pro služby zákazníkům použijte hodnotu 10 sekund (10 000 ms) jako maximální dobu čekání.

  9. V uzlu Nastavit hodnotu proměnné zadejte výchozí hodnotu, kterou chcete použít, pokud je dosaženo časového limitu. Za běhu váš agent očekává hodnoty se stejným datovým typem. Pokud chcete, aby tato výchozí hodnota byla prázdný řetězec, použijte Text("") jako vzorec.

    Snímek obrazovky konfigurace globální proměnné, která má být nastavena z externího zdroje.

  10. Pro všechny ostatní hodnoty, u kterých očekáváte, že budou pocházet z externího systému, přidejte do vyhrazeného tématu další uzly Nastavit hodnotu proměnné a stejným způsobem nakonfigurujte požadované globální proměnné.

Když tímto způsobem nakonfigurujete agenta, je připravený k otestování. Když je agent vyvolán, místo toho, aby čekal neomezeně dlouho na naplnění všech proměnných, může váš agent okamžitě začít odesílat všechny zprávy, které nejsou závislé na předávaných proměnných. Když se váš agent pokusí získat přístup k proměnné, která se nastavuje externě, pozastaví se, dokud hodnota nedorazí nebo dojde k vypršení časového limitu. Další informace najdete v článku Optimalizace agentů, abyste minimalizovali latenci.

Important

Pokud váš agent během normálního toku konverzace nastaví proměnnou, která by jinak přišla z externí hodnoty, hodnota nastavená z vašeho agenta převládá. Jakákoli hodnota předaná v kontextu se ignoruje. Toto pravidlo zabrání agentovi v přepsání hodnot záměrně nastavených v tématech.

Nastavení globálních proměnných ve vestavěném agentovi

Pokud vkládáte agent na jednoduchou webovou stránku, můžete k adrese URL agent 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 pro globální proměnnou Global.UserName se používá pouze UserName v dotazu.

Následující příklady používají základní deklaraci proměnných. V produkčním scénáři můžete předat jinou proměnnou, která již ukládá jméno uživatele (například pokud máte uživatelské jméno z přihlašovacího skriptu) jako parametr dotazu nebo definici proměnné.

Připojte proměnné a jejich definice k adrese URL agenta jako parametry řetězce dotazu ve formátu botURL?variableName1=variableDefinition1&variableName2=variableDefinition2.

Příklad:

Název parametru nerozlišuje velká a malá písmena: username=Ana funguje také v tomto příkladu.

Přidejte globální proměnné do vlastního plátna

Proměnnou můžete přidat také do vlastního plátna.

  1. V části <script> na stránce, kde máte svého agenta, definujte proměnné následovně, nahraďte variableName1 za název proměnné bez předpony Global. a variableDefinition1 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);
        });
    
  2. V části <script> zavolejte store, když vložíte agenta, jako v následujícím příkladu, kde je store voláno hned před voláním styleOptions (BOT_ID musíte nahradit ID vašeho agenta):

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

V závislosti na nastavení ověřování agenta máte sadu globálních proměnných přidružených k vybranému poskytovateli ověřování. Podrobnosti o tom, která sada proměnných je k dispozici a jak je používat, viz Přidání ověřování uživatele do témat.