Resending Notifications

Using the SubMan APIs, you can resend a MtxNotification message that is in a MtxNotificationDoneEvent MATRIXX Data Container (MDC). To resend the MtxNotification using the SubMan APIs, the MtxNotification must be included in the MtxNotificationDoneEvent Event Detail Record (EDR).

Two create_config.info questions control if and when MtxNotification MDCs are copied into the MtxNotificationDoneEvent MDC.

The first create_config.info question specifies if the MtxNotification MDC is copied to the MtxNotificationDoneEvent EDR whether the notification fails or not. The question is: Should Notification MDC be copied into the NotificationDone events (y/n)? The default is n.

If the answer is y, the MtxNotification MDC is copied to the MtxNotificationDoneEvent EDR for both notification_success (0) and notification_failure (1) operation types.

If the answer to this question is n, the second create_config.info question is asked and controls whether an MtxNotification MDC is copied to the MtxNotificationDoneEvent EDR only when the notification delivery fails. If the answer to the following question is y and the operation type in the MtxNotification is notification_failure (27), then the MtxNotification MDC is copied to the MtxNotificationDoneEvent EDR. If the operation type is notification_success (26), the MtxNotification MDC is not copied to the MtxNotificationDoneEvent EDR. The question is: Global:Should Notification MDC be copied into the NotificationDone events only if there is a failure in notification delivery (y/n)? The default is n.

If MtxNotification is copied to the MtxNotificationDoneEvent EDR, you can resend the MtxNotification in the MtxNotificationDoneEvent EDR using the MtxRequestNotificationResend API. You must specify the MtxNotificationDoneEvent EDR using the NotificationId in the request. The request creates an MtxNotificationObject MDC with the Notification field information (including ContactInfo from the MtxNotification MDC) from the Notification field in the MtxNotificationDoneEvent. Also included are the initiator fields in the MtxNotificationDoneEvent. If the Notification field is not present in the specified MtxNotificationDoneEvent EDR, the API returns an error.

The API returns SUCCESS when the MtxNotificationObject MDC is created successfully. If an error is encountered when creating the MtxNotificationObject MDC, an error code is returned.

After the Charging Server creates the MtxNotificationObject MDC, the notification is sent to the ActiveMQ Gateway, which delivers it to the Notification Server. When the Notification Server finishes processing the notification and gets a delivery ID, it creates an MtxNotificationMsg MDC acknowledgment and sends it back to the Charging Server.

When the Charging Server receives the MtxNotificationMsg MDC, it generates a MtxNotificationDoneEvent EDR for the resent notification. This MtxNotificationDoneEvent EDR has the original MtxNotificationDoneEvent ID in the AssociatedEventId field to indicate that it is a resent notification. The result of processing the resent notification is recorded in the NotificationStatus and ErrorCode fields of the MtxNotificationDoneEvent EDR.

The following questions also determine how the MtxNotification is resent:
  • create_config.info question: Global:What is the maximum time in minutes do you want to allow to send missed notifications?

    This question sets the amount of time to continue sending missed notifications. A missed notification is a notification that was not sent because an object transition to a different state skipped a notification delivery point (for example, one week before expiration).

  • create_config.info question: Global:How many times should a notification be sent if an acknowledgment is not received?
    This question sets the maximum number of times to send a notification when an acknowledgment is not received. For example:
    • When set to 0, the Charging Server resends the notification message until an acknowledgment is received from the Notification Server.
    • When set to 1, the Charging Server does not resend the notification message.
    • When set to 2, the Charging Server sends the notification message one more time after the original message.

For more information about the MtxRequestNotificationResend API, see the discussions about REST APIs and SubMan APIs in MATRIXX Subscriber Management API.