From 3dd6f0d8c07c45ac725342beab24a5d061dfb4c5 Mon Sep 17 00:00:00 2001 From: demx8as6 Date: Fri, 25 Nov 2022 12:18:25 +0100 Subject: [PATCH] Create template for notifyFileReady - notify-file-ready json added - housekeeping for notify-cleared-alarm IssueID: OAM-292 Change-Id: I42396e369da99a26dfcce574217c0f9bbb04b6d8 Signed-off-by: demx8as6 --- .../stndDefined-r16-notify-cleared-alarm.json | 2 +- .../stndDefined-r16-notify-file-ready.json | 46 ++++++++++++++++ .../sendStndDefinedNotifyFileReady.sh | 61 ++++++++++++++++++++++ 3 files changed, 108 insertions(+), 1 deletion(-) create mode 100644 code/client-scripts-ves-v7/json/templates/stndDefined-r16-notify-file-ready.json create mode 100755 code/client-scripts-ves-v7/sendStndDefinedNotifyFileReady.sh diff --git a/code/client-scripts-ves-v7/json/templates/stndDefined-r16-notify-cleared-alarm.json b/code/client-scripts-ves-v7/json/templates/stndDefined-r16-notify-cleared-alarm.json index 7bf7aba..1e8d833 100644 --- a/code/client-scripts-ves-v7/json/templates/stndDefined-r16-notify-cleared-alarm.json +++ b/code/client-scripts-ves-v7/json/templates/stndDefined-r16-notify-cleared-alarm.json @@ -38,4 +38,4 @@ "stndDefinedFieldsVersion": "1.0" } } -} \ No newline at end of file +} diff --git a/code/client-scripts-ves-v7/json/templates/stndDefined-r16-notify-file-ready.json b/code/client-scripts-ves-v7/json/templates/stndDefined-r16-notify-file-ready.json new file mode 100644 index 0000000..5fbcc11 --- /dev/null +++ b/code/client-scripts-ves-v7/json/templates/stndDefined-r16-notify-file-ready.json @@ -0,0 +1,46 @@ +{ + "event": { + "commonEventHeader": { + "domain": "@domain@", + "eventId": "@eventId@", + "eventName": "@domain@_@eventType@_Alarms_@alarm@", + "eventType": "@eventType@_Alarms", + "sequence": 0, + "priority": "Low", + "reportingEntityId": "", + "reportingEntityName": "@controllerName@", + "sourceId": "", + "sourceName": "@pnfId@", + "startEpochMicrosec": "@timestamp@", + "lastEpochMicrosec": "@timestamp@", + "nfNamingCode": "@type@", + "nfVendorName": "@vendor@", + "timeZoneOffset": "+00:00", + "version": "4.1", + "stndDefinedNamespace": "file-ready", + "vesEventListenerVersion": "7.2.1" + }, + "stndDefinedFields": { + "schemaReference": "https://forge.3gpp.org/rep/sa5/MnS/-/raw/Rel-16/OpenAPI/TS28532_FileDataReportingMnS.yaml#components/schemas/NotifyFileReady", + "data": { + "href": "href1", + "notificationId": 0, + "notificationType": "notifyFileReady", + "eventTime": "@eventTime@", + "systemDN": "xyz", + "fileInfoList": [{ + "fileLocation": "/pm-data-files/A@startTime@-@endTime@_@pnfId@.xml", + "fileSize": 1234, + "fileReadyTime": "@eventTime@", + "fileExpirationTime": "@eventTime@", + "fileCompression": "no", + "fileFormat": "xml", + "fileDataType": "Performance" + } + ], + "additionalText": "Have fun!" + }, + "stndDefinedFieldsVersion": "1.0" + } + } +} \ No newline at end of file diff --git a/code/client-scripts-ves-v7/sendStndDefinedNotifyFileReady.sh b/code/client-scripts-ves-v7/sendStndDefinedNotifyFileReady.sh new file mode 100755 index 0000000..1644ede --- /dev/null +++ b/code/client-scripts-ves-v7/sendStndDefinedNotifyFileReady.sh @@ -0,0 +1,61 @@ +#!/bin/bash +################################################################################ +# +# Copyright 2022 highstreet technologies GmbH and others +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# https://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +################################################################################ +# Script to send an VES Message Event to DCAE + +. config; + pnfType=${1,,}; + domain="stndDefined"; + collectionEndTime=$(( $timeInS - $(( $timeInS % 900 )) )); + collectionStartTime=$(( collectionEndTime - 900 )); + +declare -A mapping=( + [domain]=$domain + [controllerName]=$(hostname --fqdn) + [pnfId]=${pnfIdByType[$pnfType]} + [eventId]="${pnfIdByType[$pnfType]}_${interfaceByType[$pnfType]}_${alarmType}" + [eventType]=${eventType} + [type]=${pnfType^^} + [timestamp]=${timestamp} + [eventTime]=${eventTime} + [startTime]=$( date -d @$collectionStartTime -u +%Y%m%d.%H%M+0000 ) + [endTime]=$( date -d @$collectionEndTime -u +%H%M+0000 ) +) + +echo "################################################################################"; +echo "# send VES 3GPP FileReady"; +echo; +for key in "${!mapping[@]}" +do + #label=${${"$spaces$i"}:(-14)}; + label=$spaces$key; + label=${label:(-16)}; + echo "$label: ${mapping[$key]}"; + if [ $key = "timestamp" ]; then + sequence="$sequence s/\"@$key@\"/${mapping[$key]}/g; " + else + sequence="$sequence s/@$key@/${mapping[$key]}/g; " + fi +done +echo; + +body="./json/examples/${pnfType^^}-${domain}-3gpp-file-ready.json" +template="./json/templates/$domain-r16-notify-file-ready.json" +sed -e "$sequence" $template > $body; + +curl -i -k -u $basicAuthVes -X POST -d @${body} --header "Content-Type: application/json" $urlVes -- 2.16.6