Notification
External clients can listen to the notifications about the state changes that are sent by the Orchestrator. The users can filter the following state change notifications:
JMS notification
Type of state change | Property name | Default value |
---|---|---|
Order Status Change | com.tibco.fom.orch.order.statusChange.filter | * |
OrderLine Status Change | com.tibco.fom.orch.orderLine.statusChange.filter | * |
Plan Status Change | com.tibco.fom.orch.plan.statusChange.filter | * |
PlanItem Status Change | com.tibco.fom.orch.planItem.statusChange.filter | * |
Order Amendment Status Change | com.tibco.fom.orch.orderAmendment.filter | * |
Order State Change Notification topic | com.tibco.fom.orch.outbound.notification.destination | tibco.aff.orchestrator.outbound.notification |
OrderLine status change destination | com.tibco.fom.orch.orderLine.statusChange.destination | tibco.aff.orchestrator.notification.orderLine |
Plan status change destination | com.tibco.fom.orch.plan.statusChange.destination | tibco.aff.orchestrator.notification.plan |
PlanItem status change destination | com.tibco.fom.orch.planItem.statusChange.destination | tibco.aff.orchestrator.notification.planItem |
Order Amendment status change destination | com.tibco.fom.orch.orderAmendment.statusChange.destination | tibco.aff.orchestrator.notification.orderAmendment |
ORDER, ORDERLINE, PLAN, PLANITEM, PLANDEVELOPMENT State Change Notification Queue | archivalNotificationQueue | tibco.aff.orchestrator.archival.notification |
By default, all notifications are dispatched to the tibco.aff.orchestrator.outbound.notification
queue. To disable, set the enableNotification
property to false.
{
"propName": "com.tibco.fom.orch.plan.statusChange.destination",
"propDescription": "Plan status enableNotificationchange destination",
"propValue": "tibco.aff.orchestrator.notification.plan",
"valueType": "string",
"isTenantProperty": "false"
}
com.tibco.fom.orch.noreciprocalaction.planfragmentID
: This property is a tenant specific property. The value provided in this property is set as the planfragmentID
for the plan items that directly got canceled from the pending state.
The default value for this property is NO_RECIPROCAL_ACTION
.
Whenever the order status changes, the Orchestrator sends an EMS message. The Archival system receives this message and saves the necessary information in a database. The Archival database has several tables and does not need locks to process notifications, allowing it to update the relevant tables directly.
Out-of-Sequence Notifications
Since Archival does not process notifications in a sequence, a notification can arrive before an entry is created for that order. In that case, the notification is retried and sent back to the source queue (tibco.aff.orchestrator.archival.notification
). The retry settings are:
-
archivalNotificationRedeliveryCount
(default: 5) -
archivalNotificationRedeliveryDelay
(default: 5000 ms or 5 seconds)
Amendment Notifications
When the first status change notification for an amendment is received, the Archival service updates the tables with the amendment changes. During this process, other notifications are not processed. They get retried and sent back to the source queue (tibco.aff.orchestrator.archival.notification
) based on the retry configuration until the Archival database updates.
Exception Handling
In other exception scenarios, retries follow the same configuration. If the issue continues, the notification goes to the dead queue (tibco.aff.orchestrator.archival.notification.dead
).