1. RC Subscription Delete Request¶
1.1 XappRcSubscriptionDeleteRequestPublisherPubData¶
The XappRcSubscriptionDeleteRequestPublisherPubData is responsible for managing the deletion of an existing RC (Radio Connection) subscription between the RAN Intelligent Controller (RIC) and the E2 nodes.
This request is used when an xApp needs to terminate the monitoring or control of previously subscribed radio connections over the E2 interface.
The deletion ensures that no further radio connection data is reported for the specific subscription.
1.2 Examples¶
Info
To publish a RC Subscription Delete request, the following NATS subject must be used:
e2-t.E2SM-RANCTL-UNSUBSCRIBE
The following example demonstrates how to build and send the XappRcSubscriptionDeleteRequestPublisherPubData message for deleting a previously established RC subscription.
Example
Send RC Subscription Delete example:
# Add Accelleran xapp library
from xapp_lib import xapp_lib
# Add protobuf definitions
from xapp_lib.proto_pb2.accelleran.e2 import genXappRc_pb2
# Add function to serialize json dict in protobuf
from google.protobuf.json_format import ParseDict
def main():
### Use xApp Builder to create the xApp
builder = xapp_lib.XAppBuilder("../..", absolute=False)
builder.metadata("core/xapp_metadata.json")
builder.endpoints("config/xapp_endpoints.json")
builder.config("config/xapp_config.json")
builder.readme("README.md")
xapp = builder.build()
# Define the XappRcSubscriptionDeleteRequestPublisherPubData python dictionnary
e2sm_rc_subscription_delete_config = {
"E2smBaseSubscriptionDeleteData": {
...
}
}
# Serialize the subscription delete request message
e2sm_rc_delete_subscription_request_msg = genXappRc_pb2.XappRcSubscriptionDeleteRequestPublisherPubData()
ParseDict(e2sm_rc_subscription_delete_config, e2sm_rc_delete_subscription_request_msg)
# Send e2sm rc subscription delete message
xapp.nats(endpoint="NATS_URL_5G").send_data(
"e2-t.E2SM-RANCTL-UNSUBSCRIBE", e2sm_rc_delete_subscription_request_msg.SerializeToString()
)
1.2.1 Subscription Delete¶
Example XappRcSubscriptionDeleteRequestPublisherPubData message for subscription delete:
E2 RC Subscription Delete Request example
{
"E2smBaseSubscriptionDeleteData": {
"RequestId": {
"RicRequestorId": 23,
"RicInstanceId": 153563
},
"RanFunctionName": "ORAN-E2SM-RC",
"RanFunctionId": 1,
"NodeId": {
"GlobalGnbId": {
"PlmnIdentity": {
"Data": [
153,
249,
153
]
},
"GnbId": {
"Value": 0,
"Length": 32
}
}
}
}
}
1.3 Schema¶
This section provides the json schema for the E2 RC Subscription Delete Request, which outlines the expected structure and data types.
E2 RC Subscription Delete Request schema
{
"$schema": "http://json-schema.org/draft-04/schema#",
"$ref": "#/definitions/XappRcSubscriptionDeleteRequestPublisherPubData",
"definitions": {
"PBE2apMsgData.E2smBaseSubscriptionDeleteData": {
"properties": {
"RequestId": {
"$ref": "#/definitions/PBE2apMsgData.RicRequestId",
"additionalProperties": true
},
"RanFunctionName": {
"type": "string"
},
"RanFunctionId": {
"type": "integer"
},
"NodeId": {
"$ref": "#/definitions/PBE2apMsgData.GlobalE2NodeId",
"additionalProperties": true
}
},
"additionalProperties": true,
"type": "object",
"title": "E 2 Sm Base Subscription Delete Data"
},
"PBE2apMsgData.GlobalE2NodeId": {
"properties": {
"GlobalGnbId": {
"$ref": "#/definitions/PBE2apMsgData.GlobalGnbId",
"additionalProperties": true
},
"OptionalGnbCuUpId": {
"type": "string"
},
"OptionalGnbDuId": {
"type": "string"
}
},
"additionalProperties": true,
"type": "object",
"title": "Global E 2 Node Id",
"description": "*O-RAN.WG3.E2AP-v02.00 9.2.6 Global E2 Node ID"
},
"PBE2apMsgData.GlobalGnbId": {
"properties": {
"PlmnIdentity": {
"$ref": "#/definitions/PBE2apMsgData.PlmnIdentity",
"additionalProperties": true
},
"GnbId": {
"$ref": "#/definitions/PBE2apMsgData.GnbId",
"additionalProperties": true
}
},
"additionalProperties": true,
"type": "object",
"title": "Global Gnb Id"
},
"PBE2apMsgData.GnbId": {
"properties": {
"Value": {
"type": "integer"
},
"Length": {
"type": "integer",
"description": "Number of bits used in the gnbId. This may vary from 22 to 32"
}
},
"additionalProperties": true,
"type": "object",
"title": "Gnb Id"
},
"PBE2apMsgData.PlmnIdentity": {
"properties": {
"Data": {
"items": {
"type": "integer"
},
"type": "array"
}
},
"additionalProperties": true,
"type": "object",
"title": "Plmn Identity",
"description": "*O-RAN.WG3.E2SM-R003-v03.00 6.2.3.1 PLMN Identity"
},
"PBE2apMsgData.RicRequestId": {
"properties": {
"RicRequestorId": {
"type": "integer"
},
"RicInstanceId": {
"type": "integer"
}
},
"additionalProperties": true,
"type": "object",
"title": "Ric Request Id"
},
"XappRcSubscriptionDeleteRequestPublisherPubData": {
"properties": {
"E2smBaseSubscriptionDeleteData": {
"$ref": "#/definitions/PBE2apMsgData.E2smBaseSubscriptionDeleteData",
"additionalProperties": true,
"description": "See E2smBaseSubscriptionDeleteData for detailed description of this field"
},
"tlpublishTime": {
"type": "string",
"description": "Contains the time of publishing in EPOCH milliseconds"
},
"spanContext": {
"type": "string",
"description": "Contains an opentracing spancontext",
"format": "binary",
"binaryEncoding": "base64"
}
},
"additionalProperties": true,
"type": "object",
"title": "Xapp Rc Subscription Delete Request Publisher Pub Data",
"description": "* Publisher : XappRcSubscriptionDeleteRequestPublisher Topic : E2SM-RANCTL-UNSUBSCRIBE Description : Publishes E2 Subscription Delete Request initiated by the XAPP to the SMRC"
}
}
}