This documentation is for WSO2 Complex Event Processor 4.0.0. View documentation for the latest release.
WSO2 Complex Event Processor is succeeded by WSO2 Stream Processor. To view the latest documentation for WSO2 SP, see WSO2 Stream Processor Documentation.
Skip to end of metadata
Go to start of metadata

Email event publisher is used to publish events in XML, JSON or text formats via email transports.


Follow the steps below to complete the prerequisites before starting the event publisher configurations.

Edit the email address, username, password and other relevant properties in the <PRODUCT_HOME>/repository/conf/output-event-adapters.xml file, to point the mail transport sender which is  enabled by default in the product, to a valid SMTP configuration as shown in the example below.

<adapterConfig type="email">
    <property key="mail.smtp.from">email-address</property>
    <property key="mail.smtp.user">user-name</property>
    <property key="mail.smtp.password">password</property>
    <property key=""></property>
    <property key="mail.smtp.port">587</property>
    <property key="mail.smtp.starttls.enable">true</property>
    <property key="mail.smtp.auth">true</property>
    <!-- Thread Pool Related Properties -->
    <property key="maxThread">100</property>
    <property key="keepAliveTimeInMillis">20000</property>
    <property key="jobQueueSize">10000</property>

Creating an email event publisher

For instructions on creating an email event publisher, see Configuring CEP to Create Alerts.

Configuring global properties

The following global properties can be set for the Email event publisher type in the <CEP_HOME>/repository/conf/input-event-adapters.xml file. These properties apply to all the publishers of the email type. If a global property available by default is removed, the default value of the property is considered.

Custom properties cannot be added as global properties.

Property KeyDescriptionData TypeDefault Value
mail.smtp.fromThe email address used by the publisher to publish events.String
mail.smtp.userThe username used by the publisher to publish events via email.Stringabcd
mail.smtp.passwordThe password used by the publish events via email.Stringxxxx
mail.smtp.hostThe host of the email
mail.smtp.portThe port of the email server.Integer587
mail.smtp.starttls.enableThis property specifies whether STARTTLS encryption is enabled or not. STARTTLS is an extension which enables a plain text connection to be upgraded to an encrypted (SSL or TLS) connection.Booleantrue
mail.smtp.authThis property specifies whether SMTP authentication is enabled or not.Booleantrue
minThreadThe minimum number of threads (including idle threads) that should be available in the thread pool at a given time.Integer8
maxThreadThe maximum number of threads (including idle threads) that should be available in the thread pool at a given time.Integer100
keepAliveTimeInMillisThe maximum number of milliseconds that idle threads should be kept alive when the total number of threads in the pool exceeds the number of cores in the machine.Integer20000
jobQueueSizeThe maximum number of milliseconds that idle threads should be kept alive when the total number of threads in the pool exceeds the number of cores in the machine.Integer10000

Configuring adapter properties

Specify the Dynamic Adapter Properties, when creating an email event publisher using the management console as shown below.

email event publisher

After entering the above adapter properties, select the Message Format which you want to apply on the published events. Also, click Advanced to define custom output mappings based on the Message Format you selected. For more information on custom output mapping types, see Publishing Events in Various Event Formats.


You can also define the respective adapter properties of the event publisher based on the transport type within the <to> element of the event publisher configuration in the <PRODUCT_HOME>/repository/deployment/server/eventpublishers/ directory as follows.


<eventPublisher name="EmailOuputEventAdapter" statistics="disable" trace="disable" xmlns="">
  <to eventAdapterType="email">
    <property name="email.address"></property>
    <property name="email.type">text/plain</property>
    <property name="email.subject">This is a test mail.</property>
The above adapter properties are described below.
Adapter Property
Configuration file propertyExample
Email AddressEmail address of the client. Register the publisher for multiple email IDs' by separating them with commas.

SubjectSubject of the email to be sent to the defined email address.

This is a test mail.

Email Type

The email format to be sent to the defined email address.


If you select text/html for this parameter, the message body should be in valid HTML.


Related samples

For more information on email event publisher type, see the following sample.

  • No labels