Custom Mail Provider, uygulamanızın e-posta gönderim sürecini kendi belirlediğiniz bir altyapı veya üçüncü parti servis üzerinden yapmanızı sağlar. Bu yapı sayesinde Kuika'nın varsayılan e-posta gönderim mekanizması yerine kendi SMTP sunucunuzu, bir e-posta gönderim API'sini (örneğin SendGrid, Mailgun, Amazon SES) veya kurum içi bir mail altyapısını devreye alabilirsiniz.
Şu senaryolarda kullanılabilir:
Uygulamanın, Kuika'nın varsayılan mail sağlayıcısı yerine kurumun kendi SMTP sunucusunu kullanması gerektiğinde,
E-posta gönderimlerinin üçüncü parti bir servis üzerinden yapılması istendiğinde,
Gönderim mantığının (örneğin loglama, ek doğrulama) özelleştirilmesi gerektiğinde,
Farklı ortamlar veya farklı tenant'lar için farklı mail sağlayıcılarının kullanılması gerektiğinde.
Oluşturma adımları:
C# Functions'ı seçin ve bir ad girin.
Template alanından Custom Mail Provider şablonunu seçin.
CREATE butonuna tıklayın.
Custom Mail Provider Sınıfı
Şablondaki CustomMailClient sınıfı, ICustomMailClient arayüzünü uygular ve uygulama içinden tetiklenen e-posta gönderim isteklerini karşılar.
request parametresi: Gönderilmeye hazır e-postayı içerir:
Subject: E-postanın konusu
Body: Gönderime hazır HTML içerik. Bildirim şablonları çözümlenmiş ve @parametreler yerine konmuş olarak gelir.
Sender: Gönderen adresi
Receivers, Cc, Bcc: Alıcı adresleri
Attachments: Ekler
InlineImages: Gövdeye gömülü görseller
Dikkat edilmesi gerekenler:
Sender boş gelebilir. Kuika'nın yerleşik sağlayıcıları bu durumda kendi SMTP/AWS ayarlarındaki From adresini kullanır; ancak özel sağlayıcı seçiliyken bu ayarlar okunmaz. Bu nedenle kendi varsayılan gönderen adresinizi kod içinde tanımlayın.
Cc ve Bcc ham metin olarak gelir ve "," veya ";" ile ayrılmış birden fazla adres içerebilir.
Attachments, dosya adı ve base64 içerik (FileContentBase64) olarak gelir. Eklerin iletilip iletilmediği kontrol edilmez; eksiz teslim edilen bir e-posta da başarılı sayılır. API'nizin boyut sınırlarını da kendiniz kontrol etmelisiniz.
InlineImages, gövdede "cid:ContentId" biçiminde referans verilen görsellerdir. API'niz inline görselleri desteklemiyorsa görselleri yükleyip cid referanslarını URL'lerle değiştirmeniz gerekir; aksi hâlde görseller kırık görünür.
Dönüş değeri: Success = true, e-postanın teslim edildiğini değil, kabul edildiğini ifade eder. Bu değeri yalnızca API'niz e-postayı onayladıktan sonra (2xx veya kuyruğa alındıysa 202) döndürün. Aksi hâlde platform, hiç gönderilmemiş olabilecek bir e-postayı başarılı olarak raporlar. Sonradan oluşan geri dönmeler (bounce) uygulamaya bildirilmez.
Mail sağlayıcısına ait API anahtarı, kullanıcı adı, şifre gibi hassas bilgiler kod içinde güvenli biçimde saklanmalı ve loglanmamalıdır.