-
Story
-
Resolution: Done
-
Medium
-
None
-
None
Background and motivation
We need to publish event when the RAN is changing its Connection Status.
Most of our clients need "binary" notification - Moving from connected to Non-Connected (Either Disconnect or Shutdown) and vice averse. They don't care about moving inside the the Non-connected group.
Which SDL API to use (SetAndPublish or only publish) - Dev territory.
Please look on the https://gerrit.o-ran-sc.org/r/gitweb?p=ric-plt/sdlgo.git;a=blob;f=doc.go;h=2dbff8497c2cb1beae6c0ae959589a08a94241ca;hb=HEAD Wiki
also read the attached mail on the "Generate Redis SL Notification" subject
Consider the following, if sometime in the future there will be a client which will need also the inside Non-Connected state changing:
- Today we will “publish” a channel (is it the equivalent to “Topic” in Kafka?) which is “binary” – Connected / Not connected.
- If, in the future inside the Non-Connected, there will be a client that interest in this state change, when we will move from Non-Connected status one (Like Disconnect) to Non-Connected status two (like Shut-Down) – we will publish different channel “Topic”). So the 2 “channel” will give the solution of ALL Connection Status Changing. So this future client will subscribe to these 2 “channel”.
If we can do it - wonderful. Read also my question ("The Change State Clients what they expect"), clients prefers the Binary, my suggestion and Thoralf response. please understand the Publish and understand if his saying that
If not - we will publish event on every changing in Connection State (but at least the old state should be different from the old one).
Note: considered the same logic in calling the Alarm Library.
Requirements
Turn the today Set to SetAndPublish:
- New RAN is sending us Setup (either we succeed with Setup Response or we fail with Setup Response
- Existing RAN in any Non-Connected state received Setup which succeed.
- Lost Connection to Connected RAN
- Red Button to Connected RAN
- KA identifies E2T instance isn't answering, and it moves RAN from Connected to Disconnect
- E2T Restart and it moves RAN from Connected to Disconnect
The other scenarios will continue with Set, here is some examples (there are more):
- Lost Connection to RAN in Shutting Down
- Red Button to disconnected or shut-down already RAN
- ....
Acceptance
- The best is to write a Test Subscriber. but if it it difficult - test it through teh SDL calling.
- Simulate Setup for new RAN. See Publish is called
- Simulate now Lost connection. See Publish is called
- Simulate now Red button. See Publish is NOT called
- Simulate now Setup for RAN. See Publish is called
- Simulate now Setup for RAN. See Publish is NOT called
- Simulate now Red button. Moving to Shutting Down causes Publish. During the Red Button we will receive Lost connection. See Publish is NOT called. See Publish is NOT called when we moved it to Shut Down.
- Simulate now Setup for RAN. See Publish is called
Test Plan
Given | When | Then |
---|---|---|
No RAN | E2 setup is triggered | SetAndPublish is called |
Connected RAN | Lost connection | SetAndPublish is called |
Disconnected RAN | Red button | SetAndPublish is NOT called |
Disconnected RAN | E2 setup is triggered | SetAndPublish is called |
Connected RAN | E2 setup is triggered | SetAndPublish is NOT called |
Connected RAN | Red button | SetAndPublish is called when moving to SHUTTING_DOWN but not when moving to SHUT_DOWN |
- clones
-
RIC-475 E2M publish SDL event in case Connection Status is changed - Enhance existing flows
- Done