ให้ช่วยอะไรได้บ้าง

แจ้งเรื่องสั้น ๆ เราจะติดต่อกลับทางอีเมล

This site is protected by reCAPTCHA and the Google Privacy Policy and Terms of Service apply.
ไปหน้าหลัก

Teknik ayrıntılar

Protokol, hata kodları, erişilebilirlik ve her vaadin arkasındaki durum.

Bu sayfa ayrıntı isteyenler içindir. Buradaki her şey ölçülmüş veya kaynaktan okunmuştur; hiçbir şey tahmin değildir.

Widget nasıl yüklenir?

İki aşama vardır. Önce düğmeyi çizen ve başka hiçbir şey yapmayan küçük yükleyici. Sohbetin kendisi yalnızca beş tetikleyiciden biri çalıştığında alınır: tarayıcı boşta olduğunda (en geç üç saniye sonra), düğmede fare veya parmak olduğunda, sayfadan komut geldiğinde, MousePlayer hayal kırıklığı sinyali geldiğinde veya örneğin service worker’ınızdan anlık bildirimle yönlendirme geldiğinde.

Nedeni vardır: çoğu ziyaretçi sohbeti hiç açmaz. Onlar için sayfa yüklemesini geciktirmemelidir; hangi tetikleyicilerin geçerli olduğu script etiketinde ayarlanır.

Karşılaştırma için, bunlar da ölçülmüş ve üçü de brotli ile sıkıştırılmıştır: Crisp yükleyicisi 2.876 B, Intercom yükleyicisi 3.161 B. Biz 3.069 B ile aradayız; kat kat daha küçük değiliz. Aksini iddia eden ölçmemiştir.

Sitenizi rahatsız etmez

Widget kapalı shadow DOM içinde yer alır. * { box-sizing: border-box } ayarlasanız veya her şeyi yeniden tanımlayan CSS çatısı kullansanız bile stilleriniz ona, onun stilleri sayfanıza ulaşamaz.

Konsolda tek mesaj olmadan sıkı Content Security Policy altında çalışır: eval, web yazı tipi veya izleme pikseli yoktur. Stillerini style-src kapsamına girmeyen oluşturulabilir stil sayfalarıyla ayarlar. Bu nedenle düğme, sohbet penceresi, ürün turları ve sitenizdeki temsilci paneli unsafe-inline gerektirmez; style-src 'self' ve hatta style-src 'none' altında ölçülmüştür: sıfır ihlal, tam biçimlendirme. Güncel Chromium’da ölçülmüştür; oluşturulabilir stil sayfaları olmayan eski tarayıcılar (16.4 öncesi Safari gibi) <style> öğesine döner; sıkı politika bunu engeller.

Başka sunuculara sıfır istek. Her şey reactive.chat üzerinden veya özel alan adınızla kendi adresinizden gelir; logo ve avatarlar gibi görseller kendinizin verdiği adreslerden gelir.

Protokol

Bağlantı WebSocket kullanır; ağ WebSocket’e izin vermiyorsa normal HTTPS istekleri (server-sent events veya uzun yoklama) kullanır. Protokol sürümlüdür ve 31 hata kodu tanımlar; 26’sı widget, kalanı temsilci paneli ve site içi arama içindir. Her birinin belirlenmiş istemci yanıtı vardır (hemen yeniden dene, bekledikten sonra yeniden dene, yeniden bağlandıktan sonra dene, yeniden deneme); bazılarında kapanış kodu da bulunur. Listede olmayan hata geçici sunucu hatası gibi ele alınır: bekledikten sonra yeniden denenir; beş denemeden sonra mesaj iletilmemiş sayılır ve tekrar gönderilebilir. Sonsuz döngü yoktur.

Artan beklemeyle yeniden bağlanma. Bağlantı kesilirse mesajlar arabelleğe alınır ve bağlantı döner dönmez gönderilir. Her mesaj bir kimlik taşır; sunucu tekrarları tanır ve iki kez saklamaz.

Erişilebilirlik

WCAG 2.2 AA temel alınarak geliştirilmiştir:

Kontrast hesaplanır

Bir renk verirsiniz. Yüzey tam olarak o rengi alır. Üzerindeki metin, normal metin için WCAG gereksinimi olan 4,5:1 oranına ulaşana kadar değiştirilir.

İki tema ve üç eşleşmede 178 renk üzerinde, yani 1.068 veri noktasında ölçülmüştür: hiçbiri 4,5:1 altında değildir; en kötü değer 4,50:1.

Diğer sağlayıcılardan farkı budur: oralarda widget kimsenin okuyamayacağı hâle gelecek kadar ayarlanabilir.

Kişisel veriler

Maskeleme iki yerde yapılır: makineden herhangi bir şey çıkmadan önce ziyaretçinin tarayıcısında ve herhangi bir şey saklanmadan önce sunucuda tekrar. Kart numaraları (Luhn kontrolüyle), IBAN’lar, e-posta adresleri, telefon, vergi ve kimlik numaraları tanınır. Sipariş ve müşteri numaralarına dokunulmaz.

İki yerde, çünkü biri yeterli değildir: tarayıcıdaki kapatılabilir; sunucudaki yalnızca ulaşanı görür.

Kurallar

Widget’ın ne zaman sesleneceği, koddaki koşulda değil bildirimsel kural listesinde tanımlanır. Varsayılan altı kural gelir (sayfada bekleme, öfke tıklaması, JavaScript hatası, takılı kalınan form, satın alma niyeti, ödeme sayfasından ayrılma); öfke tıklaması, takılı kalınan form ve satın alma niyeti yalnızca MousePlayer ile birlikte algılanır. Kendi kurallarınız hesabınızdan eklenebilir. Free planında proje başına bir etkin yönlendirme uygulanır.

Fark pratiktir: kural değiştirmek dağıtım değil, hesabınızda ayar değiştirmektir.

Entegrasyonlar

Webhook’lar ve Slack tamamlanmıştır. 30’dan fazla başka hizmet için bağlantı hazırdır; çoğu benzetilmiş karşı taraflarla test edilmiştir, ancak gerçek hizmetle hiç çalıştırılmamıştır. Hesabınızdaki entegrasyon sayfası bunları bu şekilde işaretler.

Sunucu API’si (REST ve MCP) sohbetleri, mesajları, projeleri, ziyaretçileri, olayları ve kuralları okur; mesaj ve olay yazar, webhook kaydeder. Ziyaretçi listesi ve MCP proje başına kapatılabilir.

Her entegrasyon devre kesicili kuyruktan geçer: üçüncü taraf takılırsa tekrarlanan hatalardan sonra bir süre atlanır. Sohbet mesajı bundan dolayı asla bekletilmez; bu katmandaki en önemli kural budur.

Tamamlanmamış olanlar

Entegrasyon sırasında ortaya çıkmaması için:

Dokümantasyonda daha fazlası

Widget, sunucu ve bağlantının birlikte çalışması: Mimari ve akış. Bağlanma, HTTP yedeği ve yeniden bağlanma: Taşıma. Tüm bölümler: dokümantasyon.

อัปเดตล่าสุด: