Skip to main content

Eposta Gönder

Akış içinden doğrudan bir SMTP e-postası oluşturup gönderen nesnedir. Alıcıları düz e-posta adresi olarak verirsiniz (TO/CC/BCC), konu ve gövdeyi siz belirlersiniz, dilerseniz ek dosya eklersiniz ve gönderimi açıkça Send() ile tetiklersiniz.

Bu nesne, alıcıları CSP kullanıcı/pozisyonlarına çözen ve tasarımcı şablonlarını kullanan Bilgilendirme nesnesinden farklıdır. Bilgilendirme kurum içindeki kişilere/pozisyonlara bildirim göndermek için tasarlanmıştır; Eposta Gönder ise elinizdeki düz adreslere ham mail atmak içindir.

Ne zaman kullanılır?

E-posta adreslerini doğrudan (ör. bir datasource'tan gelen müşteri adresi, dış paydaş adresi) elinizde tuttuğunuz ve alıcıyı CSP kullanıcısı olarak çözmek istemediğiniz durumlarda kullanın. Alıcı bir CSP kullanıcısı veya pozisyon ise ve şablonlu, bildirimli gönderim istiyorsanız Bilgilendirme nesnesini tercih edin.

Ayarlar

Eposta Gönder nesnesi seçildiğinde tasarımcıda şu alanlar düzenlenir:

AyarAçıklama
SubjectE-postanın konusu.
MessageE-postanın gövdesi.
IsHtmlGövdenin HTML olarak yorumlanıp yorumlanmayacağı.
FromAddressGönderen adresi.
DisplayNameGönderenin görünen adı.
ReadNotificationOkundu bildirimi istenip istenmeyeceği.
CultureGönderimde kullanılacak kültür/dil.
Value / ValueSourceType / ValueTypeGövde metninin bir akış değişkeninden gelmesini sağlayan üçlü (Message yerine).
ResumeOnError / ErrorOptionsGönderim hata verirse akışın durması yerine devam etmesi ve hata yapılandırması (BaseErrorManagedApiStep'ten gelir).

Alıcı listeleri (TO / CC / BCC) ve Attachments salt okunurdur; bunları doğrudan atayamaz, ilgili Add* / Remove* / Clear* metotlarıyla doldurursunuz.

Akıştaki yeri

Eposta Gönder, akışı bekletmeyen bir işlem adımıdır: akış bu nesneye ulaştığında alıcıları, konuyu ve gövdeyi hazırlar, Send() ile e-postayı gönderir ve bir sonraki adıma geçer. Hata yönetimi için ResumeOnError ayarı ile gönderim hatasında akışın durmadan devam etmesini sağlayabilirsiniz.

Kod örnekleri

Alıcılar, konu ve gövde akış kodunda nesnenin adıyla doldurulur. Sunucu (akış) kodu turuncu çerçevelidir.

dump-only

Aşağıdaki kullanım, sınıfın doğrulanmış imzalarına göre kurgulanmıştır ancak bu adımı çalıştıran bir örnek akış ile doğrulanmamıştır. Özellikle AddRecipientTO/CC/BCC, Value üçlüsü ve MailAttachmentType değerinin çalışma zamanı idiomu teyitli değildir. TODO: doğrulanacak (IDE'de gerçek bir akışta test edilmeli).

Adres, konu ve gövde ile gönderme

// Alıcıları düz adres olarak ekle
EpostaGonder1.AddTO("ali@firma.com");
EpostaGonder1.AddCC("yonetici@firma.com");

// Konu ve gövde
EpostaGonder1.Subject = "Talep onaylandı";
EpostaGonder1.Message = "<b>Talebiniz onaylandı.</b>";
EpostaGonder1.IsHtml = true;

// Ek dosya (MailAttachmentType enum değeri)
EpostaGonder1.AddAttachment(fileId, MailAttachmentType.File);

// Gönderimi tetikle
EpostaGonder1.Send();

İpuçları

  • TO / CC / BCC ve Attachments salt okunur listelerdir. Alıcıları AddTO / AddCC / AddBCC, RemoveTO / RemoveCC / RemoveBCC, ClearTO / ClearCC / ClearBCC ile; ekleri ise AddAttachment(value, MailAttachmentType) ile yönetin. Doğrudan atama yapmayın.
  • Gönderim açıkça Send() ile tetiklenir; çağrıyı unutmayın.
  • Gövde metnini bir akış değişkeninden almak isterseniz Value / ValueSourceType / ValueType üçlüsünü kullanın (Message yerine). TODO: doğrulanacak.
  • Alıcı CSP kullanıcısı veya pozisyon ise Bilgilendirme nesnesini kullanın; AddConstantUser / AddConstantPosition gibi metotlar orada bulunur, burada değil.
Doğrulanmış kod arayüzü (FlowMailSender)

Sınıf: Bimser.CSP.Workflow.Api.Steps.FlowMailSender : BaseErrorManagedApiStep<FlowMailSenderProperties>

Alıcı metotları: AddTO(string), AddCC(string), AddBCC(string), RemoveTO(string), RemoveCC(string), RemoveBCC(string), ClearTO(), ClearCC(), ClearBCC(), AddRecipientTO(IMailRecipientsOptions), AddRecipientCC(IMailRecipientsOptions), AddRecipientBCC(IMailRecipientsOptions)

Ek ve gönderim: AddAttachment(string value, MailAttachmentType type), Send()

Özellikler: TO / CC / BCC / Attachments (salt okunur listeler), Subject, Message, IsHtml, FromAddress, DisplayName, ReadNotification, Culture, Value, ValueSourceType, ValueType, ResumeOnError, ErrorOptions (IFlowErrorOptions)

Kaynak: synergy-csp references/flow-objects.md (FlowMailSender, [dump-only: derlenir, çalışma zamanı doğrulanmamış]).