The output manager is responsible to provide a unified interface to other services to send transactional messages to the customers. It does so by generating and API based on the template library whose internals are described here: Service: output-manager

The generated endpoints are then sending a message to the commons.send-internal-message.command.v1 topic and responds to the caller service.

The commons.send-internal-message.command.v1 topic is then consumed asynchronously. The messages are processed, the final form of the message is formulated based on the customer’s language preferences and the final form of the message is sent to the vendor-specific Kafka topics. These topics (e.g commons.send-push-notifications.command.v2) are then consumed by the vendor-specific gateways (e.g push-notifications-gateway) and they take care of sending out the messages. The same algorithm applies to the following gateways, each with their corresponding topic and Avro schema:

  • infobip-email-gateway

  • infobip-sms-gateway

  • infobip-viber-gateway

  • macrokiosk-email-gateway

  • macrokiosk-sms-gateway

  • push-notifications-gateway

Attachments: