📬
cbMailServices
  • Introduction
    • Release History
      • What's New With 2.8.0
      • What's New With 2.7.x
      • What's New With 2.6
      • What's New With 2.5.x
      • What's New With 2.4.0
      • What's New With 2.3.x
      • What's New With 2.2.0
      • What's New With 2.1.0
      • What's New With 2.0.0
    • About This Book
      • Author
  • Essentials
    • Installation
    • Configuration
    • 📧Sending Mail
  • Advanced
    • Async Mail
    • Building Protocols
    • Mail Events
Powered by GitBook
On this page
  • preMailSend
  • postMailSend

Was this helpful?

Edit on GitHub
Export as PDF
  1. Advanced

Mail Events

PreviousBuilding Protocols

Last updated 1 year ago

Was this helpful?

The module will register two PreMailSend and PostMailSend. These interception points are useful to alter the mail object before it gets sent out, and/or perform any functions after the mail gets sent out. An example interceptor would be:

component extends="coldbox.system.Interceptor"{

    void function configure(){
    }

    function preMailSend( event, data, buffer, rc, prc ){
        var environment = getSetting('environment');
        var appName = getSetting('appName');

        if(environment eq 'development'){
            //change recipient if we are on development
            data.mail.setTo('johndoe@example.com');  
            //prefix the subject if we are on development
            data.mail.setSubject('<DEV-#appName#> #data.mail.getSubject()#');
        }       
    }

    function postMailSend( event, data, buffer, rc, prc ){
        if( data.result.error ){
            //log mail failure here...
        }
    }

}

preMailSend

Announced before the mail payload is sent to the chosen mailer protocol for sending. This is your last change to influence the payload.

Data Passed

Key
Type
Description

mail

Mail

The mail payload object

postMailSend

Announced after the mail payload has been sent via the mailer protocol of choice.

Data Passed

Key
Type
Description

mail

Mail

The mail payload object

result

struct

The result structure from the mailer protocol. At most it will contain an error boolean key and a messages array.

interception points.