Kılavuz🇬🇧 English

Başlarken

Bu kılavuz, SupportBot'u kendi sunucunuza kurmanızı ve ilk girişinizi yapmanızı adım adım anlatır.

SupportBot Nedir?

SupportBot, kendi sunucunuzda barındırdığınız (self-hosted) bir yapay zeka müşteri destek platformudur. Müşterileriniz sitenizdeki sohbet widget'ından yazar; Yapay Zeka Asistanı, Bilgi Merkezi'ndeki dokümanlara dayanarak yanıt verir; çözemediği konuşmaları bir insan temsilciye aktarır.

Platform üç katmandan oluşur:

  • Chatwoot — omnichannel gelen kutusu: temsilci ekranı, sohbet widget'ı, WhatsApp/Instagram gibi kanallar.
  • Dify — yapay zeka beyni: RAG (bilgi tabanından yanıt üretme) ve çoklu LLM sağlayıcı yönetimi.
  • SupportBot özel katmanı — bot köprüsü, haftalık raporlar ve bu kılavuzun konusu olan Yönetim Paneli (Insights Dashboard).

Siz operatör olarak günlük işlerinizin tamamına yakınını Yönetim Paneli ve Chatwoot üzerinden yürütürsünüz.

Gereksinimler

  • Docker ve Docker Compose kurulu bir VPS (Linux sunucu). Tüm servisler tek bir docker compose up komutuyla ayağa kalkar.
  • Bir alan adı (production için). Alt alan adları (chat., dashboard., ai. …) kök alan adınızdan otomatik türetilir; DNS'te bu alt alanları sunucunuza yönlendirmeniz yeterlidir. TLS sertifikaları Caddy tarafından otomatik alınır.
  • Yerel deneme (kendi bilgisayarınızda) için alan adı gerekmez; servisler localhost portlarından açılır.

Kurulum

1. Depoyu klonlayın

git clone <repo-url>
cd SupportBot

2. Ortam değişkenlerini hazırlayın

cp infra/.env.example infra/.env

infra/.env dosyasını bir editörle açın ve [ZORUNLU] etiketli, <...> yer tutuculu satırları doldurun. Şifre ve gizli anahtar üretmek için:

openssl rand -hex 32

