Create flow for notifyClearedAlarm
[oam.git] / solution / smo / apps / flows / data / flows.json
1 [
2     {
3         "id": "51e83a0892da060e",
4         "type": "tab",
5         "label": "Event Streaming (VES)",
6         "disabled": false,
7         "info": "Sends a VES messages with body defined by 3GPP TS 28.532.\n",
8         "env": []
9     },
10     {
11         "id": "c5746e29f53f72ce",
12         "type": "tab",
13         "label": "Message Topics",
14         "disabled": false,
15         "info": "Subscribes to Kafka topics ",
16         "env": []
17     },
18     {
19         "id": "7ba02ed596e8cde5",
20         "type": "tab",
21         "label": "OpenFronthaul",
22         "disabled": false,
23         "info": "",
24         "env": []
25     },
26     {
27         "id": "7b2f4859e5963695",
28         "type": "tls-config",
29         "name": "",
30         "cert": "",
31         "key": "",
32         "ca": "",
33         "certname": "",
34         "keyname": "",
35         "caname": "",
36         "servername": "",
37         "verifyservercert": false,
38         "alpnprotocol": ""
39     },
40     {
41         "id": "91a1f8d3ce84ceda",
42         "type": "inject",
43         "z": "51e83a0892da060e",
44         "name": "notifyFileReady",
45         "props": [
46             {
47                 "p": "payload"
48             },
49             {
50                 "p": "topic",
51                 "vt": "str"
52             }
53         ],
54         "repeat": "",
55         "crontab": "",
56         "once": false,
57         "onceDelay": 0.1,
58         "topic": "notifyFileReady",
59         "payload": "",
60         "payloadType": "date",
61         "x": 120,
62         "y": 500,
63         "wires": [
64             [
65                 "b5533c10604af5a6",
66                 "f8e64d1cb25eb4ab"
67             ]
68         ]
69     },
70     {
71         "id": "b5533c10604af5a6",
72         "type": "function",
73         "z": "51e83a0892da060e",
74         "name": "vesHeader",
75         "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;",
76         "outputs": 1,
77         "noerr": 0,
78         "initialize": "",
79         "finalize": "",
80         "libs": [],
81         "x": 430,
82         "y": 260,
83         "wires": [
84             [
85                 "f65b1c13e0243ef6"
86             ]
87         ]
88     },
89     {
90         "id": "f8e64d1cb25eb4ab",
91         "type": "function",
92         "z": "51e83a0892da060e",
93         "name": "vesStndDefindBody",
94         "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/NotifyFileReady',\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        additionalText: 'Have fun!'\n    }\n};\nmsg.topic = 'stndDefinedFields';\nreturn msg;",
95         "outputs": 1,
96         "noerr": 0,
97         "initialize": "",
98         "finalize": "",
99         "libs": [],
100         "x": 470,
101         "y": 500,
102         "wires": [
103             [
104                 "f65b1c13e0243ef6"
105             ]
106         ]
107     },
108     {
109         "id": "f65b1c13e0243ef6",
110         "type": "join",
111         "z": "51e83a0892da060e",
112         "name": "",
113         "mode": "custom",
114         "build": "object",
115         "property": "payload",
116         "propertyType": "msg",
117         "key": "topic",
118         "joiner": "\\n",
119         "joinerType": "str",
120         "accumulate": false,
121         "timeout": "",
122         "count": "2",
123         "reduceRight": false,
124         "reduceExp": "",
125         "reduceInit": "",
126         "reduceInitType": "",
127         "reduceFixup": "",
128         "x": 690,
129         "y": 280,
130         "wires": [
131             [
132                 "1d6949a57bce82ab"
133             ]
134         ]
135     },
136     {
137         "id": "1d6949a57bce82ab",
138         "type": "function",
139         "z": "51e83a0892da060e",
140         "name": "createVesEvent",
141         "func": "msg.payload = {\n  event: msg.payload\n};\nreturn msg;",
142         "outputs": 1,
143         "noerr": 0,
144         "initialize": "",
145         "finalize": "",
146         "libs": [],
147         "x": 840,
148         "y": 280,
149         "wires": [
150             [
151                 "27e1d8d1e9b8fd93",
152                 "9ab2b4d9caf52c14"
153             ]
154         ]
155     },
156     {
157         "id": "27e1d8d1e9b8fd93",
158         "type": "http request",
159         "z": "51e83a0892da060e",
160         "name": "",
161         "method": "POST",
162         "ret": "txt",
163         "paytoqs": "ignore",
164         "url": "https://ves-collector.oam.smo.o-ran-sc.org/eventListener/v7",
165         "tls": "7b2f4859e5963695",
166         "persist": true,
167         "proxy": "",
168         "insecureHTTPParser": false,
169         "authType": "basic",
170         "senderr": false,
171         "headers": [],
172         "x": 1030,
173         "y": 280,
174         "wires": [
175             [
176                 "f3412bcb9e134063"
177             ]
178         ]
179     },
180     {
181         "id": "f3412bcb9e134063",
182         "type": "debug",
183         "z": "51e83a0892da060e",
184         "name": "VesCollectorResponse",
185         "active": true,
186         "tosidebar": true,
187         "console": false,
188         "tostatus": false,
189         "complete": "payload",
190         "targetType": "msg",
191         "statusVal": "",
192         "statusType": "auto",
193         "x": 1220,
194         "y": 280,
195         "wires": []
196     },
197     {
198         "id": "b5e1e7a83051b5b6",
199         "type": "inject",
200         "z": "51e83a0892da060e",
201         "name": "pnfRegistration",
202         "props": [
203             {
204                 "p": "payload"
205             },
206             {
207                 "p": "topic",
208                 "vt": "str"
209             }
210         ],
211         "repeat": "",
212         "crontab": "",
213         "once": false,
214         "onceDelay": 0.1,
215         "topic": "pnfRegistration",
216         "payload": "",
217         "payloadType": "date",
218         "x": 120,
219         "y": 80,
220         "wires": [
221             [
222                 "bd43459cf3907a5a",
223                 "b5533c10604af5a6"
224             ]
225         ]
226     },
227     {
228         "id": "bd43459cf3907a5a",
229         "type": "function",
230         "z": "51e83a0892da060e",
231         "name": "vesBody",
232         "func": "msg.topic = 'pnfRegistrationFields';\nmsg.payload = {\n    pnfRegistrationFieldsVersion: '2.1',\n    lastServiceDate: '2023-02-05',\n    macAddress: '02:42:f7:d4:62:ce',\n    manufactureDate: '2021-01-16',\n    modelNumber: 'O-RAN-SC Model',\n    oamV4IpAddress: '10.10.10.11',\n    oamV6IpAddress: '0:0:0:0:0:ffff:a0a:011',\n    serialNumber: 'VENDORA-PNF2-10.10.10.11-pnf2 BestInClass',\n    softwareVersion: '2.3.5',\n    unitFamily: \"O-RAN-SC\",\n    unitType: 'PNF2',\n    vendorName: env.get('APP_VENDOR'),\n    additionalFields: {\n        oamPort: '830',\n        protocol: 'SSH',\n        username: 'netconf',\n        password: 'netconf!',\n        reconnectOnChangedSchema: 'false',\n        'sleep-factor': '1.5',\n    tcpOnly: 'false',\n    connectionTimeout: '20000',\n    maxConnectionAttempts: '100',\n    betweenAttemptsTimeout: '2000',\n    keepaliveDelay: '120'\n}\n};\nreturn msg;",
233         "outputs": 1,
234         "noerr": 0,
235         "initialize": "",
236         "finalize": "",
237         "libs": [],
238         "x": 440,
239         "y": 80,
240         "wires": [
241             [
242                 "f65b1c13e0243ef6"
243             ]
244         ]
245     },
246     {
247         "id": "9ab2b4d9caf52c14",
248         "type": "debug",
249         "z": "51e83a0892da060e",
250         "name": "ves-message-data",
251         "active": false,
252         "tosidebar": true,
253         "console": false,
254         "tostatus": false,
255         "complete": "payload",
256         "targetType": "msg",
257         "statusVal": "",
258         "statusType": "auto",
259         "x": 1050,
260         "y": 320,
261         "wires": []
262     },
263     {
264         "id": "7d589030272c0a94",
265         "type": "inject",
266         "z": "51e83a0892da060e",
267         "d": true,
268         "name": "notifyHeartbeat",
269         "props": [
270             {
271                 "p": "payload"
272             },
273             {
274                 "p": "topic",
275                 "vt": "str"
276             }
277         ],
278         "repeat": "3",
279         "crontab": "",
280         "once": true,
281         "onceDelay": 0.1,
282         "topic": "notifyHeartbeat",
283         "payload": "",
284         "payloadType": "date",
285         "x": 130,
286         "y": 420,
287         "wires": [
288             [
289                 "b5533c10604af5a6",
290                 "ab3bc53f12d28d8f"
291             ]
292         ]
293     },
294     {
295         "id": "ab3bc53f12d28d8f",
296         "type": "function",
297         "z": "51e83a0892da060e",
298         "name": "vesStndDefindBody",
299         "func": "const timeStamp = new Date(msg.payload);\nmsg.payload = {\n    schemaReference: 'https://forge.3gpp.org/rep/sa5/MnS/raw/Rel-18/OpenAPI/TS28532_HeartbeatNtf.yaml#components/schemas/NotifyHeartbeat',\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        heartbeatNtfPeriod: 120\n    }\n};\nmsg.topic = \"stndDefinedFields\";\nreturn msg;",
300         "outputs": 1,
301         "noerr": 0,
302         "initialize": "",
303         "finalize": "",
304         "libs": [],
305         "x": 470,
306         "y": 420,
307         "wires": [
308             [
309                 "f65b1c13e0243ef6"
310             ]
311         ]
312     },
313     {
314         "id": "1bada25ea9a5aa01",
315         "type": "comment",
316         "z": "51e83a0892da060e",
317         "name": "from SA5 R-18 branch",
318         "info": "",
319         "x": 120,
320         "y": 380,
321         "wires": []
322     },
323     {
324         "id": "f4f4670363ec760f",
325         "type": "comment",
326         "z": "51e83a0892da060e",
327         "name": "from O-RAN-SC",
328         "info": "",
329         "x": 100,
330         "y": 140,
331         "wires": []
332     },
333     {
334         "id": "e4dc4647c388ab77",
335         "type": "comment",
336         "z": "51e83a0892da060e",
337         "name": "from ONAP",
338         "info": "",
339         "x": 90,
340         "y": 40,
341         "wires": []
342     },
343     {
344         "id": "fb6413675e22dc71",
345         "type": "inject",
346         "z": "51e83a0892da060e",
347         "name": "o1NotifyPnfRegistration",
348         "props": [
349             {
350                 "p": "payload"
351             },
352             {
353                 "p": "topic",
354                 "vt": "str"
355             }
356         ],
357         "repeat": "",
358         "crontab": "",
359         "once": false,
360         "onceDelay": 0.1,
361         "topic": "o1NotifyPnfRegistration",
362         "payload": "",
363         "payloadType": "date",
364         "x": 140,
365         "y": 180,
366         "wires": [
367             [
368                 "b5533c10604af5a6",
369                 "51f5fa54867b7e65"
370             ]
371         ]
372     },
373     {
374         "id": "73beab79d5024f4b",
375         "type": "inject",
376         "z": "51e83a0892da060e",
377         "name": "oRanScDuHelloWorldPmStreaming",
378         "props": [
379             {
380                 "p": "payload"
381             },
382             {
383                 "p": "topic",
384                 "vt": "str"
385             }
386         ],
387         "repeat": "",
388         "crontab": "",
389         "once": false,
390         "onceDelay": 0.1,
391         "topic": "oRanScDuHelloWorldPmStreaming",
392         "payload": "",
393         "payloadType": "date",
394         "x": 180,
395         "y": 220,
396         "wires": [
397             [
398                 "5c6f93626fac58b5",
399                 "b5533c10604af5a6"
400             ]
401         ]
402     },
403     {
404         "id": "51f5fa54867b7e65",
405         "type": "function",
406         "z": "51e83a0892da060e",
407         "name": "vesStndDefindBody",
408         "func": "const timeStamp = new Date(msg.payload);\nmsg.payload = {\n    schemaReference: 'https://gerrit.o-ran-sc.org/r/gitweb?p=scp/oam/modeling.git;a=blob_plain;f=data-model/yang/working/o-ran-sc/template/yes-o1-notify-pnf-registration.yang',\n    stndDefinedFieldsVersion: '1.0',\n    data: {\n        'object-class': 'managed-element',\n        'object-instance': global.get('os').hostname(),\n        'notification-identifier': Number(timeStamp),\n        'notification-type': msg.topic,\n        'event-time': timeStamp.toISOString(),\n        systemDN: \"/\",\n        'vendor-pen': '57272',\n        'vendor-name': 'highstreet technologies USA Corp.',\n        'oam-host': global.get('os').networkInterfaces()['eth0'][0].address || global.get('os').hostname(),\n        'oam-port': 830,\n        'unit-family': 'O-RAN-SC',\n        'unit-type': 'PNF2',\n        'restart-reason': 'system-reboot',\n        'serial-number': 'O-RAN-SC-PNF2-10.10.10.11-pnf2 BestInClass',\n        'macAddress': global.get('os').networkInterfaces()['eth0'][0].mac || '00:00:00:00:00:00',\n        'modelNumber': 'O-RAN-SC Model',\n        'softwareVersion': '2.3.5',\n        'manufactureDate': '2021-01-16',\n        'lastServiceDate': '2021-03-26',\n        'transport-protocol': 'SSH',\n        'username': 'netconf',\n        'password': 'netconf!',\n        'reconnect-on-changed-schema': 'false',\n        'sleep-factor': '1.5',\n        'tcpOnly': 'false',\n        'connection-timeout': '20000',\n        'max-connection-attempts': '100',\n        'between-attempts-timeout': '2000',\n        'keepalive-delay': '120'\n    }\n};\nmsg.topic = \"stndDefinedFields\";\nreturn msg;",
409         "outputs": 1,
410         "noerr": 0,
411         "initialize": "",
412         "finalize": "",
413         "libs": [],
414         "x": 470,
415         "y": 180,
416         "wires": [
417             [
418                 "f65b1c13e0243ef6"
419             ]
420         ]
421     },
422     {
423         "id": "5c6f93626fac58b5",
424         "type": "function",
425         "z": "51e83a0892da060e",
426         "name": "vesStndDefindBody",
427         "func": "const timeStamp = new Date(msg.payload);\nmsg.payload = {\n  schemaReference: 'https://gerrit.o-ran-sc.org/r/gitweb?p=scp/oam/modeling.git;a=blob_plain;f=data-model/oas3/experimental/o-ran-sc-du-hello-world-pm-streaming-oas3.yaml#components/schemas/performance-measurement-job',\n    stndDefinedFieldsVersion: '1.0',\n    data: {\n        id: 'id:' + Number(timeStamp),\n        'start-time': timeStamp.toISOString(),\n        'administrative-state': 'unlocked',\n        'operational-state': 'enabled',\n        'user-label': 'pm-kpis',\n        'job-tag': '1a0827b7-25e7-4292-959f-6b8ab46f14c2',\n        'granularity-period': 900,\n        measurements: [\n          {\n            'measurement-type-instance-reference': 'user-equipment-average-throughput-downlink',\n            value: 300000000,\n            unit: 'kBis/s'\n          },\n          {\n            'measurement-type-instance-reference': 'user-equipment-average-throughput-uplink',\n            value: 300000000,\n            unit: 'kBis/s'\n          }\n        ]\n    }\n};\nmsg.topic = \"stndDefinedFields\";\nreturn msg;\n\n",
428         "outputs": 1,
429         "noerr": 0,
430         "initialize": "",
431         "finalize": "",
432         "libs": [],
433         "x": 470,
434         "y": 220,
435         "wires": [
436             [
437                 "f65b1c13e0243ef6"
438             ]
439         ]
440     },
441     {
442         "id": "456597d0477d239f",
443         "type": "inject",
444         "z": "51e83a0892da060e",
445         "name": "o-ran-file-management:file-download-event",
446         "props": [
447             {
448                 "p": "payload"
449             },
450             {
451                 "p": "topic",
452                 "vt": "str"
453             }
454         ],
455         "repeat": "",
456         "crontab": "",
457         "once": false,
458         "onceDelay": 0.1,
459         "topic": "o-ran-file-management:file-download-event",
460         "payload": "",
461         "payloadType": "date",
462         "x": 820,
463         "y": 820,
464         "wires": [
465             [
466                 "f40d1d16c7044edc",
467                 "b5533c10604af5a6"
468             ]
469         ]
470     },
471     {
472         "id": "f40d1d16c7044edc",
473         "type": "function",
474         "z": "51e83a0892da060e",
475         "name": "vesStndDefindBody",
476         "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;",
477         "outputs": 1,
478         "noerr": 0,
479         "initialize": "",
480         "finalize": "",
481         "libs": [],
482         "x": 1150,
483         "y": 820,
484         "wires": [
485             [
486                 "f65b1c13e0243ef6"
487             ]
488         ]
489     },
490     {
491         "id": "3d8f8180f204d804",
492         "type": "inject",
493         "z": "51e83a0892da060e",
494         "name": "o-ran-file-management:file-upload-notification",
495         "props": [
496             {
497                 "p": "payload"
498             },
499             {
500                 "p": "topic",
501                 "vt": "str"
502             }
503         ],
504         "repeat": "",
505         "crontab": "",
506         "once": false,
507         "onceDelay": 0.1,
508         "topic": "o-ran-file-management:file-upload-notification",
509         "payload": "",
510         "payloadType": "date",
511         "x": 830,
512         "y": 860,
513         "wires": [
514             [
515                 "d473bf42d8169599",
516                 "b5533c10604af5a6"
517             ]
518         ]
519     },
520     {
521         "id": "d473bf42d8169599",
522         "type": "function",
523         "z": "51e83a0892da060e",
524         "name": "vesStndDefindBody",
525         "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;",
526         "outputs": 1,
527         "noerr": 0,
528         "initialize": "",
529         "finalize": "",
530         "libs": [],
531         "x": 1150,
532         "y": 860,
533         "wires": [
534             [
535                 "f65b1c13e0243ef6"
536             ]
537         ]
538     },
539     {
540         "id": "ec85f2a64f79450d",
541         "type": "inject",
542         "z": "51e83a0892da060e",
543         "name": "o-ran-supervision:supervision-notification",
544         "props": [
545             {
546                 "p": "payload"
547             },
548             {
549                 "p": "topic",
550                 "vt": "str"
551             }
552         ],
553         "repeat": "",
554         "crontab": "",
555         "once": false,
556         "onceDelay": 0.1,
557         "topic": "o-ran-supervision:supervision-notification",
558         "payload": "",
559         "payloadType": "date",
560         "x": 820,
561         "y": 1140,
562         "wires": [
563             [
564                 "96ea9b3d7d4121dc",
565                 "b5533c10604af5a6"
566             ]
567         ]
568     },
569     {
570         "id": "96ea9b3d7d4121dc",
571         "type": "function",
572         "z": "51e83a0892da060e",
573         "name": "vesStndDefindBody",
574         "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-supervision.yang#components/schemas/ofhm-event-stream',\n    stndDefinedFieldsVersion: '1.0',\n    data: {\n        'ietf:notification': {\n            'eventTime': eventTime,\n            'o-ran-supervision:supervision-notification': {\n                'session-id': 999999\n            }\n        }\n    }\n};\nmsg.topic = 'stndDefinedFields';\nreturn msg;",
575         "outputs": 1,
576         "noerr": 0,
577         "initialize": "",
578         "finalize": "",
579         "libs": [],
580         "x": 1150,
581         "y": 1140,
582         "wires": [
583             [
584                 "f65b1c13e0243ef6"
585             ]
586         ]
587     },
588     {
589         "id": "027098b9ba7cd1e6",
590         "type": "comment",
591         "z": "51e83a0892da060e",
592         "name": "from OpenFronthaul Management-Plane",
593         "info": "",
594         "x": 780,
595         "y": 380,
596         "wires": []
597     },
598     {
599         "id": "e80ff3c876a343e5",
600         "type": "inject",
601         "z": "51e83a0892da060e",
602         "d": true,
603         "name": "o-ran-ald-port:dc-enabled-status-change",
604         "props": [
605             {
606                 "p": "payload"
607             },
608             {
609                 "p": "topic",
610                 "vt": "str"
611             }
612         ],
613         "repeat": "",
614         "crontab": "",
615         "once": false,
616         "onceDelay": 0.1,
617         "topic": "o-ran-ald-port:dc-enabled-status-change",
618         "payload": "",
619         "payloadType": "date",
620         "x": 820,
621         "y": 420,
622         "wires": [
623             []
624         ]
625     },
626     {
627         "id": "c61fe1f3bdb954d5",
628         "type": "inject",
629         "z": "51e83a0892da060e",
630         "d": true,
631         "name": "o-ran-ald-port:overcurrent-report",
632         "props": [
633             {
634                 "p": "payload"
635             },
636             {
637                 "p": "topic",
638                 "vt": "str"
639             }
640         ],
641         "repeat": "",
642         "crontab": "",
643         "once": false,
644         "onceDelay": 0.1,
645         "topic": "o-ran-ald-port:overcurrent-report",
646         "payload": "",
647         "payloadType": "date",
648         "x": 790,
649         "y": 460,
650         "wires": [
651             []
652         ]
653     },
654     {
655         "id": "939ac153e888cc93",
656         "type": "inject",
657         "z": "51e83a0892da060e",
658         "d": true,
659         "name": "o-ran-antenna-calibration:antenna-calibration-coordinated",
660         "props": [
661             {
662                 "p": "payload"
663             },
664             {
665                 "p": "topic",
666                 "vt": "str"
667             }
668         ],
669         "repeat": "",
670         "crontab": "",
671         "once": false,
672         "onceDelay": 0.1,
673         "topic": "o-ran-antenna-calibration:antenna-calibration-coordinated",
674         "payload": "",
675         "payloadType": "date",
676         "x": 870,
677         "y": 500,
678         "wires": [
679             []
680         ]
681     },
682     {
683         "id": "f7834ee33e7731fb",
684         "type": "inject",
685         "z": "51e83a0892da060e",
686         "d": true,
687         "name": "o-ran-antenna-calibration:antenna-calibration-multiple-time-resource-params",
688         "props": [
689             {
690                 "p": "payload"
691             },
692             {
693                 "p": "topic",
694                 "vt": "str"
695             }
696         ],
697         "repeat": "",
698         "crontab": "",
699         "once": false,
700         "onceDelay": 0.1,
701         "topic": "o-ran-antenna-calibration:antenna-calibration-multiple-time-resource-params",
702         "payload": "",
703         "payloadType": "date",
704         "x": 930,
705         "y": 540,
706         "wires": [
707             []
708         ]
709     },
710     {
711         "id": "8e98d432fcaef200",
712         "type": "inject",
713         "z": "51e83a0892da060e",
714         "d": true,
715         "name": "o-ran-antenna-calibration:antenna-calibration-required",
716         "props": [
717             {
718                 "p": "payload"
719             },
720             {
721                 "p": "topic",
722                 "vt": "str"
723             }
724         ],
725         "repeat": "",
726         "crontab": "",
727         "once": false,
728         "onceDelay": 0.1,
729         "topic": "o-ran-antenna-calibration:antenna-calibration-required",
730         "payload": "",
731         "payloadType": "date",
732         "x": 860,
733         "y": 580,
734         "wires": [
735             []
736         ]
737     },
738     {
739         "id": "554cb2ce5934b36c",
740         "type": "inject",
741         "z": "51e83a0892da060e",
742         "d": true,
743         "name": "o-ran-antenna-calibration:antenna-calibration-result",
744         "props": [
745             {
746                 "p": "payload"
747             },
748             {
749                 "p": "topic",
750                 "vt": "str"
751             }
752         ],
753         "repeat": "",
754         "crontab": "",
755         "once": false,
756         "onceDelay": 0.1,
757         "topic": "o-ran-antenna-calibration:antenna-calibration-result",
758         "payload": "",
759         "payloadType": "date",
760         "x": 850,
761         "y": 620,
762         "wires": [
763             []
764         ]
765     },
766     {
767         "id": "391ce0bfa3b8003d",
768         "type": "inject",
769         "z": "51e83a0892da060e",
770         "d": true,
771         "name": "o-ran-beamforming:beamforming-information-update",
772         "props": [
773             {
774                 "p": "payload"
775             },
776             {
777                 "p": "topic",
778                 "vt": "str"
779             }
780         ],
781         "repeat": "",
782         "crontab": "",
783         "once": false,
784         "onceDelay": 0.1,
785         "topic": "o-ran-beamforming:beamforming-information-update",
786         "payload": "",
787         "payloadType": "date",
788         "x": 850,
789         "y": 660,
790         "wires": [
791             []
792         ]
793     },
794     {
795         "id": "966ca15e87b419f5",
796         "type": "inject",
797         "z": "51e83a0892da060e",
798         "d": true,
799         "name": "o-ran-beamforming:capability-group-beamforming-information-update",
800         "props": [
801             {
802                 "p": "payload"
803             },
804             {
805                 "p": "topic",
806                 "vt": "str"
807             }
808         ],
809         "repeat": "",
810         "crontab": "",
811         "once": false,
812         "onceDelay": 0.1,
813         "topic": "o-ran-beamforming:capability-group-beamforming-information-update",
814         "payload": "",
815         "payloadType": "date",
816         "x": 900,
817         "y": 700,
818         "wires": [
819             []
820         ]
821     },
822     {
823         "id": "243cffacec890e26",
824         "type": "inject",
825         "z": "51e83a0892da060e",
826         "d": true,
827         "name": "o-ran-beamforming:predefined-beam-tilt-offset-complete",
828         "props": [
829             {
830                 "p": "payload"
831             },
832             {
833                 "p": "topic",
834                 "vt": "str"
835             }
836         ],
837         "repeat": "",
838         "crontab": "",
839         "once": false,
840         "onceDelay": 0.1,
841         "topic": "o-ran-beamforming:predefined-beam-tilt-offset-complete",
842         "payload": "",
843         "payloadType": "date",
844         "x": 860,
845         "y": 740,
846         "wires": [
847             []
848         ]
849     },
850     {
851         "id": "843c4093e2ddd914",
852         "type": "inject",
853         "z": "51e83a0892da060e",
854         "d": true,
855         "name": "o-ran-externalio:external-input-change",
856         "props": [
857             {
858                 "p": "payload"
859             },
860             {
861                 "p": "topic",
862                 "vt": "str"
863             }
864         ],
865         "repeat": "",
866         "crontab": "",
867         "once": false,
868         "onceDelay": 0.1,
869         "topic": "o-ran-externalio:external-input-change",
870         "payload": "",
871         "payloadType": "date",
872         "x": 810,
873         "y": 780,
874         "wires": [
875             []
876         ]
877     },
878     {
879         "id": "627b31335d7e5b6f",
880         "type": "inject",
881         "z": "51e83a0892da060e",
882         "d": true,
883         "name": "o-ran-fm:alarm-notif",
884         "props": [
885             {
886                 "p": "payload"
887             },
888             {
889                 "p": "topic",
890                 "vt": "str"
891             }
892         ],
893         "repeat": "",
894         "crontab": "",
895         "once": false,
896         "onceDelay": 0.1,
897         "topic": "o-ran-fm:alarm-notif",
898         "payload": "",
899         "payloadType": "date",
900         "x": 750,
901         "y": 900,
902         "wires": [
903             []
904         ]
905     },
906     {
907         "id": "87c1e3e0e87bd7c1",
908         "type": "inject",
909         "z": "51e83a0892da060e",
910         "d": true,
911         "name": "o-ran-laa-operations:measurement-result",
912         "props": [
913             {
914                 "p": "payload"
915             },
916             {
917                 "p": "topic",
918                 "vt": "str"
919             }
920         ],
921         "repeat": "",
922         "crontab": "",
923         "once": false,
924         "onceDelay": 0.1,
925         "topic": "o-ran-laa-operations:measurement-result",
926         "payload": "",
927         "payloadType": "date",
928         "x": 820,
929         "y": 940,
930         "wires": [
931             []
932         ]
933     },
934     {
935         "id": "27d98684362bee02",
936         "type": "inject",
937         "z": "51e83a0892da060e",
938         "d": true,
939         "name": "o-ran-performance-management:measurement-result-stats",
940         "props": [
941             {
942                 "p": "payload"
943             },
944             {
945                 "p": "topic",
946                 "vt": "str"
947             }
948         ],
949         "repeat": "",
950         "crontab": "",
951         "once": false,
952         "onceDelay": 0.1,
953         "topic": "o-ran-performance-management:measurement-result-stats",
954         "payload": "",
955         "payloadType": "date",
956         "x": 870,
957         "y": 980,
958         "wires": [
959             []
960         ]
961     },
962     {
963         "id": "03292a70960f7d50",
964         "type": "inject",
965         "z": "51e83a0892da060e",
966         "d": true,
967         "name": "o-ran-software-management:activation-event",
968         "props": [
969             {
970                 "p": "payload"
971             },
972             {
973                 "p": "topic",
974                 "vt": "str"
975             }
976         ],
977         "repeat": "",
978         "crontab": "",
979         "once": false,
980         "onceDelay": 0.1,
981         "topic": "o-ran-software-management:activation-event",
982         "payload": "",
983         "payloadType": "date",
984         "x": 830,
985         "y": 1020,
986         "wires": [
987             []
988         ]
989     },
990     {
991         "id": "652dbf9c0ef73057",
992         "type": "inject",
993         "z": "51e83a0892da060e",
994         "d": true,
995         "name": "o-ran-software-management:download-event",
996         "props": [
997             {
998                 "p": "payload"
999             },
1000             {
1001                 "p": "topic",
1002                 "vt": "str"
1003             }
1004         ],
1005         "repeat": "",
1006         "crontab": "",
1007         "once": false,
1008         "onceDelay": 0.1,
1009         "topic": "o-ran-software-management:download-event",
1010         "payload": "",
1011         "payloadType": "date",
1012         "x": 830,
1013         "y": 1060,
1014         "wires": [
1015             []
1016         ]
1017     },
1018     {
1019         "id": "0636add6c6d4d5e2",
1020         "type": "inject",
1021         "z": "51e83a0892da060e",
1022         "d": true,
1023         "name": "o-ran-software-management:install-event",
1024         "props": [
1025             {
1026                 "p": "payload"
1027             },
1028             {
1029                 "p": "topic",
1030                 "vt": "str"
1031             }
1032         ],
1033         "repeat": "",
1034         "crontab": "",
1035         "once": false,
1036         "onceDelay": 0.1,
1037         "topic": "o-ran-software-management:install-event",
1038         "payload": "",
1039         "payloadType": "date",
1040         "x": 820,
1041         "y": 1100,
1042         "wires": [
1043             []
1044         ]
1045     },
1046     {
1047         "id": "4c274d02a62c7565",
1048         "type": "inject",
1049         "z": "51e83a0892da060e",
1050         "d": true,
1051         "name": "o-ran-sync:gnss-state-change",
1052         "props": [
1053             {
1054                 "p": "payload"
1055             },
1056             {
1057                 "p": "topic",
1058                 "vt": "str"
1059             }
1060         ],
1061         "repeat": "",
1062         "crontab": "",
1063         "once": false,
1064         "onceDelay": 0.1,
1065         "topic": "o-ran-sync:gnss-state-change",
1066         "payload": "",
1067         "payloadType": "date",
1068         "x": 780,
1069         "y": 1180,
1070         "wires": [
1071             []
1072         ]
1073     },
1074     {
1075         "id": "ad0e319d109512e7",
1076         "type": "inject",
1077         "z": "51e83a0892da060e",
1078         "d": true,
1079         "name": "o-ran-sync:ptp-state-change",
1080         "props": [
1081             {
1082                 "p": "payload"
1083             },
1084             {
1085                 "p": "topic",
1086                 "vt": "str"
1087             }
1088         ],
1089         "repeat": "",
1090         "crontab": "",
1091         "once": false,
1092         "onceDelay": 0.1,
1093         "topic": "o-ran-sync:ptp-state-change",
1094         "payload": "",
1095         "payloadType": "date",
1096         "x": 780,
1097         "y": 1220,
1098         "wires": [
1099             []
1100         ]
1101     },
1102     {
1103         "id": "de24c11aa05ce94e",
1104         "type": "inject",
1105         "z": "51e83a0892da060e",
1106         "d": true,
1107         "name": "o-ran-sync:synce-state-change",
1108         "props": [
1109             {
1110                 "p": "payload"
1111             },
1112             {
1113                 "p": "topic",
1114                 "vt": "str"
1115             }
1116         ],
1117         "repeat": "",
1118         "crontab": "",
1119         "once": false,
1120         "onceDelay": 0.1,
1121         "topic": "o-ran-sync:synce-state-change",
1122         "payload": "",
1123         "payloadType": "date",
1124         "x": 790,
1125         "y": 1260,
1126         "wires": [
1127             []
1128         ]
1129     },
1130     {
1131         "id": "a9b33c01b841cc78",
1132         "type": "inject",
1133         "z": "51e83a0892da060e",
1134         "d": true,
1135         "name": "o-ran-sync:synchronization-state-change",
1136         "props": [
1137             {
1138                 "p": "payload"
1139             },
1140             {
1141                 "p": "topic",
1142                 "vt": "str"
1143             }
1144         ],
1145         "repeat": "",
1146         "crontab": "",
1147         "once": false,
1148         "onceDelay": 0.1,
1149         "topic": "o-ran-sync:synchronization-state-change",
1150         "payload": "",
1151         "payloadType": "date",
1152         "x": 820,
1153         "y": 1300,
1154         "wires": [
1155             []
1156         ]
1157     },
1158     {
1159         "id": "f4a87018c664902f",
1160         "type": "inject",
1161         "z": "51e83a0892da060e",
1162         "d": true,
1163         "name": "o-ran-trace:trace-log-generated",
1164         "props": [
1165             {
1166                 "p": "payload"
1167             },
1168             {
1169                 "p": "topic",
1170                 "vt": "str"
1171             }
1172         ],
1173         "repeat": "",
1174         "crontab": "",
1175         "once": false,
1176         "onceDelay": 0.1,
1177         "topic": "o-ran-trace:trace-log-generated",
1178         "payload": "",
1179         "payloadType": "date",
1180         "x": 790,
1181         "y": 1340,
1182         "wires": [
1183             []
1184         ]
1185     },
1186     {
1187         "id": "7cbe4e4faa26098b",
1188         "type": "inject",
1189         "z": "51e83a0892da060e",
1190         "d": true,
1191         "name": "o-ran-uplane-conf:rx-array-carriers-state-change",
1192         "props": [
1193             {
1194                 "p": "payload"
1195             },
1196             {
1197                 "p": "topic",
1198                 "vt": "str"
1199             }
1200         ],
1201         "repeat": "",
1202         "crontab": "",
1203         "once": false,
1204         "onceDelay": 0.1,
1205         "topic": "o-ran-uplane-conf:rx-array-carriers-state-change",
1206         "payload": "",
1207         "payloadType": "date",
1208         "x": 840,
1209         "y": 1420,
1210         "wires": [
1211             []
1212         ]
1213     },
1214     {
1215         "id": "a5eeb9d399c203ca",
1216         "type": "inject",
1217         "z": "51e83a0892da060e",
1218         "d": true,
1219         "name": "o-ran-troubleshooting:troubleshooting-log-generated",
1220         "props": [
1221             {
1222                 "p": "payload"
1223             },
1224             {
1225                 "p": "topic",
1226                 "vt": "str"
1227             }
1228         ],
1229         "repeat": "",
1230         "crontab": "",
1231         "once": false,
1232         "onceDelay": 0.1,
1233         "topic": "o-ran-troubleshooting:troubleshooting-log-generated",
1234         "payload": "",
1235         "payloadType": "date",
1236         "x": 850,
1237         "y": 1380,
1238         "wires": [
1239             []
1240         ]
1241     },
1242     {
1243         "id": "b9d72e03c66c78b3",
1244         "type": "inject",
1245         "z": "51e83a0892da060e",
1246         "d": true,
1247         "name": "o-ran-uplane-conf:tx-array-carriers-state-change",
1248         "props": [
1249             {
1250                 "p": "payload"
1251             },
1252             {
1253                 "p": "topic",
1254                 "vt": "str"
1255             }
1256         ],
1257         "repeat": "",
1258         "crontab": "",
1259         "once": false,
1260         "onceDelay": 0.1,
1261         "topic": "o-ran-uplane-conf:tx-array-carriers-state-change",
1262         "payload": "",
1263         "payloadType": "date",
1264         "x": 840,
1265         "y": 1460,
1266         "wires": [
1267             []
1268         ]
1269     },
1270     {
1271         "id": "bfa425cb3d578d07",
1272         "type": "inject",
1273         "z": "51e83a0892da060e",
1274         "name": "notifyNewAlarm",
1275         "props": [
1276             {
1277                 "p": "payload"
1278             },
1279             {
1280                 "p": "topic",
1281                 "vt": "str"
1282             }
1283         ],
1284         "repeat": "",
1285         "crontab": "",
1286         "once": false,
1287         "onceDelay": 0.1,
1288         "topic": "notifyNewAlarm",
1289         "payload": "",
1290         "payloadType": "date",
1291         "x": 120,
1292         "y": 620,
1293         "wires": [
1294             [
1295                 "f71ebd595a7de756",
1296                 "b5533c10604af5a6"
1297             ]
1298         ]
1299     },
1300     {
1301         "id": "f71ebd595a7de756",
1302         "type": "function",
1303         "z": "51e83a0892da060e",
1304         "name": "vesStndDefindBody",
1305         "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/NotifyNewAlarm',\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        specificProblem: alarm,\n        perceivedSeverity: severity,\n        backedUpStatus: true,\n        backUpObject: 'xyz',\n        trendIndication: 'MORE_SEVERE',\n        thresholdInfo: {\n            observedMeasurement: 'new',\n            observedValue: 123.1\n        },\n        correlatedNotifications: [],\n        stateChangeDefinition: [{ 'operational-state': 'DISABLED' }],\n        monitoredAttributes: {\n            interface: 'uuid-of-the-interface'\n        },\n        proposedRepairActions: 'Call the police!',\n        additionalText: 'O-RAN Software Community OAM',\n        additionalInformation: {\n            description: 'a test alarm'\n        },\n        rootCauseIndicator: false\n    }\n\n};\nmsg.topic = 'stndDefinedFields';\nreturn msg;",
1306         "outputs": 1,
1307         "noerr": 0,
1308         "initialize": "",
1309         "finalize": "",
1310         "libs": [],
1311         "x": 470,
1312         "y": 620,
1313         "wires": [
1314             [
1315                 "f65b1c13e0243ef6"
1316             ]
1317         ]
1318     },
1319     {
1320         "id": "82da4e47972195a4",
1321         "type": "inject",
1322         "z": "51e83a0892da060e",
1323         "d": true,
1324         "name": "notifyChangedAlarm",
1325         "props": [
1326             {
1327                 "p": "payload"
1328             },
1329             {
1330                 "p": "topic",
1331                 "vt": "str"
1332             }
1333         ],
1334         "repeat": "",
1335         "crontab": "",
1336         "once": false,
1337         "onceDelay": 0.1,
1338         "topic": "notifyChangedAlarm",
1339         "payload": "",
1340         "payloadType": "date",
1341         "x": 130,
1342         "y": 660,
1343         "wires": [
1344             []
1345         ]
1346     },
1347     {
1348         "id": "a3d85c62bee11dad",
1349         "type": "inject",
1350         "z": "51e83a0892da060e",
1351         "d": true,
1352         "name": "notifyChangedAlarmGeneral",
1353         "props": [
1354             {
1355                 "p": "payload"
1356             },
1357             {
1358                 "p": "topic",
1359                 "vt": "str"
1360             }
1361         ],
1362         "repeat": "",
1363         "crontab": "",
1364         "once": false,
1365         "onceDelay": 0.1,
1366         "topic": "notifyChangedAlarmGeneral",
1367         "payload": "",
1368         "payloadType": "date",
1369         "x": 160,
1370         "y": 700,
1371         "wires": [
1372             []
1373         ]
1374     },
1375     {
1376         "id": "e4651c07a56f2448",
1377         "type": "inject",
1378         "z": "51e83a0892da060e",
1379         "d": true,
1380         "name": "notifyAckStateChanged",
1381         "props": [
1382             {
1383                 "p": "payload"
1384             },
1385             {
1386                 "p": "topic",
1387                 "vt": "str"
1388             }
1389         ],
1390         "repeat": "",
1391         "crontab": "",
1392         "once": false,
1393         "onceDelay": 0.1,
1394         "topic": "notifyAckStateChanged",
1395         "payload": "",
1396         "payloadType": "date",
1397         "x": 140,
1398         "y": 740,
1399         "wires": [
1400             []
1401         ]
1402     },
1403     {
1404         "id": "e949006e1b1fe0f0",
1405         "type": "inject",
1406         "z": "51e83a0892da060e",
1407         "d": true,
1408         "name": "notifyCorrelatedNotificationChanged",
1409         "props": [
1410             {
1411                 "p": "payload"
1412             },
1413             {
1414                 "p": "topic",
1415                 "vt": "str"
1416             }
1417         ],
1418         "repeat": "",
1419         "crontab": "",
1420         "once": false,
1421         "onceDelay": 0.1,
1422         "topic": "notifyCorrelatedNotificationChanged",
1423         "payload": "",
1424         "payloadType": "date",
1425         "x": 180,
1426         "y": 780,
1427         "wires": [
1428             []
1429         ]
1430     },
1431     {
1432         "id": "a80169493419d5d0",
1433         "type": "inject",
1434         "z": "51e83a0892da060e",
1435         "d": true,
1436         "name": "notifyComments",
1437         "props": [
1438             {
1439                 "p": "payload"
1440             },
1441             {
1442                 "p": "topic",
1443                 "vt": "str"
1444             }
1445         ],
1446         "repeat": "",
1447         "crontab": "",
1448         "once": false,
1449         "onceDelay": 0.1,
1450         "topic": "notifyComments",
1451         "payload": "",
1452         "payloadType": "date",
1453         "x": 120,
1454         "y": 820,
1455         "wires": [
1456             []
1457         ]
1458     },
1459     {
1460         "id": "9e0f49b3d9b0a5ef",
1461         "type": "inject",
1462         "z": "51e83a0892da060e",
1463         "name": "notifyClearedAlarm",
1464         "props": [
1465             {
1466                 "p": "payload"
1467             },
1468             {
1469                 "p": "topic",
1470                 "vt": "str"
1471             }
1472         ],
1473         "repeat": "",
1474         "crontab": "",
1475         "once": false,
1476         "onceDelay": 0.1,
1477         "topic": "notifyClearedAlarm",
1478         "payload": "",
1479         "payloadType": "date",
1480         "x": 130,
1481         "y": 860,
1482         "wires": [
1483             [
1484                 "69b8d53969426ebf",
1485                 "b5533c10604af5a6"
1486             ]
1487         ]
1488     },
1489     {
1490         "id": "418d585d7406029b",
1491         "type": "inject",
1492         "z": "51e83a0892da060e",
1493         "d": true,
1494         "name": "notifyAlarmListRebuilt",
1495         "props": [
1496             {
1497                 "p": "payload"
1498             },
1499             {
1500                 "p": "topic",
1501                 "vt": "str"
1502             }
1503         ],
1504         "repeat": "",
1505         "crontab": "",
1506         "once": false,
1507         "onceDelay": 0.1,
1508         "topic": "notifyAlarmListRebuilt",
1509         "payload": "",
1510         "payloadType": "date",
1511         "x": 140,
1512         "y": 900,
1513         "wires": [
1514             []
1515         ]
1516     },
1517     {
1518         "id": "f856982bb3c3a65c",
1519         "type": "inject",
1520         "z": "51e83a0892da060e",
1521         "d": true,
1522         "name": "notifyPotentialFaultyAlarmList",
1523         "props": [
1524             {
1525                 "p": "payload"
1526             },
1527             {
1528                 "p": "topic",
1529                 "vt": "str"
1530             }
1531         ],
1532         "repeat": "",
1533         "crontab": "",
1534         "once": false,
1535         "onceDelay": 0.1,
1536         "topic": "notifyPotentialFaultyAlarmList",
1537         "payload": "",
1538         "payloadType": "date",
1539         "x": 160,
1540         "y": 940,
1541         "wires": [
1542             []
1543         ]
1544     },
1545     {
1546         "id": "4617f66b8940469e",
1547         "type": "comment",
1548         "z": "51e83a0892da060e",
1549         "name": "TS28532_FaultMnS.yaml",
1550         "info": "",
1551         "x": 130,
1552         "y": 580,
1553         "wires": []
1554     },
1555     {
1556         "id": "69b8d53969426ebf",
1557         "type": "function",
1558         "z": "51e83a0892da060e",
1559         "name": "vesStndDefindBody",
1560         "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;",
1561         "outputs": 1,
1562         "noerr": 0,
1563         "initialize": "",
1564         "finalize": "",
1565         "libs": [],
1566         "x": 470,
1567         "y": 860,
1568         "wires": [
1569             [
1570                 "f65b1c13e0243ef6"
1571             ]
1572         ]
1573     },
1574     {
1575         "id": "01e14b971772ee0a",
1576         "type": "comment",
1577         "z": "51e83a0892da060e",
1578         "name": "TS28532_FileDataReportingMnS.yaml",
1579         "info": "",
1580         "x": 170,
1581         "y": 460,
1582         "wires": []
1583     },
1584     {
1585         "id": "ea15cafd2325d76f",
1586         "type": "inject",
1587         "z": "51e83a0892da060e",
1588         "name": "notifyFilePreparationError",
1589         "props": [
1590             {
1591                 "p": "payload"
1592             },
1593             {
1594                 "p": "topic",
1595                 "vt": "str"
1596             }
1597         ],
1598         "repeat": "",
1599         "crontab": "",
1600         "once": false,
1601         "onceDelay": 0.1,
1602         "topic": "notifyFilePreparationError",
1603         "payload": "",
1604         "payloadType": "date",
1605         "x": 150,
1606         "y": 540,
1607         "wires": [
1608             [
1609                 "9f4bc0920fa3c0eb",
1610                 "b5533c10604af5a6"
1611             ]
1612         ]
1613     },
1614     {
1615         "id": "9f4bc0920fa3c0eb",
1616         "type": "function",
1617         "z": "51e83a0892da060e",
1618         "name": "vesStndDefindBody",
1619         "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;",
1620         "outputs": 1,
1621         "noerr": 0,
1622         "initialize": "",
1623         "finalize": "",
1624         "libs": [],
1625         "x": 470,
1626         "y": 540,
1627         "wires": [
1628             [
1629                 "f65b1c13e0243ef6"
1630             ]
1631         ]
1632     },
1633     {
1634         "id": "910dfec7eb74df65",
1635         "type": "inject",
1636         "z": "c5746e29f53f72ce",
1637         "name": "pnfRegistration",
1638         "props": [
1639             {
1640                 "p": "payload"
1641             },
1642             {
1643                 "p": "topic",
1644                 "vt": "str"
1645             }
1646         ],
1647         "repeat": "",
1648         "crontab": "",
1649         "once": false,
1650         "onceDelay": 0.1,
1651         "topic": "pnfRegistration",
1652         "payload": "",
1653         "payloadType": "date",
1654         "x": 240,
1655         "y": 80,
1656         "wires": [
1657             [
1658                 "e5f66f4bd6777ca0"
1659             ]
1660         ]
1661     },
1662     {
1663         "id": "562063a080cb99d6",
1664         "type": "debug",
1665         "z": "c5746e29f53f72ce",
1666         "name": "eventData",
1667         "active": true,
1668         "tosidebar": true,
1669         "console": false,
1670         "tostatus": false,
1671         "complete": "payload",
1672         "targetType": "msg",
1673         "statusVal": "",
1674         "statusType": "auto",
1675         "x": 1150,
1676         "y": 220,
1677         "wires": []
1678     },
1679     {
1680         "id": "172060688d87f510",
1681         "type": "inject",
1682         "z": "c5746e29f53f72ce",
1683         "d": true,
1684         "name": "notifyHeartbeat",
1685         "props": [
1686             {
1687                 "p": "payload"
1688             },
1689             {
1690                 "p": "topic",
1691                 "vt": "str"
1692             }
1693         ],
1694         "repeat": "5",
1695         "crontab": "",
1696         "once": true,
1697         "onceDelay": 0.1,
1698         "topic": "notifyHeartbeat",
1699         "payload": "",
1700         "payloadType": "date",
1701         "x": 230,
1702         "y": 320,
1703         "wires": [
1704             [
1705                 "e5f66f4bd6777ca0"
1706             ]
1707         ]
1708     },
1709     {
1710         "id": "311c3b5d3d73fc24",
1711         "type": "inject",
1712         "z": "c5746e29f53f72ce",
1713         "name": "notifyFileReady",
1714         "props": [
1715             {
1716                 "p": "payload"
1717             },
1718             {
1719                 "p": "topic",
1720                 "vt": "str"
1721             }
1722         ],
1723         "repeat": "",
1724         "crontab": "",
1725         "once": false,
1726         "onceDelay": 0.1,
1727         "topic": "notifyFileReady",
1728         "payload": "",
1729         "payloadType": "date",
1730         "x": 240,
1731         "y": 400,
1732         "wires": [
1733             [
1734                 "e5f66f4bd6777ca0"
1735             ]
1736         ]
1737     },
1738     {
1739         "id": "5437e3fdfca300c9",
1740         "type": "http request",
1741         "z": "c5746e29f53f72ce",
1742         "name": "",
1743         "method": "GET",
1744         "ret": "txt",
1745         "paytoqs": "ignore",
1746         "url": "",
1747         "tls": "7b2f4859e5963695",
1748         "persist": true,
1749         "proxy": "",
1750         "insecureHTTPParser": true,
1751         "authType": "",
1752         "senderr": false,
1753         "headers": [],
1754         "x": 670,
1755         "y": 220,
1756         "wires": [
1757             [
1758                 "dc576b6355478428"
1759             ]
1760         ]
1761     },
1762     {
1763         "id": "dc576b6355478428",
1764         "type": "function",
1765         "z": "c5746e29f53f72ce",
1766         "name": "JSON",
1767         "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;",
1768         "outputs": 1,
1769         "noerr": 0,
1770         "initialize": "",
1771         "finalize": "",
1772         "libs": [],
1773         "x": 830,
1774         "y": 220,
1775         "wires": [
1776             [
1777                 "2a2e05d79287f4a0"
1778             ]
1779         ]
1780     },
1781     {
1782         "id": "e5f66f4bd6777ca0",
1783         "type": "function",
1784         "z": "c5746e29f53f72ce",
1785         "name": "SET msg.url",
1786         "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    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;",
1787         "outputs": 1,
1788         "noerr": 0,
1789         "initialize": "",
1790         "finalize": "",
1791         "libs": [],
1792         "x": 490,
1793         "y": 220,
1794         "wires": [
1795             [
1796                 "5437e3fdfca300c9"
1797             ]
1798         ]
1799     },
1800     {
1801         "id": "42275e9c12f8e52b",
1802         "type": "comment",
1803         "z": "c5746e29f53f72ce",
1804         "name": "from O-RAN-SC",
1805         "info": "",
1806         "x": 100,
1807         "y": 140,
1808         "wires": []
1809     },
1810     {
1811         "id": "e07fa97ebc66dce0",
1812         "type": "comment",
1813         "z": "c5746e29f53f72ce",
1814         "name": "from ONAP",
1815         "info": "",
1816         "x": 90,
1817         "y": 40,
1818         "wires": []
1819     },
1820     {
1821         "id": "44b8c2cc138777f1",
1822         "type": "comment",
1823         "z": "c5746e29f53f72ce",
1824         "name": "from SA5 R-18 branch",
1825         "info": "",
1826         "x": 120,
1827         "y": 280,
1828         "wires": []
1829     },
1830     {
1831         "id": "4480e5473a65a757",
1832         "type": "inject",
1833         "z": "c5746e29f53f72ce",
1834         "name": "oRanScDuHelloWorldPmStreaming",
1835         "props": [
1836             {
1837                 "p": "payload"
1838             },
1839             {
1840                 "p": "topic",
1841                 "vt": "str"
1842             }
1843         ],
1844         "repeat": "",
1845         "crontab": "",
1846         "once": false,
1847         "onceDelay": 0.1,
1848         "topic": "oRanScDuHelloWorldPmStreaming",
1849         "payload": "",
1850         "payloadType": "date",
1851         "x": 180,
1852         "y": 220,
1853         "wires": [
1854             [
1855                 "e5f66f4bd6777ca0"
1856             ]
1857         ]
1858     },
1859     {
1860         "id": "52f22ee054e5b4ac",
1861         "type": "inject",
1862         "z": "c5746e29f53f72ce",
1863         "name": "o1NotifyPnfRegistration",
1864         "props": [
1865             {
1866                 "p": "payload"
1867             },
1868             {
1869                 "p": "topic",
1870                 "vt": "str"
1871             }
1872         ],
1873         "repeat": "",
1874         "crontab": "",
1875         "once": false,
1876         "onceDelay": 0.1,
1877         "topic": "o1NotifyPnfRegistration",
1878         "payload": "",
1879         "payloadType": "date",
1880         "x": 220,
1881         "y": 180,
1882         "wires": [
1883             [
1884                 "e5f66f4bd6777ca0"
1885             ]
1886         ]
1887     },
1888     {
1889         "id": "3051f52553efaaa4",
1890         "type": "http request",
1891         "z": "c5746e29f53f72ce",
1892         "name": "",
1893         "method": "GET",
1894         "ret": "txt",
1895         "paytoqs": "ignore",
1896         "url": "https://messages.smo.o-ran-sc.org/topics",
1897         "tls": "7b2f4859e5963695",
1898         "persist": true,
1899         "proxy": "",
1900         "insecureHTTPParser": true,
1901         "authType": "",
1902         "senderr": false,
1903         "headers": [
1904             {
1905                 "keyType": "other",
1906                 "keyValue": "Accept",
1907                 "valueType": "other",
1908                 "valueValue": "application/json"
1909             }
1910         ],
1911         "x": 670,
1912         "y": 180,
1913         "wires": [
1914             [
1915                 "dc576b6355478428"
1916             ]
1917         ]
1918     },
1919     {
1920         "id": "0acceacb99b7981a",
1921         "type": "inject",
1922         "z": "c5746e29f53f72ce",
1923         "name": "Topics?",
1924         "props": [
1925             {
1926                 "p": "payload"
1927             },
1928             {
1929                 "p": "topic",
1930                 "vt": "str"
1931             }
1932         ],
1933         "repeat": "",
1934         "crontab": "",
1935         "once": false,
1936         "onceDelay": 0.1,
1937         "topic": "topics",
1938         "payload": "",
1939         "payloadType": "date",
1940         "x": 510,
1941         "y": 180,
1942         "wires": [
1943             [
1944                 "3051f52553efaaa4"
1945             ]
1946         ]
1947     },
1948     {
1949         "id": "34b7ac222692e06d",
1950         "type": "comment",
1951         "z": "c5746e29f53f72ce",
1952         "name": "from OpenFronthaul Management-Plane",
1953         "info": "",
1954         "x": 580,
1955         "y": 280,
1956         "wires": []
1957     },
1958     {
1959         "id": "25a3eca83bbc3489",
1960         "type": "inject",
1961         "z": "c5746e29f53f72ce",
1962         "name": "o-ran-supervision:supervision-notification",
1963         "props": [
1964             {
1965                 "p": "payload"
1966             },
1967             {
1968                 "p": "topic",
1969                 "vt": "str"
1970             }
1971         ],
1972         "repeat": "60",
1973         "crontab": "",
1974         "once": false,
1975         "onceDelay": 0.1,
1976         "topic": "o-ran-supervision:supervision-notification",
1977         "payload": "",
1978         "payloadType": "date",
1979         "x": 620,
1980         "y": 1040,
1981         "wires": [
1982             [
1983                 "e5f66f4bd6777ca0"
1984             ]
1985         ]
1986     },
1987     {
1988         "id": "0194d014ef8f6c5e",
1989         "type": "inject",
1990         "z": "c5746e29f53f72ce",
1991         "name": "o-ran-file-management:file-upload-notification",
1992         "props": [
1993             {
1994                 "p": "payload"
1995             },
1996             {
1997                 "p": "topic",
1998                 "vt": "str"
1999             }
2000         ],
2001         "repeat": "",
2002         "crontab": "",
2003         "once": false,
2004         "onceDelay": 0.1,
2005         "topic": "o-ran-file-management:file-upload-notification",
2006         "payload": "",
2007         "payloadType": "date",
2008         "x": 630,
2009         "y": 760,
2010         "wires": [
2011             [
2012                 "e5f66f4bd6777ca0"
2013             ]
2014         ]
2015     },
2016     {
2017         "id": "775aacf9e2cc0285",
2018         "type": "inject",
2019         "z": "c5746e29f53f72ce",
2020         "name": "o-ran-file-management:file-download-event",
2021         "props": [
2022             {
2023                 "p": "payload"
2024             },
2025             {
2026                 "p": "topic",
2027                 "vt": "str"
2028             }
2029         ],
2030         "repeat": "",
2031         "crontab": "",
2032         "once": false,
2033         "onceDelay": 0.1,
2034         "topic": "o-ran-file-management:file-download-event",
2035         "payload": "",
2036         "payloadType": "date",
2037         "x": 620,
2038         "y": 720,
2039         "wires": [
2040             [
2041                 "e5f66f4bd6777ca0"
2042             ]
2043         ]
2044     },
2045     {
2046         "id": "3e3be17a65a7d1bf",
2047         "type": "inject",
2048         "z": "c5746e29f53f72ce",
2049         "d": true,
2050         "name": "o-ran-ald-port:dc-enabled-status-change",
2051         "props": [
2052             {
2053                 "p": "payload"
2054             },
2055             {
2056                 "p": "topic",
2057                 "vt": "str"
2058             }
2059         ],
2060         "repeat": "",
2061         "crontab": "",
2062         "once": false,
2063         "onceDelay": 0.1,
2064         "topic": "o-ran-ald-port:dc-enabled-status-change",
2065         "payload": "",
2066         "payloadType": "date",
2067         "x": 620,
2068         "y": 320,
2069         "wires": [
2070             [
2071                 "e5f66f4bd6777ca0"
2072             ]
2073         ]
2074     },
2075     {
2076         "id": "665c45e5ccd1c9cb",
2077         "type": "inject",
2078         "z": "c5746e29f53f72ce",
2079         "d": true,
2080         "name": "o-ran-ald-port:overcurrent-report",
2081         "props": [
2082             {
2083                 "p": "payload"
2084             },
2085             {
2086                 "p": "topic",
2087                 "vt": "str"
2088             }
2089         ],
2090         "repeat": "",
2091         "crontab": "",
2092         "once": false,
2093         "onceDelay": 0.1,
2094         "topic": "o-ran-ald-port:overcurrent-report",
2095         "payload": "",
2096         "payloadType": "date",
2097         "x": 590,
2098         "y": 360,
2099         "wires": [
2100             [
2101                 "e5f66f4bd6777ca0"
2102             ]
2103         ]
2104     },
2105     {
2106         "id": "5520ce3b83578f17",
2107         "type": "inject",
2108         "z": "c5746e29f53f72ce",
2109         "d": true,
2110         "name": "o-ran-antenna-calibration:antenna-calibration-coordinated",
2111         "props": [
2112             {
2113                 "p": "payload"
2114             },
2115             {
2116                 "p": "topic",
2117                 "vt": "str"
2118             }
2119         ],
2120         "repeat": "",
2121         "crontab": "",
2122         "once": false,
2123         "onceDelay": 0.1,
2124         "topic": "o-ran-antenna-calibration:antenna-calibration-coordinated",
2125         "payload": "",
2126         "payloadType": "date",
2127         "x": 670,
2128         "y": 400,
2129         "wires": [
2130             [
2131                 "e5f66f4bd6777ca0"
2132             ]
2133         ]
2134     },
2135     {
2136         "id": "fda3090fb4f1e9d4",
2137         "type": "inject",
2138         "z": "c5746e29f53f72ce",
2139         "d": true,
2140         "name": "o-ran-antenna-calibration:antenna-calibration-multiple-time-resource-params",
2141         "props": [
2142             {
2143                 "p": "payload"
2144             },
2145             {
2146                 "p": "topic",
2147                 "vt": "str"
2148             }
2149         ],
2150         "repeat": "",
2151         "crontab": "",
2152         "once": false,
2153         "onceDelay": 0.1,
2154         "topic": "o-ran-antenna-calibration:antenna-calibration-multiple-time-resource-params",
2155         "payload": "",
2156         "payloadType": "date",
2157         "x": 730,
2158         "y": 440,
2159         "wires": [
2160             [
2161                 "e5f66f4bd6777ca0"
2162             ]
2163         ]
2164     },
2165     {
2166         "id": "2551bb6c9746a7c2",
2167         "type": "inject",
2168         "z": "c5746e29f53f72ce",
2169         "d": true,
2170         "name": "o-ran-antenna-calibration:antenna-calibration-required",
2171         "props": [
2172             {
2173                 "p": "payload"
2174             },
2175             {
2176                 "p": "topic",
2177                 "vt": "str"
2178             }
2179         ],
2180         "repeat": "",
2181         "crontab": "",
2182         "once": false,
2183         "onceDelay": 0.1,
2184         "topic": "o-ran-antenna-calibration:antenna-calibration-required",
2185         "payload": "",
2186         "payloadType": "date",
2187         "x": 660,
2188         "y": 480,
2189         "wires": [
2190             [
2191                 "e5f66f4bd6777ca0"
2192             ]
2193         ]
2194     },
2195     {
2196         "id": "0dcc72d0235e6336",
2197         "type": "inject",
2198         "z": "c5746e29f53f72ce",
2199         "d": true,
2200         "name": "o-ran-antenna-calibration:antenna-calibration-result",
2201         "props": [
2202             {
2203                 "p": "payload"
2204             },
2205             {
2206                 "p": "topic",
2207                 "vt": "str"
2208             }
2209         ],
2210         "repeat": "",
2211         "crontab": "",
2212         "once": false,
2213         "onceDelay": 0.1,
2214         "topic": "o-ran-antenna-calibration:antenna-calibration-result",
2215         "payload": "",
2216         "payloadType": "date",
2217         "x": 650,
2218         "y": 520,
2219         "wires": [
2220             [
2221                 "e5f66f4bd6777ca0"
2222             ]
2223         ]
2224     },
2225     {
2226         "id": "0abafa5c1a4ebd33",
2227         "type": "inject",
2228         "z": "c5746e29f53f72ce",
2229         "d": true,
2230         "name": "o-ran-beamforming:beamforming-information-update",
2231         "props": [
2232             {
2233                 "p": "payload"
2234             },
2235             {
2236                 "p": "topic",
2237                 "vt": "str"
2238             }
2239         ],
2240         "repeat": "",
2241         "crontab": "",
2242         "once": false,
2243         "onceDelay": 0.1,
2244         "topic": "o-ran-beamforming:beamforming-information-update",
2245         "payload": "",
2246         "payloadType": "date",
2247         "x": 650,
2248         "y": 560,
2249         "wires": [
2250             [
2251                 "e5f66f4bd6777ca0"
2252             ]
2253         ]
2254     },
2255     {
2256         "id": "d74c5f1885485d8c",
2257         "type": "inject",
2258         "z": "c5746e29f53f72ce",
2259         "d": true,
2260         "name": "o-ran-beamforming:capability-group-beamforming-information-update",
2261         "props": [
2262             {
2263                 "p": "payload"
2264             },
2265             {
2266                 "p": "topic",
2267                 "vt": "str"
2268             }
2269         ],
2270         "repeat": "",
2271         "crontab": "",
2272         "once": false,
2273         "onceDelay": 0.1,
2274         "topic": "o-ran-beamforming:capability-group-beamforming-information-update",
2275         "payload": "",
2276         "payloadType": "date",
2277         "x": 700,
2278         "y": 600,
2279         "wires": [
2280             [
2281                 "e5f66f4bd6777ca0"
2282             ]
2283         ]
2284     },
2285     {
2286         "id": "8d755b355a3d5557",
2287         "type": "inject",
2288         "z": "c5746e29f53f72ce",
2289         "d": true,
2290         "name": "o-ran-beamforming:predefined-beam-tilt-offset-complete",
2291         "props": [
2292             {
2293                 "p": "payload"
2294             },
2295             {
2296                 "p": "topic",
2297                 "vt": "str"
2298             }
2299         ],
2300         "repeat": "",
2301         "crontab": "",
2302         "once": false,
2303         "onceDelay": 0.1,
2304         "topic": "o-ran-beamforming:predefined-beam-tilt-offset-complete",
2305         "payload": "",
2306         "payloadType": "date",
2307         "x": 660,
2308         "y": 640,
2309         "wires": [
2310             []
2311         ]
2312     },
2313     {
2314         "id": "6ebe4693c580ae00",
2315         "type": "inject",
2316         "z": "c5746e29f53f72ce",
2317         "d": true,
2318         "name": "o-ran-externalio:external-input-change",
2319         "props": [
2320             {
2321                 "p": "payload"
2322             },
2323             {
2324                 "p": "topic",
2325                 "vt": "str"
2326             }
2327         ],
2328         "repeat": "",
2329         "crontab": "",
2330         "once": false,
2331         "onceDelay": 0.1,
2332         "topic": "o-ran-externalio:external-input-change",
2333         "payload": "",
2334         "payloadType": "date",
2335         "x": 610,
2336         "y": 680,
2337         "wires": [
2338             []
2339         ]
2340     },
2341     {
2342         "id": "89144928a6ead625",
2343         "type": "inject",
2344         "z": "c5746e29f53f72ce",
2345         "d": true,
2346         "name": "o-ran-fm:alarm-notif",
2347         "props": [
2348             {
2349                 "p": "payload"
2350             },
2351             {
2352                 "p": "topic",
2353                 "vt": "str"
2354             }
2355         ],
2356         "repeat": "",
2357         "crontab": "",
2358         "once": false,
2359         "onceDelay": 0.1,
2360         "topic": "o-ran-fm:alarm-notif",
2361         "payload": "",
2362         "payloadType": "date",
2363         "x": 550,
2364         "y": 800,
2365         "wires": [
2366             [
2367                 "e5f66f4bd6777ca0"
2368             ]
2369         ]
2370     },
2371     {
2372         "id": "8ebca0cd456a9763",
2373         "type": "inject",
2374         "z": "c5746e29f53f72ce",
2375         "d": true,
2376         "name": "o-ran-laa-operations:measurement-result",
2377         "props": [
2378             {
2379                 "p": "payload"
2380             },
2381             {
2382                 "p": "topic",
2383                 "vt": "str"
2384             }
2385         ],
2386         "repeat": "",
2387         "crontab": "",
2388         "once": false,
2389         "onceDelay": 0.1,
2390         "topic": "o-ran-laa-operations:measurement-result",
2391         "payload": "",
2392         "payloadType": "date",
2393         "x": 620,
2394         "y": 840,
2395         "wires": [
2396             [
2397                 "e5f66f4bd6777ca0"
2398             ]
2399         ]
2400     },
2401     {
2402         "id": "4778511387bc7449",
2403         "type": "inject",
2404         "z": "c5746e29f53f72ce",
2405         "d": true,
2406         "name": "o-ran-performance-management:measurement-result-stats",
2407         "props": [
2408             {
2409                 "p": "payload"
2410             },
2411             {
2412                 "p": "topic",
2413                 "vt": "str"
2414             }
2415         ],
2416         "repeat": "",
2417         "crontab": "",
2418         "once": false,
2419         "onceDelay": 0.1,
2420         "topic": "o-ran-performance-management:measurement-result-stats",
2421         "payload": "",
2422         "payloadType": "date",
2423         "x": 670,
2424         "y": 880,
2425         "wires": [
2426             [
2427                 "e5f66f4bd6777ca0"
2428             ]
2429         ]
2430     },
2431     {
2432         "id": "c106623d629fbe54",
2433         "type": "inject",
2434         "z": "c5746e29f53f72ce",
2435         "d": true,
2436         "name": "o-ran-software-management:activation-event",
2437         "props": [
2438             {
2439                 "p": "payload"
2440             },
2441             {
2442                 "p": "topic",
2443                 "vt": "str"
2444             }
2445         ],
2446         "repeat": "",
2447         "crontab": "",
2448         "once": false,
2449         "onceDelay": 0.1,
2450         "topic": "o-ran-software-management:activation-event",
2451         "payload": "",
2452         "payloadType": "date",
2453         "x": 630,
2454         "y": 920,
2455         "wires": [
2456             [
2457                 "e5f66f4bd6777ca0"
2458             ]
2459         ]
2460     },
2461     {
2462         "id": "4db0e5b915d76ddb",
2463         "type": "inject",
2464         "z": "c5746e29f53f72ce",
2465         "d": true,
2466         "name": "o-ran-software-management:download-event",
2467         "props": [
2468             {
2469                 "p": "payload"
2470             },
2471             {
2472                 "p": "topic",
2473                 "vt": "str"
2474             }
2475         ],
2476         "repeat": "",
2477         "crontab": "",
2478         "once": false,
2479         "onceDelay": 0.1,
2480         "topic": "o-ran-software-management:download-event",
2481         "payload": "",
2482         "payloadType": "date",
2483         "x": 630,
2484         "y": 960,
2485         "wires": [
2486             [
2487                 "e5f66f4bd6777ca0"
2488             ]
2489         ]
2490     },
2491     {
2492         "id": "8d3fab47729a807d",
2493         "type": "inject",
2494         "z": "c5746e29f53f72ce",
2495         "d": true,
2496         "name": "o-ran-software-management:install-event",
2497         "props": [
2498             {
2499                 "p": "payload"
2500             },
2501             {
2502                 "p": "topic",
2503                 "vt": "str"
2504             }
2505         ],
2506         "repeat": "",
2507         "crontab": "",
2508         "once": false,
2509         "onceDelay": 0.1,
2510         "topic": "o-ran-software-management:install-event",
2511         "payload": "",
2512         "payloadType": "date",
2513         "x": 620,
2514         "y": 1000,
2515         "wires": [
2516             [
2517                 "e5f66f4bd6777ca0"
2518             ]
2519         ]
2520     },
2521     {
2522         "id": "7ac87519cb59151d",
2523         "type": "inject",
2524         "z": "c5746e29f53f72ce",
2525         "d": true,
2526         "name": "o-ran-sync:gnss-state-change",
2527         "props": [
2528             {
2529                 "p": "payload"
2530             },
2531             {
2532                 "p": "topic",
2533                 "vt": "str"
2534             }
2535         ],
2536         "repeat": "",
2537         "crontab": "",
2538         "once": false,
2539         "onceDelay": 0.1,
2540         "topic": "o-ran-sync:gnss-state-change",
2541         "payload": "",
2542         "payloadType": "date",
2543         "x": 580,
2544         "y": 1080,
2545         "wires": [
2546             [
2547                 "e5f66f4bd6777ca0"
2548             ]
2549         ]
2550     },
2551     {
2552         "id": "55725b18e27c1a27",
2553         "type": "inject",
2554         "z": "c5746e29f53f72ce",
2555         "d": true,
2556         "name": "o-ran-sync:ptp-state-change",
2557         "props": [
2558             {
2559                 "p": "payload"
2560             },
2561             {
2562                 "p": "topic",
2563                 "vt": "str"
2564             }
2565         ],
2566         "repeat": "",
2567         "crontab": "",
2568         "once": false,
2569         "onceDelay": 0.1,
2570         "topic": "o-ran-sync:ptp-state-change",
2571         "payload": "",
2572         "payloadType": "date",
2573         "x": 580,
2574         "y": 1120,
2575         "wires": [
2576             [
2577                 "e5f66f4bd6777ca0"
2578             ]
2579         ]
2580     },
2581     {
2582         "id": "dde01e699dec844f",
2583         "type": "inject",
2584         "z": "c5746e29f53f72ce",
2585         "d": true,
2586         "name": "o-ran-sync:synce-state-change",
2587         "props": [
2588             {
2589                 "p": "payload"
2590             },
2591             {
2592                 "p": "topic",
2593                 "vt": "str"
2594             }
2595         ],
2596         "repeat": "",
2597         "crontab": "",
2598         "once": false,
2599         "onceDelay": 0.1,
2600         "topic": "o-ran-sync:synce-state-change",
2601         "payload": "",
2602         "payloadType": "date",
2603         "x": 590,
2604         "y": 1160,
2605         "wires": [
2606             [
2607                 "e5f66f4bd6777ca0"
2608             ]
2609         ]
2610     },
2611     {
2612         "id": "5457d995823e58f6",
2613         "type": "inject",
2614         "z": "c5746e29f53f72ce",
2615         "d": true,
2616         "name": "o-ran-sync:synchronization-state-change",
2617         "props": [
2618             {
2619                 "p": "payload"
2620             },
2621             {
2622                 "p": "topic",
2623                 "vt": "str"
2624             }
2625         ],
2626         "repeat": "",
2627         "crontab": "",
2628         "once": false,
2629         "onceDelay": 0.1,
2630         "topic": "o-ran-sync:synchronization-state-change",
2631         "payload": "",
2632         "payloadType": "date",
2633         "x": 620,
2634         "y": 1200,
2635         "wires": [
2636             [
2637                 "e5f66f4bd6777ca0"
2638             ]
2639         ]
2640     },
2641     {
2642         "id": "ca9f765b3838d5ff",
2643         "type": "inject",
2644         "z": "c5746e29f53f72ce",
2645         "d": true,
2646         "name": "o-ran-trace:trace-log-generated",
2647         "props": [
2648             {
2649                 "p": "payload"
2650             },
2651             {
2652                 "p": "topic",
2653                 "vt": "str"
2654             }
2655         ],
2656         "repeat": "",
2657         "crontab": "",
2658         "once": false,
2659         "onceDelay": 0.1,
2660         "topic": "o-ran-trace:trace-log-generated",
2661         "payload": "",
2662         "payloadType": "date",
2663         "x": 590,
2664         "y": 1240,
2665         "wires": [
2666             [
2667                 "e5f66f4bd6777ca0"
2668             ]
2669         ]
2670     },
2671     {
2672         "id": "0a837c4beaa140e0",
2673         "type": "inject",
2674         "z": "c5746e29f53f72ce",
2675         "d": true,
2676         "name": "o-ran-uplane-conf:rx-array-carriers-state-change",
2677         "props": [
2678             {
2679                 "p": "payload"
2680             },
2681             {
2682                 "p": "topic",
2683                 "vt": "str"
2684             }
2685         ],
2686         "repeat": "",
2687         "crontab": "",
2688         "once": false,
2689         "onceDelay": 0.1,
2690         "topic": "o-ran-uplane-conf:rx-array-carriers-state-change",
2691         "payload": "",
2692         "payloadType": "date",
2693         "x": 640,
2694         "y": 1320,
2695         "wires": [
2696             [
2697                 "e5f66f4bd6777ca0"
2698             ]
2699         ]
2700     },
2701     {
2702         "id": "3dfb5349f08c5ea9",
2703         "type": "inject",
2704         "z": "c5746e29f53f72ce",
2705         "d": true,
2706         "name": "o-ran-troubleshooting:troubleshooting-log-generated",
2707         "props": [
2708             {
2709                 "p": "payload"
2710             },
2711             {
2712                 "p": "topic",
2713                 "vt": "str"
2714             }
2715         ],
2716         "repeat": "",
2717         "crontab": "",
2718         "once": false,
2719         "onceDelay": 0.1,
2720         "topic": "o-ran-troubleshooting:troubleshooting-log-generated",
2721         "payload": "",
2722         "payloadType": "date",
2723         "x": 650,
2724         "y": 1280,
2725         "wires": [
2726             [
2727                 "e5f66f4bd6777ca0"
2728             ]
2729         ]
2730     },
2731     {
2732         "id": "030a6e7e6371402e",
2733         "type": "inject",
2734         "z": "c5746e29f53f72ce",
2735         "d": true,
2736         "name": "o-ran-uplane-conf:tx-array-carriers-state-change",
2737         "props": [
2738             {
2739                 "p": "payload"
2740             },
2741             {
2742                 "p": "topic",
2743                 "vt": "str"
2744             }
2745         ],
2746         "repeat": "",
2747         "crontab": "",
2748         "once": false,
2749         "onceDelay": 0.1,
2750         "topic": "o-ran-uplane-conf:tx-array-carriers-state-change",
2751         "payload": "",
2752         "payloadType": "date",
2753         "x": 640,
2754         "y": 1360,
2755         "wires": [
2756             [
2757                 "e5f66f4bd6777ca0"
2758             ]
2759         ]
2760     },
2761     {
2762         "id": "2a2e05d79287f4a0",
2763         "type": "function",
2764         "z": "c5746e29f53f72ce",
2765         "name": "Provider",
2766         "func": "global.set('topicData', msg.payload)\nreturn msg;",
2767         "outputs": 1,
2768         "noerr": 0,
2769         "initialize": "",
2770         "finalize": "",
2771         "libs": [],
2772         "x": 980,
2773         "y": 220,
2774         "wires": [
2775             [
2776                 "562063a080cb99d6"
2777             ]
2778         ]
2779     },
2780     {
2781         "id": "d932661ae80274a1",
2782         "type": "inject",
2783         "z": "c5746e29f53f72ce",
2784         "name": "notifyNewAlarm",
2785         "props": [
2786             {
2787                 "p": "payload"
2788             },
2789             {
2790                 "p": "topic",
2791                 "vt": "str"
2792             }
2793         ],
2794         "repeat": "",
2795         "crontab": "",
2796         "once": false,
2797         "onceDelay": 0.1,
2798         "topic": "notifyNewAlarm",
2799         "payload": "",
2800         "payloadType": "date",
2801         "x": 240,
2802         "y": 520,
2803         "wires": [
2804             [
2805                 "e5f66f4bd6777ca0"
2806             ]
2807         ]
2808     },
2809     {
2810         "id": "c4337f08252203ec",
2811         "type": "inject",
2812         "z": "c5746e29f53f72ce",
2813         "name": "notifyChangedAlarm",
2814         "props": [
2815             {
2816                 "p": "payload"
2817             },
2818             {
2819                 "p": "topic",
2820                 "vt": "str"
2821             }
2822         ],
2823         "repeat": "",
2824         "crontab": "",
2825         "once": false,
2826         "onceDelay": 0.1,
2827         "topic": "notifyChangedAlarm",
2828         "payload": "",
2829         "payloadType": "date",
2830         "x": 230,
2831         "y": 560,
2832         "wires": [
2833             [
2834                 "e5f66f4bd6777ca0"
2835             ]
2836         ]
2837     },
2838     {
2839         "id": "62048992a866405d",
2840         "type": "inject",
2841         "z": "c5746e29f53f72ce",
2842         "name": "notifyChangedAlarmGeneral",
2843         "props": [
2844             {
2845                 "p": "payload"
2846             },
2847             {
2848                 "p": "topic",
2849                 "vt": "str"
2850             }
2851         ],
2852         "repeat": "",
2853         "crontab": "",
2854         "once": false,
2855         "onceDelay": 0.1,
2856         "topic": "notifyChangedAlarmGeneral",
2857         "payload": "",
2858         "payloadType": "date",
2859         "x": 200,
2860         "y": 600,
2861         "wires": [
2862             [
2863                 "e5f66f4bd6777ca0"
2864             ]
2865         ]
2866     },
2867     {
2868         "id": "353e0a6e1e693ae5",
2869         "type": "inject",
2870         "z": "c5746e29f53f72ce",
2871         "name": "notifyAckStateChanged",
2872         "props": [
2873             {
2874                 "p": "payload"
2875             },
2876             {
2877                 "p": "topic",
2878                 "vt": "str"
2879             }
2880         ],
2881         "repeat": "",
2882         "crontab": "",
2883         "once": false,
2884         "onceDelay": 0.1,
2885         "topic": "notifyAckStateChanged",
2886         "payload": "",
2887         "payloadType": "date",
2888         "x": 220,
2889         "y": 640,
2890         "wires": [
2891             [
2892                 "e5f66f4bd6777ca0"
2893             ]
2894         ]
2895     },
2896     {
2897         "id": "3879e3d1320f1459",
2898         "type": "inject",
2899         "z": "c5746e29f53f72ce",
2900         "name": "notifyCorrelatedNotificationChanged",
2901         "props": [
2902             {
2903                 "p": "payload"
2904             },
2905             {
2906                 "p": "topic",
2907                 "vt": "str"
2908             }
2909         ],
2910         "repeat": "",
2911         "crontab": "",
2912         "once": false,
2913         "onceDelay": 0.1,
2914         "topic": "notifyCorrelatedNotificationChanged",
2915         "payload": "",
2916         "payloadType": "date",
2917         "x": 180,
2918         "y": 680,
2919         "wires": [
2920             [
2921                 "e5f66f4bd6777ca0"
2922             ]
2923         ]
2924     },
2925     {
2926         "id": "ea314b13220c8f40",
2927         "type": "inject",
2928         "z": "c5746e29f53f72ce",
2929         "name": "notifyComments",
2930         "props": [
2931             {
2932                 "p": "payload"
2933             },
2934             {
2935                 "p": "topic",
2936                 "vt": "str"
2937             }
2938         ],
2939         "repeat": "",
2940         "crontab": "",
2941         "once": false,
2942         "onceDelay": 0.1,
2943         "topic": "notifyComments",
2944         "payload": "",
2945         "payloadType": "date",
2946         "x": 240,
2947         "y": 720,
2948         "wires": [
2949             [
2950                 "e5f66f4bd6777ca0"
2951             ]
2952         ]
2953     },
2954     {
2955         "id": "407c7befca74d24b",
2956         "type": "inject",
2957         "z": "c5746e29f53f72ce",
2958         "name": "notifyClearedAlarm",
2959         "props": [
2960             {
2961                 "p": "payload"
2962             },
2963             {
2964                 "p": "topic",
2965                 "vt": "str"
2966             }
2967         ],
2968         "repeat": "",
2969         "crontab": "",
2970         "once": false,
2971         "onceDelay": 0.1,
2972         "topic": "notifyClearedAlarm",
2973         "payload": "",
2974         "payloadType": "date",
2975         "x": 230,
2976         "y": 760,
2977         "wires": [
2978             [
2979                 "e5f66f4bd6777ca0"
2980             ]
2981         ]
2982     },
2983     {
2984         "id": "c054dd03a80a4e48",
2985         "type": "inject",
2986         "z": "c5746e29f53f72ce",
2987         "name": "notifyAlarmListRebuilt",
2988         "props": [
2989             {
2990                 "p": "payload"
2991             },
2992             {
2993                 "p": "topic",
2994                 "vt": "str"
2995             }
2996         ],
2997         "repeat": "",
2998         "crontab": "",
2999         "once": false,
3000         "onceDelay": 0.1,
3001         "topic": "notifyAlarmListRebuilt",
3002         "payload": "",
3003         "payloadType": "date",
3004         "x": 220,
3005         "y": 800,
3006         "wires": [
3007             [
3008                 "e5f66f4bd6777ca0"
3009             ]
3010         ]
3011     },
3012     {
3013         "id": "5c8b20a14ea5863a",
3014         "type": "inject",
3015         "z": "c5746e29f53f72ce",
3016         "name": "notifyPotentialFaultyAlarmList",
3017         "props": [
3018             {
3019                 "p": "payload"
3020             },
3021             {
3022                 "p": "topic",
3023                 "vt": "str"
3024             }
3025         ],
3026         "repeat": "",
3027         "crontab": "",
3028         "once": false,
3029         "onceDelay": 0.1,
3030         "topic": "notifyPotentialFaultyAlarmList",
3031         "payload": "",
3032         "payloadType": "date",
3033         "x": 200,
3034         "y": 840,
3035         "wires": [
3036             [
3037                 "e5f66f4bd6777ca0"
3038             ]
3039         ]
3040     },
3041     {
3042         "id": "f5d7d173f1ac5213",
3043         "type": "comment",
3044         "z": "c5746e29f53f72ce",
3045         "name": "TS28532_FaultMnS.yaml",
3046         "info": "",
3047         "x": 130,
3048         "y": 480,
3049         "wires": []
3050     },
3051     {
3052         "id": "c6687553f38611cd",
3053         "type": "comment",
3054         "z": "c5746e29f53f72ce",
3055         "name": "TS28532_FileDataReportingMnS.yaml",
3056         "info": "",
3057         "x": 170,
3058         "y": 360,
3059         "wires": []
3060     },
3061     {
3062         "id": "64720217524b2f2c",
3063         "type": "inject",
3064         "z": "c5746e29f53f72ce",
3065         "name": "notifyFilePreparationError",
3066         "props": [
3067             {
3068                 "p": "payload"
3069             },
3070             {
3071                 "p": "topic",
3072                 "vt": "str"
3073             }
3074         ],
3075         "repeat": "",
3076         "crontab": "",
3077         "once": false,
3078         "onceDelay": 0.1,
3079         "topic": "notifyFilePreparationError",
3080         "payload": "",
3081         "payloadType": "date",
3082         "x": 210,
3083         "y": 440,
3084         "wires": [
3085             [
3086                 "e5f66f4bd6777ca0"
3087             ]
3088         ]
3089     },
3090     {
3091         "id": "c5648c1528804847",
3092         "type": "inject",
3093         "z": "7ba02ed596e8cde5",
3094         "name": "supervision-watchdog-reset for O-RU-11221",
3095         "props": [
3096             {
3097                 "p": "payload"
3098             },
3099             {
3100                 "p": "topic",
3101                 "vt": "str"
3102             }
3103         ],
3104         "repeat": "",
3105         "crontab": "",
3106         "once": false,
3107         "onceDelay": 0.1,
3108         "topic": "supervision-watchdog-reset",
3109         "payload": "[\"O-RU-11221\"]",
3110         "payloadType": "json",
3111         "x": 230,
3112         "y": 100,
3113         "wires": [
3114             [
3115                 "2bd693b8c7e5a3cb"
3116             ]
3117         ]
3118     },
3119     {
3120         "id": "329e838eb4bf63f4",
3121         "type": "function",
3122         "z": "7ba02ed596e8cde5",
3123         "name": "ResetActionData",
3124         "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;",
3125         "outputs": 1,
3126         "noerr": 0,
3127         "initialize": "",
3128         "finalize": "",
3129         "libs": [],
3130         "x": 570,
3131         "y": 220,
3132         "wires": [
3133             [
3134                 "1a4b6a4ec23c8f9f",
3135                 "2bd693b8c7e5a3cb"
3136             ]
3137         ]
3138     },
3139     {
3140         "id": "1a4b6a4ec23c8f9f",
3141         "type": "http request",
3142         "z": "7ba02ed596e8cde5",
3143         "name": "RESTCONF request",
3144         "method": "POST",
3145         "ret": "txt",
3146         "paytoqs": "ignore",
3147         "url": "",
3148         "tls": "7b2f4859e5963695",
3149         "persist": true,
3150         "proxy": "",
3151         "insecureHTTPParser": true,
3152         "authType": "basic",
3153         "senderr": false,
3154         "headers": [
3155             {
3156                 "keyType": "other",
3157                 "keyValue": "Accept",
3158                 "valueType": "other",
3159                 "valueValue": "application/json"
3160             },
3161             {
3162                 "keyType": "other",
3163                 "keyValue": "Content-Type",
3164                 "valueType": "other",
3165                 "valueValue": "application/json"
3166             }
3167         ],
3168         "x": 800,
3169         "y": 220,
3170         "wires": [
3171             [
3172                 "eb6c2de759c8eb54"
3173             ]
3174         ]
3175     },
3176     {
3177         "id": "eb6c2de759c8eb54",
3178         "type": "debug",
3179         "z": "7ba02ed596e8cde5",
3180         "name": "Response",
3181         "active": true,
3182         "tosidebar": true,
3183         "console": false,
3184         "tostatus": false,
3185         "complete": "payload",
3186         "targetType": "msg",
3187         "statusVal": "",
3188         "statusType": "auto",
3189         "x": 1000,
3190         "y": 220,
3191         "wires": []
3192     },
3193     {
3194         "id": "0d3ade9a80560c04",
3195         "type": "inject",
3196         "z": "7ba02ed596e8cde5",
3197         "name": "Every 5s",
3198         "props": [],
3199         "repeat": "5",
3200         "crontab": "",
3201         "once": false,
3202         "onceDelay": 0.1,
3203         "topic": "",
3204         "x": 120,
3205         "y": 140,
3206         "wires": [
3207             [
3208                 "5322d78ad66fcb96"
3209             ]
3210         ]
3211     },
3212     {
3213         "id": "5322d78ad66fcb96",
3214         "type": "function",
3215         "z": "7ba02ed596e8cde5",
3216         "name": "Consumer (new Data?)",
3217         "func": "// read topic data from global context\nconst topicData = global.get('topicData');\n// init result as array\nlet result = [];\nif (Array.isArray(topicData)) {\n    result = topicData.filter(event => {\n        return event.event.commonEventHeader.stndDefinedNamespace === 'o-ran-supervision:supervision-notification';\n    }).map(event => {\n        return event.event.commonEventHeader.sourceName;;\n    });\n}\nmsg.payload = result;\nglobal.set('topicData', []);\nreturn msg; ",
3218         "outputs": 1,
3219         "noerr": 0,
3220         "initialize": "",
3221         "finalize": "",
3222         "libs": [],
3223         "x": 310,
3224         "y": 140,
3225         "wires": [
3226             [
3227                 "2bd693b8c7e5a3cb"
3228             ]
3229         ]
3230     },
3231     {
3232         "id": "2bd693b8c7e5a3cb",
3233         "type": "loop",
3234         "z": "7ba02ed596e8cde5",
3235         "name": "Loop through O-RUs",
3236         "kind": "enum",
3237         "count": "",
3238         "initial": "1",
3239         "step": "1",
3240         "condition": "",
3241         "conditionType": "js",
3242         "when": "before",
3243         "enumeration": "payload",
3244         "enumerationType": "msg",
3245         "limit": "",
3246         "loopPayload": "loop-val",
3247         "finalPayload": "final-last",
3248         "x": 580,
3249         "y": 140,
3250         "wires": [
3251             [],
3252             [
3253                 "329e838eb4bf63f4"
3254             ]
3255         ]
3256     },
3257     {
3258         "id": "f7dc363e5421d1cf",
3259         "type": "comment",
3260         "z": "7ba02ed596e8cde5",
3261         "name": "Supervision",
3262         "info": "",
3263         "x": 90,
3264         "y": 40,
3265         "wires": []
3266     },
3267     {
3268         "id": "a72d8f5e9683dd39",
3269         "type": "comment",
3270         "z": "7ba02ed596e8cde5",
3271         "name": "The Consumer checks for data on the message router provided by the \"Massage Topics\" flow.",
3272         "info": "The Consumer checks for data on the message router provided by the \"Massage Topics\" flow.",
3273         "x": 520,
3274         "y": 260,
3275         "wires": []
3276     }
3277 ]