###################################################################################### # Request # allocateNSSI (create NSSI with service) ###################################################################################### curl -v -X POST -k https://localhost:11111/api/rest/provMns/v1/NSS/SliceProfiles \ -H "Content-Type:application/json" \ -d '{ "nsstId": "NSST-C-001-HDBNJ-NSSMF-01-A-ZX", "sliceProfile": { "snssaiList": ["001-100001"], "sliceProfileId": "ab9af40f13f721b5f13539d87484098", "plmnIdList": ["460-00", "460-01"], "perfReq": { "perfReqEmbbList ": [{ "activityFactor": 50 }] }, "maxNumberofUEs": 200, "coverageAreaTAList": ["1", "2", "3", "4"], "latency": 2, "resourceSharingLevel": "non-shared" }, "nsiInfo": { "nsiId": "NSI-M-001-HDBNJ-NSMF-01-A-ZX", "nsiName": "eMBB-001" }, "scriptName": "CN1" }' ###################################################################################### # Response # allocateNSSI (create NSSI with service) ###################################################################################### {"nssiId":"NSSI-C-8G3-HDBNJ-NSSMF-01-A-ZX","jobId":"e905feed0c174ff583e1c855b0dbb509"}u Is this minor bug ? "nssiName": "eMBB-001" does not return. ###################################################################################### # Request # getNSSI(get info of NSSI by sliceProfile) ###################################################################################### curl -s -X GET -k "https://localhost:11111/api/rest/provMns/v1/NSS/SliceProfiles/ab9af40f13f721b5f13539d87484098" | python3 -m json.tool ###################################################################################### # Response # getNSSI(get info of NSSI by sliceProfile) ###################################################################################### { "nssiInfo": { "nsstId": "NSST-C-001-HDBNJ-NSSMF-01-A-ZX", "nssiName": "test_CN", "flavorId": "ab9af40f13f721b5f ", "nssiId": "NSSI-C-001-HDBNJ-NSSMF-01-A-ZX", "terminateNssiOption": 0, "nssiState": "enabled", "networkSliceSubnet": { "mfIdList": [ "1301ZTHX2SMFA12ZA1", "1301ZTHX2UPF023A4D", "1301ZTHX2SMF723ADF" ], "nsInfo": { "nsInstanceId": "fe9af40f13f721b5f13539d87488899", "nsInstanceName": "test_NS", "nsState": "nsState", "nsdId": "7356240f13f721b5f13539d87ad2341", "vnfInstance": [ { "vnfInstanceId": "2345640f13f721b5f13539d8748ade4", "vnfInstanceName": "smf", "vnfdId": "a345640f13f721b5f13539d8748adef", "instantiationState": "active" } ], "pnfInfo": [ { "pnfId": "8aed640f13f721b5f13539d874812a8", "pnfName": "upf", "pnfdId": "ffff640f13f721b5f13539d87482222" } ], "nestedNsInstance": [ { "nsInstanceId": "1233f40f13f721b5f13539d87488333", "nsInstanceName": "nested_ns", "nsdId": "abc6240f13f721b5f13539d87ad2abc", "nestedVnfInstanceList": [ { "vnfInstanceId": "amf", "vnfInstanceName": "amf", "vnfdId": "8885640f13f721b5f13539d8748adef", "instantiationState": "active" } ], "nestedNsInstanceId": [ "bbbcf40f13f721b5f13539d8748aedd" ], "nsState": "active" } ] }, "sliceProfileList": [ { "snssaiList": [ "001-100001" ], "sliceProfileId": "ab9af40f13f721b5f13539d87484098", "plmnIdList": [ "460-00" ], "perfReq": { "perfReqEmbbList": [ { "expDataRateDL": 0, "expDataRateUL": 0, "areaTrafficCapDL": 0, "areaTrafficCapUL": 0, "activityFactor": 50 } ] }, "maxNumberofUEs": 200, "maxNumberofPDUSession": 0, "totalDataVolume": 0, "coverageAreaTAList": [ "1", "2", "3", "4" ], "latency": 2, "resourceSharingLevel": "non-shared", "terminateNssiOption": 0, "scriptName": "CN1" } ] } } } ###################################################################################### # Request # createNSSI (create NSSI without service) ###################################################################################### curl -v -X POST -k "https://localhost:11111/api/rest/provMns/v1/NSS/nssi/NSSI-C-001-HDBNJ-NSSMF-01-A-ZX" \ -H "Content-Type:application/json" \ -d '{ "nsstId": "NSST-C-001-HDBNJ-NSSMF-01-A-ZX", "nsiInfo": { "nsiId": "NSI-M-001-HDBNJ-NSMF-01-A-ZX", "nsiName": "eMBB-001" }, "scriptName": "CN1" }' | python3 -m json.tool ###################################################################################### # Response # createNSSI (create NSSI without service) ###################################################################################### > POST /api/rest/provMns/v1/NSS/nssi/NSSI-C-001-HDBNJ-NSSMF-01-A-ZX HTTP/1.1 > Host: localhost:11111 > User-Agent: curl/7.47.0 > Accept: */* > Content-Type:application/json > Content-Length: 165 > } [165 bytes data] * upload completely sent off: 165 out of 165 bytes < HTTP/1.1 405 < Allow: GET, PUT, DELETE < Content-Type: application/json;charset=UTF-8 < Transfer-Encoding: chunked < Date: Sat, 11 Apr 2020 05:20:41 GMT < { [271 bytes data] 100 429 0 264 100 165 1431 894 --:--:-- --:--:-- --:--:-- 1434 * Connection #0 to host localhost left intact { "timestamp": 1586582441054, "status": 405, "error": "Method Not Allowed", "exception": "org.springframework.web.HttpeequestMethodNotSupportedException", "message": "Request method 'POST' not supported", "path": "/api/rest/provMns/v1/NSS/nssi/NSSI-C-001-HDBNJ-NSSMF-01-A-ZX" } ###################################################################################### # Request # getNSSIbyId (Get NSSI by NSSI ID) ###################################################################################### curl -v -s -X GET -k "https://localhost:11111/api/rest/provMns/v1/NSS/nssi/NSSI-C-001-HDBNJ-NSSMF-01-A-ZX" ###################################################################################### # Response # getNSSIbyId (Get NSSI by NSSI ID) ###################################################################################### > GET /api/rest/provMns/v1/NSS/nssi/NSSI-C-001-HDBNJ-NSSMF-01-A-ZX HTTP/1.1 > Host: localhost:11111 > User-Agent: curl/7.47.0 > Accept: */* > < HTTP/1.1 404 < Content-Length: 0 < Date: Sat, 11 Apr 2020 05:04:38 GMT < ###################################################################################### # Request # deallocateNSSI (deallocate NSSI with service) ###################################################################################### curl -v -s -X DELETE -k "https://localhost:11111/api/rest/provMns/v1/NSS/SliceProfiles/ab9af40f13f721b5f13539d87484098" \ -H "Content-Type:application/json" \ -d '{ "snssai": ["001-100001"], "nsiId": "NSI-M-001-HDBNJ-NSMF-01-A-ZX", "nssiId": "NSSI-C-001-HDBNJ-NSSMF-01-A-ZX", "terminateNssiOption": 0, "scriptName": "CN1" }' | python3 -m json.tool ###################################################################################### # Response # deallocateNSSI (deallocate NSSI with service) ###################################################################################### > DELETE /api/rest/provMns/v1/NSS/SliceProfiles/ab9af40f13f721b5f13539d87484098 HTTP/1.1 > Host: localhost:11111 > User-Agent: curl/7.47.0 > Accept: */* > Content-Type:application/json > Content-Length: 170 > } [170 bytes data] * upload completely sent off: 170 out of 170 bytes < HTTP/1.1 404 < Content-Length: 0 < Date: Sat, 11 Apr 2020 05:49:33 GMT < * Connection #0 to host localhost left intact Expecting value: line 1 column 1 (char 0) This is not a bug because a NSSI does not exist and not be able to check how it works. ###################################################################################### # Request # terminateNSSI (terminate NSSI without service) ###################################################################################### curl -s -X DELETE -k "https://localhost:11111/api/rest/provMns/v1/NSS/nssi/NSSI-C-001-HDBNJ-NSSMF-01-A-ZX" \ -H "Content-Type:application/json" \ -d '{ "scriptName": "CN1" }' | python3 -m json.tool ###################################################################################### # Response # terminateNSSI (terminate NSSI without service) ###################################################################################### > DELETE /api/rest/provMns/v1/NSS/nssi/NSSI-C-001-HDBNJ-NSSMF-01-A-ZX HTTP/1.1 > Host: localhost:11111 > User-Agent: curl/7.47.0 > Accept: */* > Content-Type:application/json > Content-Length: 23 > } [23 bytes data] * upload completely sent off: 23 out of 23 bytes < HTTP/1.1 404 < Content-Length: 0 < Date: Sat, 11 Apr 2020 05:58:58 GMT < * Connection #0 to host localhost left intact Expecting value: line 1 column 1 (char 0) This is not a bug because a NSSI does not exist and not be able to check how it works. ###################################################################################### # Request # NSSIChangeNotify: Notify the changed NSSI List to NSMF ###################################################################################### curl -s -X POST -k "https://localhost:11111/api/rest/provMns/v1/NSS/nssi/notification" \ -H "Content-Type:application/json" \ -d '{ "changedNssiList": ["NSSI-C-001-HDBNJ-NSSMF-01-A-ZX"] }' | python3 -m json.tool ###################################################################################### # Response # NSSIChangeNotify: Notify the changed NSSI List to NSMF ###################################################################################### {} This is not a bug because a NSSI does not exist and not be able to check how it works. ###################################################################################### # Request # activateNSSI(activate NSSI) ###################################################################################### curl -s -X PUT -k "https://localhost:11111/api/rest/provMns/v1/NSS/001-100001/activation" | python3 -m json.tool ###################################################################################### # Response # activateNSSI(activate NSSI) ###################################################################################### > PUT /api/rest/provMns/v1/NSS/001-100001/activation HTTP/1.1 > Host: localhost:11111 > User-Agent: curl/7.47.0 > Accept: */* > < HTTP/1.1 400 < Content-Type: application/json;charset=UTF-8 < Transfer-Encoding: chunked < Date: Sat, 11 Apr 2020 06:06:37 GMT < Connection: close < { [446 bytes data] * Closing connection 0 { "timestamp": 1586585197784, "status": 400, "error": "Bad Request", "exception": "org.springframework.http.converter.HttpMessageNotReadableException", "message": "Required Request body is missing: public org.springframework.http.responseEntity com.cmcc.simulator.controller.SliceController.activateNSSI(java.lang.String,com.cmcc.simulator.module.Nssi)", "path": "/api/rest/provMns/v1/NSS/001-100001/activation" } Folling APIs has not been tested yet. modifyNSSI(update NSSI with service) modifyNSSIbyId(update NSSI without service) deactivateNSSI(deactivate NSSI) getJobStatus(get job status of NSSI)