Skip to main content

NotificationProcessor

Home > @backstage/plugin-notifications-node > NotificationProcessor

Notification processors are used to modify the notification parameters or sending the notifications to external systems.

Notification modules should utilize the notificationsProcessingExtensionPoint to add new processors to the system.

Notification processing flow:

  1. New notification send request is received 2. For all notification processors registered, processOptions function is called to process the notification options 3. Notification recipients are resolved from the options 4. For each recipient, preProcess function is called to pre-process the notification 5. Notification is saved to the database and sent to the Backstage UI 6. For each recipient, postProcess function is called to post-process the notification

Signature:

export interface NotificationProcessor 

Methods

Method

Description

getName()

Human-readable name of this processor like Email, Slack, etc.

getNotificationFilters()?

(Optional) notification filters are used to call the processor only in certain conditions

postProcess(notification, options)?

(Optional) Post process notification after sending it to Backstage UI.

Can be used to send the notification to external services.

postProcess functions are called for each notification recipient individually or once for broadcast notification AFTER the notification has been sent to the Backstage UI.

preProcess(notification, options)?

(Optional) Pre-process notification before sending it to Backstage UI.

Can be used to send the notification to external services or to decorate the notification with additional information. The notification is saved to database and sent to Backstage UI after all pre-process functions have run. The notification options passed here are already processed by processOptions functionality.

preProcess functions are called for each notification recipient individually or once for broadcast notification BEFORE the notification has been sent to the Backstage UI.

processOptions(options)?

(Optional) Process the notification options.

Can be used to override the default recipient resolving, sending the notification to an external service or modify other notification options necessary.

processOptions functions are called only once for each notification before the recipient resolving, pre-process, sending and post-process of the notification.