X-Git-Url: https://gerrit.o-ran-sc.org/r/gitweb?a=blobdiff_plain;f=solution%2Fsmo%2Fapps%2Fflows%2Fdata%2Fflows.json;h=2ffd02a751d1757b55ddb85f42b9e7dcc3102bc2;hb=470bbf5501fc5afbb2b084c86ccc1e0184292a5b;hp=ed57fe12e5f1250bcadadcb8d55645607ebc529b;hpb=067772b7c2555a99c62678318b4c8ce7d90c4f4b;p=oam.git diff --git a/solution/smo/apps/flows/data/flows.json b/solution/smo/apps/flows/data/flows.json index ed57fe1..2ffd02a 100644 --- a/solution/smo/apps/flows/data/flows.json +++ b/solution/smo/apps/flows/data/flows.json @@ -12,7 +12,7 @@ "type": "tab", "label": "Message Topics", "disabled": false, - "info": "Subscribes to Kafka topics ", + "info": "Subscribes to Kafka topics", "env": [] }, { @@ -59,7 +59,7 @@ "payload": "", "payloadType": "date", "x": 120, - "y": 460, + "y": 500, "wires": [ [ "b5533c10604af5a6", @@ -72,7 +72,7 @@ "type": "function", "z": "51e83a0892da060e", "name": "vesHeader", - "func": "const timeStamp = new Date(msg.payload);\nconst eventType = msg.topic;\nlet domain = \"stndDefined\";\n// handle domain expecption for 'pnfRegistration'\nif (eventType === 'pnfRegistration') {\n domain = eventType;\n} \nconst nfNamingCode = env.get('APP_NETWORK_FUNCTION_ID');\nconst namespaces = {\n pnfRegistration: undefined,\n o1NotifyPnfRegistration: 'o1-notify-pnf-registration',\n oRanScDuHelloWorldPmStreaming: 'o-ran-sc-du-hello-world-pm-streaming-oas3',\n notifyHeartbeat: '3GPP-Heartbeat',\n notifyNewAlarm: '3GPP-FaultSupervision',\n notifyFileReady: 'file-ready'\n};\nconst topic = namespaces[eventType] || msg.topic;\n\nmsg.topic = \"commonEventHeader\"\nmsg.payload = {\n domain: domain,\n eventType: eventType,\n eventId:[nfNamingCode, eventType, msg._msgid].join('_'),\n eventName: [domain, eventType].join('_'),\n sequence: Number(timeStamp),\n priority: \"Low\",\n reportingEntityId: \"c2b7d6e9-ee35-459a-ab8e-717a6fc1fde6\",\n reportingEntityName: global.get('os').hostname(),\n sourceId: \"378e9904-6d39-40ea-9994-0596fe2235a3\",\n sourceName: env.get('APP_SOURCE'),\n startEpochMicrosec: timeStamp.getTime() * 1000,\n lastEpochMicrosec: timeStamp.getTime() * 1000,\n nfNamingCode: nfNamingCode,\n nfVendorName: env.get('APP_VENDOR'),\n timeZoneOffset: \"+00:00\",\n stndDefinedNamespace: topic,\n version: \"4.1\",\n vesEventListenerVersion: \"7.2.1\"\n}\nreturn msg;", + "func": "const timeStamp = new Date(msg.payload);\nconst eventType = msg.topic;\nlet domain = \"stndDefined\";\n// handle domain expecption for 'pnfRegistration'\nif (eventType === 'pnfRegistration') {\n domain = eventType;\n} \nconst nfNamingCode = env.get('APP_NETWORK_FUNCTION_ID');\nconst namespaces = {\n pnfRegistration: undefined,\n o1NotifyPnfRegistration: 'o1-notify-pnf-registration',\n oRanScDuHelloWorldPmStreaming: 'o-ran-sc-du-hello-world-pm-streaming-oas3',\n notifyHeartbeat: '3GPP-Heartbeat',\n notifyFileReady: 'file-ready',\n notifyFilePreparationError: 'file-ready',\n notifyNewAlarm: '3GPP-FaultSupervision',\n notifyChangedAlarm: '3GPP-FaultSupervision',\n notifyChangedAlarmGeneral: '3GPP-FaultSupervision',\n notifyAckStateChanged: '3GPP-FaultSupervision',\n notifyCorrelatedNotificationChanged: '3GPP-FaultSupervision',\n notifyComments: '3GPP-FaultSupervision',\n notifyClearedAlarm: '3GPP-FaultSupervision',\n notifyAlarmListRebuilt: '3GPP-FaultSupervision',\n notifyPotentialFaultyAlarmList: '3GPP-FaultSupervision'\n};\nconst topic = namespaces[eventType] || msg.topic;\n\nmsg.topic = \"commonEventHeader\"\nmsg.payload = {\n domain: domain,\n eventType: eventType,\n eventId:[nfNamingCode, eventType, msg._msgid].join('_'),\n eventName: [domain, eventType].join('_'),\n sequence: Number(timeStamp),\n priority: \"Low\",\n reportingEntityId: \"c2b7d6e9-ee35-459a-ab8e-717a6fc1fde6\",\n reportingEntityName: global.get('os').hostname(),\n sourceId: \"378e9904-6d39-40ea-9994-0596fe2235a3\",\n sourceName: env.get('APP_SOURCE'),\n startEpochMicrosec: timeStamp.getTime() * 1000,\n lastEpochMicrosec: timeStamp.getTime() * 1000,\n nfNamingCode: nfNamingCode,\n nfVendorName: env.get('APP_VENDOR'),\n timeZoneOffset: \"+00:00\",\n stndDefinedNamespace: topic,\n version: \"4.1\",\n vesEventListenerVersion: \"7.2.1\"\n}\nreturn msg;", "outputs": 1, "noerr": 0, "initialize": "", @@ -98,7 +98,7 @@ "finalize": "", "libs": [], "x": 470, - "y": 460, + "y": 500, "wires": [ [ "f65b1c13e0243ef6" @@ -137,8 +137,8 @@ "id": "1d6949a57bce82ab", "type": "function", "z": "51e83a0892da060e", - "name": "createVesEvent", - "func": "msg.payload = {\n event: msg.payload\n};\nreturn msg;", + "name": "http-preparation", + "func": "const protocol = env.get('VES_ENDPOINT_PROTOCOL');\nconst host = env.get('VES_ENDPOINT_HOST');\nconst port = env.get('VES_ENDPOINT_PORT');\nconst base = protocol + '://' + host + ':' + port;\nconst path = 'eventListener/v7';\nmsg.url = [base, path].join('/');\n\nconst user = env.get('VES_ENDPOINT_USERNAME');\nconst password = env.get('VES_ENDPOINT_PASSWORD');\nconst auth = Buffer.from([user, password].join(':')).toString('base64')\nconst basicAuth = ['Basic', auth].join(' ');\n\nmsg.headers = {};\nmsg.headers['Content-Type'] = 'application/json';\nmsg.headers['Accept'] = 'application/json';\nmsg.headers['Authorization'] = basicAuth;\n\nmsg.payload = {\n event: msg.payload\n};\nreturn msg;", "outputs": 1, "noerr": 0, "initialize": "", @@ -161,12 +161,12 @@ "method": "POST", "ret": "txt", "paytoqs": "ignore", - "url": "https://ves-collector.oam.smo.o-ran-sc.org/eventListener/v7", + "url": "", "tls": "7b2f4859e5963695", "persist": true, "proxy": "", "insecureHTTPParser": false, - "authType": "basic", + "authType": "", "senderr": false, "headers": [], "x": 1030, @@ -183,14 +183,14 @@ "z": "51e83a0892da060e", "name": "VesCollectorResponse", "active": true, - "tosidebar": true, - "console": false, - "tostatus": false, + "tosidebar": false, + "console": true, + "tostatus": true, "complete": "payload", "targetType": "msg", - "statusVal": "", + "statusVal": "payload", "statusType": "auto", - "x": 1220, + "x": 1230, "y": 280, "wires": [] }, @@ -248,16 +248,16 @@ "type": "debug", "z": "51e83a0892da060e", "name": "ves-message-data", - "active": false, - "tosidebar": true, - "console": false, - "tostatus": false, + "active": true, + "tosidebar": false, + "console": true, + "tostatus": true, "complete": "payload", "targetType": "msg", - "statusVal": "", - "statusType": "auto", - "x": 1050, - "y": 320, + "statusVal": "payload.event.commonEventHeader.stndDefinedNamespace", + "statusType": "msg", + "x": 1060, + "y": 220, "wires": [] }, { @@ -473,7 +473,7 @@ "type": "function", "z": "51e83a0892da060e", "name": "vesStndDefindBody", - "func": "const eventTime = new Date(msg.payload).toISOString();\nmsg.payload = {\n schemaReference: 'https://gerrit.o-ran-sc.org/r/gitweb?p=scp/oam/modeling.git;a=blob_plain;f=data-model/yang/published/o-ran/ru-fh/o-ran-file-management.yang#components/schemas/ofhm-event-stream',\n stndDefinedFieldsVersion: '1.0',\n data: {\n 'ietf:notification': {\n 'eventTime': eventTime,\n 'o-ran-file-management:file-download-event': {\n 'local-logical-file-path': 'o-ran/log',\n 'remote-file-path': 'ftpes://username@ftpes.oam.smo.o-ran-sc/downloads',\n 'status': 'FAILURE',\n 'reject-reason': 'FTPes Server not reachable.'\n }\n }\n }\n};\nmsg.topic = 'stndDefinedFields';\nreturn msg;", + "func": "const eventTime = new Date(msg.payload).toISOString();\nmsg.payload = {\n schemaReference: 'https://gerrit.o-ran-sc.org/r/gitweb?p=scp/oam/modeling.git;a=blob_plain;f=data-model/yang/published/o-ran/ru-fh/o-ran-file-management.yang#components/schemas/ofhm-event-stream',\n stndDefinedFieldsVersion: '1.0',\n data: {\n 'ietf:notification': {\n 'eventTime': eventTime,\n 'o-ran-file-management:file-download-event': {\n 'local-logical-file-path': 'o-ran/log',\n 'remote-file-path': 'ftpes://username@ftpes.dcn.smo.o-ran-sc/downloads',\n 'status': 'FAILURE',\n 'reject-reason': 'FTPes Server not reachable.'\n }\n }\n }\n};\nmsg.topic = 'stndDefinedFields';\nreturn msg;", "outputs": 1, "noerr": 0, "initialize": "", @@ -522,7 +522,7 @@ "type": "function", "z": "51e83a0892da060e", "name": "vesStndDefindBody", - "func": "const eventTime = new Date(msg.payload).toISOString();\nmsg.payload = {\n schemaReference: 'https://gerrit.o-ran-sc.org/r/gitweb?p=scp/oam/modeling.git;a=blob_plain;f=data-model/yang/published/o-ran/ru-fh/o-ran-file-management.yang#components/schemas/ofhm-event-stream',\n stndDefinedFieldsVersion: '1.0',\n data: {\n 'ietf:notification': {\n 'eventTime': eventTime,\n 'o-ran-file-management:file-upload-notification': {\n 'local-logical-file-path': 'o-ran/log',\n 'remote-file-path': 'ftpes://username@ftpes.oam.smo.o-ran-sc/downloads',\n 'status': 'FAILURE',\n 'reject-reason': 'FTPes Server not reachable.'\n }\n }\n }\n};\nmsg.topic = 'stndDefinedFields';\nreturn msg;", + "func": "const eventTime = new Date(msg.payload).toISOString();\nmsg.payload = {\n schemaReference: 'https://gerrit.o-ran-sc.org/r/gitweb?p=scp/oam/modeling.git;a=blob_plain;f=data-model/yang/published/o-ran/ru-fh/o-ran-file-management.yang#components/schemas/ofhm-event-stream',\n stndDefinedFieldsVersion: '1.0',\n data: {\n 'ietf:notification': {\n 'eventTime': eventTime,\n 'o-ran-file-management:file-upload-notification': {\n 'local-logical-file-path': 'o-ran/log',\n 'remote-file-path': 'ftpes://username@ftpes.dcn.smo.o-ran-sc/downloads',\n 'status': 'FAILURE',\n 'reject-reason': 'FTPes Server not reachable.'\n }\n }\n }\n};\nmsg.topic = 'stndDefinedFields';\nreturn msg;", "outputs": 1, "noerr": 0, "initialize": "", @@ -1289,7 +1289,7 @@ "payload": "", "payloadType": "date", "x": 120, - "y": 500, + "y": 620, "wires": [ [ "f71ebd595a7de756", @@ -1309,7 +1309,7 @@ "finalize": "", "libs": [], "x": 470, - "y": 500, + "y": 620, "wires": [ [ "f65b1c13e0243ef6" @@ -1317,10 +1317,11 @@ ] }, { - "id": "910dfec7eb74df65", + "id": "82da4e47972195a4", "type": "inject", - "z": "c5746e29f53f72ce", - "name": "pnfRegistration", + "z": "51e83a0892da060e", + "d": true, + "name": "notifyChangedAlarm", "props": [ { "p": "payload" @@ -1334,40 +1335,21 @@ "crontab": "", "once": false, "onceDelay": 0.1, - "topic": "pnfRegistration", + "topic": "notifyChangedAlarm", "payload": "", "payloadType": "date", - "x": 240, - "y": 80, + "x": 130, + "y": 660, "wires": [ - [ - "e5f66f4bd6777ca0" - ] + [] ] }, { - "id": "562063a080cb99d6", - "type": "debug", - "z": "c5746e29f53f72ce", - "name": "eventData", - "active": true, - "tosidebar": true, - "console": false, - "tostatus": false, - "complete": "payload", - "targetType": "msg", - "statusVal": "", - "statusType": "auto", - "x": 1150, - "y": 220, - "wires": [] - }, - { - "id": "172060688d87f510", + "id": "a3d85c62bee11dad", "type": "inject", - "z": "c5746e29f53f72ce", + "z": "51e83a0892da060e", "d": true, - "name": "notifyHeartbeat", + "name": "notifyChangedAlarmGeneral", "props": [ { "p": "payload" @@ -1377,26 +1359,25 @@ "vt": "str" } ], - "repeat": "5", + "repeat": "", "crontab": "", - "once": true, + "once": false, "onceDelay": 0.1, - "topic": "notifyHeartbeat", + "topic": "notifyChangedAlarmGeneral", "payload": "", "payloadType": "date", - "x": 230, - "y": 320, + "x": 160, + "y": 700, "wires": [ - [ - "e5f66f4bd6777ca0" - ] + [] ] }, { - "id": "311c3b5d3d73fc24", + "id": "e4651c07a56f2448", "type": "inject", - "z": "c5746e29f53f72ce", - "name": "notifyFileReady", + "z": "51e83a0892da060e", + "d": true, + "name": "notifyAckStateChanged", "props": [ { "p": "payload" @@ -1410,114 +1391,21 @@ "crontab": "", "once": false, "onceDelay": 0.1, - "topic": "notifyFileReady", + "topic": "notifyAckStateChanged", "payload": "", "payloadType": "date", - "x": 240, - "y": 360, - "wires": [ - [ - "e5f66f4bd6777ca0" - ] - ] - }, - { - "id": "5437e3fdfca300c9", - "type": "http request", - "z": "c5746e29f53f72ce", - "name": "", - "method": "GET", - "ret": "txt", - "paytoqs": "ignore", - "url": "", - "tls": "7b2f4859e5963695", - "persist": true, - "proxy": "", - "insecureHTTPParser": true, - "authType": "", - "senderr": false, - "headers": [], - "x": 670, - "y": 220, - "wires": [ - [ - "dc576b6355478428" - ] - ] - }, - { - "id": "dc576b6355478428", - "type": "function", - "z": "c5746e29f53f72ce", - "name": "JSON", - "func": "const string = msg.payload;\nconst array = JSON.parse(string);\nif (Array.isArray(array)) {\n msg.payload = array.map( (item) => {\n if (typeof item === 'string' || item instanceof String) {\n return JSON.parse(item);\n }\n });\n} else {\n msg.payload = array;\n}\nreturn msg;", - "outputs": 1, - "noerr": 0, - "initialize": "", - "finalize": "", - "libs": [], - "x": 830, - "y": 220, - "wires": [ - [ - "2a2e05d79287f4a0" - ] - ] - }, - { - "id": "e5f66f4bd6777ca0", - "type": "function", - "z": "c5746e29f53f72ce", - "name": "SET msg.url", - "func": "const base = 'https://messages.smo.o-ran-sc.org';\nconst path = 'events';\nconst urlMapping = {\n pnfRegistration: \"unauthenticated.VES_PNFREG_OUTPUT\",\n o1NotifyPnfRegistration: \"unauthenticated.VES_O1_NOTIFY_PNF_REGISTRATION_OUTPUT\",\n oRanScDuHelloWorldPmStreaming: \"unauthenticated.VES_O_RAN_SC_HELLO_WORLD_PM_STREAMING_OUTPUT\",\n notifyHeartbeat: \"unauthenticated.SEC_3GPP_HEARTBEAT_OUTPUT\",\n notifyFileReady: \"unauthenticated.VES_FILE_READY_OUTPUT\",\n notifyNewAlarm: 'unauthenticated.SEC_3GPP_FAULTSUPERVISION_OUTPUT',\n oRanOpenfrontManagementPlane: \"unauthenticated.VES_O_RAN_SC_OPENFRONTHAUL_OUTPUT\"\n};\nconst longPolling = '?timeout=60000'\nconst urlTopic = urlMapping[msg.topic] || msg.topic.replace(':', '-');\nmsg.url = [base, path, urlTopic, '1', '1'].join('/') + longPolling;\nreturn msg;", - "outputs": 1, - "noerr": 0, - "initialize": "", - "finalize": "", - "libs": [], - "x": 490, - "y": 220, + "x": 140, + "y": 740, "wires": [ - [ - "5437e3fdfca300c9" - ] + [] ] }, { - "id": "42275e9c12f8e52b", - "type": "comment", - "z": "c5746e29f53f72ce", - "name": "from O-RAN-SC", - "info": "", - "x": 100, - "y": 140, - "wires": [] - }, - { - "id": "e07fa97ebc66dce0", - "type": "comment", - "z": "c5746e29f53f72ce", - "name": "from ONAP", - "info": "", - "x": 90, - "y": 40, - "wires": [] - }, - { - "id": "44b8c2cc138777f1", - "type": "comment", - "z": "c5746e29f53f72ce", - "name": "from SA5 R-18 branch", - "info": "", - "x": 120, - "y": 280, - "wires": [] - }, - { - "id": "4480e5473a65a757", + "id": "e949006e1b1fe0f0", "type": "inject", - "z": "c5746e29f53f72ce", - "name": "oRanScDuHelloWorldPmStreaming", + "z": "51e83a0892da060e", + "d": true, + "name": "notifyCorrelatedNotificationChanged", "props": [ { "p": "payload" @@ -1531,22 +1419,21 @@ "crontab": "", "once": false, "onceDelay": 0.1, - "topic": "oRanScDuHelloWorldPmStreaming", + "topic": "notifyCorrelatedNotificationChanged", "payload": "", "payloadType": "date", "x": 180, - "y": 220, + "y": 780, "wires": [ - [ - "e5f66f4bd6777ca0" - ] + [] ] }, { - "id": "52f22ee054e5b4ac", + "id": "a80169493419d5d0", "type": "inject", - "z": "c5746e29f53f72ce", - "name": "o1NotifyPnfRegistration", + "z": "51e83a0892da060e", + "d": true, + "name": "notifyComments", "props": [ { "p": "payload" @@ -1560,53 +1447,20 @@ "crontab": "", "once": false, "onceDelay": 0.1, - "topic": "o1NotifyPnfRegistration", + "topic": "notifyComments", "payload": "", "payloadType": "date", - "x": 220, - "y": 180, - "wires": [ - [ - "e5f66f4bd6777ca0" - ] - ] - }, - { - "id": "3051f52553efaaa4", - "type": "http request", - "z": "c5746e29f53f72ce", - "name": "", - "method": "GET", - "ret": "txt", - "paytoqs": "ignore", - "url": "https://messages.smo.o-ran-sc.org/topics", - "tls": "7b2f4859e5963695", - "persist": true, - "proxy": "", - "insecureHTTPParser": true, - "authType": "", - "senderr": false, - "headers": [ - { - "keyType": "other", - "keyValue": "Accept", - "valueType": "other", - "valueValue": "application/json" - } - ], - "x": 670, - "y": 180, + "x": 120, + "y": 820, "wires": [ - [ - "dc576b6355478428" - ] + [] ] }, { - "id": "0acceacb99b7981a", + "id": "9e0f49b3d9b0a5ef", "type": "inject", - "z": "c5746e29f53f72ce", - "name": "Topics?", + "z": "51e83a0892da060e", + "name": "notifyClearedAlarm", "props": [ { "p": "payload" @@ -1620,32 +1474,24 @@ "crontab": "", "once": false, "onceDelay": 0.1, - "topic": "topics", + "topic": "notifyClearedAlarm", "payload": "", "payloadType": "date", - "x": 510, - "y": 180, + "x": 130, + "y": 860, "wires": [ [ - "3051f52553efaaa4" + "69b8d53969426ebf", + "b5533c10604af5a6" ] ] }, { - "id": "34b7ac222692e06d", - "type": "comment", - "z": "c5746e29f53f72ce", - "name": "from OpenFronthaul Management-Plane", - "info": "", - "x": 580, - "y": 280, - "wires": [] - }, - { - "id": "25a3eca83bbc3489", + "id": "418d585d7406029b", "type": "inject", - "z": "c5746e29f53f72ce", - "name": "o-ran-supervision:supervision-notification", + "z": "51e83a0892da060e", + "d": true, + "name": "notifyAlarmListRebuilt", "props": [ { "p": "payload" @@ -1655,26 +1501,25 @@ "vt": "str" } ], - "repeat": "60", + "repeat": "", "crontab": "", "once": false, "onceDelay": 0.1, - "topic": "o-ran-supervision:supervision-notification", + "topic": "notifyAlarmListRebuilt", "payload": "", "payloadType": "date", - "x": 620, - "y": 1040, + "x": 140, + "y": 900, "wires": [ - [ - "e5f66f4bd6777ca0" - ] + [] ] }, { - "id": "0194d014ef8f6c5e", + "id": "f856982bb3c3a65c", "type": "inject", - "z": "c5746e29f53f72ce", - "name": "o-ran-file-management:file-upload-notification", + "z": "51e83a0892da060e", + "d": true, + "name": "notifyPotentialFaultyAlarmList", "props": [ { "p": "payload" @@ -1688,11 +1533,562 @@ "crontab": "", "once": false, "onceDelay": 0.1, - "topic": "o-ran-file-management:file-upload-notification", + "topic": "notifyPotentialFaultyAlarmList", "payload": "", "payloadType": "date", - "x": 630, - "y": 760, + "x": 160, + "y": 940, + "wires": [ + [] + ] + }, + { + "id": "4617f66b8940469e", + "type": "comment", + "z": "51e83a0892da060e", + "name": "TS28532_FaultMnS.yaml", + "info": "", + "x": 130, + "y": 580, + "wires": [] + }, + { + "id": "69b8d53969426ebf", + "type": "function", + "z": "51e83a0892da060e", + "name": "vesStndDefindBody", + "func": "const timeStamp = new Date(msg.payload);\nconst alarm = 'Connection Loss';\nconst severity = 'CRITICAL';\n\nmsg.payload = {\n schemaReference: 'https://forge.3gpp.org/rep/sa5/MnS/raw/Rel-18/OpenAPI/TS28532_FaultMnS.yaml#components/schemas/NotifyClearedAlarm',\n stndDefinedFieldsVersion: '1.0',\n data: {\n href: global.get('os').hostname(),\n notificationId: Number(timeStamp),\n notificationType: msg.topic,\n eventTime: timeStamp.toISOString(),\n systemDN: '/',\n alarmId: alarm,\n alarmType: 'COMMUNICATIONS_ALARM',\n probableCause: alarm,\n perceivedSeverity: severity,\n correlatedNotifications: [],\n clearSystemId: global.get('os').hostname()\n }\n\n};\nmsg.topic = 'stndDefinedFields';\nreturn msg;", + "outputs": 1, + "noerr": 0, + "initialize": "", + "finalize": "", + "libs": [], + "x": 470, + "y": 860, + "wires": [ + [ + "f65b1c13e0243ef6" + ] + ] + }, + { + "id": "01e14b971772ee0a", + "type": "comment", + "z": "51e83a0892da060e", + "name": "TS28532_FileDataReportingMnS.yaml", + "info": "", + "x": 170, + "y": 460, + "wires": [] + }, + { + "id": "ea15cafd2325d76f", + "type": "inject", + "z": "51e83a0892da060e", + "name": "notifyFilePreparationError", + "props": [ + { + "p": "payload" + }, + { + "p": "topic", + "vt": "str" + } + ], + "repeat": "", + "crontab": "", + "once": false, + "onceDelay": 0.1, + "topic": "notifyFilePreparationError", + "payload": "", + "payloadType": "date", + "x": 150, + "y": 540, + "wires": [ + [ + "9f4bc0920fa3c0eb", + "b5533c10604af5a6" + ] + ] + }, + { + "id": "9f4bc0920fa3c0eb", + "type": "function", + "z": "51e83a0892da060e", + "name": "vesStndDefindBody", + "func": "const timeStamp = new Date(msg.payload);\nconst startTime = new Date(Math.floor(Number(timeStamp) / 900000) * 900000);\nconst endTime = new Date(Number(startTime) + 900000);\nconst paddy = (num, padlen, padchar) => {\n const pad_char = typeof padchar !== 'undefined' ? padchar : '0';\n const pad = new Array(1 + padlen).join(pad_char);\n return (pad + num).slice(-pad.length);\n}\nconst fileStartTime = [\n paddy(startTime.getFullYear(), 4),\n paddy(startTime.getMonth() + 1, 2),\n paddy(startTime.getDate(), 2),\n '.',\n paddy(startTime.getHours(), 2),\n paddy(startTime.getMinutes(), 2),\n '+0000'\n].join('');\nconst fileEndTime = [\n paddy(endTime.getHours(), 2),\n paddy(endTime.getMinutes(), 2),\n '+0000'\n].join('');\nconst fileLocation = ['/pm-data-files/A', fileStartTime, '-', fileEndTime, '_', env.get('APP_NETWORK_FUNCTION_ID'), '.xml'].join('');\nmsg.payload = {\n schemaReference: 'https://forge.3gpp.org/rep/sa5/MnS/raw/Rel-18/OpenAPI/TS28532_FileDataReportingMnS.yaml#components/schemas/NotifyFilePreparationError',\n stndDefinedFieldsVersion: '1.0',\n data: {\n href: global.get('os').hostname(),\n notificationId: Number(startTime),\n notificationType: msg.topic,\n eventTime: timeStamp.toISOString(),\n systemDN: '/',\n fileInfoList: [\n {\n fileLocation: fileLocation,\n fileSize: 1234,\n fileReadyTime: startTime.toISOString(),\n fileExpirationTime: endTime.toISOString(),\n fileCompression: 'no',\n fileFormat: 'xml',\n fileDataType: 'Performance'\n }\n ],\n reason: 'No Measurements',\n additionalText: 'Please consult customer documentation!'\n }\n};\nmsg.topic = 'stndDefinedFields';\nreturn msg;", + "outputs": 1, + "noerr": 0, + "initialize": "", + "finalize": "", + "libs": [], + "x": 470, + "y": 540, + "wires": [ + [ + "f65b1c13e0243ef6" + ] + ] + }, + { + "id": "910dfec7eb74df65", + "type": "inject", + "z": "c5746e29f53f72ce", + "name": "pnfRegistration", + "props": [ + { + "p": "payload" + }, + { + "p": "topic", + "vt": "str" + } + ], + "repeat": "60", + "crontab": "", + "once": false, + "onceDelay": 0.1, + "topic": "pnfRegistration", + "payload": "", + "payloadType": "date", + "x": 240, + "y": 80, + "wires": [ + [ + "e5f66f4bd6777ca0" + ] + ] + }, + { + "id": "562063a080cb99d6", + "type": "debug", + "z": "c5746e29f53f72ce", + "name": "eventData", + "active": true, + "tosidebar": true, + "console": true, + "tostatus": true, + "complete": "payload", + "targetType": "msg", + "statusVal": "payload.length", + "statusType": "msg", + "x": 1170, + "y": 220, + "wires": [] + }, + { + "id": "172060688d87f510", + "type": "inject", + "z": "c5746e29f53f72ce", + "d": true, + "name": "notifyHeartbeat", + "props": [ + { + "p": "payload" + }, + { + "p": "topic", + "vt": "str" + } + ], + "repeat": "5", + "crontab": "", + "once": true, + "onceDelay": 0.1, + "topic": "notifyHeartbeat", + "payload": "", + "payloadType": "date", + "x": 230, + "y": 400, + "wires": [ + [ + "e5f66f4bd6777ca0" + ] + ] + }, + { + "id": "311c3b5d3d73fc24", + "type": "inject", + "z": "c5746e29f53f72ce", + "name": "notifyFileReady", + "props": [ + { + "p": "payload" + }, + { + "p": "topic", + "vt": "str" + } + ], + "repeat": "", + "crontab": "", + "once": false, + "onceDelay": 0.1, + "topic": "notifyFileReady", + "payload": "", + "payloadType": "date", + "x": 240, + "y": 480, + "wires": [ + [ + "e5f66f4bd6777ca0" + ] + ] + }, + { + "id": "5437e3fdfca300c9", + "type": "http request", + "z": "c5746e29f53f72ce", + "name": "", + "method": "GET", + "ret": "txt", + "paytoqs": "ignore", + "url": "", + "tls": "7b2f4859e5963695", + "persist": true, + "proxy": "", + "insecureHTTPParser": true, + "authType": "", + "senderr": false, + "headers": [], + "x": 850, + "y": 220, + "wires": [ + [ + "dc576b6355478428" + ] + ] + }, + { + "id": "dc576b6355478428", + "type": "function", + "z": "c5746e29f53f72ce", + "name": "Provider", + "func": "const string = msg.payload;\nconst array = JSON.parse(string);\nif (Array.isArray(array)) {\n msg.payload = array.map( (item) => {\n if (typeof item === 'string' || item instanceof String) {\n return JSON.parse(item);\n }\n });\n} else {\n msg.payload = array;\n}\nglobal.set('topicData', msg.payload)\nreturn msg;", + "outputs": 1, + "noerr": 0, + "initialize": "", + "finalize": "", + "libs": [], + "x": 1020, + "y": 220, + "wires": [ + [ + "562063a080cb99d6" + ] + ] + }, + { + "id": "e5f66f4bd6777ca0", + "type": "function", + "z": "c5746e29f53f72ce", + "name": "http-preparation", + "func": "const protocol = env.get('MESSAGES_PROTOCOL');\nconst host = env.get('MESSAGES_HOST');\nconst port = env.get('MESSAGES_PORT');;\nconst base = protocol + '://' + host + ':' + port;\n\nconst path = 'events';\nconst urlMapping = {\n pnfRegistration: 'unauthenticated.VES_PNFREG_OUTPUT',\n heartbeat: 'unauthenticated.SEC_HEARTBEAT_OUTPUT',\n fault: 'unauthenticated.SEC_FAULT_OUTPUT',\n o1NotifyPnfRegistration: 'unauthenticated.VES_O1_NOTIFY_PNF_REGISTRATION_OUTPUT',\n oRanScDuHelloWorldPmStreaming: 'unauthenticated.VES_O_RAN_SC_HELLO_WORLD_PM_STREAMING_OUTPUT',\n notifyHeartbeat: 'unauthenticated.SEC_3GPP_HEARTBEAT_OUTPUT',\n notifyFileReady: 'unauthenticated.VES_FILE_READY_OUTPUT',\n notifyFilePreparationError: 'unauthenticated.VES_FILE_READY_OUTPUT',\n oRanOpenfrontManagementPlane: 'unauthenticated.VES_O_RAN_SC_OPENFRONTHAUL_OUTPUT',\n notifyNewAlarm: 'unauthenticated.SEC_3GPP_FAULTSUPERVISION_OUTPUT',\n notifyChangedAlarm: 'unauthenticated.SEC_3GPP_FAULTSUPERVISION_OUTPUT',\n notifyChangedAlarmGeneral: 'unauthenticated.SEC_3GPP_FAULTSUPERVISION_OUTPUT',\n notifyAckStateChanged: 'unauthenticated.SEC_3GPP_FAULTSUPERVISION_OUTPUT',\n notifyCorrelatedNotificationChanged: 'unauthenticated.SEC_3GPP_FAULTSUPERVISION_OUTPUT',\n notifyComments: 'unauthenticated.SEC_3GPP_FAULTSUPERVISION_OUTPUT',\n notifyClearedAlarm: 'unauthenticated.SEC_3GPP_FAULTSUPERVISION_OUTPUT',\n notifyAlarmListRebuilt: 'unauthenticated.SEC_3GPP_FAULTSUPERVISION_OUTPUT',\n notifyPotentialFaultyAlarmList: 'unauthenticated.SEC_3GPP_FAULTSUPERVISION_OUTPUT'\n};\nconst longPolling = '?timeout=60000'\nconst urlTopic = urlMapping[msg.topic] || msg.topic.replace(':', '-');\nmsg.url = [base, path, urlTopic, '1', '1'].join('/') + longPolling;\nreturn msg;", + "outputs": 1, + "noerr": 0, + "initialize": "", + "finalize": "", + "libs": [], + "x": 500, + "y": 220, + "wires": [ + [ + "5437e3fdfca300c9" + ] + ] + }, + { + "id": "42275e9c12f8e52b", + "type": "comment", + "z": "c5746e29f53f72ce", + "name": "from O-RAN-SC", + "info": "", + "x": 100, + "y": 220, + "wires": [] + }, + { + "id": "e07fa97ebc66dce0", + "type": "comment", + "z": "c5746e29f53f72ce", + "name": "from ONAP", + "info": "", + "x": 90, + "y": 40, + "wires": [] + }, + { + "id": "44b8c2cc138777f1", + "type": "comment", + "z": "c5746e29f53f72ce", + "name": "from SA5 R-18 branch", + "info": "", + "x": 120, + "y": 360, + "wires": [] + }, + { + "id": "4480e5473a65a757", + "type": "inject", + "z": "c5746e29f53f72ce", + "name": "oRanScDuHelloWorldPmStreaming", + "props": [ + { + "p": "payload" + }, + { + "p": "topic", + "vt": "str" + } + ], + "repeat": "", + "crontab": "", + "once": false, + "onceDelay": 0.1, + "topic": "oRanScDuHelloWorldPmStreaming", + "payload": "", + "payloadType": "date", + "x": 180, + "y": 300, + "wires": [ + [ + "e5f66f4bd6777ca0" + ] + ] + }, + { + "id": "52f22ee054e5b4ac", + "type": "inject", + "z": "c5746e29f53f72ce", + "name": "o1NotifyPnfRegistration", + "props": [ + { + "p": "payload" + }, + { + "p": "topic", + "vt": "str" + } + ], + "repeat": "", + "crontab": "", + "once": false, + "onceDelay": 0.1, + "topic": "o1NotifyPnfRegistration", + "payload": "", + "payloadType": "date", + "x": 220, + "y": 260, + "wires": [ + [ + "e5f66f4bd6777ca0" + ] + ] + }, + { + "id": "3051f52553efaaa4", + "type": "http request", + "z": "c5746e29f53f72ce", + "name": "", + "method": "GET", + "ret": "txt", + "paytoqs": "ignore", + "url": "", + "tls": "7b2f4859e5963695", + "persist": true, + "proxy": "", + "insecureHTTPParser": true, + "authType": "", + "senderr": false, + "headers": [], + "x": 850, + "y": 180, + "wires": [ + [ + "dc576b6355478428" + ] + ] + }, + { + "id": "0acceacb99b7981a", + "type": "inject", + "z": "c5746e29f53f72ce", + "name": "Topics?", + "props": [ + { + "p": "payload" + }, + { + "p": "topic", + "vt": "str" + } + ], + "repeat": "", + "crontab": "", + "once": false, + "onceDelay": 0.1, + "topic": "topics", + "payload": "", + "payloadType": "date", + "x": 530, + "y": 180, + "wires": [ + [ + "e4ec70e46406674f" + ] + ] + }, + { + "id": "34b7ac222692e06d", + "type": "comment", + "z": "c5746e29f53f72ce", + "name": "from OpenFronthaul Management-Plane", + "info": "", + "x": 580, + "y": 280, + "wires": [] + }, + { + "id": "25a3eca83bbc3489", + "type": "inject", + "z": "c5746e29f53f72ce", + "name": "o-ran-supervision:supervision-notification", + "props": [ + { + "p": "payload" + }, + { + "p": "topic", + "vt": "str" + } + ], + "repeat": "60", + "crontab": "", + "once": false, + "onceDelay": 0.1, + "topic": "o-ran-supervision:supervision-notification", + "payload": "", + "payloadType": "date", + "x": 620, + "y": 1040, + "wires": [ + [ + "e5f66f4bd6777ca0" + ] + ] + }, + { + "id": "0194d014ef8f6c5e", + "type": "inject", + "z": "c5746e29f53f72ce", + "name": "o-ran-file-management:file-upload-notification", + "props": [ + { + "p": "payload" + }, + { + "p": "topic", + "vt": "str" + } + ], + "repeat": "", + "crontab": "", + "once": false, + "onceDelay": 0.1, + "topic": "o-ran-file-management:file-upload-notification", + "payload": "", + "payloadType": "date", + "x": 630, + "y": 760, + "wires": [ + [ + "e5f66f4bd6777ca0" + ] + ] + }, + { + "id": "775aacf9e2cc0285", + "type": "inject", + "z": "c5746e29f53f72ce", + "name": "o-ran-file-management:file-download-event", + "props": [ + { + "p": "payload" + }, + { + "p": "topic", + "vt": "str" + } + ], + "repeat": "", + "crontab": "", + "once": false, + "onceDelay": 0.1, + "topic": "o-ran-file-management:file-download-event", + "payload": "", + "payloadType": "date", + "x": 620, + "y": 720, + "wires": [ + [ + "e5f66f4bd6777ca0" + ] + ] + }, + { + "id": "3e3be17a65a7d1bf", + "type": "inject", + "z": "c5746e29f53f72ce", + "d": true, + "name": "o-ran-ald-port:dc-enabled-status-change", + "props": [ + { + "p": "payload" + }, + { + "p": "topic", + "vt": "str" + } + ], + "repeat": "", + "crontab": "", + "once": false, + "onceDelay": 0.1, + "topic": "o-ran-ald-port:dc-enabled-status-change", + "payload": "", + "payloadType": "date", + "x": 620, + "y": 320, + "wires": [ + [ + "e5f66f4bd6777ca0" + ] + ] + }, + { + "id": "665c45e5ccd1c9cb", + "type": "inject", + "z": "c5746e29f53f72ce", + "d": true, + "name": "o-ran-ald-port:overcurrent-report", + "props": [ + { + "p": "payload" + }, + { + "p": "topic", + "vt": "str" + } + ], + "repeat": "", + "crontab": "", + "once": false, + "onceDelay": 0.1, + "topic": "o-ran-ald-port:overcurrent-report", + "payload": "", + "payloadType": "date", + "x": 590, + "y": 360, "wires": [ [ "e5f66f4bd6777ca0" @@ -1700,10 +2096,11 @@ ] }, { - "id": "775aacf9e2cc0285", + "id": "5520ce3b83578f17", "type": "inject", "z": "c5746e29f53f72ce", - "name": "o-ran-file-management:file-download-event", + "d": true, + "name": "o-ran-antenna-calibration:antenna-calibration-coordinated", "props": [ { "p": "payload" @@ -1717,11 +2114,11 @@ "crontab": "", "once": false, "onceDelay": 0.1, - "topic": "o-ran-file-management:file-download-event", + "topic": "o-ran-antenna-calibration:antenna-calibration-coordinated", "payload": "", "payloadType": "date", - "x": 620, - "y": 720, + "x": 670, + "y": 400, "wires": [ [ "e5f66f4bd6777ca0" @@ -1729,11 +2126,11 @@ ] }, { - "id": "3e3be17a65a7d1bf", + "id": "fda3090fb4f1e9d4", "type": "inject", "z": "c5746e29f53f72ce", "d": true, - "name": "o-ran-ald-port:dc-enabled-status-change", + "name": "o-ran-antenna-calibration:antenna-calibration-multiple-time-resource-params", "props": [ { "p": "payload" @@ -1747,11 +2144,11 @@ "crontab": "", "once": false, "onceDelay": 0.1, - "topic": "o-ran-ald-port:dc-enabled-status-change", + "topic": "o-ran-antenna-calibration:antenna-calibration-multiple-time-resource-params", "payload": "", "payloadType": "date", - "x": 620, - "y": 320, + "x": 730, + "y": 440, "wires": [ [ "e5f66f4bd6777ca0" @@ -1759,11 +2156,11 @@ ] }, { - "id": "665c45e5ccd1c9cb", + "id": "2551bb6c9746a7c2", "type": "inject", "z": "c5746e29f53f72ce", "d": true, - "name": "o-ran-ald-port:overcurrent-report", + "name": "o-ran-antenna-calibration:antenna-calibration-required", "props": [ { "p": "payload" @@ -1777,11 +2174,11 @@ "crontab": "", "once": false, "onceDelay": 0.1, - "topic": "o-ran-ald-port:overcurrent-report", + "topic": "o-ran-antenna-calibration:antenna-calibration-required", "payload": "", "payloadType": "date", - "x": 590, - "y": 360, + "x": 660, + "y": 480, "wires": [ [ "e5f66f4bd6777ca0" @@ -1789,11 +2186,11 @@ ] }, { - "id": "5520ce3b83578f17", + "id": "0dcc72d0235e6336", "type": "inject", "z": "c5746e29f53f72ce", "d": true, - "name": "o-ran-antenna-calibration:antenna-calibration-coordinated", + "name": "o-ran-antenna-calibration:antenna-calibration-result", "props": [ { "p": "payload" @@ -1807,11 +2204,217 @@ "crontab": "", "once": false, "onceDelay": 0.1, - "topic": "o-ran-antenna-calibration:antenna-calibration-coordinated", + "topic": "o-ran-antenna-calibration:antenna-calibration-result", + "payload": "", + "payloadType": "date", + "x": 650, + "y": 520, + "wires": [ + [ + "e5f66f4bd6777ca0" + ] + ] + }, + { + "id": "0abafa5c1a4ebd33", + "type": "inject", + "z": "c5746e29f53f72ce", + "d": true, + "name": "o-ran-beamforming:beamforming-information-update", + "props": [ + { + "p": "payload" + }, + { + "p": "topic", + "vt": "str" + } + ], + "repeat": "", + "crontab": "", + "once": false, + "onceDelay": 0.1, + "topic": "o-ran-beamforming:beamforming-information-update", + "payload": "", + "payloadType": "date", + "x": 650, + "y": 560, + "wires": [ + [ + "e5f66f4bd6777ca0" + ] + ] + }, + { + "id": "d74c5f1885485d8c", + "type": "inject", + "z": "c5746e29f53f72ce", + "d": true, + "name": "o-ran-beamforming:capability-group-beamforming-information-update", + "props": [ + { + "p": "payload" + }, + { + "p": "topic", + "vt": "str" + } + ], + "repeat": "", + "crontab": "", + "once": false, + "onceDelay": 0.1, + "topic": "o-ran-beamforming:capability-group-beamforming-information-update", + "payload": "", + "payloadType": "date", + "x": 700, + "y": 600, + "wires": [ + [ + "e5f66f4bd6777ca0" + ] + ] + }, + { + "id": "8d755b355a3d5557", + "type": "inject", + "z": "c5746e29f53f72ce", + "d": true, + "name": "o-ran-beamforming:predefined-beam-tilt-offset-complete", + "props": [ + { + "p": "payload" + }, + { + "p": "topic", + "vt": "str" + } + ], + "repeat": "", + "crontab": "", + "once": false, + "onceDelay": 0.1, + "topic": "o-ran-beamforming:predefined-beam-tilt-offset-complete", + "payload": "", + "payloadType": "date", + "x": 660, + "y": 640, + "wires": [ + [] + ] + }, + { + "id": "6ebe4693c580ae00", + "type": "inject", + "z": "c5746e29f53f72ce", + "d": true, + "name": "o-ran-externalio:external-input-change", + "props": [ + { + "p": "payload" + }, + { + "p": "topic", + "vt": "str" + } + ], + "repeat": "", + "crontab": "", + "once": false, + "onceDelay": 0.1, + "topic": "o-ran-externalio:external-input-change", + "payload": "", + "payloadType": "date", + "x": 610, + "y": 680, + "wires": [ + [] + ] + }, + { + "id": "89144928a6ead625", + "type": "inject", + "z": "c5746e29f53f72ce", + "d": true, + "name": "o-ran-fm:alarm-notif", + "props": [ + { + "p": "payload" + }, + { + "p": "topic", + "vt": "str" + } + ], + "repeat": "", + "crontab": "", + "once": false, + "onceDelay": 0.1, + "topic": "o-ran-fm:alarm-notif", + "payload": "", + "payloadType": "date", + "x": 550, + "y": 800, + "wires": [ + [ + "e5f66f4bd6777ca0" + ] + ] + }, + { + "id": "8ebca0cd456a9763", + "type": "inject", + "z": "c5746e29f53f72ce", + "d": true, + "name": "o-ran-laa-operations:measurement-result", + "props": [ + { + "p": "payload" + }, + { + "p": "topic", + "vt": "str" + } + ], + "repeat": "", + "crontab": "", + "once": false, + "onceDelay": 0.1, + "topic": "o-ran-laa-operations:measurement-result", + "payload": "", + "payloadType": "date", + "x": 620, + "y": 840, + "wires": [ + [ + "e5f66f4bd6777ca0" + ] + ] + }, + { + "id": "4778511387bc7449", + "type": "inject", + "z": "c5746e29f53f72ce", + "d": true, + "name": "o-ran-performance-management:measurement-result-stats", + "props": [ + { + "p": "payload" + }, + { + "p": "topic", + "vt": "str" + } + ], + "repeat": "", + "crontab": "", + "once": false, + "onceDelay": 0.1, + "topic": "o-ran-performance-management:measurement-result-stats", "payload": "", "payloadType": "date", "x": 670, - "y": 400, + "y": 880, "wires": [ [ "e5f66f4bd6777ca0" @@ -1819,11 +2422,11 @@ ] }, { - "id": "fda3090fb4f1e9d4", + "id": "c106623d629fbe54", "type": "inject", "z": "c5746e29f53f72ce", "d": true, - "name": "o-ran-antenna-calibration:antenna-calibration-multiple-time-resource-params", + "name": "o-ran-software-management:activation-event", "props": [ { "p": "payload" @@ -1837,11 +2440,11 @@ "crontab": "", "once": false, "onceDelay": 0.1, - "topic": "o-ran-antenna-calibration:antenna-calibration-multiple-time-resource-params", + "topic": "o-ran-software-management:activation-event", "payload": "", "payloadType": "date", - "x": 730, - "y": 440, + "x": 630, + "y": 920, "wires": [ [ "e5f66f4bd6777ca0" @@ -1849,11 +2452,11 @@ ] }, { - "id": "2551bb6c9746a7c2", + "id": "4db0e5b915d76ddb", "type": "inject", "z": "c5746e29f53f72ce", "d": true, - "name": "o-ran-antenna-calibration:antenna-calibration-required", + "name": "o-ran-software-management:download-event", "props": [ { "p": "payload" @@ -1867,11 +2470,11 @@ "crontab": "", "once": false, "onceDelay": 0.1, - "topic": "o-ran-antenna-calibration:antenna-calibration-required", + "topic": "o-ran-software-management:download-event", "payload": "", "payloadType": "date", - "x": 660, - "y": 480, + "x": 630, + "y": 960, "wires": [ [ "e5f66f4bd6777ca0" @@ -1879,11 +2482,11 @@ ] }, { - "id": "0dcc72d0235e6336", + "id": "8d3fab47729a807d", "type": "inject", "z": "c5746e29f53f72ce", "d": true, - "name": "o-ran-antenna-calibration:antenna-calibration-result", + "name": "o-ran-software-management:install-event", "props": [ { "p": "payload" @@ -1897,11 +2500,11 @@ "crontab": "", "once": false, "onceDelay": 0.1, - "topic": "o-ran-antenna-calibration:antenna-calibration-result", + "topic": "o-ran-software-management:install-event", "payload": "", "payloadType": "date", - "x": 650, - "y": 520, + "x": 620, + "y": 1000, "wires": [ [ "e5f66f4bd6777ca0" @@ -1909,11 +2512,11 @@ ] }, { - "id": "0abafa5c1a4ebd33", + "id": "7ac87519cb59151d", "type": "inject", "z": "c5746e29f53f72ce", "d": true, - "name": "o-ran-beamforming:beamforming-information-update", + "name": "o-ran-sync:gnss-state-change", "props": [ { "p": "payload" @@ -1927,11 +2530,11 @@ "crontab": "", "once": false, "onceDelay": 0.1, - "topic": "o-ran-beamforming:beamforming-information-update", + "topic": "o-ran-sync:gnss-state-change", "payload": "", "payloadType": "date", - "x": 650, - "y": 560, + "x": 580, + "y": 1080, "wires": [ [ "e5f66f4bd6777ca0" @@ -1939,11 +2542,11 @@ ] }, { - "id": "d74c5f1885485d8c", + "id": "55725b18e27c1a27", "type": "inject", "z": "c5746e29f53f72ce", "d": true, - "name": "o-ran-beamforming:capability-group-beamforming-information-update", + "name": "o-ran-sync:ptp-state-change", "props": [ { "p": "payload" @@ -1957,11 +2560,11 @@ "crontab": "", "once": false, "onceDelay": 0.1, - "topic": "o-ran-beamforming:capability-group-beamforming-information-update", + "topic": "o-ran-sync:ptp-state-change", "payload": "", "payloadType": "date", - "x": 700, - "y": 600, + "x": 580, + "y": 1120, "wires": [ [ "e5f66f4bd6777ca0" @@ -1969,11 +2572,11 @@ ] }, { - "id": "8d755b355a3d5557", + "id": "dde01e699dec844f", "type": "inject", "z": "c5746e29f53f72ce", "d": true, - "name": "o-ran-beamforming:predefined-beam-tilt-offset-complete", + "name": "o-ran-sync:synce-state-change", "props": [ { "p": "payload" @@ -1987,21 +2590,23 @@ "crontab": "", "once": false, "onceDelay": 0.1, - "topic": "o-ran-beamforming:predefined-beam-tilt-offset-complete", + "topic": "o-ran-sync:synce-state-change", "payload": "", "payloadType": "date", - "x": 660, - "y": 640, + "x": 590, + "y": 1160, "wires": [ - [] + [ + "e5f66f4bd6777ca0" + ] ] }, { - "id": "6ebe4693c580ae00", + "id": "5457d995823e58f6", "type": "inject", "z": "c5746e29f53f72ce", "d": true, - "name": "o-ran-externalio:external-input-change", + "name": "o-ran-sync:synchronization-state-change", "props": [ { "p": "payload" @@ -2015,21 +2620,23 @@ "crontab": "", "once": false, "onceDelay": 0.1, - "topic": "o-ran-externalio:external-input-change", + "topic": "o-ran-sync:synchronization-state-change", "payload": "", "payloadType": "date", - "x": 610, - "y": 680, + "x": 620, + "y": 1200, "wires": [ - [] + [ + "e5f66f4bd6777ca0" + ] ] }, { - "id": "89144928a6ead625", + "id": "ca9f765b3838d5ff", "type": "inject", "z": "c5746e29f53f72ce", "d": true, - "name": "o-ran-fm:alarm-notif", + "name": "o-ran-trace:trace-log-generated", "props": [ { "p": "payload" @@ -2043,11 +2650,11 @@ "crontab": "", "once": false, "onceDelay": 0.1, - "topic": "o-ran-fm:alarm-notif", + "topic": "o-ran-trace:trace-log-generated", "payload": "", "payloadType": "date", - "x": 550, - "y": 800, + "x": 590, + "y": 1240, "wires": [ [ "e5f66f4bd6777ca0" @@ -2055,11 +2662,11 @@ ] }, { - "id": "8ebca0cd456a9763", + "id": "0a837c4beaa140e0", "type": "inject", "z": "c5746e29f53f72ce", "d": true, - "name": "o-ran-laa-operations:measurement-result", + "name": "o-ran-uplane-conf:rx-array-carriers-state-change", "props": [ { "p": "payload" @@ -2073,11 +2680,11 @@ "crontab": "", "once": false, "onceDelay": 0.1, - "topic": "o-ran-laa-operations:measurement-result", + "topic": "o-ran-uplane-conf:rx-array-carriers-state-change", "payload": "", "payloadType": "date", - "x": 620, - "y": 840, + "x": 640, + "y": 1320, "wires": [ [ "e5f66f4bd6777ca0" @@ -2085,11 +2692,11 @@ ] }, { - "id": "4778511387bc7449", + "id": "3dfb5349f08c5ea9", "type": "inject", "z": "c5746e29f53f72ce", "d": true, - "name": "o-ran-performance-management:measurement-result-stats", + "name": "o-ran-troubleshooting:troubleshooting-log-generated", "props": [ { "p": "payload" @@ -2103,11 +2710,11 @@ "crontab": "", "once": false, "onceDelay": 0.1, - "topic": "o-ran-performance-management:measurement-result-stats", + "topic": "o-ran-troubleshooting:troubleshooting-log-generated", "payload": "", "payloadType": "date", - "x": 670, - "y": 880, + "x": 650, + "y": 1280, "wires": [ [ "e5f66f4bd6777ca0" @@ -2115,11 +2722,11 @@ ] }, { - "id": "c106623d629fbe54", + "id": "030a6e7e6371402e", "type": "inject", "z": "c5746e29f53f72ce", "d": true, - "name": "o-ran-software-management:activation-event", + "name": "o-ran-uplane-conf:tx-array-carriers-state-change", "props": [ { "p": "payload" @@ -2133,11 +2740,11 @@ "crontab": "", "once": false, "onceDelay": 0.1, - "topic": "o-ran-software-management:activation-event", + "topic": "o-ran-uplane-conf:tx-array-carriers-state-change", "payload": "", "payloadType": "date", - "x": 630, - "y": 920, + "x": 640, + "y": 1360, "wires": [ [ "e5f66f4bd6777ca0" @@ -2145,11 +2752,10 @@ ] }, { - "id": "4db0e5b915d76ddb", + "id": "d932661ae80274a1", "type": "inject", "z": "c5746e29f53f72ce", - "d": true, - "name": "o-ran-software-management:download-event", + "name": "notifyNewAlarm", "props": [ { "p": "payload" @@ -2163,11 +2769,11 @@ "crontab": "", "once": false, "onceDelay": 0.1, - "topic": "o-ran-software-management:download-event", + "topic": "notifyNewAlarm", "payload": "", "payloadType": "date", - "x": 630, - "y": 960, + "x": 240, + "y": 600, "wires": [ [ "e5f66f4bd6777ca0" @@ -2175,11 +2781,10 @@ ] }, { - "id": "8d3fab47729a807d", + "id": "c4337f08252203ec", "type": "inject", "z": "c5746e29f53f72ce", - "d": true, - "name": "o-ran-software-management:install-event", + "name": "notifyChangedAlarm", "props": [ { "p": "payload" @@ -2193,11 +2798,11 @@ "crontab": "", "once": false, "onceDelay": 0.1, - "topic": "o-ran-software-management:install-event", + "topic": "notifyChangedAlarm", "payload": "", "payloadType": "date", - "x": 620, - "y": 1000, + "x": 230, + "y": 640, "wires": [ [ "e5f66f4bd6777ca0" @@ -2205,11 +2810,10 @@ ] }, { - "id": "7ac87519cb59151d", + "id": "62048992a866405d", "type": "inject", "z": "c5746e29f53f72ce", - "d": true, - "name": "o-ran-sync:gnss-state-change", + "name": "notifyChangedAlarmGeneral", "props": [ { "p": "payload" @@ -2223,11 +2827,11 @@ "crontab": "", "once": false, "onceDelay": 0.1, - "topic": "o-ran-sync:gnss-state-change", + "topic": "notifyChangedAlarmGeneral", "payload": "", "payloadType": "date", - "x": 580, - "y": 1080, + "x": 200, + "y": 680, "wires": [ [ "e5f66f4bd6777ca0" @@ -2235,11 +2839,10 @@ ] }, { - "id": "55725b18e27c1a27", + "id": "353e0a6e1e693ae5", "type": "inject", "z": "c5746e29f53f72ce", - "d": true, - "name": "o-ran-sync:ptp-state-change", + "name": "notifyAckStateChanged", "props": [ { "p": "payload" @@ -2253,11 +2856,11 @@ "crontab": "", "once": false, "onceDelay": 0.1, - "topic": "o-ran-sync:ptp-state-change", + "topic": "notifyAckStateChanged", "payload": "", "payloadType": "date", - "x": 580, - "y": 1120, + "x": 220, + "y": 720, "wires": [ [ "e5f66f4bd6777ca0" @@ -2265,11 +2868,10 @@ ] }, { - "id": "dde01e699dec844f", + "id": "3879e3d1320f1459", "type": "inject", "z": "c5746e29f53f72ce", - "d": true, - "name": "o-ran-sync:synce-state-change", + "name": "notifyCorrelatedNotificationChanged", "props": [ { "p": "payload" @@ -2283,11 +2885,11 @@ "crontab": "", "once": false, "onceDelay": 0.1, - "topic": "o-ran-sync:synce-state-change", + "topic": "notifyCorrelatedNotificationChanged", "payload": "", "payloadType": "date", - "x": 590, - "y": 1160, + "x": 180, + "y": 760, "wires": [ [ "e5f66f4bd6777ca0" @@ -2295,11 +2897,10 @@ ] }, { - "id": "5457d995823e58f6", + "id": "ea314b13220c8f40", "type": "inject", "z": "c5746e29f53f72ce", - "d": true, - "name": "o-ran-sync:synchronization-state-change", + "name": "notifyComments", "props": [ { "p": "payload" @@ -2313,11 +2914,11 @@ "crontab": "", "once": false, "onceDelay": 0.1, - "topic": "o-ran-sync:synchronization-state-change", + "topic": "notifyComments", "payload": "", "payloadType": "date", - "x": 620, - "y": 1200, + "x": 240, + "y": 800, "wires": [ [ "e5f66f4bd6777ca0" @@ -2325,11 +2926,10 @@ ] }, { - "id": "ca9f765b3838d5ff", + "id": "407c7befca74d24b", "type": "inject", "z": "c5746e29f53f72ce", - "d": true, - "name": "o-ran-trace:trace-log-generated", + "name": "notifyClearedAlarm", "props": [ { "p": "payload" @@ -2343,11 +2943,11 @@ "crontab": "", "once": false, "onceDelay": 0.1, - "topic": "o-ran-trace:trace-log-generated", + "topic": "notifyClearedAlarm", "payload": "", "payloadType": "date", - "x": 590, - "y": 1240, + "x": 230, + "y": 840, "wires": [ [ "e5f66f4bd6777ca0" @@ -2355,11 +2955,10 @@ ] }, { - "id": "0a837c4beaa140e0", + "id": "c054dd03a80a4e48", "type": "inject", "z": "c5746e29f53f72ce", - "d": true, - "name": "o-ran-uplane-conf:rx-array-carriers-state-change", + "name": "notifyAlarmListRebuilt", "props": [ { "p": "payload" @@ -2373,11 +2972,11 @@ "crontab": "", "once": false, "onceDelay": 0.1, - "topic": "o-ran-uplane-conf:rx-array-carriers-state-change", + "topic": "notifyAlarmListRebuilt", "payload": "", "payloadType": "date", - "x": 640, - "y": 1320, + "x": 220, + "y": 880, "wires": [ [ "e5f66f4bd6777ca0" @@ -2385,11 +2984,10 @@ ] }, { - "id": "3dfb5349f08c5ea9", + "id": "5c8b20a14ea5863a", "type": "inject", "z": "c5746e29f53f72ce", - "d": true, - "name": "o-ran-troubleshooting:troubleshooting-log-generated", + "name": "notifyPotentialFaultyAlarmList", "props": [ { "p": "payload" @@ -2403,11 +3001,11 @@ "crontab": "", "once": false, "onceDelay": 0.1, - "topic": "o-ran-troubleshooting:troubleshooting-log-generated", + "topic": "notifyPotentialFaultyAlarmList", "payload": "", "payloadType": "date", - "x": 650, - "y": 1280, + "x": 200, + "y": 920, "wires": [ [ "e5f66f4bd6777ca0" @@ -2415,11 +3013,30 @@ ] }, { - "id": "030a6e7e6371402e", + "id": "f5d7d173f1ac5213", + "type": "comment", + "z": "c5746e29f53f72ce", + "name": "TS28532_FaultMnS.yaml", + "info": "", + "x": 130, + "y": 560, + "wires": [] + }, + { + "id": "c6687553f38611cd", + "type": "comment", + "z": "c5746e29f53f72ce", + "name": "TS28532_FileDataReportingMnS.yaml", + "info": "", + "x": 170, + "y": 440, + "wires": [] + }, + { + "id": "64720217524b2f2c", "type": "inject", "z": "c5746e29f53f72ce", - "d": true, - "name": "o-ran-uplane-conf:tx-array-carriers-state-change", + "name": "notifyFilePreparationError", "props": [ { "p": "payload" @@ -2433,11 +3050,11 @@ "crontab": "", "once": false, "onceDelay": 0.1, - "topic": "o-ran-uplane-conf:tx-array-carriers-state-change", + "topic": "notifyFilePreparationError", "payload": "", "payloadType": "date", - "x": 640, - "y": 1360, + "x": 210, + "y": 520, "wires": [ [ "e5f66f4bd6777ca0" @@ -2445,29 +3062,29 @@ ] }, { - "id": "2a2e05d79287f4a0", + "id": "e4ec70e46406674f", "type": "function", "z": "c5746e29f53f72ce", - "name": "Provider", - "func": "global.set('topicData', msg.payload)\nreturn msg;", + "name": "http-preparation", + "func": "const protocol = env.get('MESSAGES_PROTOCOL');\nconst host = env.get('MESSAGES_HOST');\nconst port = env.get('MESSAGES_PORT');\nconst base = protocol + '://' + host + ':' + port;\nconst path = msg.topic;\nmsg.url = [base, path].join('/');\nreturn msg;", "outputs": 1, "noerr": 0, "initialize": "", "finalize": "", "libs": [], - "x": 980, - "y": 220, + "x": 680, + "y": 180, "wires": [ [ - "562063a080cb99d6" + "3051f52553efaaa4" ] ] }, { - "id": "d932661ae80274a1", + "id": "58232148f55eafc9", "type": "inject", "z": "c5746e29f53f72ce", - "name": "notifyNewAlarm", + "name": "heartbeat (deprecated)", "props": [ { "p": "payload" @@ -2477,15 +3094,44 @@ "vt": "str" } ], - "repeat": "", + "repeat": "60", "crontab": "", "once": false, "onceDelay": 0.1, - "topic": "notifyNewAlarm", + "topic": "heartbeat", "payload": "", "payloadType": "date", - "x": 240, - "y": 400, + "x": 210, + "y": 120, + "wires": [ + [ + "e5f66f4bd6777ca0" + ] + ] + }, + { + "id": "23cf0bc0546d281b", + "type": "inject", + "z": "c5746e29f53f72ce", + "name": "fault (deprecated)", + "props": [ + { + "p": "payload" + }, + { + "p": "topic", + "vt": "str" + } + ], + "repeat": "60", + "crontab": "", + "once": false, + "onceDelay": 0.1, + "topic": "fault", + "payload": "", + "payloadType": "date", + "x": 230, + "y": 160, "wires": [ [ "e5f66f4bd6777ca0" @@ -2525,14 +3171,14 @@ "id": "329e838eb4bf63f4", "type": "function", "z": "7ba02ed596e8cde5", - "name": "ResetActionData", - "func": "const base = 'https://odlux.oam.smo.o-ran-sc.org';\nconst path = 'rests/operations/network-topology:network-topology/topology=topology-netconf/node=';\nconst nodeId = msg.payload;\nconst mount = 'yang-ext:mount';\nconst action = 'o-ran-supervision:supervision-watchdog-reset';\n\nmsg.url = [base,path + nodeId, mount, action].join('/');\nmsg.payload = { \n \"o-ran-supervision:input\": \n {\n \"supervision-notification-interval\": 60, \n \"guard-timer-overhead\": 10\n }\n}\nreturn msg;", + "name": "http-preparation", + "func": "const protocol = env.get('SDN_CONTROLLER_PROTOCOL');\nconst host = env.get('SDN_CONTROLLER_HOST');\nconst port = env.get('SDN_CONTROLLER_PORT');;\nconst base = protocol + '://' + host + ':' + port;\nconst path = 'rests/operations/network-topology:network-topology/topology=topology-netconf/node=';\nconst nodeId = msg.payload;\nconst mount = 'yang-ext:mount';\nconst action = 'o-ran-supervision:supervision-watchdog-reset';\nmsg.url = [base,path + nodeId, mount, action].join('/');\n\nconst user = env.get('SDN_CONTROLLER_USERNAME');\nconst password = env.get('SDN_CONTROLLER_PASSWORD');\nconst auth = Buffer.from([user, password].join(':')).toString('base64')\nconst basicAuth = ['Basic', auth].join(' ');\n\nmsg.headers = {};\nmsg.headers['Content-Type'] = 'application/yang-data+json';\nmsg.headers['Accept'] = 'application/yang-data+json';\nmsg.headers['Authorization'] = basicAuth;\n\nmsg.payload = { \n \"o-ran-supervision:input\": \n {\n \"supervision-notification-interval\": 60, \n \"guard-timer-overhead\": 10\n }\n}\nreturn msg;", "outputs": 1, "noerr": 0, "initialize": "", "finalize": "", "libs": [], - "x": 570, + "x": 560, "y": 220, "wires": [ [ @@ -2554,22 +3200,9 @@ "persist": true, "proxy": "", "insecureHTTPParser": true, - "authType": "basic", + "authType": "", "senderr": false, - "headers": [ - { - "keyType": "other", - "keyValue": "Accept", - "valueType": "other", - "valueValue": "application/json" - }, - { - "keyType": "other", - "keyValue": "Content-Type", - "valueType": "other", - "valueValue": "application/json" - } - ], + "headers": [], "x": 800, "y": 220, "wires": [ @@ -2585,13 +3218,13 @@ "name": "Response", "active": true, "tosidebar": true, - "console": false, - "tostatus": false, + "console": true, + "tostatus": true, "complete": "payload", "targetType": "msg", - "statusVal": "", - "statusType": "auto", - "x": 1000, + "statusVal": "payload.length", + "statusType": "msg", + "x": 1010, "y": 220, "wires": [] }, @@ -2676,7 +3309,7 @@ "name": "The Consumer checks for data on the message router provided by the \"Massage Topics\" flow.", "info": "The Consumer checks for data on the message router provided by the \"Massage Topics\" flow.", "x": 520, - "y": 260, + "y": 280, "wires": [] } ] \ No newline at end of file