Create VES client example for domain 'stndefined'
[oam.git] / solution / dev / ves-test-collector / client-scripts-ves-v7 / README.md
index fc0b059..3b33358 100644 (file)
-# O-RAN Components interfaceing with VES-Collector
+# O-RAN Components interfacing with VES-Collector
 
 
-Test scripts for interfaceing with DCAE.
+Test scripts for interfacing with DCAE.
 
 
-For ONAP Frankfurt the interface definition with DCAE is: [CommonEventFormat_30.1_ONAP.json](./json/schema/CommonEventFormat_30.1_ONAP.json).
-The ONAP VES version are described in [ONAP documentation](https://onap.readthedocs.io/en/latest/submodules/vnfrqts/requirements.git/docs/Chapter8/ves7_1spec.html).
+ONAP Honolulu DCAE VES-Collector supports the interface definition  [CommonEventFormat_30.2.1_ONAP.json](https://gerrit.onap.org/r/gitweb?p=dcaegen2/collectors/ves.git;a=blob;f=etc/CommonEventFormat_30.2.1_ONAP.json).
+
+The ONAP VES version is described in [ONAP documentation](https://docs.onap.org/projects/onap-vnfrqts-requirements/en/latest/Chapter8/ves_7_2/ves_event_listener_7_2.html?highlight=dcae%20ves%20header#).
+
+VES domain 'stndDefined' offers the capability to inject external schema definitions of the VES.
+This way the 3GPP notification syntax can be transported. Please see [SA88-Rel16 schema](https://forge.3gpp.org/rep/sa5/MnS/tree/SA88-Rel16/OpenAPI).
 
 
-For ONAP Frankfurt the interface definition with A&AI is: [add link when known]().
 
 ## Prerequisites
 
 
 ## Prerequisites
 
-This git project must be cloned on a ubuntu maschine in order to execute the bash scripts.
+This git project must be cloned on a ubuntu machine in order to execute the bash scripts.
 DCAE provide REST interfaces. In order to perform HTTP request [cURL](https://curl.haxx.se/) is used. 
 
 In case cURL needs to be please use the following command in a terminal.
 
 ```
 DCAE provide REST interfaces. In order to perform HTTP request [cURL](https://curl.haxx.se/) is used. 
 
 In case cURL needs to be please use the following command in a terminal.
 
 ```
-sudo apt-get install curl 
+sudo apt install curl 
 ```
 
 ```
 
-For interfacing with cert (https) and key must be extracted acoording to
-https://wiki.web.att.com/pages/viewpage.action?spaceKey=SDNCDEV&title=Query+AAI+Using+Postman.
+Python3 is expected to run some scripts.
+
 ```
 ```
-./_extractCertAndKey.sh
+pip3 install requests
 ```
 ```
-You will be ask to enter the "Input Password". 
-The password must not be shared here, please ask your admin.
 
 
-It is nessary to configure the DCAE servers for valid excecution of the bash scripts.
-Please update the varables in [config](-/config) accordintly to the test enviroment.
+It is necessary to configure the DCAE servers for valid execution of the bash scripts.
+Please update the variables in [config](-/config) accordingly to the test environment.
 
 ```
 urlVes=http://localhost:8443/eventListener/v7
 
 ```
 urlVes=http://localhost:8443/eventListener/v7
-basicAuthVes=ves:ves
+basicAuthVes=sample1:sample1
 ```
 
 ## Concept
 
 ```
 
 ## Concept
 
-Several tests scripts are avialable in the root of this project. 
-The bash scripts will perform a cURL command to send a REST request to the A&AI or DCAE server.
+Several tests scripts are available in the root of this project. 
+The bash and python scripts will perform an HTTPS-POST request to a VES-Collector.
+
+## VES Domains
+
+The syntax of a single VES event is devices into a common header and an event
+specific body.
 
 
-![SDN-R NBIs](images/sndr-nbis.png "SDN-R NBIs" )
+The event specific bodies are are identified by the VES domain.
 
 
-## Scripts
+### VES Domain "fault"
 
 
-This chapter descibes the several test scripts its usage and functions.
+This script 'sendFault' sends a VES message of domain "fault" to DCAE. It requires three command line parameters:
 
 
-### _example
+1. **equipmentType**: Valid equipment types for 1806 and 1810 are [1234, FYNG, R2D2, 7DEV, nSky, 1OSF] according to document "295672 SDN-R System Requirements".
+
+2. **alarmType**: or alarm name. Any string which references a supported alarm name of the equipment type.
 
 
-This scripts calls all the other scripts in order to give valid examples and to expain by examples the usage ot the other scripts.
+3. **severity**: The severity of tha alarm as defined by [VES schema](https://gerrit.onap.org/r/gitweb?p=dcaegen2/collectors/ves.git;a=blob;f=etc/CommonEventFormat_30.2.1_ONAP.json). 
+
+The following example show the usage of this script. The alarm "lossOfSignal" for equipment type "nSky" with severity "CRITICAL" will be send.
 
 ```
 
 ```
-./_example.sh 
+./sendFault.sh nSky lossOfSignal CRITICAL
 ```
 
 ```
 
-Please see valid examples using the followfing command (or continue reading):
+### VES Domain "heartbeat",
+
+The script 'sendVesHeartbeat' simulates a VES event of domain "heartbeat" from SDN-R to DCAE VES-Collector.
+
+The following example show the usage of this script:
 
 ```
 
 ```
-cat _example.sh 
+python3 sendVesHeartbeat.py
 ```
 
 ```
 
-### createPnf
+### VES Domain "measurement",
 
 
-The script creates a PNF object in A&AI. The script requires one input parameter. This parameter defines the equipment type. Valid equipment types for 1806 and 1810 are [1234, FYNG, R2D2, 7DEV, nSky, 1OSF] according to document "295672 SDN-R System Requirements".
+This script 'send15minPm' sends a VES message of domain "measurementsForVfScaling" to DCAE. The script requires one input parameter. This parameter defines the equipment type. Valid equipment types for 1806 and 1810 are [1234, FYNG, R2D2, 7DEV, nSky, 1OSF] according to document "295672 SDN-R System Requirements".
 
 ```
 
 ```
-./createPnf.sh 7DEV
+./send15minPm.sh FYNG
 ```
 
 ```
 
-### sendHeartbeat
+### VES Domain "mobileFlow",
+
+Not required by O-RAN Alliance OAM specification. 
 
 
-The script sends a "heardbeat" from SDN-R to DCAE.
+### VES Domain "notification",
+
+The script 'sendVesNotification' simulates a VES event of domain "notification" from a network-function to DCAE VES-Collector.
 
 The following example show the usage of this script:
 
 The following example show the usage of this script:
+
 ```
 ```
-./sendHeartbeat.sh
+python3 sendVesNotification.py --pnfId nSky
 ```
 
 ```
 
+### VES Domain "other",
 
 
-### sendFault
+Not required by O-RAN Alliance OAM specification. 
 
 
-This script send a VES message of domain "fault" to DCAE. It requires three command line parameters:
+### VES Domain "perf3gpp",
 
 
-1. **equipmentType**: Valid equipment types for 1806 and 1810 are [1234, FYNG, R2D2, 7DEV, nSky, 1OSF] according to document "295672 SDN-R System Requirements".
+Not required by O-RAN Alliance OAM specification. 
 
 
-2. **alarmType**: or alarm name. Any string which references a supported alarm name of the equipment type.
+### VES Domain "pnfRegistration",
 
 
-3. **severity**: The severity of tha alarm as defined by [VES schema](./json/schema/CommonEventFormat_30.1_ONAP.json). 
+The script 'pnfRegister' creates a PNF object in A&AI. The script requires one input parameter. This parameter defines the equipment type. Valid equipment types for 1806 and 1810 are [1234, FYNG, R2D2, 7DEV, nSky, 1OSF] according to document "295672 SDN-R System Requirements".
 
 
-The following example show the usage of this script. The alarm "lossOfSignal" for equipment type "nSky" with severtiy "CRITICAL" will be send.
+```
+./pnfRegister.sh 7DEV
+```
+### VES Domain "sipSignaling",
+
+Not required by O-RAN Alliance OAM specification. 
+
+### VES Domain "stateChange",
+
+The script 'sendVesStateChange' simulates a VES event of domain "stateChange" from a network-function to DCAE VES-Collector.
+
+The following example show the usage of this script:
 
 ```
 
 ```
-./sendFault.sh nSky lossOfSignal CRITICAL
+python3 sendVesStateChange.py --pnfId nSky
 ```
 
 ```
 
+### VES Domain "stndDefined",
+
+The script 'sendVesStndDefined' simulates a VES event of domain "stateChange" from a network-function to DCAE VES-Collector. Four schema definitions by 3GPP are supported:
 
 
-### sendTca
+- 3GPP-FaultSupervision
+- 3GPP-Heartbeat
+- 3GPP-PerformanceAssurance
+- 3GPP-Provisioning
 
 
-This script send a VES message of domain "thresholdCrossingAlert" to DCAE. It requires three command line parameters:
+The following examples show the usage of this script:
+
+```
+python sendVesStndDefined.py --pnfId nSky --body 3GPP-FaultSupervision
+python sendVesStndDefined.py --pnfId nSky --body 3GPP-Heartbeat
+python sendVesStndDefined.py --pnfId nSky --body 3GPP-PerformanceAssurance
+python sendVesStndDefined.py --pnfId nSky --body 3GPP-Provisioning
+ ```
+
+### VES Domain "syslog",
+
+Not required by O-RAN Alliance OAM specification. 
+
+### VES Domain "thresholdCrossingAlert",
+
+This script 'sendTca' sends a VES message of domain "thresholdCrossingAlert" to DCAE. It requires three command line parameters:
 
 1. **equipmentType**: Valid equipment types for 1806 and 1810 are [1234, FYNG, R2D2, 7DEV, nSky, 1OSF] according to document "295672 SDN-R System Requirements".
 
 2. **alarmType**: or alarm name. Any string which references a supported alarm name (TCA) of the equipment type.
 
 
 1. **equipmentType**: Valid equipment types for 1806 and 1810 are [1234, FYNG, R2D2, 7DEV, nSky, 1OSF] according to document "295672 SDN-R System Requirements".
 
 2. **alarmType**: or alarm name. Any string which references a supported alarm name (TCA) of the equipment type.
 
-3. **alertAction**: The action of TCA as defined by [VES schema](./json/schema/CommonEventFormat_28.4.1.json). 
+3. **alertAction**: The action of TCA as defined by [VES schema](https://gerrit.onap.org/r/gitweb?p=dcaegen2/collectors/ves.git;a=blob;f=etc/CommonEventFormat_30.2.1_ONAP.json). 
 
 The following example show the usage of this script. The TCA with name "TCA" for equipment type "1234" with alarmAction "SET" will be send.
 
 
 The following example show the usage of this script. The TCA with name "TCA" for equipment type "1234" with alarmAction "SET" will be send.
 
@@ -110,16 +162,11 @@ The following example show the usage of this script. The TCA with name "TCA" for
 ./sendTca.sh 1234 TCA SET
 ```
 
 ./sendTca.sh 1234 TCA SET
 ```
 
+### VES Domain "voiceQuality"
 
 
-### send15minPm
-
-This script send a VES message of domain "measurementsForVfScaling" to DCAE. The script requires one input parameter. This parameter defines the equipment type. Valid equipment types for 1806 and 1810 are [1234, FYNG, R2D2, 7DEV, nSky, 1OSF] according to document "295672 SDN-R System Requirements".
-
-```
-./send15minPm.sh FYNG
-```
+Not required by O-RAN Alliance OAM specification. 
 
 
-### sendEventList
+### Sending a VES event list
 
 This script send a VES message of domain "fault" AND "heartbeat" as event list to DCAE. It requires three command line parameters:
 
 
 This script send a VES message of domain "fault" AND "heartbeat" as event list to DCAE. It requires three command line parameters:
 
@@ -127,9 +174,9 @@ This script send a VES message of domain "fault" AND "heartbeat" as event list t
 
 2. **alarmType**: or alarm name. Any string which references a supported alarm name of the equipment type.
 
 
 2. **alarmType**: or alarm name. Any string which references a supported alarm name of the equipment type.
 
-3. **severity**: The severity of tha alarm as defined by [VES schema](./json/schema/CommonEventFormat_30.1_ONAP.json). 
+3. **severity**: The severity of tha alarm as defined by [VES schema](https://gerrit.onap.org/r/gitweb?p=dcaegen2/collectors/ves.git;a=blob;f=etc/CommonEventFormat_30.2.1_ONAP.json). 
 
 
-The following example show the usage of this script. The alarm "lossOfSignal" for equipment type "nSky" with severtiy "CRITICAL" will be send.
+The following example show the usage of this script. The alarm "lossOfSignal" for equipment type "nSky" with severity "CRITICAL" will be send.
 
 ```
 ./sendEventList.sh 1234 lossOfSignal CRITICAL
 
 ```
 ./sendEventList.sh 1234 lossOfSignal CRITICAL