Le variabili di Copilot si applicano durante una singola sessione utente. Specifica quali variabili devono essere trattate come variabili copilota 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 o 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 componi un messaggio del copilota in un nodo Messaggio o un nodo Domanda, seleziona l'icona {x} per visualizzare le variabili che sono disponibili per l'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. Questo può essere utile se stai lavorando su un nuovo copilota o se hai più variabili e una ramificazione complessa di argomenti.
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 il copilota inizi una conversazione con un contesto, puoi inizializzare una variabile globale con un'origine esterna. Supponiamo che il tuo sito richieda agli utenti di accedere. Poiché il tuo copilota conosce già il nome di un utente, può salutare i clienti per nome prima che inizino a digitare la prima domanda.
Seleziona una variabile globale.
Nel riquadro Proprietà variabili, seleziona Le origini esterne possono impostare valori.
Imposta variabili globali in un copilota integrato
Se stai integrando il tuo copilota in una semplice pagina Web, puoi aggiungere variabili e le relative definizioni all'URL del copilota. 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).
Aggiungi le variabili e le loro definizioni all'URL del copilota 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. 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 copilota, definisci le variabili come segue, sostituendo variableName1
per il nome della variabile senza il prefisso Global.
e variableDefinition1
per 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>
, chiama store
quando incorpori il copilota, come nell'esempio seguente dove store
viene chiamato appena sopra la chiamata di styleOptions
(dovrai sostituire BOT_ID
con l'ID del copilota):
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 di Copilot si applicano durante una singola sessione utente. Specifica quali variabili devono essere trattate come variabili del copilota per distinguerle dalle variabili a livello di argomento.
Impostazione delle variabili copilot
Una volta impostata la variabile del copilota è disponibile per tutti gli argomenti.
Quando selezioni il pulsante {x}
in un nodo messaggio o un nodo domanda quando si compone un messaggio del copilota, vedrai che la variabile del copilota è disponibile. Le variabili sono ordinate in ordine alfabetico, quindi scoprirai che tutte le variabili del copilota sono raggruppate nel menu delle variabili perché iniziano tutte con copilot.
.
Quando si usa un nodo condizione, un nodo azione flusso o un nodo competenza, vengono visualizzate anche tutte le variabili copilota.
Riutilizza una variabile tra gli argomenti impostandola come variabile del copilota
Seleziona qualsiasi variabile nell'area del contenuto.
Nel riquadro Proprietà variabili, nella sezione Utilizzo, seleziona Copilota (qualsiasi argomento può accedere).
Al nome della variabile verrà assegnata una stringa di prefisso copilot.
per differenziarla dalle variabili a livello di argomento. Ad esempio, la variabile UserName
ora viene mostrata come copilot.UserName
.
Nota
Il nome di una variabile del copilota deve essere univoco in tutti gli argomenti. In caso di conflitto, dovrai rinominare la variabile prima di salvare la modifica.
Gestione delle variabili copilot
Dopo aver creato una variabile del copilota, puoi vedere dove è stata definita per la prima volta e quali altri argomenti la stanno utilizzando. Questo può essere utile se stai lavorando su un nuovo copilota o se hai più variabili e una ramificazione complessa di argomenti.
Vai all'origine della definizione di una variabile del copilota
Seleziona qualsiasi variabile nell'area del contenuto.
Nel riquadro Proprietà variabili, seleziona Vai a origine dati.
Questo ti porterà al nodo nell'argomento dove è stata creata la variabile del copilota.
Trova tutti gli argomenti utilizzando una variabile del copilota
Seleziona qualsiasi variabile copilota nell'area del contenuto.
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 di Copilot
Se una variabile del copilota viene attivata prima che sia stata inizializzata (o "compilata"), il copilota attiva automaticamente la parte dell'argomento in cui viene definita la variabile del copilota, anche quando si trova in un argomento diverso, prima di tornare all'argomento originale. Ciò consente al copilota di avere tutte le variabili senza interrompere la conversazione.
Ad esempio, il cliente avvia la conversazione sull'argomento "Prenotazione appuntamento" in cui viene usata la variabile del copilota copilot.UserName
. Comunque, la variabile copilot.UserName
viene prima definita nell'argomento "Benvenuto".
Quando la conversazione giunge al punto nell'argomento "Prenotazione appuntamento" dove si fa riferimento a copilot.UserName
, il copilota passa facilmente al nodo della domanda dove copilot.UserName
è definito.
Dopo che il cliente ha risposto alla domanda, il copilota riprende l'argomento "Prenotazione appuntamento".
Comportamento della variabile di Copilot durante l'implementazione di azioni tramite flussi o competenze di Power Automate
A volte, potresti usare un flusso o una competenza per inizializzare o compilare una variabile in un copilota.
Quando un utente interagisce con il copilota, tuttavia, la variabile potrebbe essere compilata in un punto precedente della conversazione, oppure potresti avere già impostate 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.
Ciclo di vita delle variabili di Copilot e reimpostazione del relativo valore
Le variabili di Copilot sono accessibili da qualsiasi argomento e il valore assegnato alla variabile del copilota persiste per tutta la sessione.
Il valore viene cancellato solo quando l'utente del copilota viene reindirizzato all'argomento di sistema Ricomincia o quando l'utente attiva direttamente questo argomento (ad esempio, digitando Ricomincia). In questo caso, tutte le variabili del copilota verranno reimpostate e non avranno alcun valore.
Impostazione del valore di una variabile copilota da origini esterne
È possibile impostare una variabile copilota da inizializzare con un'origine esterna. Ciò permette al copilota di avviare la conversazione con un contesto.
Ad esempio, un cliente attiva una chat del copilota dal tuo sito Web e il sito conosce già il nome del cliente. Consenti al copilota di conoscere il nome dell'utente prima di iniziare la conversazione così che il copilota possa avere una conversazione più intelligente con il cliente senza doverne chiedere di nuovo il nome.
Imposta la variabile del copilota da un'origine 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 loro definizioni se stai incorporando il tuo copilota in una semplice pagina Web oppure puoi usare un blocco di codice <script>
per chiamare e utilizzare le variabili a livello di codice.
Nota
Il nome della variabile nella stringa di query deve corrispondere a quello della variabile del copilota, senza il prefisso copilot.
. Ad esempio, una variabile del copilota copilot.UserName
deve essere visualizzata 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 copilota incorporato
Aggiungi le variabili e le loro definizioni all'URL del copilota 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 copilota, definisci le variabili come segue, sostituendo variableName1
per il nome della variabile senza il prefisso copilot.
e variableDefinition1
per 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>
, chiama store
quando incorpori il copilota, come nell'esempio seguente dove store
viene chiamato appena sopra la chiamata di styleOptions
(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));
Eliminare le variabili copilota
Quando si rimuove una variabile copilota utilizzata in altri argomenti, i riferimenti a tale variabile negli argomenti verranno contrassegnati come Unknown
.
Riceverai un avviso sull'eliminazione della variabile copilota prima di poter confermare l'operazione.
I nodi che contengono riferimenti alla variabile copilota eliminata ti diranno che contengono una variabile sconosciuta.
Gli argomenti con nodi che contengono riferimenti a variabili copilota 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 dell'autenticazione del copilota, avrai a disposizione un set di variabili del copilota 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.