Configure notification servers

Notification servers send notifications to users, stakeholders, or applications when a job completes or when operations are performed within workflows.

There are several types of notifications:

  • Job notifications are issued under certain conditions when an integration job completes. These notifications are used for administration, monitoring, or integration automation. These notifications are configured with notification policies in the data locations.

  • Legacy workflow notifications are emails sent to users when operations are performed in a legacy workflow. They are configured in workflow transitions and tasks.

  • Data-driven workflow notifications refer either to assignment notifications that can be delivered to participants of a data-driven workflow, or to emails that can be sent to various types of users, stakeholders, or third-party recipients at any point of a workflow, by adding and configuring a Send Email automation step to the workflow definition.

All families of notifications are issued via notification servers.

Notification server types

Notification recipients may be users, stakeholders, third-party recipients (in the case of data-driven workflows), or systems. The type of notification sent, as well as the recipient, depends on the type of notification server configured.

Each notification server uses a notification plugin that:

  • Defines the configuration parameters for the notification server.

  • Defines the configuration and form of the notification.

  • Sends notifications via notification servers.

Semarchy xDM is provided with several built-in notification plugins:

  • JavaMail: the notification is sent in the form of an email via a mail session server configured in the application server, and referenced in the notification server. For more information about configuring a mail session, see Deploy Semarchy xDM.

  • SMTP: the notification is sent in the form of an email via an SMTP server entirely configured in the notification server.

  • File: the notification is issued as text in a file stored in a local directory or an FTP/SFTP file server.

  • HTTP: the notification is issued as a GET or POST request sent to a remote HTTP server. Use this server type to call a web service with the notification information.

  • JMS: the notification is issued as a JMS message in a message queue.

A single notification server having either the JavaMail or SMTP type can be used to send email notifications to users, for example from workflows. This server is flagged as the default notification server.

Any servers can be used to send job notifications. Each job notification policy specifies the notification server it uses.

Create a notification server

To create a notification server:

  1. In the Configuration module, select Notification Servers in the navigation drawer.
    The Notification Servers editor opens.

  2. Select the Notification Servers list, right-click, and select AbstractNotificationServer New Notification Server.
    The Create New Notification Server wizard opens.

  3. Enter the following workflow parameters:

    • Name: internal name of the notification server.

    • Label: user-friendly label for the server.

    • Plugin ID: select one of the available notification server plugin.

    • Default Notification Server: select this option to use this notification server by default for email notifications. This option can be selected only if the plugin ID is JavaMail or SMTP.

  4. Click Next.

  5. In the second wizard page, enter the configuration information for your type of server:

    • JavaMail:

      • JNDI URL: JNDI URL of the JavaMail session service available in the application server. This URL is typically java:comp/env/mail/Session if the Mail Session service is declared as mail/Session in the application server.

      • From User: email address of the sender of the notifications from this server. This address is also used in the reply-to address for notification emails.

      • Password: if this server requires specific authentication, enter a password for this server. Note that the authentication configured in the JavaMail resource has precedence over this password.

    • SMTP:

      • SMTP Host Name and SMTP Port: name or address, and port of the SMTP host.

      • From User: email address of the sender of the notifications from this server. This address is also used in the reply-to address for notification emails.

      • Authentication Required: if this server requires specific authentication, select the Authentication Required option and enter a User Name and Password for this server, and indicate whether it uses TLS or SSL.

      • Additional SMTP Properties: enter additional properties as property=value pairs.
        For the complete list of properties available to configure SMTP communications in Java applications, see the com.sun.mail.smtp package documentation.

        When using the SMTP protocol over SSL, all properties should be prefixed with mail.smtps.*.
    • File:

      • File System: select the file system of the file server. FILE for a local server, FTP or SFTP for a remote server.

      • Host, Port, Login, Password are required to connect an FTP or SFTP server.

      • Root Path: provide the root path for storing the notification file (e.g., c:\work\notifications for Windows or /work/notifications for UNIX/Linux).

    • HTTP:

      • Scheme: specify whether the HTTP request should be done using HTTP or HTTPS.

      • Host, Port and optionally Login, Password are used to connect the HTTP server.

      • Base Path: root path appended added after the host and port in the URL. For example: / or /rest/api/.

      • Use System Properties: check this option to use the system-defined properties to configure the HTTP connection. This option allows the use of a proxy configuration defined in the Java parameters for the application server.

      • Proxy Host, Proxy Port, Proxy Login, and Proxy Password are used to configure the connection through an HTTP proxy and possibly override the proxy configured via the system properties.

      • Headers: enter additional HTTP headers as property=value pairs.

    • JMS:

      • Connection Factory URL: JNDI URL of the factory used to create a connection to the JMS destination. The URL is typically java:comp/env/jms/ConnectionFactory if the connection factory is declared as jms/ConnectionFactory in the application server.

      • Login and Password used when initiating the JMS connection.

  6. Press Control+S (Command+S on macOS) to save the configuration.

Test a notification server

After configuring the notification server, it is recommended to run a test email on this server.

To test a notification server:

  1. In the Notification Servers editor, select the notification server you want to test, right-click, and select Test Configuration.

  2. The next steps depend on the type of notification servers:

    • File, HTTP, JMS: no further operation is needed.
      A connection attempt is made on the notification server.

    • JavaMail and SMTP: provide a comma-separated list of email addresses and click OK.
      An email is sent via the notification server to these recipients.