Skip to content

0.0.6: Implementation JSON and E3AP and pairing with libe3 (#48)

Choose a tag to compare

@github-actions github-actions released this 05 Mar 20:06
· 48 commits to main since this release
a61f841
* add script to convert asn1 definition to json

* refactor: update E3 ASN.1 definitions and JSON schema for consistency and clarity

* add Nvidia dApp implementation with ASN.1 and JSON encoding support

* update E3 ASN.1 and JSON definitions to make e3apProtocolVersion optional

* feat: enhance dApp setup request with metadata and update E3 interface for improved clarity

* feat: add optional fields for subscription time and periodicity in E3-SubscriptionRequest

* fix: remove length constraint from ranFunctionList in E3-SetupResponse

* Bump version to 0.0.6 and add SimpleDApp example

- Updated VERSION file to 0.0.6.
- Introduced a new example script `simple_dapp.py` demonstrating the usage of SimpleDApp with libe3's simple_agent.
- Modified `spectrum_dapp.py` to improve subscription handling and ensure proper checks for RAN functions.
- Updated `pyproject.toml` to include the new `simple` package.
- Enhanced DApp class to support multiple RAN Function IDs and improved subscription request handling.
- Updated ASN.1 definitions in `e3.asn` to include new subscription delete structure and response codes.
- Improved error logging in `e3_connector.py` for ZMQ setup failures.
- Enhanced JSON encoding/decoding in `e3_encoder.py` to handle binary fields more effectively.
- Refactored `e3_interface.py` to manage indication and subscription callbacks more efficiently.
- Added `__init__.py` and `simple_dapp.py` files in the `simple` package.

* Refactor E3 Protocol: Remove legacy scripts and update message handling

- Deleted `dump_packets.sh`, `server.py`, `e3.c`, and `e3.h` files to clean up unused code.
- Updated JSON schema in `e3.json` to reflect new message structures and required fields.
- Enhanced `e3_encoder.py` to support new subscription and control action message formats.
- Modified `e3_interface.py` to handle new identifiers and subscription management.
- Adjusted ASN.1 definitions in `e3sm_nvidia.asn` and `e3sm_spectrum.asn` to align with updated control action structures.
- Updated `spectrum_dapp.py` to reflect changes in control action message encoding and decoding.

* feat: include CONTROL_ID in subscription request and remove redundant logging

* feat: add dAppIdentifier to subscription response and update handling logic

* feat: update PDU structure to include message ID and adjust encoding/decoding logic

* feat: implement manage_subscription_response in DApp and update handling in SimpleDApp and SpectrumSharingDApp

* Change from multiprocess to multithreading

update logging level for subscription response and rename indication handler method

* feat: enhance SimpleDApp with ASN.1 encoding/decoding and add support for RAN function data

* feat: update ranFunction data handling to support multiple telemetry and control identifiers

* feat: switch from multiprocessing to threading for event handling in DApp

* Add release message to allow graceful disconnection

* feat: add reporting functionality for every third sequence in SimpleDApp

* feat: enhance subscription request handling with periodicity parameter and update ASN.1 definitions

* feat: add periodicity parameter to subscription request methods in E3Encoder and E3Interface

* Refactor control action methods to remove default parameters and update ASN.1 definitions for telemetry and control identifier lists

* fix: add IDs of interest for NvidiaDApp and improve error logging in control loops

* fix: adjust connection attempts logic and enhance IQSaver annotation handling

* fix: refactor DApp initialization parameters and improve logging in E3Interface