Οι μεταβλητές Copilot εφαρμόζονται κατά τη διάρκεια μιας περιόδου λειτουργίας ενός χρήστη. Καθορίζετε ποιες μεταβλητές θα πρέπει να αντιμετωπιστούν ως μεταβλητές copilot για να διακριθούν από τις μεταβλητές επιπέδου θέματος.
Δημιουργία καθολικής μεταβλητής
Δημιουργείτε μια καθολική μεταβλητή αλλάζοντας το πεδίο μιας μεταβλητής θέματος.
Δημιουργήστε μια μεταβλητή ή χρησιμοποιήστε το τμήμα παραθύρου Μεταβλητές για να ανοίξετε μια υπάρχουσα μεταβλητή.
Στο τμήμα παραθύρου Ιδιότητες μεταβλητής, επιλέξτε Καθολική (οποιοδήποτε θέμα μπορεί να προσπελαστεί).
Στο όνομα της μεταβλητής δίνεται το πρόθεμα Global.
, ώστε να γίνει διαφοροποίηση από τις μεταβλητές επιπέδου θέματος. Για παράδειγμα, η μεταβλητή UserName
εμφανίζεται τώρα ως Global.UserName
.
Αποθηκεύστε το θέμα.
Το όνομα μιας καθολικής μεταβλητής πρέπει να είναι μοναδικό για όλα τα θέματα. Εάν υπάρχει διένεξη, θα χρειαστεί να μετονομάσετε τη μεταβλητή πριν να αποθηκεύσετε το θέμα σας.
Χρήση καθολικών μεταβλητών
Όταν γράφετε ένα μήνυμα copilot σε έναν κόμβο μηνύματος ή έναν κόμβο ερώτησης, επιλέξτε το εικονίδιο {x} για να προβάλετε τις μεταβλητές που είναι διαθέσιμες στο θέμα. Οι καθολικές μεταβλητές εμφανίζονται στην καρτέλα Προσαρμογή μαζί με τυχόν μεταβλητές θέματος. Οι μεταβλητές παρατίθενται με αλφαβητική σειρά.
Εύρεση όλων των θεμάτων με τη χρήση καθολικής μεταβλητής
Μπορείτε να βρείτε πού ορίζεται μια καθολική μεταβλητή και ποια άλλα θέματα τη χρησιμοποιούν. Αυτό μπορεί να είναι χρήσιμο εάν εργάζεστε σε ένα νέο copilot ή αν έχετε πολλές μεταβλητές και πολύπλοκη διακλάδωση θεμάτων.
Επιλέξτε μια καθολική μεταβλητή στον καμβά σύνταξης ή ανοίξτε το τμήμα παραθύρου Μεταβλητές και επιλέξτε μια καθολική μεταβλητή.
Στο τμήμα παραθύρου Ιδιότητες μεταβλητής, στην ενότητα Αναφορά, επιλέξτε οποιοδήποτε από τα θέματα όπου χρησιμοποιείται η μεταβλητή για να μεταβείτε απευθείας σε αυτό το θέμα και στον κόμβο.
Κύκλος ζωής καθολικών μεταβλητών
Από προεπιλογή, η τιμή μιας καθολικής μεταβλητής διατηρείται μέχρι να λήξει η περίοδος λειτουργίας. Ο κόμβος Εκκαθάριση τιμών μεταβλητών επαναρυθμίζει τις τιμές των καθολικών μεταβλητών και χρησιμοποιείται στο θέμα συστήματος Επαναφορά συνομιλίας. Αυτό το θέμα μπορεί να ενεργοποιηθεί μέσω ανακατεύθυνσης ή όταν ο χρήστης πληκτρολογήσει μια φράση ενεργοποίησης, όπως "Έναρξη από την αρχή". Σε αυτή την περίπτωση, ρυθμίζεται η επαναφορά όλων των καθολικών μεταβλητών.
Ορισμός της τιμής μιας καθολικής μεταβλητής από εξωτερικές πηγές
Εάν θέλετε να βεβαιωθείτε ότι το copilot ξεκινά μια συνομιλία με κάποιο περιβάλλον, μπορείτε να προετοιμάσετε μια καθολική μεταβλητή με μια εξωτερική προέλευση. Ας πούμε ότι η τοποθεσία σας απαιτεί από τους χρήστες να συνδεθούν. Εφόσον το copilot σας γνωρίζει ήδη το όνομα ενός χρήστη, μπορεί να καλωσορίσει τους πελάτες κατά όνομα πριν αρχίσουν να πληκτρολογούν την πρώτη τους ερώτηση.
Επιλέξτε μια καθολική μεταβλητή.
Στο τμήμα παραθύρου Ιδιότητες μεταβλητής , επιλέξτε Οι εξωτερικές προελεύσεις μπορούν να ορίσουν τιμές.
Καθορισμός καθολικών μεταβλητών σε ενσωματωμένο copilot
Εάν ενσωματώσετε το copilot σας σε μια απλή ιστοσελίδα, μπορείτε να προσαρτήσετε μεταβλητές και τους ορισμούς τους στη διεύθυνση URL του copilot. Εναλλακτικά, αν θέλετε λίγο περισσότερο έλεγχο, μπορείτε να χρησιμοποιήσετε ένα μπλοκ κώδικα <script>
για να καλέσετε και να χρησιμοποιήσετε μεταβλητές μέσω προγραμματισμού.
Το όνομα της μεταβλητής στη συμβολοσειρά ερωτήματος της διεύθυνσης URL πρέπει να είναι ίδιο με το όνομα της καθολικής μεταβλητής, χωρίς το πρόθεμα Global.
. Για παράδειγμα, μια καθολική μεταβλητή Global.UserName
θα αναφέρεται ως UserName
στο ερώτημα.
Τα παραδείγματα που ακολουθούν παρέχουν μια απλή δήλωση για τις μεταβλητές. Σε ένα σενάριο παραγωγής, μπορείτε να μεταβιβάσετε στην παράμετρο ερωτήματος ή τον ορισμό μεταβλητής μια άλλη μεταβλητή που έχει ήδη αποθηκεύσει το όνομα χρήστη (για παράδειγμα, εάν έχετε το όνομα χρήστη από μια δέσμη ενεργειών εισόδου).
Προσαρτήστε τις μεταβλητές και τους ορισμούς τους στη διεύθυνση URL του copilot ως παραμέτρους συμβολοσειράς ερωτήματος με τη μορφή του botURL?variableName1=variableDefinition1&variableName2=variableDefinition2
,
Για παράδειγμα:
Το όνομα της παραμέτρου έχει διάκριση πεζών-κεφαλαίων.
Το username=Renata
θα λειτουργήσει επίσης σε αυτό το παράδειγμα.
Προσθέσετε καθολικές μεταβλητές σε έναν προσαρμοσμένο καμβά
Μπορείτε επίσης να προσθέσετε τη μεταβλητή σε έναν προσαρμοσμένο καμβά.
Στην ενότητα <script>
στη σελίδα όπου έχετε το copilot, καθορίστε τις μεταβλητές ως εξής, αντικαθιστώντας το variableName1
για το όνομα της μεταβλητής χωρίς πρόθεμα Global.
και το variableDefinition1
για τον ορισμό. Χωρίστε πολλές μεταβλητές με κόμματα (,
).
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);
});
Στην ενότητα <script>
, καλέστε το store
όταν ενσωματώσετε το copilot σας όπως στο παρακάτω παράδειγμα, όπου το store
καλείται ακριβώς πάνω από το σημείο που καλείται το styleOptions
(θα πρέπει να αντικαταστήσετε το BOT_ID
με το δικό σας αναγνωριστικό 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));
Οι μεταβλητές Copilot εφαρμόζονται κατά τη διάρκεια μιας περιόδου λειτουργίας ενός χρήστη. Καθορίζετε τις μεταβλητές που θα αντιμετωπιστούν ως μεταβλητές copilot για να διακριθούν από τις μεταβλητές επιπέδου θέματος.
Ορισμός μεταβλητών copilot
Αφού ορίσετε μια μεταβλητή copilot, θα είναι διαθέσιμη σε όλα τα θέματα.
Όταν επιλέγετε το κουμπί {x}
σε έναν κόμβο μηνύματος ή ερώτησης κατά τη σύνταξη ενός μηνύματος copilot, θα δείτε ότι η μεταβλητή copilot είναι διαθέσιμη. Οι μεταβλητές ταξινομούνται με αλφαβητική σειρά, επομένως θα δείτε ότι όλες οι μεταβλητές copilot έχουν ομαδοποιηθεί στο μενού των μεταβλητών επειδή όλες αρχίζουν με copilot.
.
Όταν χρησιμοποιείτε έναν κόμβο συνθήκης, έναν κόμβο ενέργειας ροής ή έναν κόμβο δεξιότητας, θα δείτε επίσης μεταβλητές copilot να είναι διαθέσιμες εκεί.
Θα πρέπει να χρησιμοποιήσετε ξανά μια μεταβλητή για κάθε θέμα ορίζοντάς την ως μεταβλητή copilot
Επιλέξτε οποιαδήποτε μεταβλητή στον καμβά σύνταξης.
Στο τμήμα παραθύρου Ιδιότητες μεταβλητής, κάτω από τη Χρήση, επιλέξτε copilot (οποιοδήποτε θέμα μπορεί να προσπελαστεί).
Στο όνομα της μεταβλητής θα λάβει μια συμβολοσειρά προθέματος copilot.
, ώστε να γίνει διαφοροποίηση από τις μεταβλητές επιπέδου θέματος. Για παράδειγμα, η μεταβλητή UserName
εμφανίζεται τώρα ως copilot.UserName
.
Σημείωμα
Το όνομα μιας μεταβλητής copilot πρέπει να είναι μοναδικό για όλα τα θέματα. Σε περίπτωση διένεξης, θα χρειαστεί να μετονομάσετε τη μεταβλητή πριν να αποθηκεύσετε την αλλαγή σας.
Διαχείριση μεταβλητών copilot
Αφού δημιουργήσετε μια μεταβλητή copilot, μπορείτε να δείτε πού ορίζεται για πρώτη φορά και ποια άλλα θέματα τη χρησιμοποιούν. Αυτό μπορεί να είναι χρήσιμο εάν εργάζεστε σε ένα νέο copilot ή αν έχετε πολλές μεταβλητές και πολύπλοκη διακλάδωση θεμάτων.
Μεταβείτε στην προέλευση του ορισμού μιας μεταβλητής copilot
Επιλέξτε οποιαδήποτε μεταβλητή στον καμβά σύνταξης.
Στο τμήμα παραθύρου Ιδιότητες μεταβλητής, επιλέξτε Μετάβαση στην προέλευση.
Έτσι θα μεταβείτε στον κόμβο στο θέμα όπου δημιουργήθηκε η μεταβλητή copilot.
Εύρεση όλων των θεμάτων με τη χρήση μιας μεταβλητής copilot
Επιλέξτε οποιαδήποτε μεταβλητή copilot στον καμβά σύνταξης.
Στο τμήμα παραθύρου Ιδιότητες μεταβλητής, στην ενότητα Χρησιμοποιείται από, επιλέξτε οποιοδήποτε από τα θέματα όπου χρησιμοποιείται η μεταβλητή για να μεταβείτε σε αυτό το θέμα και στον κόμβο.
Προετοιμασία μεταβλητής copilot
Εάν μια μεταβλητή copilot ενεργοποιηθεί πριν από την προετοιμασία (ή τη "συμπλήρωση"), το copilot θα ενεργοποιήσει αυτόματα το τμήμα του θέματοςόπου η μεταβλητή copilot έχει καθοριστεί πρώταακόμα κι αν βρίσκεται σε διαφορετικό θέμαπριν επιστρέψει στο αρχικό θέμα. Αυτό επιτρέπει στο copilot να συμπληρώσει όλες τις μεταβλητές χωρίς να διακόπτει τη συνομιλία.
Για παράδειγμα, ο πελάτης ξεκινά τη συνομιλία στο θέμα "Κράτηση συνάντησης" όπου χρησιμοποιείται μια μεταβλητή copilot copilot.UserName
. Ωστόσο, η μεταβλητή copilot.UserName
ορίζεται πρώτα στο θέμα "Καλώς ορίσατε".
Όταν η συνομιλία έρθει στο σημείο στο θέμα "Κράτηση συνάντησης" όπου αναφέρεται το copilot.UserName
, το copilot θα κάνει συγκεντρωτική προβολή copilot απρόσκοπτα στον κόμβο ερωτήσεων όπου έχει οριστεί το copilot.UserName
για πρώτη φορά.
Αφού ο πελάτης απαντήσει στην ερώτηση, το copilot θα συνεχίσει το θέμα κράτησης συνάντησης.
Συμπεριφορά μεταβλητής copilot κατά την υλοποίηση ενεργειών μέσω ροών ή δεξιοτήτων Power Automate
Μερικές φορές, μπορείτε να χρησιμοποιήσετε μια ροή ή μια δεξιότητα για να αρχικοποιήσετε ή να συμπληρώσετε μια μεταβλητή σε ένα copilot.
Όταν ένας χρήστης αλληλεπιδρά με το copilot, ωστόσο, η μεταβλητή μπορεί να συμπληρωθεί σε ένα προηγούμενο σημείο της συνομιλίας ή ίσως έχετε ήδη ορίσει τις μεταβλητές εξωτερικά.
Σε αυτήν την περίπτωση, η ροή ή η δεξιότητα θα εξακολουθεί να εκτελείται και να συμπληρώνει τη μεταβλητή, να αντικαθιστά οτιδήποτε είχε αποθηκευτεί προηγουμένως στη μεταβλητή.
Κύκλος ζωής μεταβλητών copilot και επαναφορά της τιμής του
Η πρόσβαση στις μεταβλητές copilot είναι δυνατή από οποιοδήποτε θέμα και τιμή της μεταβλητής copilot που έχει εκχωρηθεί παραμένει σε όλη την περίοδο λειτουργίας.
Η τιμή απαλείφεται μόνο όταν γίνεται ανακατεύθυνση του χρήστη copilot στο θέμα συστήματος Ξεκινήστε από την αρχή ή όταν ο χρήστης ενεργοποιεί το θέμα απευθείας (για παράδειγμα, πληκτρολογώντας Ξεκινήστε από την αρχή). Σε αυτή την περίπτωση θα γίνει επαναφορά όλων των μεταβλητών copilot και δεν θα υπάρχουν τιμές.
Ορισμός της τιμής μιας μεταβλητής copilot από εξωτερικές πηγές
Μπορείτε να ορίσετε μια μεταβλητή copilot για να προετοιμαστεί με μια εξωτερική προέλευση. Αυτό επιτρέπει στο copilot να ξεκινήσει τη συνομιλία με κάποιο περιβάλλον.
Για παράδειγμα, ένας πελάτης δημιουργεί μια συνομιλία copilot μέσω της τοποθεσίας Web σας και η τοποθεσία γνωρίζει ήδη το όνομα του πελάτη. Θα πρέπει να γνωρίζετε το όνομα του copilot πριν ξεκινήσετε τη συνομιλία και επίσης το copilot μπορεί να κάνει μια πιο ευφυή συνομιλία με τον πελάτη χωρίς να χρειάζεται να ζητήσει ξανά το όνομά του.
Ορισμός μεταβλητής copilot από εξωτερικές πηγές
Επιλέξτε οποιαδήποτε μεταβλητή στον καμβά σύνταξης.
Στο τμήμα παραθύρου Ιδιότητες μεταβλητής, στην ενότητα Χρήση, επιλέξτε το πλαίσιο ελέγχου Οι εξωτερικές προελεύσεις μπορούν να ορίσουν τιμές.
Μπορείτε να προσαρτήσετε τις μεταβλητές και τους ορισμούς τους αν απλώς ενσωματώσετε το copilot σε μια απλή σελίδα web ή μπορείτε να χρησιμοποιήσετε ένα <script>
μπλοκ κώδικα για να καλέσετε και να χρησιμοποιήσετε μεταβλητές μέσω προγραμματισμού.
Σημείωμα
Το όνομα της μεταβλητής στη συμβολοσειρά ερωτήματος πρέπει να είναι ίδιο με αυτό της μεταβλητής copilot, χωρίς το πρόθεμα copilot.
. Για παράδειγμα, μια μεταβλητή copilot copilot.UserName
θα πρέπει να αποδίδεται ως UserName=
.
Στα παραδείγματα που περιγράφονται εδώ, γίνεται μια απλή δήλωση για τις μεταβλητές. Σε ένα σενάριο παραγωγής, μπορείτε να μεταβιβάσετε στην παράμετρο ερωτήματος ή τον ορισμό μεταβλητής μια άλλη μεταβλητή που έχει ήδη αποθηκεύσει το όνομα χρήστη (για παράδειγμα, εάν έχετε το όνομα χρήστη από μια δέσμη ενεργειών εισόδου).
Για να προσθέσετε τη μεταβλητή σε ένα ενσωματωμένο copilot
Προσαρτήστε τις μεταβλητές και τους ορισμούς τους στη διεύθυνση URL του copilot ως παραμέτρους συμβολοσειράς ερωτήματος (με τη μορφή του botURL?variableName1=variableDefinition1&variableName2=variableDefinition2
), για παράδειγμα:
Το όνομα της παραμέτρου έχει διάκριση πεζών-κεφαλαίων. Αυτό σημαίνει ότι το username=Renata
θα λειτουργήσει σε αυτό το παράδειγμα.
Για να προσθέσετε τη μεταβλητή σε έναν προσαρμοσμένο καμβά
Στην ενότητα <script>
στη σελίδα όπου έχετε το copilot, καθορίστε τις μεταβλητές ως εξής, αντικαθιστώντας το variableName1
για το όνομα της μεταβλητής χωρίς πρόθεμα copilot.
και το variableDefinition1
για τον ορισμό. Χωρίστε πολλές μεταβλητές με κόμματα ,
.
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);
});
Στην ενότητα <script>
, καλέστε το store
όταν ενσωματώσετε το copilot σας όπως στο παρακάτω παράδειγμα, όπου το store
καλείται ακριβώς πάνω από το σημείο που καλείται το styleOptions
( θα πρέπει να αντικαταστήσετε το BOT_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));
Διαγραφή μεταβλητών copilot
Όταν καταργείτε μια μεταβλητή copilot που χρησιμοποιείται σε άλλα θέματα, οι αναφορές σε αυτήν τη μεταβλητή στα θέματα θα επισημαίνεται ως Unknown
.
Θα λάβετε μια προειδοποίηση σχετικά με τη διαγραφή της μεταβλητής copilot για να επιβεβαιώσετε τη λειτουργία.
Οι κόμβοι που περιέχουν αναφορές στη διαγραμμένη μεταβλητή copilot θα σας πουν ότι περιέχουν μια άγνωστη μεταβλητή.
Τα θέματα με κόμβους που περιέχουν αναφορές σε διαγραμμένες μεταβλητές copilot ενδέχεται να σταματήσουν να λειτουργούν. Βεβαιωθείτε ότι έχετε καταργήσει ή διορθώσει όλα τα θέματα που χρησιμοποιούσαν τη διαγραμμένη μεταβλητή πριν από τη δημοσίευση.
Ανάλογα με τη ρύθμιση του ελέγχου ταυτότητας του copilot, θα έχετε στη διάθεσή σας ένα σύνολο μεταβλητών copilot που να σχετίζεται με την υπηρεσία παροχής ελέγχου ταυτότητας. Για λεπτομέρειες σχετικά με το σύνολο των μεταβλητών που είναι διαθέσιμες και τον τρόπο χρήσης τους, δείτε το θέμα τεμηρίωσης Προσθήκη ελέγχου ταυτότητας τελικού χρήστη σε θέματα.