You have the possibility to send various types of notifications:

  • Email notifications
  • SMS templates to mobile devices

To use the plugin to send notifications, via SMS channel, a third party provider for SMS communication is needed, for example, Twilio.

  • Forward custom notifications to external outgoing services
  • Generate and validate OTP passwords for user identity verification

You can also use the plugin to track what notifications have been sent and to whom.

Let’s go through the steps needed to deploy and set up the plugin:

Using Notifications plugin

After deploying the notifications plugin in your infrastructure, you can start sending notifications by configuring related actions in your process definitions.

Before adding the corresponding actions in your process definition, you will need to follow a few steps:

  • make sure all prerequisites are prepared, for example, the notification templates you want to use
  • the database is configured properly
  • for each Kafka event type, you will need two Kafka topics:
    • one for the request sent from the FlowX Engine to the Notifications plugin
    • one for the corresponding reply

Kafka configuration for Notifications plugin

DEVELOPER

The topic names configured for the plugin should match the ones used when configuring the engine and when adding plugin-related process actions:

  • FlowX Engine is listening for messages on topics with names of a certain pattern, make sure to use an outgoing topic name that matches the pattern configured in the Engine

More details: here

  • to make a request to the plugin, the process definition needs to have an action of type Kafka send that has an action parameter with key topicName and the needed topic name as a value
  • to receive a reply from the plugin, the process definition needs to have a receiving node with a node value with key topicName and the topic name as the value

After all the setup is in place, you can start adding custom actions to the processes.

Let’s go through a few examples. These examples cover both the configuration part, and the integration with the engine for all the use cases.