Delen via


Variabelen hergebruiken voor verschillende onderwerpen

Belangrijk

Power Virtual Agents-mogelijkheden en -functies maken nu deel uit van Microsoft Copilot Studio na aanzienlijke investeringen in generatieve AI en verbeterde integraties binnen Microsoft Copilot.

Sommige artikelen en schermopnamen verwijzen mogelijk naar Power Virtual Agents terwijl we de documentatie en trainingsinhoud bijwerken.

Met variabelen worden de antwoorden van uw klanten op vragen van uw copilot opgeslagen. U kunt bijvoorbeeld de naam van een klant opslaan in een variabele met de naam UserName. De copilot kan de klant vervolgens met zijn naam aanspreken als het gesprek wordt voortgezet.

Standaard kan de waarde van een variabele alleen worden gebruikt in het onderwerp waar de variabele wordt gemaakt. Het is echter mogelijk om dezelfde waarde voor verschillende onderwerpen te hergebruiken. In een Welkom-onderwerp vraagt de bot bijvoorbeeld om de naam en het e-mailadres van de klant. In het onderwerp Afspraakboeking wilt u dat de copilot onthoudt wat de klant heeft ingevoerd en dit niet opnieuw vraagt.

Eén manier om een variabele opnieuw te gebruiken, is door de variabele tussen onderwerpen door te geven. De andere manier is om de variabele een algemeen bereik te geven en daar gaat dit artikel over. Algemene variabelen heten zo omdat ze beschikbaar zijn in alle onderwerpen in de gehele copilot.

Copilot-variabelen zijn van toepassing tijdens één gebruikerssessie. U geeft op welke variabelen moeten worden behandeld als copilot-variabelen om ze te onderscheiden van variabelen op onderwerpniveau.

Een algemene variabele maken

U kunt een algemene variabele maken door het bereik van een onderwerpvariabele te wijzigen.

  1. Maak een variabele of gebruik het deelvenster Variabelen om een bestaande variabele te openen.

  2. Selecteer in het deelvenster Variabele-eigenschappen de optie Algemeen (elk onderwerp heeft toegang).

    De variabelenaam krijgt het voorvoegsel Global. ter onderscheid van de variabelen op onderwerpniveau. De variabele UserName wordt bijvoorbeeld weergegeven als Global.UserName.

    Schermopname met het deelvenster Variabele-eigenschappen met de instelling Algemeen gemarkeerd.

  3. Sla het onderwerp op.

    De naam van een algemene variabele moet voor alle onderwerpen uniek zijn. In het geval van een conflict moet u de variabele een andere naam geven voordat u uw onderwerp opslaat.

Algemene variabelen gebruiken

Selecteer tijdens het opstellen van een copilot-bericht in een Bericht- of Vraag-knooppunt het pictogram {x} om de voor het onderwerp beschikbare variabelen te bekijken. Algemene variabelen worden op het tabblad Aangepast weergegeven samen met eventuele onderwerpvariabelen. Variabelen worden in alfabetische volgorde weergegeven.

Schermopname met selectie van een algemene variabele.

Alle onderwerpen zoeken met een algemene variabele

U kunt zien waar een algemene variabele is gedefinieerd en welke andere onderwerpen deze gebruiken. Dit kan handig zijn als u aan een nieuwe copilot werkt of als u meerdere variabelen hebt en complexe onderwerpvertakkingen.

  1. Selecteer een algemene variabele op het ontwerpcanvas of open het deelvenster Variabelen en selecteer een algemene variabele.

  2. Selecteer in het deelvenster Variabele-eigenschappen in de sectie Verwijzing de onderwerpen waar de variabele wordt gebruikt om rechtstreeks naar dat onderwerp en knooppunt te gaan.

    Schermafbeelding met de lijst met onderwerpen die door een variabele in het eigenschappenvenster Variabele worden gebruikt.

Levenscyclus van algemene variabelen

Standaard blijft de waarde van een algemene variabele bestaan totdat de sessie wordt beëindigd. Met het knooppunt Variabelewaarden wissen worden de waarden van algemene variabelen opnieuw ingesteld en gebruikt in het systeemonderwerp Gesprek opnieuw instellen. Dit onderwerp kan worden geactiveerd door omleiding of wanneer de gebruiker een triggerzin typt, zoals 'Opnieuw beginnen'. In dat geval worden alle algemene variabelen opnieuw ingesteld.

De waarde van een algemene variabele instellen vanuit externe bronnen

Als u er zeker van wilt zijn dat de copilot een gesprek met enige context begint, kunt u een algemene variabele initialiseren met een externe bron. Stel dat uw site vereist dat gebruikers zich aanmelden. Omdat uw copilot de naam van een gebruiker al kent, kan hij klanten bij naam begroeten voordat ze hun eerste vraag beginnen te typen.

  1. Selecteer een algemene variabele.

  2. Selecteer in het deelvenster Variabele-eigenschappenExterne bronnen kunnen waarden instellen.

Algemene variabelen instellen in een ingesloten copilot

Als u uw copilot insluit in een eenvoudige webpagina kunt u variabelen en hun definities toevoegen aan de URL van de copilot. Of, als u wat meer controle wilt, kunt u een codeblok <script> gebruiken om variabelen programmatisch aan te roepen en te gebruiken.

De variabelenaam in de queryreeks van de URL moet overeenkomen met de naam van de algemene variabele zonder het voorvoegsel Global.. Naar een algemene variabele Global.UserName wordt bijvoorbeeld in de query verwezen als UserName.

De volgende voorbeelden bieden een eenvoudige declaratie voor de variabelen. In een productiescenario kunt u als queryparameter of variabeledefinitie een andere variabele doorgeven die de gebruikersnaam al heeft opgeslagen (bijvoorbeeld als u de gebruikersnaam van een inlogscript hebt).

Voeg de variabelen en hun definities toe aan de URL van de copilot als parameters voor de querytekenreeks in de notatie botURL?variableName1=variableDefinition1&variableName2=variableDefinition2.

Bijvoorbeeld:

De parameternaam is niet hoofdlettergevoelig. Dit betekent dat username=Renata ook werkt in dit voorbeeld.

Algemene variabelen toevoegen aan een aangepast canvas

U kunt de variabele ook toevoegen aan een aangepast canvas.

  1. In de sectie <script> op de pagina waar u uw copilot hebt, definieert u de variabelen als volgt, en vervangt u variableName1 door de variabelenaam zonder de prefix Global. en variableDefinition1 door de definitie. Scheid meerdere variabelen met komma's (,).

       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. In de <script>-sectie roept u de store aan wanneer u uw copilot insluit, zoals in het volgende voorbeeld waar store wordt aangeroepen net boven styleOptions (u moet de BOT_ID vervangen door de id van uw copilot):

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