Megjegyzés
Az oldalhoz való hozzáféréshez engedély szükséges. Megpróbálhat bejelentkezni vagy módosítani a címtárat.
Az oldalhoz való hozzáféréshez engedély szükséges. Megpróbálhatja módosítani a címtárat.
VONATKOZIK: SDK v4
Amikor létrehoz egy botot az Azure-ral, a webes csevegési csatorna automatikusan konfigurálva lesz az Ön számára. A webes csevegési csatorna tartalmazza a Webes csevegés vezérlő, amely lehetővé teszi a felhasználók számára, hogy közvetlenül egy weblapon kommunikáljanak a robottal.
A webes csevegési csatorna mindent tartalmaz, amire szüksége van a webes csevegés vezérlő weblapba való beágyazásához. Ehhez lekérheti a robot titkos kulcsát, majd beágyazhatja a vezérlőt egy weblapra.
Előfeltételek
- Egy Azure-fiók. Ha még nem rendelkezik ilyen fiókkal, a kezdés előtt hozzon létre egy ingyenes fiókot.
- Az Azure-ban közzétett meglévő robot.
A webes csevegés biztonsági szempontjai
Ha Azure AI Bot Service-hitelesítést használ a webes csevegéssel, figyelembe kell vennie néhány fontos biztonsági szempontot. További információ: Biztonsági szempontok.
A Webes csevegés vezérlő beágyazása weblapra
Az alábbi képen a webes csevegés vezérlőelem beágyazásakor érintett összetevők láthatók egy weblapon.
Fontos
A közvetlen vonallal (továbbfejlesztett hitelesítéssel) csökkentheti a biztonsági kockázatokat, amikor a webes csevegés vezérlőjével csatlakozik egy robothoz. További információ: Direct Line továbbfejlesztett hitelesítés.
A robot titkos kulcsának lekérése
- Menjen a Azure portal oldalra, és nyissa meg a botot.
- A Beállításokterületen válassza Csatornáklehetőséget. Ezután válassza a Webes csevegéslehetőséget.
- Megnyílik a webcsevegés oldal. A Webhelyeklistájából válassza ki az alapértelmezett webhely.
- Másolja az első Titkos kulcs és a Beágyazási kód.
Fejlesztési beágyazási lehetőségek
1. lehetőség – Cserélje le a titkát egy tokenre, és hozza létre a beágyazást
Ez egy jó lehetőség, ha:
- Kiszolgálók közötti kérést hajthat végre a webes csevegés titkosító kulcsának ideiglenes tokenre való cseréjére.
- szeretné megnehezíteni más fejlesztők számára, hogy beágyazhassák a robotot a webhelyükre
Ez a lehetőség nem akadályozza meg teljesen a többi fejlesztőt abban, hogy beágyazza a robotot a webhelyeikbe, de ez megnehezíti számukra ezt.
A titkos kulcs cseréje egy tokenre és a beágyazás generálása:
Adjon ki egy GET kérést a tokencsere URL-címére, és adja át a webes csevegés titkos kódját a
Authorization
fejlécen keresztül. AAuthorization
fejléc aBotConnector
sémát használja, és tartalmazza a titkos kódját.- Globális robot esetén a tokencsere URL-címe
https://webchat.botframework.com/api/tokens
. - Regionális robot esetén adja meg a következő URL-címet a kiválasztott régió szerint:
Régió Token Kicserélési URL Európa https://europe.webchat.botframework.com/api/tokens India https://india.webchat.botframework.com/api/tokens - Globális robot esetén a tokencsere URL-címe
A GET kérésre adott válasz tartalmazza a token-t (idézőjelek között), amely felhasználható a webes csevegés vezérlőjének megjelenítésével egy beszélgetés elindítására. A jogkivonat csak egy beszélgetésre érvényes; Egy másik beszélgetés indításához létre kell hoznia egy új jogkivonatot.
A webes csevegési csatornáról korábban másolt beágyazott beágyazott kódon belül módosítsa a
s=
paramétertt=
, és cserélje le a "YOUR_SECRET_HERE" kifejezést a jogkivonatra.
Jegyzet
A tokenek automatikusan megújulnak, mielőtt lejárnának.
Példakérések
Globális robot esetén:
requestGET https://webchat.botframework.com/api/tokens
Authorization: BotConnector YOUR_SECRET_HERE
Regionális robot esetén:
requestGET
## Europe region
https://europe.webchat.botframework.com/api/tokens
## India region
https://india.webchat.botframework.com/api/tokens
Authorization: BotConnector YOUR_SECRET_HERE
Jegyzet
Az Azure Government esetében a tokencsere URL-címe eltérő.
requestGET https://webchat.botframework.azure.us/api/tokens
Authorization: BotConnector YOUR_SECRET_HERE
Példa válasz
"IIbSpLnn8sA.dBB.MQBhAFMAZwBXAHoANgBQAGcAZABKAEcAMwB2ADQASABjAFMAegBuAHYANwA.bbguxyOv0gE.cccJjH-TFDs.ruXQyivVZIcgvosGaFs_4jRj1AyPnDt1wk1HMBb5Fuw"
Példa HTML-kódra
<!DOCTYPE html>
<html>
<body>
<iframe id="chat" style="width: 400px; height: 400px;" src=''></iframe>
</body>
<script>
var xhr = new XMLHttpRequest();
xhr.open('GET', "https://webchat.botframework.com/api/tokens", true);
xhr.setRequestHeader('Authorization', 'BotConnector ' + 'YOUR SECRET HERE');
xhr.send();
xhr.onreadystatechange = processRequest;
function processRequest(e) {
if (xhr.readyState == 4 && xhr.status == 200) {
var response = JSON.parse(xhr.responseText);
document.getElementById("chat").src="https://webchat.botframework.com/embed/<botname>?t="+response
}
}
</script>
</html>
2. lehetőség – A webes csevegés vezérlő beágyazása a webhelyre a titkos kód használatával
Ezt a lehetőséget akkor használhatja, ha azt szeretné, hogy más fejlesztők egyszerűen beágyazhassák a robotot a webhelyükre.
Figyelmeztetés
Ezzel a beállítással a webes csevegési csatorna titkos kulcsa megjelenik az ügyfél weblapján. Ezt a lehetőséget csak fejlesztési célokra használhatja, éles környezetben nem.
A robot beágyazása egy weblapra a Embedded-kódtitkos kódjának megadásával:
Másolja ki a Embedded-kód az Azure Portal webes csevegési csatornájából (a fenti A robot titkos kulcsának lekérése című cikkben).
Az Beágyazott kódbelül cserélje le a "YOUR_SECRET_HERE" szót az ugyanazon lapról másolt titkos kulcs értékre.
Gyártási beágyazási lehetőség
Rejtse el a titkos kódot, cserélje le a titkos kódját egy jogkivonatra, és hozza létre a beágyazást
Ez a beállítás nem teszi elérhetővé a webes csevegési csatorna titkos kulcsát az ügyfélweblapon.
Az ügyfélnek meg kell adnia egy tokent a robottal való beszélgetéshez. A titkos kódok és a jogkivonatok közötti különbségekről, valamint a titkos kódok használatával járó kockázatokról a Közvetlen vonalas hitelesítéscímű témakörben olvashat.
Az alábbi ügyfél weboldal bemutatja, hogyan használhat egy tokent a webes csevegéssel. Ha regionális vagy Azure Gov-robottal rendelkezik, módosítsa az URL-címeket a nyilvánosságtól a kormányzatiig.
<!DOCTYPE html>
<html>
<head>
<script src="https://cdn.botframework.com/botframework-webchat/latest/webchat.js"></script>
</head>
<body>
<h2>Web Chat bot client using Direct Line</h2>
<div id="webchat" role="main"></div>
<script>
// "styleSet" is a set of CSS rules which are generated from "styleOptions"
const styleSet = window.WebChat.createStyleSet({
bubbleBackground: 'rgba(0, 0, 255, .1)',
bubbleFromUserBackground: 'rgba(0, 255, 0, .1)',
botAvatarImage: '<your bot avatar URL>',
botAvatarInitials: 'BF',
userAvatarImage: '<your user avatar URL>',
userAvatarInitials: 'WC',
rootHeight: '100%',
rootWidth: '30%'
});
// After generated, you can modify the CSS rules
styleSet.textContent = {
...styleSet.textContent,
fontFamily: "'Comic Sans MS', 'Arial', sans-serif",
fontWeight: 'bold'
};
const res = await fetch('https:<YOUR_TOKEN_SERVER/API>', { method: 'POST' });
const { token } = await res.json();
window.WebChat.renderWebChat(
{
directLine: window.WebChat.createDirectLine({ token }),
userID: 'WebChat_UserId',
locale: 'en-US',
username: 'Web Chat User',
locale: 'en-US',
// Passing 'styleSet' when rendering Web Chat
styleSet
},
document.getElementById('webchat')
);
</script>
</body>
</html>
Példák tokenek létrehozására: