Proje: Okul Platform · Hub: Okul Platform — Architecture
Event/Listener Yapısı
app/Events/ → Domain event’leri
app/Listeners/ → Event’leri dinleyen handler’lar
Not: AppServiceProvider::boot()’ta Lead::observe(LeadObserver::class) şu an comment’lenmiş — aktif değil.
EventServiceProvider — sadece Revision::observe(RevisionObserver::class) var.
Event Listesi
Checkout
CheckoutPaymentLinkRequested→ Listener:SendCheckoutPaymentLinkNotification
CustomerUser (B2B)
CustomerUserCreatedEvent— Yeni B2B kullanıcı oluşturulduCustomerUserDeletedEvent— B2B kullanıcı silindi
Lead
LeadUpdatedEvent— Lead güncellendi
SchoolComment
SchoolCommentApprovedEvent— Yorum onaylandıSchoolCommentRejectedEvent— Yorum reddedildi
User
CreatePasswordResetEvent→ Listener:SendPasswordResetEmail
UserDetail, VerificationCode
- Event’ler var ama listener bağlantısı explicit değil
Listener Listesi
Checkout
SendCheckoutPaymentLinkNotification— Ödeme linki bildirim gönder
SchoolComment
SchoolCommentUpdateListener— Yorum güncelleme sonrasıSchoolDetailListener— Okul detaylarını güncelle (yorum sayısı vs.)
SchoolFilter
- Muhtemelen SchoolFilterJob tetikleyen listener’lar
User
SendPasswordResetEmail
VerificationCode
- OTP/doğrulama kodu listener’ları
Revision Observer
RevisionObserver — Tüm Revisionable modellerde değişiklik loglanır.
CustomerIO Entegrasyonu ile İlişki
CustomerIO event dispatch’leri doğrudan job’lar üzerinden:
B2CService::dispatchImportUser()→ImportUserJob::dispatch()B2BServiceiçinde benzer dispatch’ler
Related
- api-queue-jobs — Job sistemi
- api-lead-flow — Lead event’leri
- api-checkout-flow — Checkout event’i