En az doldurmanız gerekenler: POSTGRES_PASSWORD (ve 3 veritabanı URL'sindeki şifre), CHATWOOT_SECRET_KEY_BASE, CHATWOOT_WEBHOOK_SECRET, DIFY_SECRET_KEY, DIFY_INIT_PASSWORD, DIFY_SANDBOX_API_KEY, PLUGIN_DAEMON_KEY, PLUGIN_DIFY_INNER_API_KEY, ADMIN_API_KEY, ENCRYPTION_KEY, ADMIN_PASSWORD, N8N_BASIC_AUTH_PASSWORD, N8N_ENCRYPTION_KEY. Production'da ayrıca APP_DOMAIN değerine kendi alan adınızı yazın.

Önemli: ENCRYPTION_KEY, panelden girdiğiniz LLM API anahtarlarını şifreler. Bu anahtarı kaybederseniz kayıtlı API anahtarları kurtarılamaz; yedeğini güvenli bir yerde saklayın.

3. Servisleri başlatın

cd infra
docker compose up -d

4. Kurulumun bitmesini bekleyin — gerisi otomatik

İlk compose up, sıfır dokunuş (zero-touch) provizyon ile kurulumun tamamını kendisi yapar:

  • Veritabanı şemaları ve başlangıç verileri otomatik uygulanır.
  • Chatwoot hesabı, yönetici kullanıcısı, "Web Sohbet" gelen kutusu ve Agent Bot otomatik kurulur.
  • Dify hesabı, chatbot uygulaması, bilgi tabanı ve 13 model sağlayıcı eklentisi otomatik kurulur.
  • Üretilen tüm token ve kimlikler veritabanına yazılır — panelden anahtar toplayıp .env'e yapıştırmanız gerekmez.

docker compose ps çıktısında init- önekli servislerin Exited (0) görünmesi normaldir: bunlar işini bitirip kapanan tek seferlik kurulum görevleridir.

Alan Adları

Tüm alt alanlar infra/.env içindeki APP_DOMAIN değerinden türer (Cloudflare'de kayıt açma adımları için: DNS Kurulumu):

Adres Servis
chat.<alan-adınız> Chatwoot — temsilci gelen kutusu, widget, panel iframe host'u
dashboard.<alan-adınız> Yönetim Paneli (Insights Dashboard)
ai.<alan-adınız> Dify yönetim konsolu (basic auth + IP kısıtlı, iç ekip)
bot.<alan-adınız> Bot köprüsü (yalnızca webhook trafiği)
showcase.<alan-adınız> Showcase — test/demo platformu (basic auth)
status.<alan-adınız> Uptime Kuma — servis durumu sayfası
n8n.<alan-adınız> n8n iş akışları (opsiyonel, basic auth)

Yerel kurulumda karşılıkları: Yönetim Paneli http://localhost:3200, Chatwoot http://localhost:3100, Dify http://localhost:5002, Showcase http://localhost:3300.

İlk Giriş

  1. Yönetim Paneli — dashboard.<alan-adınız> (yerelde localhost:3200) adresini açın; infra/.env içindeki ADMIN_EMAIL / ADMIN_PASSWORD ile giriş yapın. İlk açılışta sizi Kurulum Sihirbazı karşılar: şirket bilgileri, asistan adı, marka renkleri, yapay zeka sağlayıcısı ve konuları birkaç adımda tanımlarsınız (istediğiniz adımı atlayıp daha sonra Ayarlar'dan değiştirebilirsiniz).
  2. Chatwoot — chat.<alan-adınız> adresini açın; yönetici hesabı provizyon sırasında aynı ADMIN_EMAIL / ADMIN_PASSWORD ile kurulmuştur.
  3. Panel, Chatwoot içine Dashboard App olarak gömülü çalışır: Chatwoot'a giriş yaptığınızda panel ayrı bir şifre sormaz (Chatwoot SSO). Doğrudan dashboard. adresine gittiğinizde ise yukarıdaki yerel giriş kullanılır.

Google ile Giriş (opsiyonel)

Hem Chatwoot hem Yönetim Paneli girişine "Google ile giriş" düğmesi ekleyebilirsiniz. Google Cloud tarafındaki kurulum (proje, onay ekranı, iki redirect URI) adım adım ayrı kılavuzda anlatılır: Google ile Giriş Kurulumu.

Panel girişinde ayrıca Şifremi unuttum bağlantısı ve şifresiz giriş vardır: "Giriş bağlantısı gönder" düğmesi e-postanıza tek tıklık, 15 dakika geçerli bir giriş bağlantısı yollar (sıfırlama bağlantısı 30 dakika geçerlidir; her iki gönderim de Ayarlar → Bildirimler'deki e-posta sağlayıcısını kullanır).

LLM Anahtarını Girin

Botun yanıt üretebilmesi için bir yapay zeka sağlayıcısının API anahtarı gerekir. Anahtar panelden girilir, .env dosyasından değil:

  1. Yönetim Paneli → Ayarlar → Model sekmesini açın (veya Kurulum Sihirbazı'ndaki "Yapay Zeka Sağlayıcısı" adımını kullanın).
  2. Sağlayıcıyı seçin (Anthropic, OpenAI, Google, Groq, DeepSeek, Mistral, xAI …), API anahtarınızı yapıştırın.
  3. Test Et ile bağlantıyı doğrulayın, ardından kaydedin.

Anahtarlar veritabanında AES-256-GCM ile şifreli saklanır. Anahtar girilmeden bot çalışmaz; girildikten sonra widget'tan yazılan ilk mesajla akışı test edebilirsiniz.

Sonraki Adımlar

  • Panel ekranlarını tanımak için: Yönetim Paneli
  • Widget'ı sitenize eklemek için: Panel → Entegrasyonlar ekranındaki hazır kodu kopyalayıp sayfanızın </body> kapanışından önce yapıştırın.
  • Botun bilgi dağarcığını doldurmak için: Panel → Bilgi Merkezi'ne dokümanlarınızı yükleyin.