Mimari ve akış
reactive.chat bileşenlerinin birlikte çalışması: tarayıcıda yükleyici, çekirdek ve modüller; sohbet sunucusu, hesap, sunucu API’si, webhook’lar ve müşteri verileri. Sayfa görüntülemeden yanıta kadar işlem sırası.
Bileşenler
Ziyaretçilerinizin tarayıcısında:
- loader.js – birkaç kilobaytlık küçük bir yükleyici. Yapılandırmayı okur, onayı kontrol eder, son konumunda bir yer tutucu sohbet düğmesi çizer (yerleşim kayması olmaz) ve komut kuyruğuyla
window.ReactiveChatoluşturur. Başka bir şey yapmaz. - Çekirdek (
core.<hash>.js) – sohbet penceresi, bağlantı, kişisel verilerin maskelenmesi, kurallar. Yalnızca bir tetikleyici etkinleştiğinde yüklenir: tarayıcı boşta kaldığında, sohbet düğmesine fare veya parmak geldiğinde, bir API komutunda ya da MousePlayer’dan hayal kırıklığı sinyali geldiğinde. Çoğu ziyaretçi sohbeti hiç açmaz ve dolayısıyla çekirdeği de hemen yüklemez. - Gerektiğinde modüller – ürün turları, gizlilik metni, mağaza özellikleri; her biri yalnızca gerektiğinde.
- Yalıtım – her şey kapalı bir shadow DOM içinde bulunur; stiller oluşturulabilir stil sayfalarıyla uygulanır, satır içi betik,
evalveya çerez yoktur.
reactive.chat tarafında:
- Dağıtım,
https://cdn.reactive.chat/adresinde – yükleyici, çekirdek, modüller. - Sohbet sunucusu,
wss://ws.reactive.chat/rc_wss/adresinde –rc.v1protokolüyle WebSocket; HTTP yedeği, çevrimdışı form, yüklemeler, gizlilik metni ve Smart Answer için aynı adreshttps://ile kullanılır. - Hesap,
https://reactive.chat/appadresinde – proje ayarları, tasarım, bilgi tabanı, ekibinizin temsilci paneli. - Sunucu API’si,
https://reactive.chat/v1/adresinde – arka uç sisteminiz için REST ve MCP.
Sizin tarafınızda (isteğe bağlı):
- Arka uç sisteminiz oturum açmış kullanıcıların kimliğini imzalar, müşteri verisi isteğini yanıtlar, webhook’ları alır ve sunucu API’sini çağırır.
- Proxy’niz her şeyi size ait bir alt alan adı üzerinden sunar (Özel alan adı).
Sayfa görüntüleme akışı
- Tarayıcı
loader.jsdosyasını yükler (eşzamansızdır, hiçbir şeyi engellemez). - Yükleyici
data-rc-*,ReactiveChatSettingsve kuyruktakibootçağrılarını okur, site anahtarını ve onayı kontrol eder ve yer tutucuyu çizer. - Bir tetikleyici etkinleşir; yükleyici çekirdeği aynı dizinden yükler.
- Çekirdek yer tutucuyu ve kuyruğu devralır, kuyruktaki komutları sırayla işler.
- Bağlantıyı açar; site anahtarı, kimlikler, dil, onay, varsa imzalı kimlik ve sayfa bağlamıyla
initgönderir. - Sunucu kaynağı, projeyi ve kimliği kontrol edip
init_okile yanıtlar: hesaptaki tasarım ve metinler, kurallar, özellikler, sınırlar, o ana kadarki sohbet geçmişi. - Widget hazırdır (
readyolayı). Tek sayfalı uygulamalardaki sayfa değişikliklerini kendisi bildirir.
Bir sorunun akışı
- Ziyaretçi yazar; kişisel veriler tarayıcıda maskelenir ve mesaj benzersiz bir kimlik taşır.
- Sunucu mesajı saklar (tekrarları kimliğinden tanır), yeniden maskeler ve bir yankıyla onaylar.
- Yapay zekâ asistanı bilgi tabanınızda arar; doğrulanmış kullanıcının sipariş sorularında ayrıca müşteri verisi uç noktasını kullanır ve yanıtı akış halinde gönderir. Ekibinize ne zaman aktaracağı hesabınızda ayarlanır (Kılavuz).
- Paralel olarak olaylar bir kuyruk üzerinden webhook’lara ve entegrasyonlara gider. Sohbet bunları asla beklemez.
Sürümler ve dağıtım
- loader.js adında sürüm numarası taşımaz ve güncellemelerde değiştirilir. Bu nedenle kopya olarak değil,
cdn.reactive.chatüzerinden (veya proxy’nizden) yerleştirin. - Çekirdek,
core.<hash>.jsolarak adlandırılır; hash içeriğinden gelir ve her yükleyici tam olarak kendi çekirdeğini bilir. Böylece yükleyici ve çekirdek her zaman eşleşir, çekirdek uzun süre önbelleğe alınabilir. - Yapılandırma (tasarım, metinler, kurallar, turlar) her bağlantıda sunucudan gelir. Hesabınızdaki değişiklikler yeni kod gerektirmez; kısa sürede etkili olur (ayara bağlı olarak bir dakikaya kadar).
- Protokol sürümü
1değerindedir. Yeni alanlar eklenir; bilinmeyenler yok sayılır. ReactiveChat.version, çekirdek yüklendiğinde sürümünü verir.
Neyi nerede ayarlarsınız?
- Hesabınızda: görünüm, metinler, ana ekran, kurallar, turlar, A/B testleri, YZ kişiliği (Özelleştirme), ekip, bilgi tabanı, kanallar (Kılavuz).
- Script etiketinde: sayfa bazında geçerli olacaklar (Script etiketi başvurusu).
- Sayfa betiğinizde: kimlik, bağlam, kendi öğelerinizden açma (JavaScript API).
- Sunucunuzda: imzalar, müşteri verileri, webhook’lar, API (Kimlik, Müşteri verileri, Webhook’lar, Sunucu API’si).
Sonraki: Hızlı başlangıç
Huling na-update: