Nota
L'accesso a questa pagina richiede l'autorizzazione. È possibile provare ad accedere o modificare le directory.
L'accesso a questa pagina richiede l'autorizzazione. È possibile provare a modificare le directory.
Le variabili memorizzano le risposte dei tuoi clienti alle domande dell'agente. Ad esempio, puoi salvare il nome di un cliente in una variabile chiamata UserName. L'agente può quindi rivolgersi al cliente per nome mentre la conversazione continua.
Per impostazione predefinita, è possibile usare solo il valore di una variabile nell'argomento in cui è stata creata la variabile. Tuttavia, è possibile riutilizzare un valore in più argomenti. Ad esempio, un argomento Benvenuto chiede il nome e l'indirizzo e-mail del cliente. Nell'argomento Prenotazione appuntamenti vuoi che l'agente ricordi ciò che il cliente ha già fornito e non chiedere di nuovo.
È possibile riutilizzare una variabile passando la variabile da un argomento a un altro. È anche possibile rendere la variabile globale nell'ambito. Questo articolo illustra le variabili globali. Si chiamano variabili globali perché sono disponibili in tutti gli argomenti dell'intero agente. L'agente può anche impostarli da fonti esterne.
Le variabili globali si applicano durante una singola sessione utente. Specifica quali variabili sono variabili globali per distinguerle dalle variabili a livello di argomento.
Creazione di una variabile globale
Puoi creare una variabile globale modificando l'ambito di una variabile di argomento.
Note
I nome di una variabile globale deve essere univoco in tutti gli argomenti.
Creare una variabile o utilizza il pannello Variabili per aprire una variabile esistente.
Nel riquadro Proprietà variabili, seleziona Globale (qualsiasi argomento può accedere). Il nome della variabile ottiene il prefisso
Global.per distinguerlo dalle variabili a livello di argomento. Ad esempio, la variabileUserNamediventaGlobal.UserName.Salva l'argomento.
Usare variabili globali
Quando si compone un messaggio in un nodo Messaggio o in un nodo Domanda , selezionare l'icona {x} per visualizzare le variabili a cui l'argomento può accedere. È anche possibile usare variabili globali nei nodi degli strumenti che chiamano richieste o flussi di lavoro. Le variabili globali vengono visualizzate nella scheda Personalizzata insieme a qualsiasi variabile di argomento. Le variabili sono elencate in ordine alfabetico.
Trovare tutti gli argomenti che usano una variabile globale
È possibile trovare la posizione in cui è definita una variabile globale e quali altri argomenti lo usano. Questa funzionalità è utile se si sta lavorando a un nuovo agente o se sono presenti più variabili e rami di argomenti complessi.
Selezionare la variabile globale desiderata nell'area di disegno di creazione o nel pannello Variabili .
Nel riquadro Proprietà variabili, nella sezione Riferimento, seleziona Visualizza tutti i riferimenti.
Passa alla scheda Altro e seleziona un argomento in cui la variabile viene utilizzata per andare direttamente a quell'argomento e nodo.
Eliminazione delle variabili globali
Se si rimuove una variabile globale usata in altri argomenti, i riferimenti a tale variabile negli argomenti vengono visualizzati come Unknown. Prima di poter confermare l'operazione, viene visualizzato un avviso relativo all'eliminazione della variabile globale.
I nodi che contengono riferimenti a una variabile globale eliminata indicheranno che contengono una variabile sconosciuta.
Gli argomenti con nodi che contengono riferimenti a variabili globali eliminate potrebbero smettere di funzionare. Assicurati di rimuovere o correggere tutti gli argomenti che stavano utilizzando la variabile eliminata prima della pubblicazione dell'agente.
Ciclo di vita delle variabili globali
Per impostazione predefinita, un valore di variabile globale viene mantenuto fino alla fine della sessione . Il nodo Clear variable values reimposta i valori delle variabili globali. L'argomento di sistema Reset Conversation usa questo nodo. Quando un reindirizzamento attiva l'argomento (o quando l'utente immette una frase, ad esempio "Ricomincia"), tutte le variabili globali vengono reimpostate.
Imposta variabili globali da origini esterne
Per assicurarsi che l'agente avvii una conversazione con un contesto, usare una variabile globale e impostarne il valore da un'origine esterna. Si supponga che il sito richieda agli utenti di accedere. Se memorizzi il nome di un utente in una variabile globale e lo passi al tuo agente, quest'ultimo può salutare i clienti per nome prima che inizino a digitare la loro prima domanda. Un altro scenario di esempio consiste nel passare il contesto da Dynamics 365 Customer Insights - Journeys a un agente in modo che possa avviare la conversazione con la conoscenza di ciò che il cliente vuole ottenere.
Per evitare la latenza indesiderata, specificare per quanto tempo l'agente può attendere un valore. Puoi inoltre impostare un valore predefinito da utilizzare quando l'origine esterna non risponde in modo tempestivo.
Note
Gli agenti pubblicati nel canale Dynamics 365 Commerce per i casi d'uso IVR non supportano i valori di timeout configurati per le variabili globali impostate da origini esterne.
Creare un argomento dedicato per contenere la configurazione di tutte le variabili che devono essere impostate da origini esterne. Ad esempio, potresti denominare questo argomento "Imposta variabili di contesto". Questo argomento non ha altri scopi, quindi non è necessario che siano impostate frasi trigger.
Aggiungi un nodo Imposta valore variabile all'argomento dedicato.
In Imposta variabile, apri il selezionatore della variabile e seleziona Crea una nuova variabile.
Seleziona il nome predefinito della nuova variabile. Viene visualizzato il riquadro Proprietà variabili.
Sostituire il nome predefinito con uno che corrisponde esattamente al nome della variabile passata dal sistema esterno.
In Utilizzo, seleziona Globale (qualsiasi argomento può accedere) e Le origini esterne possono impostare valori.
In Riferimento seleziona i tre puntini (⋮) nell'angolo in alto a destra e seleziona Recupera valore da questo nodo se vuoto.
(Facoltativo) Impostare un ritardo di timeout, espresso in millisecondi. Questo valore determina il tempo di attesa dell'agente per l'impostazione della variabile da parte di un'origine esterna prima del timeout e della continuazione con il valore predefinito impostato nel nodo Imposta valore variabile. Questa impostazione è rilevante negli scenari in cui la variabile dipende da un processo asincrono o a esecuzione prolungata, ma l'agente deve rispettare una latenza massima per garantire una buona esperienza utente.
Per le variabili provenienti da Omnichannel per customer service, usare un valore di 10 secondi (10.000 ms) come tempo di attesa massimo.
Nel nodo Imposta valore variabile immettere il valore predefinito da usare se viene raggiunto il timeout. In fase di esecuzione, l'agente prevede valori con lo stesso tipo di dati. Se desideri che questo valore predefinito sia una stringa vuota, usa
Text("")come formula.
Per tutti gli altri valori che si prevede provengano da un sistema esterno, aggiungi altri nodi Imposta valore variabile all'argomento dedicato e configura le variabili globali richieste nello stesso modo.
Quando si configura l'agente in questo modo, è pronto per il test. Quando l'agente viene richiamato, invece di attendere indefinitamente che tutte le variabili vengano popolate, l'agente può iniziare immediatamente a inviare tutti i messaggi che non dipendono dalle variabili passate. Quando l'agente tenta di accedere a una variabile impostata esternamente, viene sospesa fino all'arrivo del valore o al timeout. Per altre informazioni, vedere Ottimizzare gli agenti per ridurre al minimo la latenza.
Importante
Durante il normale flusso di una conversazione, se l'agente imposta una variabile che altrimenti proviene da un valore esterno, il valore impostato dall'interno dell'agente prevale. Qualsiasi valore passato nel contesto viene ignorato. Questa regola impedisce all'agente di sovrascrivere i valori impostati intenzionalmente negli argomenti.
Impostare le variabili globali in un agente integrato
Se stai integrando l'agente in una semplice pagina Web, puoi aggiungere variabili e le relative definizioni all'URL dell'agente. Oppure, se desideri un po' più di controllo, puoi utilizzare un blocco di codice <script> per chiamare e utilizzare variabili a livello di codice.
Il nome della variabile nella stringa di query dell'URL deve corrispondere a quello della variabile globale, senza il prefisso Global.. Ad esempio, per una variabile Global.UserName globale usare solo UserName nella query.
Negli esempi seguenti viene usata una dichiarazione di base per le variabili. In uno scenario di produzione, è possibile passare un'altra variabile che archivia già il nome dell'utente(ad esempio, se si ha il nome utente da uno script di accesso) come parametro di query o definizione di variabile.
Aggiungi le variabili e le loro definizioni all'URL dell'agente come parametri della stringa di query (nel formato di botURL?variableName1=variableDefinition1&variableName2=variableDefinition2).
Per esempio:
- Hai una variabile globale denominata
Global.UserName. - L'URL dell'agente è https://web.powerva.microsoft.com/webchat/bots/12345.
- Per indicare il nome utente quando avvii una conversazione di un agente su un sito Web, puoi collegare la
UserName=stringa di query come: https://web.powerva.microsoft.com/webchat/bots/12345?UserName=Ana.
Il nome del parametro non fa distinzione tra maiuscole e minuscole: username=Ana funziona anche in questo esempio.
Aggiungere variabili globali a un canvas personalizzato
Puoi anche aggiungere la variabile a un canvas personalizzato.
Nella sezione
<script>della pagina in cui hai l'agente, definisci le variabili come segue, sostituendovariableName1per il nome della variabile senza il prefissoGlobal.evariableDefinition1per la definizione. Separa più variabili con le virgole (,).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); });Nella sezione
<script>, chiamastorequando integri l'agente, come nell'esempio seguente dovestoreviene chiamato appena prima della chiamata distyleOptions(devi sostituireBOT_IDcon il tuo 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));
Variabili globali correlate all'autenticazione
A seconda della configurazione dell'autenticazione dell'agente, avrai a disposizione un set di variabili globali associate al provider di autenticazione selezionato. Per dettagli su quali set di variabili sono disponibili e su come utilizzarli, vedi l'argomento Aggiungere l'autenticazione dell'utente agli argomenti.