Introduction
This feature supports the handling of asynchronous domain service activation callback in ONAP.
In MDONS use case, the domain OTN service activation sometime could happen hours, even days, after the service is created. Flow steps are the following:
- Notification callback URL is usually provided as input of service creation request.
- Upon activation successful, a notification will be sent back to SDNC from SB domain controller by calling an appropriate DG
- The DG will call an SO API to update the status of the corresponding L1 Access Service.
Async Flow
Async response for MDONS service creation is applicable when we create a MSA based OTN service using Open ROADM NEs. In this case, after service creation is successful in domain controller and the Sync Response is received in SO BPMN, SO waits for Async response from domain controller/SDNC.
SDNC
The DG and notification call back handing in SDNC has already been supported in Frankfurt release. Modification in optical-package as well as in DGs are needed in G Release.
- SDNC-1233Getting issue details... STATUS
The Async notification is received in SDNC when the service is activated in domain controller and then SDNC passes it to SO.
For this, we can use URL for POST: https://<SNDC Public IP>:30267/asyncNotification
The JSON format required for posting in this URL is as below:
{
"input":{
"configuration-response-common":{
"svc-request-id":"d33e2d45-3ee0-486f-af6e-1caf42db0aa7",
"response-code":"200",
"ack-final-indicator":"Y"
},
"service-identifiers":{
"service-name":"async1_MDONS-OTN_Virtuora-MSA",
"common-id":"abfcf8f5-1123-4870-b0bc-d4d21b03a9fa"
}
}
}
SO
An asynchronous call back SO Rest API needs to be added to support such functionality if the existing SO Rest API does not support MDONS.
- SO-2950Getting issue details... STATUS
The following URL is exposed by SO for receiving Async notifications:
http://so-bpmn-infra.onap:8081/mso/async/services/updateStatus
The JSON format to be used in POST request is
{
"request-id":"abfcf8f5-1123-4870-b0bc-d4d21b03a9fa",
"response-code":"200",
"response-message":"SUCCESS",
"ack-final-indicator":"Y"
}
Once this response is received, SO performs the following:
- If response-code is 200, the CREATE service request in request DB table is updated as SUCCESS and progress as 100.
- If response-code is not 200, the CREATE service request in request DB table is updated as FAILED.
- If DB update is success, then response code 200 is sent to calling SDNC process.
- If DB update is failure or any exception occurs during update, then response code 500 is sent to calling SDNC process.
- Once the result is updated in request DB, the UUI which monitors the table gets updated as success/failure.
UpdateStatus Call Back
DESCRIPTION
Update Service Request status in database upon receiving async response from SDNC
REQUEST BODY
application/json
Async response object that needs to be updated.
REQUEST PARAMETERS
NAME | DESCRIPTION | TYPE | DATATYPE |
---|---|---|---|
NAME | DESCRIPTION | TYPE | DATATYPE |
request-id | Request ID of service operation | M | string |
response-code | Response code to indicate success or failure | M | string |
response-message | Response message to indicate status of operation | O | string |
ack-final-indicator | Indicator for final or non-final response | O | string |
RESPONSES
application/json
default
Response codes 200 or 500.
References
There were errors rendering macro:
- An unknown error occurred.