SDN-R <-> CPS Integration
TBDMT Reference: CPS-TBDMT Service
CPS API Analyse: CPS APIs
Templates Needed
1. instantiateRANSliceAllocate
S.No | Config DB API | Template | Schema | id | JSON Payload |
---|---|---|---|---|---|
2.instantiateRANSliceModifyAllocate (Templates and payloads are verified)
S.No | Config DB API | Template (Payload to Create Template API) | Schema | id | JSON Payload |
---|---|---|---|---|---|
1. | api/sdnc-config-db/v4/nearrtric/{ranNFNSSIId} | { | ran-network | get-nearrtric-by-rannfnssi | { |
2 | /api/sdnc-config-db/v4/cell-list/{trackingArea} | { | cps-cavsta-onap-internal | get-cells-list | { |
3 | /api/sdnc-config-db/v4/nearRTRIC | { | ran-network | put-nearrtric | { { |
4 | /api/sdnc-config-db/v4/gNBCUCP | { [@idNRCellCU='\''{{idNRCellCU}}'\'']/attributes/pLMNInfoList[@mcc='\''{{mcc}}'\'' and @mnc='\''{{mnc}}'\'']", | ran-network | put-nrcellcu | { "idGNBCUCPFunction":"cucpserver1", "idNRCellCU":"15289 { |
5 | /api/sdnc-config-db/v4/gNBCUUP | { pLMNInfoList[@mcc='\''{{mcc}}'\'' and @mnc='\''{{mnc}}'\'']", | ran-network | put-gnbcuupfunction | { |
6 | /api/sdnc-config-db/v4/gNBDU | { [@idNRCellDU='\''{{idNRCellDU}}'\'']/attributes/pLMNInfoList[@mcc='\''{{mcc}}'\'' and @mnc='\''{{mnc}}'\'']", | ran-network | put-nrcelldu | { |
7 | /api/sdnc-config-db/v4/rrmPolicy | '{ [@idNRCellCU='\''{{idNRCellCU}}'\'']/attributes/RRMPolicyRatio[@id='\''{{id}}'\'']", | ran-network | put-nrcellcu-rrm-policy | { |
8 | /api/sdnc-config-db/v4/rrmPolicy | { attributes/RRMPolicyRatio[@id='\''{{id}}'\'']", | ran-network | put-cuup-rrm-policy | { |
9 | /api/sdnc-config-db/v4/rrmPolicy | { [@idNRCellDU='\''{{idNRCellDU}}'\'']/attributes/RRMPolicyRatio[@id='\''{{id}}'\'']", | ran-network | put-nrcelldu-rrm-policy | { |
10 | /api/sdnc-config-db/v4/ranslice-details | { | cps-ran-inventory | update-ran-inventory | { |
11 | /api/sdnc-config-db/v4//rrmPolicy/{resourceType}/{resourceId} | { NRCellCU[@idNRCellCU='\''{{idNRCellCU}}'\'']", | ran-network | get-nrcellcu-rrm-policy | { |
12 | /api/sdnc-config-db/v4//rrmPolicy/{resourceType}/{resourceId} | { | ran-network | get-cuup-rrm-policy | { |
13 | /api/sdnc-config-db/v4//rrmPolicy/{resourceType}/{resourceId} | { NRCellDU[@idNRCellDU='\''{{idNRCellDU}}'\'']", | ran-network | get-nrcelldu-rrm-policy | { |
14 | update NRCellCU RRM Policy member | { [@idNRCellDU='\''{{idNRCellDU}}'\'']/attributes/RRMPolicyRatio[@id='\''{{id}}'\'']/attributes", | ran-network | put-nrcelldu-rrm-policy-member | { |
15 | update CUUP RRM Policy member | { attributes/RRMPolicyRatio[@id='\''{{id}}'\'']/attributes", | ran-network | put-cuup-rrm-policy-member | { |
16 | update NRCellDU RRM Policy member | { NRCellCU[@idNRCellCU='\''{{idNRCellCU}}'\'']/attributes/RRMPolicyRatio[@id='\''{{id}}'\'']/attributes", | ran-network | put-nrcellcu-rrm-policy-member | { |
17 | add new Slice Profile under NearRTRIC | { | ran-network | add-slice-profile | { |
3.activateRANSliceInstance
S.No | Config DB API | Template | Schema | id | JSON Payload | Output | Comments |
---|---|---|---|---|---|---|---|
api/sdnc-config-db/v4/nearrtric/{ranNFNSSIId} | //ranNFNSSIIdList[@RANNFNSSI =1]/ancestor::NearRTRICs | cps-ran-schema-model | { "gNBCUCPList": [ { "cellCUList": [ { "cellLocalId": 0, "pLMNInfoList": [ { "pLMNId": "string", "sNSSAI": { "configData": { "dLThptPerSlice": 0, "lastUpdatedTS": { "date": 0, "day": 0, "hours": 0, "minutes": 0, "month": 0, "nanos": 0, "seconds": 0, "time": 0, "timezoneOffset": 0, "year": 0 }, "maxNumberOfConns": 0, "uLThptPerSlice": 0 }, "globalSubscriberId": "string", "sNSSAI": "string", "status": "string", "subscriptionServiceType": "string" } } ], "resourceType": "string" } ], "gNBCUName": "string", "gNBId": 0, "gNBIdLength": 0, "nFType": "string", "nearRTRICId": 0, "pLMNId": "string" } ], "gNBCUUPList": [ { "gNBCUUPId": 0, "gNBId": 0, "gNBIdLength": 0, "nearRTRICId": 0, "pLMNInfoList": [ { "pLMNId": "string", "sNSSAI": { "configData": { "dLThptPerSlice": 0, "lastUpdatedTS": { "date": 0, "day": 0, "hours": 0, "minutes": 0, "month": 0, "nanos": 0, "seconds": 0, "time": 0, "timezoneOffset": 0, "year": 0 }, "maxNumberOfConns": 0, "uLThptPerSlice": 0 }, "globalSubscriberId": "string", "sNSSAI": "string", "status": "string", "subscriptionServiceType": "string" } } ], "resourceType": "string" } ], "gNBDUList": [ { "cellDUList": [ { "administrativeState": "string", "cellLocalId": 0, "cellState": "string", "nRPCI": 0, "nRTAC": 0, "operationalState": "string", "pLMNInfoList": [ { "pLMNId": "string", "sNSSAI": { "configData": { "dLThptPerSlice": 0, "lastUpdatedTS": { "date": 0, "day": 0, "hours": 0, "minutes": 0, "month": 0, "nanos": 0, "seconds": 0, "time": 0, "timezoneOffset": 0, "year": 0 }, "maxNumberOfConns": 0, "uLThptPerSlice": 0 }, "globalSubscriberId": "string", "sNSSAI": "string", "status": "string", "subscriptionServiceType": "string" } } ], "resourceType": "string" } ], "gNBDUId": 0, "gNBDUName": "string", "gNBId": 0, "gNBIdLength": 0, "nFType": "string", "nearRTRICId": 0, "pLMNId": "string" } ], "gNBId": 0, "nearRTRICId": 0, "pLMNInfoList": [ { "pLMNId": "string", "sNSSAI": { "configData": { "dLThptPerSlice": 0, "lastUpdatedTS": { "date": 0, "day": 0, "hours": 0, "minutes": 0, "month": 0, "nanos": 0, "seconds": 0, "time": 0, "timezoneOffset": 0, "year": 0 }, "maxNumberOfConns": 0, "uLThptPerSlice": 0 }, "globalSubscriberId": "string", "sNSSAI": "string", "status": "string", "subscriptionServiceType": "string" } } ], "ranNFNSSIList": [ "string" ], "resourceType": "string", "trackingArea": [ "string" ] } | ||||
/api/sdnc-config-db/v4/plmn/{sliceProfileId} | /ran-inventory/ran-slices/sliceProfilesList[@sliceProfileId={{sliceProfileId}}]/pLMNIdList | ran-inventory | { "pLMNIdList":[ { "mcc":"310", "mnc":"410" } ] } | based on documentation was returning "PLMNId as String" here we have a list, yang models defines that could be as much as 6 elements, hacing each one mcc and mnc |
4.instantiateRANSliceReconfigure
5.terminateRANSliceInstance
Data feed to store the templates in TBDMT
Prepare the .sql file once the templates are finalized