How to Customize the Email Delivery Module Instead of Using System.Web.Mail?

Applies To

Objective

To customize your email delivery module instead of using the System.Web.Mail.

Summary

By default, AgilePoint uses System.Web.Mail for Email Delivery Module. However, System.Web.Mail sometimes may not work as well with some SMTP servers. In AgilePoint 3.2.0, AgilePoint provides the flexibility to allow users to plug-in their own email delivery module or use a third-party component for the email delivery.

Resolution

To plug-in your own mail delivery module:

  1. First, implement the interface IWFSMTPService:
    public interface IWFSMTPService
    {
    void Authenticate(String smtpServer, String authenticateString);
    
    void Send(String mailDeliverableID, System.Text.Encoding encoding, 
      Constants.MailFormat format, Constants.MailPriority priority,
      String sender, String to, String cc, String subject, String body,
      String attachments);
    }
    
  2. Add your assembly and class information into AgilePoint's config file (netflow.cfg). For example:
    <configuration>
    .. ..
    <notification mode="true"
      smtpService="EasyMailForSMTP:CustomSMTP.EasyMailForSMTPService:"….
    .. ..

    WhereEasyMailForSMTP is the assembly name and CustomSMTP.EasyMailForSMTPService is the class name.