Le variabili agente si applicano durante una singola sessione utente. Specifica quali variabili devono essere trattate come variabili agente per distinguerle dalle variabili a livello di argomento.
Creare una variabile globale
Puoi creare una variabile globale modificando l'ambito di una variabile di argomento.
Crea una variabile oppure utilizza il riquadro Variabili per aprire una variabile esistente.
Sul riquadro Proprietà variabili, seleziona Globale (qualsiasi argomento può accedere).
Al nome della variabile verrà assegnato il prefisso Global.
per differenziarla dalle variabili a livello di argomento. Ad esempio, la variabile UserName
viene visualizzata come Global.UserName
.
Salva l'argomento.
Il nome di una variabile globale deve essere univoco in tutti gli argomenti. In caso di conflitto, dovrai rinominare la variabile prima di salvare l'argomento.
Usare variabili globali
Quando scrivi un messaggio agente in un nodo Messaggio o in un nodo Domanda, Seleziona l'icona {x} per visualizzare le variabili disponibili per argomento. Le variabili globali vengono visualizzate nella scheda Personalizzato, insieme a tutte le variabili argomento. Le variabili sono elencate in ordine alfabetico.
Trovare tutti gli argomenti utilizzando una variabile globale
Puoi scoprire dove una variabile globale è definita e quali altri argomenti la stanno utilizzando. Può essere utile se stai lavorando su un nuovo agente o se hai più variabili e ramificazioni argomento complesse.
Seleziona una variabile globale nell'area del contenuto o apri il riquadro Variabili e seleziona una variabile globale.
Nel riquadro Proprietà variabili, in sezione Riferimento, seleziona uno degli argomenti in cui viene utilizzata la variabile per passare direttamente a quell'argomento e a quel nodo.
Ciclo di vita delle variabili globali
Per impostazione predefinita, il valore di una variabile globale persiste finché la sessione non termina. Il nodo Cancella valori delle variabili reimposta i valori delle variabili globali e viene utilizzato nell'argomento di sistema Reimposta conversazione. Quel argomento può essere attivato tramite reindirizzamento o quando l'utente digita una frase trigger come "Ricomincia". In tal caso, tutte le variabili globali vengono ripristinate.
Imposta il valore di una variabile globale da origini esterne
Se vuoi assicurarti che agente avvii una conversazione con un certo contesto, puoi inizializzare una variabile globale con una fonte esterna. Supponiamo che il tuo sito richieda agli utenti di accedere. Poiché il tuo agente conosce già il nome di un utente, può salutare i clienti chiamandoli per nome prima che inizino a digitare la loro prima domanda.
Seleziona una variabile globale.
Nel riquadro Proprietà variabili, seleziona Le origini esterne possono impostare valori.
Imposta variabili globali in un agente incorporato
Se stai incorporando il tuo agente in una semplice pagina web, puoi aggiungere variabili e le relative definizioni all'URL di 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, una variabile globale Global.UserName
sarebbe indicata come UserName
nella query.
Gli esempi che seguono forniscono una dichiarazione semplice per le variabili. In uno scenario di produzione, puoi passare come parametro di query o definizione di variabile un'altra variabile che ha già memorizzato il nome dell'utente (ad esempio, se disponi del nome utente da uno script di accesso).
Aggiungere le variabili e le relative definizioni all'URL di agente come parametri della stringa di query nel formato botURL?variableName1=variableDefinition1&variableName2=variableDefinition2
.
Ad esempio:
Il nome del parametro non fa distinzione tra maiuscole e minuscole. username=Renata
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 il tuo agente, definisci le variabili come segue, sostituendo variableName1
il nome della variabile senza il Global.
prefisso e variableDefinition1
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 tua sezione <script>
, chiama store
quando incorpori il tuo agente, come nel seguente esempio dove store
viene chiamato subito sopra dove styleOptions
viene chiamato (dovrai sostituire BOT_ID
con l'ID del tuo agente):
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));
Le variabili agente si applicano durante una singola sessione utente. Specificare le variabili che vengono trattate come variabili agente per distinguerle dalle variabili a livello di argomento.
Impostazione delle variabili agente
Dopo aver impostato una variabile agente, questa sarà disponibile per tutti gli argomenti.
Quando usi Seleziona sul pulsante {x}
in un nodo messaggio o in un nodo domanda mentre stai scrivendo un messaggio agente, vedrai che la variabile agente è disponibile. Le variabili sono ordinate in ordine alfabetico, quindi scoprirai che tutte le variabili agente sono raggruppate insieme nel menu delle variabili perché iniziano tutte con agent.
.
Quando utilizzi un nodo condizione, un nodo azione flusso o un nodo competenza, vedrai anche le variabili agente disponibili lì.
Riutilizza una variabile tra gli argomenti impostandola come variabile agente
Seleziona qualsiasi variabile nell'area del contenuto.
Nel riquadro Proprietà variabile , sotto Utilizzo, Seleziona agente (qualsiasi argomento può accedervi).
Al nome della variabile verrà assegnata una stringa di prefisso agent.
, per differenziarla dalle variabili a livello di argomento. Ad esempio, la variabile UserName
viene ora visualizzata come agent.UserName
.
Nota
Il nome di una variabile agente deve essere univoco in tutti gli argomenti. In caso di conflitto, dovrai rinominare la variabile prima di salvare la modifica.
Gestione delle variabili agente
Dopo aver creato una variabile agente, puoi vedere dove è stata definita per la prima volta e quali altri argomenti la stanno utilizzando. Può essere utile se stai lavorando su un nuovo agente o se hai più variabili e ramificazioni argomento complesse.
Vai alla fonte della definizione di una variabile agente
Seleziona qualsiasi variabile nell'area del contenuto.
Nel riquadro Proprietà variabili, seleziona Vai a origine dati.
Questo ti porterà al nodo in argomento in cui è stata creata la variabile agente.
Trova tutti gli argomenti utilizzando una variabile agente
Seleziona qualsiasi variabile agente nell'area di creazione.
Nel riquadro Proprietà variabili, in sezione Usato da, seleziona uno degli argomenti in cui viene utilizzata la variabile per passare direttamente a quell'argomento e a quel nodo.
Inizializzazione della variabile agente
Se una variabile agente viene attivata prima di essere stata inizializzata (o "compilata"), agente attiva automaticamente la parte di argomento in cui la variabile agente viene definita per la prima volta, anche quando si trova in un argomento diverso, prima di tornare al argomento originale. Ciò consente a agente di compilare tutte le variabili senza interrompere la conversazione.
Ad esempio, il cliente avvia la conversazione su "Prenotazione appuntamento" argomento, in cui viene utilizzata una variabile agente agent.UserName
. Tuttavia, la variabile agent.UserName
viene definita per la prima volta nel file "Welcome" argomento.
Quando la conversazione arriva a puntare nella "Prenotazione appuntamento" argomento dove agent.UserName
viene fatto riferimento, agente passa senza soluzione di continuità al nodo della domanda dove agent.UserName
viene definito per la prima volta.
Dopo che il cliente ha risposto alla domanda, agente riprende la "Prenotazione appuntamento" argomento.
Agente comportamento variabile durante l'implementazione di azioni tramite Power Automate flussi o capacità
A volte, potresti usare un flusso o competenza per inizializzare o compilare una variabile in un agente.
Tuttavia, quando un utente interagisce con agente, la variabile potrebbe essere compilata in un precedente puntare nella conversazione, oppure potresti avere ho già impostato le variabili esternamente.
In questa situazione, il flusso o la competenza continuerà a essere eseguito e compilerà la variabile, sovrascrivendo quanto precedentemente memorizzato nella variabile.
Agente variabili ciclo di vita e reimpostazione del suo valore
Le variabili agente sono accessibili da qualsiasi argomento e il valore assegnato alla variabile agente persiste per tutta la sessione .
Il valore viene cancellato solo quando l'utente agente viene reindirizzato a Ricomincia argomento oppure quando l'utente attiva direttamente questo argomento (ad esempio, digitando Ricomincia). In questo caso, tutte le variabili agente verranno reimpostate e non avranno alcun valore.
Impostazione del valore di una variabile agente da origini esterne
È possibile impostare una variabile agente da inizializzare con un'origine esterna. Ciò permette all'agente di avviare la conversazione con un contesto.
Ad esempio, un cliente apre una chat agente dal tuo sito web e il sito conosce già il nome del cliente. Se comunichi all'agente il nome dell'utente prima di iniziare la conversazione, l'agente potrà avere una conversazione più intelligente con il cliente senza dover chiedere nuovamente il suo nome.
Imposta la variabile agente da una fonte esterna
Seleziona qualsiasi variabile nell'area del contenuto.
Nel riquadro Proprietà variabili, nella sezione Uso, seleziona la casella di controllo Le fonti esterne possono impostare valori.
Puoi aggiungere le variabili e le relative definizioni se stai semplicemente incorporando il tuo agente in una semplice pagina web, oppure puoi usare un <script>
blocco di codice per chiamare e usare le variabili a livello di programmazione.
Nota
Il nome della variabile nella stringa di query deve corrispondere a quello della variabile agente, senza il prefisso agent.
. Ad esempio, una variabile agente agent.UserName
deve essere renderizzata come UserName=
.
Negli esempi qui descritti, viene fatta una dichiarazione semplice per le variabili. In uno scenario di produzione, puoi passare come parametro di query o definizione di variabile un'altra variabile che ha già memorizzato il nome dell'utente (ad esempio, se disponi del nome utente da uno script di accesso).
Per aggiungere la variabile a un agente incorporato
Aggiungere le variabili e le relative definizioni all'URL di agente come parametri della stringa di query (nel formato di botURL?variableName1=variableDefinition1&variableName2=variableDefinition2
), ad esempio:
Il nome del parametro non fa distinzione tra maiuscole e minuscole. Questo significa che username=Renata
funziona anche in questo esempio.
Nella sezione <script>
della pagina in cui hai il tuo agente, definisci le variabili come segue, sostituendo variableName1
il nome della variabile senza il agent.
prefisso e variableDefinition1
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);
});
All'interno della tua sezione <script>
, chiama store
quando incorpori il tuo agente, come nel seguente esempio dove store
viene chiamato subito sopra dove styleOptions
viene chiamato (dovrai sostituire BOT_ID
con 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));
Elimina le variabili agente
Quando si rimuove una variabile agente utilizzata in altri argomenti, i riferimenti a tale variabile negli argomenti verranno contrassegnati come Unknown
.
Riceverai un avviso relativo all'eliminazione della variabile agente prima di poter confermare l'operazione.
I nodi che contengono riferimenti alla variabile agente eliminata ti diranno che contengono una variabile sconosciuta.
Gli argomenti con nodi che contengono riferimenti a variabili agente eliminate potrebbero smettere di funzionare. Assicurati di rimuovere o correggere tutti gli argomenti che stavano utilizzando la variabile eliminata prima della pubblicazione.
A seconda della configurazione di autenticazione di agente, avrai a disposizione un set di variabili agente associate al provider di autenticazione. Per dettagli su quali set di variabili sono disponibili e su come utilizzarli, vedi l'argomento Aggiungere l'autenticazione dell'utente finale agli argomenti.