Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

Code Block
RemoveServedCells(inventoryName string, servedCells []*entities.ServedCellInfo) error
UpdateEnb(nodebInfo *entities.NodebInfo, servedCells []*entities.ServedCellInfo) error
DeleteEnb(nodebInfo *entities.NodebInfo) error
Jira
serverORAN Jira
columnskey,summary,type,created,updated,due,assignee,reporter,priority,status,resolution
serverId5ec52304-b77c-3ce7-af6a-112cb13e6008
keyRIC-431

...

Add eNB REST API


Info
titleAgenda
  • POST /v1/nodeb/enb is triggered, request body is validated
  • Execute GetNodeb

...

  • with RAN name coming from the request

...

  • .
    • If we have a DB error or if it

...

    • already exists → error
  • Create a NodebInfo struct with an Enb configuration, populate it with the request data and set its connection status to DISCONNECTED
  • Execute SaveNodeb, where sdl.SetAndPublish will be triggered for eNB type, sending the RAN_MANIPULATION channel and the <RAN_NAME>_ADDED event.

...

  • Return 
    Status
    colourGreen
    title201 Created

...

  •  with NodebInfo response.


POST /v1/nodeb/enb

Code Block
titleRequest Body

...

code
{
	"ranName": "",
	"globalNbId": {
					plmnId: "",
					nbId:	""
	},
	"ip": "",
	"port": 1234,
	"enb": {
			"enbType": "",
			"servedCells": [{}],
			"guGroupIds": [""]
	}
}


Sequence Diagram

Image RemovedImage Added


Update eNB REST API


Info
titleAgenda
  • PUT /v1/nodeb/enb/<RAN_NAME> is triggered, request body is validated
  • Execute GetNodeb with RAN name coming from the request.
    • If we have a DB error or if it doesn't exist → error
  • Execute RemoveServedCells to remove the existing eNB cells
  • Set the nodeb with the request's data
  • Execute UpdateEnb 
    • Set cells in both Cell ID key & PCI key
    • Set nodeb in both RAN ID key & RAN NAME key
    • Execute sdl.SetAndPublish, sending the RAN_MANIPULATION channel and the <RAN_NAME>_UPDATED event.
  • Return 
    Status
    colourGreen
    title200 OK
     with NodebInfo response.

PUT /v1/nodeb/enb/<RAN_NAME>

Code Block
titleRequest Body
{
	"enb": {
			"enbType": "",
			"servedCells": [{}],
			"guGroupIds": [""]
	}
}


Sequence Diagram

Delete eNB REST API


Info
titleAgenda
  • DELETE /v1/nodeb/enb/<RAN_NAME> is triggered.
  • Execute GetNodeb with RAN name coming from the request.
    • If we have a DB error or if it doesn't exist → error
  • Execute RemoveEnb 
    • Remove cells from both Cell ID key & PCI key (call RemoveServedCells)
    • Remove nodeb from both RAN ID key & RAN NAME key
    • Execute sdl.SetAndPublish(data,"RAN_MANIPULATION", "<RAN_NAME>_DELETED")
  • Return 
    Status
    colourGreen
    title204 No Content
     response.


DELETE /v1/nodeb/enb/<RAN_NAME>


Sequence Diagram

Image Added