References
- CPS-1492Getting issue details... STATUS
Subscription Creation Events Handling
Assumptions
# | Assumption | Notes |
---|---|---|
1 | Forwarded Subscription Event communicates asynchronously. (NCMP to DMI Plugins) | Once off timer would be responsible to publish messages in NCMP. |
2 | Forwarded Subscription Event Responses communicates asynchronously. (DMI Plugins to NCMP) | Then, the NCMP would wait a response(s) within the timeframe agreed on. TBD: A single step response or two step responses will be provided in the solution. |
3 | The NCMP component should create Subscription Create Outcome message and publish it into topic (cm-avc-subscription-response) in which Client Apps consumed from. | The Outcome Response schema need to be decided on. |
Issues & Decisions
# | Issue | Notes | Decision |
---|---|---|---|
1 | Possible 'timeframe' period for timeout | DMI to NCMP response timeout | 30 sec (Configurable param/property) |
2 | Response in two steps or in a single step should be discussed with shareholders. | from DMI to NCMP responses | Is the ACK would be required? |
3 | Response schema should be decided | from DMI to NCMP response schemas should be decided for both two steps response and single step response
| |
4 | Subscription event outcome schema should be decided | from DMI to Client Apps
|
Possible Topic Names
# | Source | Content | Topic Name | Destination |
---|---|---|---|---|
1 | Client Apps | Subscription Create Event | cm-avc-subscription | NCMP |
2 | NCMP | Forwarded Subscription Create Event | ncmp-dmi-cm-avc-subscription | DMI Plugins |
3 | DMI Plugins | Forwarded Subscription Create Event Response | dmi-ncmp-cm-avc-subscription | NCMP |
4 | NCMP | Subscription Create Event Outcome | cm-avc-subscription-response | Client Apps |
Implementation Details
Client apps e.g. DME would publish Subscription Create Event to the topic cm-avc-subscription.
Message Format (Client → NCMP):The NCMP would consume the messages from cm-avc-subscription topic, and create Forwareded Subscription Event.
- The NCMP would publish messages (Forwarded Subscription Event) to the topic ncmp-dmi-cm-avc-subscription via once-off timer.
- Then, the NCMP would wait a response(s) within the timeframe (timeout) agreed on e.g. 30 seconds.
- Response in two steps
- Ack (response with DMI plugin detais e.g. DMI X and Y has started to processing)
- Process result response: 2 out of 3 DMI has responed. (The percentage is %66.)
- Response in a single step
- Process result response: 2 out of 3 DMI has responed. (The percentage is %66.)
- Response in two steps
- Finally, the NCMP plugin create outcome message, and publish it to the topic cm-avc-subscription-response.