You are viewing an old version of this page. View the current version.

Compare with Current View Page History

« Previous Version 6 Next »

One single docker command to start policy agent is like this:


docker run -d -p 8081:8081 -p 8344:8433 -v "application_configuratio.json:/opt/app/policy-agent/application_configuration.json" [--network=<network-name>] nexus3.o-ran-sc.org:10004/o-ran-sc/nonrtric-policy-agent


  1. The key point here is that Korea team must compose an “application_configuration.json” file, this is the config file for policy-agent to start properly.

And to mount it when starting the docker container.

application_configuration.json  template is like this:

{

   "config": {

      "//description": "Application configuration",

      "controller": [

         {

            "name": "a1-controller",

            "baseUrl": "http://a1-controller:8181",

            "userName": "admin",

            "password": "Kp8bJ4SXszM0WXlhak3eHlcse2gAw84vaoGGmJvUy2U"

         }

      ],

      "ric": [//should be gnodeb config

         {

            "name": "ric1",

            "baseUrl": "http://a1-sim-OSC:8085/",

            "controller": "a1-controller",

            "managedElementIds": [

               "kista_1",

               "kista_2"

            ]

         },

         {

            "name":"ric2",

            "baseUrl":"http://a1-sim-STD:8085/",

            "controller": "a1-controller",

            "managedElementIds":[

               "kista_1",

               "kista_2"

            ]

         }

      ]

   }

}


If they are not using default network, should also append [--network=<network-name>] in the comand.


1.create service1 to policy agent:

curl -k -X PUT -sw %{http_code} -H accept:application/json -H Content-Type:application/json http://localhost:8081/service --data '{"callbackUrl": "http://callback-receiver:8090/callbacks/1","keepAliveIntervalSeconds": "3600","serviceName": "service1"}'

2.create policy 2001 to ric1 with type1 and service1 via policy agent:

curl -k -X PUT -sw %{http_code} -H accept:application/json -H Content-Type:application/json "http://localhost:8081/policy?id=2001&ric=ric1&service=service1&type=1" --data '{"scope": {"ueId": "ue3100","qosId": "qos3100"},"qosObjective": {"priorityLevel": 3101}}'


here ric1 is your OSC version near-rt-ric, and make sure service1 and type=1 exists in your ric.

Policy type cannot be created via policy agent, you have to create policy type in ric/gNB first.


3. create policy 2100 to ric2 with service1 via policy agent, no type:

curl -k -X PUT -sw %{http_code} -H accept:application/json -H Content-Type:application/json "http://localhost:8081/policy?id=2100&ric=ric2&service=service1" --data '{"scope": {"ueId": "ue3100","qosId": "qos3100"},"qosObjective": {"priorityLevel": 3100}}'


here ric2 is your STD version near-rt-ric, no type required. Make sure service1 exists in your ric.


4. Get policy agent status:

curl -skw %{http_code} http://localhost:8081/status


  • No labels