diff --git a/.vscode/settings.json b/.vscode/settings.json new file mode 100644 index 0000000000000000000000000000000000000000..fee94eca669e859eb286b65b423152a2e042722f --- /dev/null +++ b/.vscode/settings.json @@ -0,0 +1,20 @@ +{ + "cSpell.words": [ + "AEF's", + "aefs", + "APF's", + "apfs", + "CAPIF", + "libintl", + "localeconv", + "localemodule", + "Offboard", + "offboarding", + "onboarded", + "pesp", + "pyenv", + "textdomain", + "Unpublish", + "virtualenv" + ] +} \ No newline at end of file diff --git a/README.md b/README.md index fdea6f03e6aa706499ab48cb07220e5a72590947..9440a5bde0a3f3b1923f837fedaf275f4669402a 100644 --- a/README.md +++ b/README.md @@ -6,7 +6,7 @@ This repository develops a Python Software Development Kit(SDK) which focuses on connecting to OpenCAPIF (Common API Framework for 3GPP Northbound APIs) in a simple way, lowering integration complexity and allowing developers to focus on Network Applications (NetApps) or services development. -OpentCAPIF SDK provides a set of libraries to enable either CAPIF provider and invoker roles, and other functions to simplify procedures calls towards OpenCAPIF entity. +OpenCAPIF SDK provides a set of libraries to enable either CAPIF provider and invoker roles, and other functions to simplify procedures calls towards OpenCAPIF entity. Current version of OpenCAPIF SDK is compatible with following publicly available releases: - [OpenCAPIF Release 1.0](https://ocf.etsi.org/documentation/v1.0.0-release/) @@ -147,7 +147,7 @@ A NetApp development running as a Provider would typically follow this process s ``` 3. **Prepare API details:** \ - Locate the provider API details in the provider_folder path, more specifically in the username folder. Choose the APF (Application Programming Function) and AEFs (Application Enabling Functions) identifiers, and fulfill the publish_req structure and the api_description_path: + Locate the provider API details in the provider_folder path, more specifically in the username folder. Choose the APF (Application Programming Function) and AEFs (Application Enabling Functions) identifiers, and fulfil the publish_req structure and the api_description_path: <p align="center"> <img src="./doc/images/capif-provider-details-example.png" alt="example" width="400"/> @@ -174,5 +174,5 @@ In the `provider_folder`, it will be located several folders with each `capif_us - `Capif_provider_details.json` : Contains all the APFs and AEFs ids that have already onboarded with this capif_username - `CAPIF_<your_api_name><your_API_id>.json` : If it's already published or updated an API, It will be available a copy of your last payload. -- `Service_received.json` : If it's alread used the get an api or get all apis functionality, It will be available the response to your request. -- `Published-Apis.json` : Constains the currently published APIs with their ApiId \ No newline at end of file +- `Service_received.json` : If it's already used the get an api or get all apis functionality, It will be available the response to your request. +- `Published-Apis.json` : Contains the currently published APIs with their ApiId \ No newline at end of file diff --git a/doc/sdk-configuration.md b/doc/sdk-configuration.md index b9ff630cec3eadd382909b8f4f8c9838022cbb7c..2201924e43861c3594971eb5aa9840f2cb118104 100644 --- a/doc/sdk-configuration.md +++ b/doc/sdk-configuration.md @@ -7,7 +7,7 @@ Before configuration it's needed to have completed the [requirements](./sdk-prer # **1. Configuration via Config.json** -This file could also be fullfilled by [enviroment variables](../samples/enviroment-variables-sample.txt) +This file could also be fulfilled by [environment variables](../samples/enviroment-variables-sample.txt) - invoker_folder: The path (relative or absolute) of the folder you want to store your invoker information @@ -21,7 +21,7 @@ This file could also be fullfilled by [enviroment variables](../samples/envirome - capif_register_port:The port of your register host -- capif_callback_url:The Url you want to recieve CAPIF notifications(This functionality is not currently available) +- capif_callback_url:The Url you want to receive CAPIF notifications(This functionality is not currently available) - csr fields: Seven information fields for generating your invoker certificate(csr_country_name must be only two letters) @@ -33,7 +33,7 @@ This file could also be fullfilled by [enviroment variables](../samples/envirome - aefs: Number of AEF's you want to onboard as a provider Example:2 -- debug_mode: Boolean | If you want to recieve logs from SDK Example:True/False +- debug_mode: Boolean | If you want to receive logs from SDK Example:True/False - [discover_filter](#2configuration-via-discover_filterjson) @@ -91,9 +91,9 @@ This configuration fields is only mandatory if we want to use the [CAPIF_Publish For using the Publish Api function or the Update function the api_description_path **must** have been modified with the path to the Publish API that is wanted to share following the standard schema for [ServiceAPIDescription](https://github.com/jdegre/5GC_APIs/blob/Rel-18/TS29222_CAPIF_Publish_Service_API.yaml) -**AefIds fields won't need to fill out the from aefProfiles** array because you would already be configurating this fields by completing publisherAEFsids parameter +**AefIds fields won't need to fill out the from aefProfiles** array because you would already be configuring this fields by completing publisherAEFsids parameter -**If the publisherAEFsids parameter don't match with the aefProfiles in your [Api description](../api-samples/provider_api_description_sample.json) you will recieve an error** +**If the publisherAEFsids parameter don't match with the aefProfiles in your [Api description](../api-samples/provider_api_description_sample.json) you will receive an error** @@ -101,11 +101,11 @@ For using the Publish Api function or the Update function the api_description_pa # **Configuration via Register.json** -In order to use this SDK in a Local enviroment and creating and removing users, its mandatory to fullfill this fields. +In order to use this SDK in a Local environment and creating and removing users, its mandatory to fulfil this fields. This Feature is not included in the SDK. -[Here](https://labs.etsi.org/rep/ocf/capif/-/tree/REL1?ref_type=heads) is the link to the CAPIF oficial repository if it's wanted to create the Local enviroment +[Here](https://labs.etsi.org/rep/ocf/capif/-/tree/REL1?ref_type=heads) is the link to the CAPIF official repository if it's wanted to create the Local environment - register_host:The domain name of your register host - capif_register_port: The port of your register host @@ -114,13 +114,13 @@ This Feature is not included in the SDK. - capif_username: CAPIF user username - capif_password: CAPIF user password - config_path: Absolute path to the Config_files folder -- uuid: UUID for Deregistering the user +- uuid: UUID for Deregister the user This file is only used for the Functionalities of : - Register and login - Deregister and login -Each field is obligatory to complete except UUID, which is only obligatory in case of Deregistering the user. +Each field is obligatory to complete except UUID, which is only obligatory in case of Deregister the user. -Although this field is not obligatory we recomend to store the UUID parameter recieved by the Register and login functionality in this field. +Although this field is not obligatory we recommend to store the UUID parameter received by the Register and login functionality in this field. diff --git a/doc/sdk-installation.md b/doc/sdk-installation.md index 56ddc05ee92e201bf85981f1dd9b60dc97f99bf6..aef29d11037c3b815113b154f66d7fa95de01295 100644 --- a/doc/sdk-installation.md +++ b/doc/sdk-installation.md @@ -8,13 +8,13 @@ Follow next steps to perform OpenCAPIF SDK installation: - For developers installation is mandatory to have already installed: - pyenv -1. Create an enviroment with pyenv +1. Create an environment with pyenv ```console #Commands to install the Python environment pyenv install 3.12 pyenv virtualenv 3.12 pesp_sdk_env -#Activate your enviroment +#Activate your environment source your/path/to/.pyenv/versions/pesp_sdk_env/bin/activate ``` diff --git a/doc/sdk-usage.md b/doc/sdk-usage.md index 898a44045d715eabacc9f34b940c77d36aad086b..37cf0c4081c99eaa480f682ed2110e438af62bc3 100644 --- a/doc/sdk-usage.md +++ b/doc/sdk-usage.md @@ -2,7 +2,7 @@ OpenCAPIF SDK implements this set of features to easily integrate an application with CAPIF NF either manually or integrating SDK library directly within app code. -Before using it, it is required to have fullfilled the [requirements](./sdk-prerequirements.md) section, the [installation](./sdk-installation.md) section and the selected parts of the [configuration](./sdk-configuration.md) depending on the CAPIF role the NetApp is going to play. +Before using it, it is required to have fulfilled the [requirements](./sdk-prerequirements.md) section, the [installation](./sdk-installation.md) section and the selected parts of the [configuration](./sdk-configuration.md) depending on the CAPIF role the NetApp is going to play.  @@ -17,7 +17,7 @@ This repository includes 2 different modes to test OpenCAPIF SDK: **NOTE**:register file is not needed for the use of the SDK -**IMPORTANT**:It is needed to fill out config files depending on the features required to be used from the SDK.Please if you didn't fullfil this file, go to the [Configuration Section](./sdk-configuration.md) +**IMPORTANT**:It is needed to fill out config files depending on the features required to be used from the SDK.Please if you didn't fulfil this file, go to the [Configuration Section](./sdk-configuration.md) # Table of contents @@ -73,7 +73,7 @@ It is mandatory to have onboarded as a [invoker](#onboard_invoker--script-invoke ### get_tokens() // Script invoker_service_get_token.py -This functionality simplifies the way of getting created their propperly security context for each of the services and adquiring the access token to use the final APIs. +This functionality simplifies the way of getting created their properly security context for each of the services and acquiring the access token to use the final APIs. This functionality **requires** to to have onboarded as a [invoker](#onboard_invoker--script-invoker_capif_connectorpy) before and run the [discover](#discover--script-invoker_service_discoverpy) function at least once before. @@ -81,7 +81,7 @@ This functionality **requires** to to have onboarded as a [invoker](#onboard_inv ### update_invoker() and offboard_and_deregister_Invoker() // invoker_capif_connector_update.py and invoker_capif_connector_offboarding.py -For using this features we must have [onboarded as an invoker](#onboard_invoker--script-invoker_capif_connectorpy) previusly. +For using this features we must have [onboarded as an invoker](#onboard_invoker--script-invoker_capif_connectorpy) previously.  @@ -95,19 +95,19 @@ In the `provider_folder`, it will be located several folders with each `capif_us - `Capif_provider_details.json` : Contains all the APFs and AEFs ids that have already onboarded with this capif_username - `CAPIF_<your_api_name><your_API_id>.json` : If it's already published or updated an API, It will be available a copy of your last payload. -- `Service_received.json` : If it's alread used the get an api or get all apis functionality, It will be available the response to your request. -- `Published-Apis.json` : Constains the currently published APIs with their ApiId +- `Service_received.json` : If it's already used the get an api or get all apis functionality, It will be available the response to your request. +- `Published-Apis.json` : Contains the currently published APIs with their ApiId ### onboard_provider() // Script provider_capif_connector.py -Simplifies the process of onboarding for Provider users,also has the capability to register several APF's and AEF's if its necesary +Simplifies the process of onboarding for Provider users,also has the capability to register several APF's and AEF's if its necessary  [CAPIF_Publish_Service_API](https://github.com/jdegre/5GC_APIs/blob/Rel-18/TS29222_CAPIF_Publish_Service_API.yaml) -For using the Publish Service is mandatory to fullfill certain fields of the [Publish.json](./sdk-configuration.md) file +For using the Publish Service is mandatory to fulfil certain fields of the [Publish.json](./sdk-configuration.md) file ### publish_services() // Script provider_publish_api.py @@ -143,7 +143,7 @@ It is mandatory to have onboarded as a [provider](#onboard_provider--script-prov ### get_service() // Script provider_get_published_api.py -Simplifies the process of recieving the information of One service published previously in Published-Apis.json +Simplifies the process of receiving the information of One service published previously in Published-Apis.json It is mandatory to have onboarded as a [provider](#onboard_provider--script-provider_capif_connectorpy) before and to have [published any service](#publish_services--script-provider_publish_apipy) before @@ -153,7 +153,7 @@ It is mandatory to have onboarded as a [provider](#onboard_provider--script-prov ### get_all_services() // Script provider_get_all_published_api.py -Simplifies the process of recieving the information of all available services published previously in Published-Apis.json +Simplifies the process of receiving the information of all available services published previously in Published-Apis.json It is mandatory to have onboarded as a [provider](#onboard_provider--script-provider_capif_connectorpy) before and to have [published any service](#publish_services--script-provider_publish_apipy) before @@ -164,7 +164,7 @@ It is mandatory to have onboarded as a [provider](#onboard_provider--script-prov ### update_provider() and offboard_provider() // provider_capif_connector_update.py and provider_capif_connector_offboarding.py -For using this features we must have onboard as a provider previusly. +For using this features we must have onboard as a provider previously. It is mandatory to have onboarded as a [provider](#onboard_provider--script-provider_capif_connectorpy) before @@ -185,7 +185,7 @@ Facilitates the logging process for admin users and creates a CAPIF user, Facilitates the logging process for admin users and eliminates a CAPIF user. - +