Web Sohbeti genel bakış
ŞUNLAR IÇIN GEÇERLIDIR: SDK v4
Bu makale, Bot Framework Web Sohbeti bileşeninin ayrıntılarını içerir. Bot Framework Web Sohbeti bileşeni, Bot Framework V4 SDK'sı için yüksek oranda özelleştirilebilir bir web tabanlı istemcidir. Bot Framework SDK v4, geliştiricilerin konuşmayı modellemesine ve gelişmiş bot uygulamaları oluşturmasına olanak tanır.
Web Sohbeti v3'ten v4'e geçiş yapmak istiyorsanız geçiş bölümüne atlayın.
Web Sohbeti kullanmaya başlama
İlk olarak Azure AI Bot Hizmeti kullanarak bir bot oluşturun. Bot oluşturulduktan sonra Azure portalında bot Web Sohbeti gizli dizisini edinmeniz gerekir. Ardından gizli diziyi kullanarak bir belirteç oluşturun ve Web Sohbeti iletin.
Aşağıdaki örnekte web sitesine Web Sohbeti denetimi ekleme gösterilmektedir.
<!DOCTYPE html>
<html>
<body>
<div id="webchat" role="main"></div>
<script src="https://cdn.botframework.com/botframework-webchat/latest/webchat.js"></script>
<script>
// Set style options.
const styleOptions = {
botAvatarInitials: 'BF',
userAvatarInitials: 'WC'
};
window.WebChat.renderWebChat(
{
directLine: window.WebChat.createDirectLine({
token: 'YOUR_DIRECT_LINE_TOKEN'
}),
userID: 'YOUR_USER_ID',
username: 'Web Chat User',
locale: 'en-US',
styleOptions
},
document.getElementById('webchat')
);
</script>
</body>
</html>
userID
,username
,locale
,botAvatarInitials
veuserAvatarInitials
tüm isteğe bağlı parametreleri yöntemine geçirmekrenderWebChat
için. Stil hakkında daha fazla bilgi için bkz . Neden styleOptions?. Web Sohbeti özellikleri hakkında daha fazla bilgi edinmek için Web Sohbeti API Başvurusu bölümüne bakın.
Ayrıca, botunuz bölgesel bir botsa (bot kaynağınız "genel" dışında bir bölgedeyse), bunu yöntemdeki ek
domain
bir alanda ayarlayarak bölgesel doğrudan çizgi URL'siniwindow.WebChat.createDirectLine()
belirtmeniz gerekir. Etki alanını, seçtiğiniz bölge için uygun olan veya olarakeurope.webchat.botframework.com
unitedstates.webchat.botframework.com
india.webchat.botframework.com
belirtin. Veri yerleşimi hakkında bilgi için Avrupa'nın Çağrısını Yanıtlama: AB Verilerini AB'de Depolama ve İşleme bölümüne bakın.
JavaScript ile tümleştirme
Web Sohbeti, JavaScript veya React kullanarak mevcut web sitenizle tümleştirmek için tasarlanmıştır. JavaScript ile tümleştirme size stil ve özelleştirilebilirlik sağlar. Daha fazla bilgi için bkz. Web Sohbeti web sitenizle tümleştirme.
En sık kullanılan özellikleri içeren tam ve tipik botframework-webchat
paketi kullanabilirsiniz.
<!DOCTYPE html>
<html>
<body>
<div id="webchat" role="main"></div>
<script src="https://cdn.botframework.com/botframework-webchat/latest/webchat.js"></script>
<script>
window.WebChat.renderWebChat(
{
directLine: window.WebChat.createDirectLine({
token: 'YOUR_DIRECT_LINE_TOKEN'
}),
userID: 'YOUR_USER_ID'
},
document.getElementById('webchat')
);
</script>
</body>
</html>
Tam Web Sohbeti paketinin çalışma örneğine bakın.
React ile tümleştirme
Tam özelleştirilebilirlik için React'i kullanarak Web Sohbeti bileşenlerini yeniden derleyebilirsiniz.
Npm'den üretim derlemesini yüklemek için komutunu çalıştırın npm install botframework-webchat
.
import { DirectLine } from 'botframework-directlinejs';
import React from 'react';
import ReactWebChat from 'botframework-webchat';
export default class extends React.Component {
constructor(props) {
super(props);
this.directLine = new DirectLine({ token: 'YOUR_DIRECT_LINE_TOKEN' });
}
render() {
return (
<ReactWebChat directLine={ this.directLine } userID='YOUR_USER_ID' />
element
);
}
}
Web Sohbeti GitHub
master
dalı ile eşitlenmiş bir geliştirme derlemesi yüklemek için de komutunu çalıştırabilirsiniznpm install botframework-webchat@master
.
React aracılığıyla işlenen Web Sohbeti çalışma örneğine bakın.
İpucu
React ve jsx kullanmaya yeni başladıysanız Reacts Başlarken sayfasında eğitim bulabilirsiniz.
Web Sohbeti kullanıcı arabirimini özelleştirme
Web Sohbeti, kaynak kodu çatallamadan özelleştirilebilir olacak şekilde tasarlanmıştır. Aşağıdaki tabloda, Web Sohbeti farklı şekillerde içeri aktarırken ne tür özelleştirmeler yapabileceğiniz özetlenmiştir. Bu liste kapsamlı değil.
Özelleştirme | CDN paketi | React |
---|---|---|
Renkleri değiştirme | ✔️ | ✔️ |
Boyutları değiştirme | ✔️ | ✔️ |
CSS stillerini güncelleştirme/değiştirme | ✔️ | ✔️ |
Olayları dinleme | ✔️ | ✔️ |
Barındırma web sayfasıyla etkileşim kurma | ✔️ | ✔️ |
Özel işleme etkinlikleri | ✔️ | |
Özel işleme ekleri | ✔️ | |
Yeni kullanıcı arabirimi bileşenleri ekleme | ✔️ | |
Tüm kullanıcı arabirimini yeniden derleme | ✔️ |
Özelleştirme hakkında daha fazla bilgi edinmek için Web Sohbeti özelleştirme hakkında daha fazla bilgi edinin.
Not
Content Delivery Networks (CDN) hakkında bilgi için bkz. İçerik teslim ağları (CDN'ler)
Web Sohbeti v3'ten v4'e geçiş
v3'ten v4'e geçiş yaparken geçişin izleyebilecekleri üç olası yol vardır. Başlangıç senaryonuzu aşağıda listelenen senaryoyla karşılaştırın.
- içine eklenmiş
<iframe>
bir Web Sohbeti denetimini yükseltmek için ekleme paketinin Web Sohbeti deposundaki belgelere bakın. - Çok az veya hiç özelleştirme içermeyen bir Web Sohbeti denetimini yükseltmek için, işlemi açıklayan Web Sohbeti 00.migration/a.v3-to-v4 örneğini gözden geçirin.
- Yüksek oranda özelleştirilmiş bir Web Sohbeti çatallı sürümünü yükseltmek için Web Sohbeti geçiş kılavuzuna bakın.
Web Sohbeti API Başvurusu
Web Sohbeti React Bileşeninize (<ReactWebChat>
) veya renderWebChat()
yönteminize geçirebilecek çeşitli özellikler vardır. Kullanılabilir özelliklerin kısa bir açıklaması için bkz. Web Sohbeti API Başvurusu.
Ayrıca, ile packages/component/src/Composer.js
başlayan kaynak kodunu incelemekte çekinmeyin.
Tarayıcı uyumluluğu
Web Sohbeti Chrome, Edge ve FireFox gibi modern tarayıcıların en son 2 sürümünü destekler. Internet Explorer 11'de Web Sohbeti ihtiyacınız varsa ES5 paketine ve tanıtımına bakın.
- Web Sohbeti Sürüm 11'den eski Internet Explorer'ı desteklemez
- ES5 dışı örneklerde gösterildiği gibi özelleştirme Internet Explorer için desteklenmez. IE11 modern olmayan bir tarayıcı olduğundan ES6'yı desteklemez ve ok işlevleri ve modern vaatler kullanan birçok örneğin el ile ES5'e dönüştürülmesi gerekir. Uygulamanız için ağır özelleştirmeye ihtiyacınız varsa, uygulamanızı Google Chrome veya Edge gibi modern bir tarayıcı için geliştirmenizi kesinlikle öneririz.
- Web Sohbeti IE11 (ES5) örneklerini desteklemeye yönelik bir planı yoktur.
- Diğer örneklerimizi IE11'de çalışmak üzere el ile yeniden yazmak isteyen müşteriler için, gibi
babel
polifill'leri ve çeviricileri kullanarak kodu ES6+'dan ES5'e dönüştürmeye bakmanızı öneririz.
Web Sohbeti'nin en son bitleriyle test etme
Yayınlanmamış özellikleri test etme işlemi şu anda yalnızca MyGet paketlemesi aracılığıyla kullanılabilir.
Henüz yayımlanmamış bir özelliği veya hata düzeltmesini test etmek istiyorsanız, resmi npmjs akışının aksine Web Sohbeti paketinizi Web Sohbeti günlük akışına yönlendirmek istersiniz.
Şu anda MyGet akışımıza abone olarak Web Sohbeti sıkıntılarına erişebilirsiniz. Bunu yapmak için projenizdeki kayıt defterini güncelleştirmeniz gerekir. Bu değişiklik geri döndürülebilir ve yönergelerimiz resmi sürüme aboneliğe nasıl geri dönüleceğini içerir.
En son bitlere abone olma myget.org
Bunu yapmak için paketlerinizi ekleyebilir ve ardından projenizin kayıt defterini değiştirebilirsiniz.
- proje bağımlılıklarınızı Web Sohbeti dışında ekleyin.
- Projenizin kök dizininde bir
.npmrc
dosya oluşturun - Dosyanıza aşağıdaki satırı ekleyin:
registry=https://botbuilder.myget.org/F/botframework-webchat/npm/
- Proje bağımlılıklarınıza Web Sohbeti ekleme
npm i botframework-webchat --save
- 'nizde
package-lock.json
, işaret edilen kayıt defterleri artık MyGet'tır. Web Sohbeti projesinde, MyGet olmayan paketlerinpmjs.com
öğesine yönlendiren yukarı akış kaynak proxy'si etkindir.
Resmi sürüme yeniden abone ol npmjs.com
Yeniden abonelik için kayıt defterinizi sıfırlamanız gerekir.
- Sildiğiniz
.npmrc file
- Kökünüzü silme
package-lock.json
- Dizininizi
node_modules
kaldırma - Paketlerinizi şu şekilde yeniden yükleyin:
npm i
- içinde
package-lock.json
kayıt defterleri yeniden işaret ediyorhttps://npmjs.com/
.
Katkıda
Projenin nasıl derlenmesiyle ilgili ayrıntılar için Katkıda Bulunma sayfamıza ve Çekme İstekleri için depo yönergelerimize bakın.
Bu projede Microsoft Açık Kaynak Kullanım Şartları kabul edilmiştir. Daha fazla bilgi için Code of Conduct FAQ (Kullanım Kuralları Hakkında SSS) konusuna bakın veya sorularınızı ya da görüşlerinizi bildirmek için opencode@microsoft.com adresinden bize ulaşın.
Güvenlik Sorunlarını Bildirme
Güvenlik sorunları ve hataları, adresinden Microsoft Güvenlik Yanıt Merkezi'ne (MSRC) secure@microsoft.come-posta yoluyla özel olarak bildirilmelidir. Size 24 saat içerisinde yanıt verilecektir. Bazı nedenlerden dolayı bunu kullanmıyorsanız, özgün iletinizi aldığımızdan emin olmak için e-posta yoluyla takip edin. MSRC PGP anahtarı da dahil olmak üzere daha fazla bilgi Security TechCenter'nde bulunabilir.