Communications MVP
Summary
Communications, Ergene servisi icinde calisan ve sadece kullanicilara giden urun mesajlarini yoneten moduldur.
Bu modulun amaci:
- dogru kullaniciya
- dogru zamanda
- dogru urun mesajini
- kontrollu bir gonderim politikasi ile
Scope
In Scope
- announcement mesajlari
- recommendation mesajlari
- activation mesajlari
- follow-up mesajlari
- email kanali
- audience bazli hedefleme
- signal bazli tetikleme
- gonderim loglari
- basic frequency control
Out of Scope
- internal ops bildirimleri
- support/contact ekip raporlari
- genel amacli workflow builder
- serbest query builder
- cok adimli automation editor
- multi-channel orchestration
- SMS, push, Slack
Product Definition
Communications su soruya cevap verir:
“Bu kullaniciya su anda bir mesaj gitmeli mi? Gitmeli ise hangi mesaj gitmeli?”
Merkezde su alanlar vardir:
- kullanici kitlesi
- kullanici sinyali
- mesaj icerigi
- gonderim politikasi
- teslimat kaydi
Message Categories
Announcement
Yeni ozellik, yeni entegrasyon, yeni urun imkani gibi genel ama hedefli urun duyurulari. Ornek:- WordPress entegrasyonu yayinda
- yeni rapor ozelligi acildi
Recommendation
Kullanicinin mevcut durumuna gore onerilen aksiyonlar. Ornek:- siteniz WordPress, plugin kurarak kurulumu hizlandirabilirsiniz
- kurulum eksik, entegrasyonu tamamlayabilirsiniz
Activation
Kullanicinin basladigi ama tamamlamadigi bir urun adimini tamamlama odakli mesajlar. Ornek:- hesap olusturuldu ama site eklenmedi
- site eklendi ama baglanti tamamlanmadi
Follow-up
Daha once gonderilen bir mesaj veya sunulan firsat sonrasi tekrar temas. Ornek:- oneriyi gordunuz ama aksiyon almadiniz
- kurulumu baslatmadiniz
Core Model
Ilk surum icin onerilen temel entity’ler:CommunicationMessage
Bir kullaniciya gidebilecek mesajin tanimi. Alan onerisi:keynamecategorychannelsubjectTemplatebodyTemplatectaLabelctaUrlTemplatestatus
CommunicationAudience
Mesajin hedeflenecegi kullanici grubu. Alan onerisi:keynamedescriptionfiltersstatus
filters serbest query dili olmamali. Sinirli ve urun odakli alanlarla calismali.
CommunicationRule
Hangi mesajin hangi kitleye, hangi sinyal veya durumda gidecegini tanimlar. Alan onerisi:keynamemessageIdaudienceIdtriggerTypetriggerConfigpolicystatus
CommunicationDelivery
Gerceklesen veya atlanan gonderim kaydi. Alan onerisi:userIdmessageIdruleIdstatusreasonsentAtproviderMessageId
Trigger Types
V1 icin yalnizca 3 tetik tipi olsun:Manual
Dashboard uzerinden elle baslatilan gonderimler.Signal
Sistem tarafinda uretilen belirli bir kullanici sinyali ile calisir. Ornek:wordpress_detectedsetup_incompleterecommendation_available
State
Kullanicinin belirli bir urun asamasinda kalmis olmasina gore calisir. Ornek:- site yok
- entegrasyon yok
- son 7 gun pasif
Delivery Policy
V1’de politika mantigi sade olmali. Alan onerisi:sendOncecooldownHoursmaxSendCount
- ayni mesaj ayni kullaniciya kisa aralikta tekrar gitmemeli
- ayni kullanici ayni anda benzer akislara dusmemeli
- delivery kaydi karar motorunun parcasi olmali
Ergene Responsibilities
Ergene bu modulde su isleri yapar:- hedef kullanicilari bulur
- signal veya state kosulunu degerlendirir
- policy uygular
- uygun mesaji render eder
- email gonderimini tetikler
- delivery log kaydi olusturur
- dashboard UI mantigi
- serbest workflow tasarimi
- ic operasyon bildirimi
Dashboard Surface
Dashboard yalnizca yonetim yuzeyi olmalidir. V1 ekran onerisi:Messages
- mesaj listesi
- mesaj olusturma / duzenleme
- kategori ve durum gorunumu
Audiences
- hedef kitle listesi
- sade filtre kurallari
- tahmini kullanici sayisi
Rules
- hangi mesaj hangi kitleye hangi mantikla gidiyor
- aktif / pasif durumu
Deliveries
- gonderim gecmisi
- basarili / atlandi / basarisiz gorunumu
MVP Constraints
Bu ilk surumde bilincli olarak sadelik korunmali:- tek kanal: email
- tek servis: Ergene
- tek domain: user communications
- sinirli trigger tipi
- sinirli policy modeli
Example Flows
Flow 1: WordPress Recommendation
- audience: WordPress kullanicilari
- signal:
wordpress_detected - message: WordPress plugin recommendation
- policy: 1 kez gonder, 14 gun tekrar etme
Flow 2: Setup Activation
- audience: yeni kullanicilar
- state:
setup_incomplete - message: setup completion email
- policy: en fazla 2 kez gonder
Flow 3: Feature Announcement
- audience: ilgili ozelligi kullanabilecek kullanicilar
- trigger: manual
- message: feature announcement
- policy: 1 kez gonder
Next Decisions
Bu dokumandan sonra alinacak kararlar:- entity adlari kesinlesecek mi?
- hangi kullanici sinyalleri V1’e girecek?
- audience filtreleri hangi alanlarla sinirlanacak?
- dashboard bilgi mimarisi hangi sirayla cikarilacak?
- veritabani modelleri Ergene icinde nasil adlandirilacak?
