Event Streaming Framework Notification Process

You can select to generate MtxNotificationDoneEvent events without delivering end-user notifications. Generate notifications as events in real-time using the Event Streaming Framework, and data is recorded in the event in OpenAPI-JSON format. Events are securely streamed from the Event Streaming Framework to the Kafka Broker using TLSv1.2.

Through this process, notifications that bypass the Notification Framework are deemed successful, and the engine generates an MtxNotificationDoneEvent. Customize the Event Streaming Framework configuration options in the mtx_event_streamer.properties file. This method relies on an external system that retrieves the MtxNotificationDoneEvent events from the Kafka Broker and delivers the notification(s).

For more information, see the discussion about Event Streaming Framework properties and examples in MATRIXX Event Streaming.

Use the following steps to generate notifications as events through the Event Streaming Framework notification process.
  1. Instead of sending notifications, notifications are generated as events and sent to the Streaming Server.
  2. The events are then delivered in real-time using the Event Streaming Framework to the Kafka Broker.
  3. The engine generates an MtxNotificationDoneEvent event.
Figure 1 shows the basics of the conventional notification process. In this process, notification messages are handled by MATRIXX Engine, and after a message is delivered to the configured endpoint, an acknowledgment message is returned to MATRIXX Engine and the notification is removed from the database. For more information, see the discussion about the conventional end-to-end notification process.
Figure 1. Conventional Notification Process
Conventional notification process
Figure 2 shows the simplified Event Streaming Framework notification process. In this process, the MtxNotificationDoneEvent is sent rather than the notification.
Figure 2. Event Streaming Framework Notification Process
Event Streaming Framework notification process
The following code example shows how MTXNotificationDoneEvent is configured in the MessageHeaderMap:
---
connector: kafka-connector
topic: allevents_second
format: json
MessageHeaderMap:
   MtxNotificationDoneEvent:
    Headers:
    - Name: EventType
      Value: MtxNotificationDoneEvent
    - Name: NotificationType
      Value: "$NotificationType"
  MtxPurchaseEvent:
    Headers:
    - Name: EventType
      Value: MtxPurchaseEvent
    - Name: Info
      Value: "$Info"
settings:
  bootstrap.servers: localhost:9092
  acks: all
  retries: 0
  value.serializer: org.apache.kafka.common.serialization.StringSerializer
  key.serializer: org.apache.kafka.common.serialization.StringSerializer