blob: 82e5352752bc3e9969ba92317f9e631c0951807a [file] [log] [blame]
Martin Skorupski61f529a2023-02-05 19:11:49 +01001[
2 {
3 "id": "51e83a0892da060e",
4 "type": "tab",
Martin Skorupskied47c7e2023-02-11 16:19:39 +01005 "label": "Event Streaming (VES)",
Martin Skorupski61f529a2023-02-05 19:11:49 +01006 "disabled": false,
Martin Skorupskied47c7e2023-02-11 16:19:39 +01007 "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 ",
Martin Skorupski61f529a2023-02-05 19:11:49 +010016 "env": []
17 },
18 {
Martin Skorupskidf57ed92023-04-14 09:39:04 +020019 "id": "7ba02ed596e8cde5",
20 "type": "tab",
21 "label": "OpenFronthaul",
22 "disabled": false,
23 "info": "",
24 "env": []
25 },
26 {
Martin Skorupski61f529a2023-02-05 19:11:49 +010027 "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,
Martin Skorupski0ed2b692023-04-08 11:11:38 +020062 "y": 460,
Martin Skorupski61f529a2023-02-05 19:11:49 +010063 "wires": [
64 [
65 "b5533c10604af5a6",
66 "f8e64d1cb25eb4ab"
67 ]
68 ]
69 },
70 {
71 "id": "b5533c10604af5a6",
72 "type": "function",
73 "z": "51e83a0892da060e",
74 "name": "vesHeader",
Martin Skorupski119a6d12023-04-13 15:11:05 +020075 "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};\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;",
Martin Skorupski61f529a2023-02-05 19:11:49 +010076 "outputs": 1,
77 "noerr": 0,
78 "initialize": "",
79 "finalize": "",
80 "libs": [],
Martin Skorupskied47c7e2023-02-11 16:19:39 +010081 "x": 430,
82 "y": 260,
Martin Skorupski61f529a2023-02-05 19:11:49 +010083 "wires": [
84 [
85 "f65b1c13e0243ef6"
86 ]
87 ]
88 },
89 {
90 "id": "f8e64d1cb25eb4ab",
91 "type": "function",
92 "z": "51e83a0892da060e",
93 "name": "vesStndDefindBody",
Martin Skorupskied47c7e2023-02-11 16:19:39 +010094 "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;",
Martin Skorupski61f529a2023-02-05 19:11:49 +010095 "outputs": 1,
96 "noerr": 0,
97 "initialize": "",
98 "finalize": "",
99 "libs": [],
Martin Skorupskied47c7e2023-02-11 16:19:39 +0100100 "x": 470,
Martin Skorupski0ed2b692023-04-08 11:11:38 +0200101 "y": 460,
Martin Skorupski61f529a2023-02-05 19:11:49 +0100102 "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": "",
Martin Skorupskied47c7e2023-02-11 16:19:39 +0100128 "x": 690,
129 "y": 280,
Martin Skorupski61f529a2023-02-05 19:11:49 +0100130 "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": [],
Martin Skorupskied47c7e2023-02-11 16:19:39 +0100147 "x": 840,
148 "y": 280,
Martin Skorupski61f529a2023-02-05 19:11:49 +0100149 "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",
Martin Skorupskifcd1a3f2023-04-17 12:59:04 +0200166 "persist": true,
Martin Skorupski61f529a2023-02-05 19:11:49 +0100167 "proxy": "",
168 "insecureHTTPParser": false,
169 "authType": "basic",
170 "senderr": false,
171 "headers": [],
Martin Skorupskied47c7e2023-02-11 16:19:39 +0100172 "x": 1030,
173 "y": 280,
Martin Skorupski61f529a2023-02-05 19:11:49 +0100174 "wires": [
175 [
176 "f3412bcb9e134063"
177 ]
178 ]
179 },
180 {
181 "id": "f3412bcb9e134063",
182 "type": "debug",
183 "z": "51e83a0892da060e",
184 "name": "VesCollectorResponse",
Martin Skorupski0ed2b692023-04-08 11:11:38 +0200185 "active": true,
Martin Skorupski61f529a2023-02-05 19:11:49 +0100186 "tosidebar": true,
187 "console": false,
188 "tostatus": false,
189 "complete": "payload",
190 "targetType": "msg",
191 "statusVal": "",
192 "statusType": "auto",
Martin Skorupskied47c7e2023-02-11 16:19:39 +0100193 "x": 1220,
194 "y": 280,
Martin Skorupski61f529a2023-02-05 19:11:49 +0100195 "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": [],
Martin Skorupskied47c7e2023-02-11 16:19:39 +0100238 "x": 440,
Martin Skorupski61f529a2023-02-05 19:11:49 +0100239 "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",
Martin Skorupskied47c7e2023-02-11 16:19:39 +0100259 "x": 1050,
260 "y": 320,
Martin Skorupski61f529a2023-02-05 19:11:49 +0100261 "wires": []
262 },
263 {
264 "id": "7d589030272c0a94",
265 "type": "inject",
266 "z": "51e83a0892da060e",
Martin Skorupskied47c7e2023-02-11 16:19:39 +0100267 "d": true,
Martin Skorupski61f529a2023-02-05 19:11:49 +0100268 "name": "notifyHeartbeat",
269 "props": [
270 {
271 "p": "payload"
272 },
273 {
274 "p": "topic",
275 "vt": "str"
276 }
277 ],
Martin Skorupskied47c7e2023-02-11 16:19:39 +0100278 "repeat": "3",
279 "crontab": "",
280 "once": true,
281 "onceDelay": 0.1,
282 "topic": "notifyHeartbeat",
283 "payload": "",
284 "payloadType": "date",
285 "x": 130,
Martin Skorupski0ed2b692023-04-08 11:11:38 +0200286 "y": 420,
Martin Skorupskied47c7e2023-02-11 16:19:39 +0100287 "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,
Martin Skorupski0ed2b692023-04-08 11:11:38 +0200306 "y": 420,
Martin Skorupskied47c7e2023-02-11 16:19:39 +0100307 "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,
Martin Skorupski0ed2b692023-04-08 11:11:38 +0200320 "y": 380,
Martin Skorupskied47c7e2023-02-11 16:19:39 +0100321 "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 ],
Martin Skorupski61f529a2023-02-05 19:11:49 +0100357 "repeat": "",
358 "crontab": "",
359 "once": false,
360 "onceDelay": 0.1,
Martin Skorupskied47c7e2023-02-11 16:19:39 +0100361 "topic": "o1NotifyPnfRegistration",
Martin Skorupski61f529a2023-02-05 19:11:49 +0100362 "payload": "",
363 "payloadType": "date",
Martin Skorupskied47c7e2023-02-11 16:19:39 +0100364 "x": 140,
365 "y": 180,
Martin Skorupski61f529a2023-02-05 19:11:49 +0100366 "wires": [
367 [
368 "b5533c10604af5a6",
Martin Skorupskied47c7e2023-02-11 16:19:39 +0100369 "51f5fa54867b7e65"
Martin Skorupski61f529a2023-02-05 19:11:49 +0100370 ]
371 ]
372 },
373 {
Martin Skorupskied47c7e2023-02-11 16:19:39 +0100374 "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",
Martin Skorupski61f529a2023-02-05 19:11:49 +0100405 "type": "function",
406 "z": "51e83a0892da060e",
407 "name": "vesStndDefindBody",
Martin Skorupskied47c7e2023-02-11 16:19:39 +0100408 "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;",
Martin Skorupski61f529a2023-02-05 19:11:49 +0100409 "outputs": 1,
410 "noerr": 0,
411 "initialize": "",
412 "finalize": "",
413 "libs": [],
Martin Skorupskied47c7e2023-02-11 16:19:39 +0100414 "x": 470,
415 "y": 180,
Martin Skorupski61f529a2023-02-05 19:11:49 +0100416 "wires": [
417 [
418 "f65b1c13e0243ef6"
419 ]
420 ]
Martin Skorupskied47c7e2023-02-11 16:19:39 +0100421 },
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 {
Martin Skorupski0ed2b692023-04-08 11:11:38 +0200442 "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",
Martin Skorupski119a6d12023-04-13 15:11:05 +0200462 "x": 820,
463 "y": 820,
Martin Skorupski0ed2b692023-04-08 11:11:38 +0200464 "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": [],
Martin Skorupski119a6d12023-04-13 15:11:05 +0200482 "x": 1150,
483 "y": 820,
Martin Skorupski0ed2b692023-04-08 11:11:38 +0200484 "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",
Martin Skorupski119a6d12023-04-13 15:11:05 +0200511 "x": 830,
512 "y": 860,
Martin Skorupski0ed2b692023-04-08 11:11:38 +0200513 "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": [],
Martin Skorupski119a6d12023-04-13 15:11:05 +0200531 "x": 1150,
532 "y": 860,
Martin Skorupski0ed2b692023-04-08 11:11:38 +0200533 "wires": [
534 [
535 "f65b1c13e0243ef6"
536 ]
537 ]
538 },
539 {
Martin Skorupski119a6d12023-04-13 15:11:05 +0200540 "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 {
Martin Skorupskied47c7e2023-02-11 16:19:39 +01001271 "id": "910dfec7eb74df65",
1272 "type": "inject",
1273 "z": "c5746e29f53f72ce",
1274 "name": "pnfRegistration",
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": "pnfRegistration",
1289 "payload": "",
1290 "payloadType": "date",
Martin Skorupski0ed2b692023-04-08 11:11:38 +02001291 "x": 240,
Martin Skorupskied47c7e2023-02-11 16:19:39 +01001292 "y": 80,
1293 "wires": [
1294 [
1295 "e5f66f4bd6777ca0"
1296 ]
1297 ]
1298 },
1299 {
1300 "id": "562063a080cb99d6",
1301 "type": "debug",
1302 "z": "c5746e29f53f72ce",
1303 "name": "eventData",
Martin Skorupski9bdc2fb2023-04-14 13:53:21 +02001304 "active": false,
Martin Skorupskied47c7e2023-02-11 16:19:39 +01001305 "tosidebar": true,
1306 "console": false,
1307 "tostatus": false,
1308 "complete": "payload",
1309 "targetType": "msg",
1310 "statusVal": "",
1311 "statusType": "auto",
Martin Skorupskidf57ed92023-04-14 09:39:04 +02001312 "x": 1150,
Martin Skorupskied47c7e2023-02-11 16:19:39 +01001313 "y": 220,
1314 "wires": []
1315 },
1316 {
1317 "id": "172060688d87f510",
1318 "type": "inject",
1319 "z": "c5746e29f53f72ce",
1320 "d": true,
1321 "name": "notifyHeartbeat",
1322 "props": [
1323 {
1324 "p": "payload"
1325 },
1326 {
1327 "p": "topic",
1328 "vt": "str"
1329 }
1330 ],
1331 "repeat": "5",
1332 "crontab": "",
1333 "once": true,
1334 "onceDelay": 0.1,
1335 "topic": "notifyHeartbeat",
1336 "payload": "",
1337 "payloadType": "date",
Martin Skorupski0ed2b692023-04-08 11:11:38 +02001338 "x": 230,
Martin Skorupski119a6d12023-04-13 15:11:05 +02001339 "y": 320,
Martin Skorupskied47c7e2023-02-11 16:19:39 +01001340 "wires": [
1341 [
1342 "e5f66f4bd6777ca0"
1343 ]
1344 ]
1345 },
1346 {
1347 "id": "311c3b5d3d73fc24",
1348 "type": "inject",
1349 "z": "c5746e29f53f72ce",
1350 "name": "notifyFileReady",
1351 "props": [
1352 {
1353 "p": "payload"
1354 },
1355 {
1356 "p": "topic",
1357 "vt": "str"
1358 }
1359 ],
1360 "repeat": "",
1361 "crontab": "",
1362 "once": false,
1363 "onceDelay": 0.1,
1364 "topic": "notifyFileReady",
1365 "payload": "",
1366 "payloadType": "date",
Martin Skorupski0ed2b692023-04-08 11:11:38 +02001367 "x": 240,
Martin Skorupski119a6d12023-04-13 15:11:05 +02001368 "y": 360,
Martin Skorupskied47c7e2023-02-11 16:19:39 +01001369 "wires": [
1370 [
1371 "e5f66f4bd6777ca0"
1372 ]
1373 ]
1374 },
1375 {
1376 "id": "5437e3fdfca300c9",
1377 "type": "http request",
1378 "z": "c5746e29f53f72ce",
1379 "name": "",
1380 "method": "GET",
1381 "ret": "txt",
1382 "paytoqs": "ignore",
1383 "url": "",
1384 "tls": "7b2f4859e5963695",
1385 "persist": true,
1386 "proxy": "",
1387 "insecureHTTPParser": true,
1388 "authType": "",
1389 "senderr": false,
1390 "headers": [],
Martin Skorupski0ed2b692023-04-08 11:11:38 +02001391 "x": 670,
Martin Skorupskied47c7e2023-02-11 16:19:39 +01001392 "y": 220,
1393 "wires": [
1394 [
1395 "dc576b6355478428"
1396 ]
1397 ]
1398 },
1399 {
1400 "id": "dc576b6355478428",
1401 "type": "function",
1402 "z": "c5746e29f53f72ce",
1403 "name": "JSON",
1404 "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;",
1405 "outputs": 1,
1406 "noerr": 0,
1407 "initialize": "",
1408 "finalize": "",
1409 "libs": [],
Martin Skorupski0ed2b692023-04-08 11:11:38 +02001410 "x": 830,
Martin Skorupskied47c7e2023-02-11 16:19:39 +01001411 "y": 220,
1412 "wires": [
1413 [
Martin Skorupskidf57ed92023-04-14 09:39:04 +02001414 "2a2e05d79287f4a0"
Martin Skorupskied47c7e2023-02-11 16:19:39 +01001415 ]
1416 ]
1417 },
1418 {
1419 "id": "e5f66f4bd6777ca0",
1420 "type": "function",
1421 "z": "c5746e29f53f72ce",
1422 "name": "SET msg.url",
Martin Skorupskifcd1a3f2023-04-17 12:59:04 +02001423 "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 oRanOpenfrontManagementPlane: \"unauthenticated.VES_O_RAN_SC_OPENFRONTHAUL_OUTPUT\"\n};\nconst longPolling = '?timeout=60000'\nconst urlTopic = urlMapping[msg.topic] || msg.topic.replace(':', '-');\nmsg.url = [base, path, urlTopic, '1', '1'].join('/') + longPolling;\nreturn msg;",
Martin Skorupskied47c7e2023-02-11 16:19:39 +01001424 "outputs": 1,
1425 "noerr": 0,
1426 "initialize": "",
1427 "finalize": "",
1428 "libs": [],
Martin Skorupski0ed2b692023-04-08 11:11:38 +02001429 "x": 490,
Martin Skorupskied47c7e2023-02-11 16:19:39 +01001430 "y": 220,
1431 "wires": [
1432 [
1433 "5437e3fdfca300c9"
1434 ]
1435 ]
1436 },
1437 {
1438 "id": "42275e9c12f8e52b",
1439 "type": "comment",
1440 "z": "c5746e29f53f72ce",
1441 "name": "from O-RAN-SC",
1442 "info": "",
1443 "x": 100,
1444 "y": 140,
1445 "wires": []
1446 },
1447 {
1448 "id": "e07fa97ebc66dce0",
1449 "type": "comment",
1450 "z": "c5746e29f53f72ce",
1451 "name": "from ONAP",
1452 "info": "",
1453 "x": 90,
1454 "y": 40,
1455 "wires": []
1456 },
1457 {
1458 "id": "44b8c2cc138777f1",
1459 "type": "comment",
1460 "z": "c5746e29f53f72ce",
1461 "name": "from SA5 R-18 branch",
1462 "info": "",
1463 "x": 120,
Martin Skorupski119a6d12023-04-13 15:11:05 +02001464 "y": 280,
Martin Skorupskied47c7e2023-02-11 16:19:39 +01001465 "wires": []
1466 },
1467 {
1468 "id": "4480e5473a65a757",
1469 "type": "inject",
1470 "z": "c5746e29f53f72ce",
1471 "name": "oRanScDuHelloWorldPmStreaming",
1472 "props": [
1473 {
1474 "p": "payload"
1475 },
1476 {
1477 "p": "topic",
1478 "vt": "str"
1479 }
1480 ],
1481 "repeat": "",
1482 "crontab": "",
1483 "once": false,
1484 "onceDelay": 0.1,
1485 "topic": "oRanScDuHelloWorldPmStreaming",
1486 "payload": "",
1487 "payloadType": "date",
1488 "x": 180,
1489 "y": 220,
1490 "wires": [
1491 [
1492 "e5f66f4bd6777ca0"
1493 ]
1494 ]
1495 },
1496 {
1497 "id": "52f22ee054e5b4ac",
1498 "type": "inject",
1499 "z": "c5746e29f53f72ce",
1500 "name": "o1NotifyPnfRegistration",
1501 "props": [
1502 {
1503 "p": "payload"
1504 },
1505 {
1506 "p": "topic",
1507 "vt": "str"
1508 }
1509 ],
1510 "repeat": "",
1511 "crontab": "",
1512 "once": false,
1513 "onceDelay": 0.1,
1514 "topic": "o1NotifyPnfRegistration",
1515 "payload": "",
1516 "payloadType": "date",
Martin Skorupski0ed2b692023-04-08 11:11:38 +02001517 "x": 220,
Martin Skorupskied47c7e2023-02-11 16:19:39 +01001518 "y": 180,
1519 "wires": [
1520 [
1521 "e5f66f4bd6777ca0"
1522 ]
1523 ]
Martin Skorupski0ed2b692023-04-08 11:11:38 +02001524 },
1525 {
1526 "id": "3051f52553efaaa4",
1527 "type": "http request",
1528 "z": "c5746e29f53f72ce",
1529 "name": "",
1530 "method": "GET",
1531 "ret": "txt",
1532 "paytoqs": "ignore",
1533 "url": "https://messages.smo.o-ran-sc.org/topics",
1534 "tls": "7b2f4859e5963695",
1535 "persist": true,
1536 "proxy": "",
1537 "insecureHTTPParser": true,
1538 "authType": "",
1539 "senderr": false,
1540 "headers": [
1541 {
1542 "keyType": "other",
1543 "keyValue": "Accept",
1544 "valueType": "other",
1545 "valueValue": "application/json"
1546 }
1547 ],
1548 "x": 670,
1549 "y": 180,
1550 "wires": [
1551 [
1552 "dc576b6355478428"
1553 ]
1554 ]
1555 },
1556 {
1557 "id": "0acceacb99b7981a",
1558 "type": "inject",
1559 "z": "c5746e29f53f72ce",
1560 "name": "Topics?",
1561 "props": [
1562 {
1563 "p": "payload"
1564 },
1565 {
1566 "p": "topic",
1567 "vt": "str"
1568 }
1569 ],
1570 "repeat": "",
1571 "crontab": "",
1572 "once": false,
1573 "onceDelay": 0.1,
1574 "topic": "topics",
1575 "payload": "",
1576 "payloadType": "date",
1577 "x": 510,
1578 "y": 180,
1579 "wires": [
1580 [
1581 "3051f52553efaaa4"
1582 ]
1583 ]
1584 },
1585 {
1586 "id": "34b7ac222692e06d",
1587 "type": "comment",
1588 "z": "c5746e29f53f72ce",
1589 "name": "from OpenFronthaul Management-Plane",
1590 "info": "",
Martin Skorupski119a6d12023-04-13 15:11:05 +02001591 "x": 580,
Martin Skorupski0ed2b692023-04-08 11:11:38 +02001592 "y": 280,
1593 "wires": []
1594 },
1595 {
Martin Skorupski119a6d12023-04-13 15:11:05 +02001596 "id": "25a3eca83bbc3489",
Martin Skorupski0ed2b692023-04-08 11:11:38 +02001597 "type": "inject",
1598 "z": "c5746e29f53f72ce",
Martin Skorupski119a6d12023-04-13 15:11:05 +02001599 "name": "o-ran-supervision:supervision-notification",
Martin Skorupski0ed2b692023-04-08 11:11:38 +02001600 "props": [
1601 {
1602 "p": "payload"
1603 },
1604 {
1605 "p": "topic",
1606 "vt": "str"
1607 }
1608 ],
Martin Skorupskifcd1a3f2023-04-17 12:59:04 +02001609 "repeat": "60",
Martin Skorupski0ed2b692023-04-08 11:11:38 +02001610 "crontab": "",
1611 "once": false,
1612 "onceDelay": 0.1,
Martin Skorupski119a6d12023-04-13 15:11:05 +02001613 "topic": "o-ran-supervision:supervision-notification",
Martin Skorupski0ed2b692023-04-08 11:11:38 +02001614 "payload": "",
1615 "payloadType": "date",
Martin Skorupski119a6d12023-04-13 15:11:05 +02001616 "x": 620,
1617 "y": 1040,
1618 "wires": [
1619 [
1620 "e5f66f4bd6777ca0"
1621 ]
1622 ]
1623 },
1624 {
1625 "id": "0194d014ef8f6c5e",
1626 "type": "inject",
1627 "z": "c5746e29f53f72ce",
1628 "name": "o-ran-file-management:file-upload-notification",
1629 "props": [
1630 {
1631 "p": "payload"
1632 },
1633 {
1634 "p": "topic",
1635 "vt": "str"
1636 }
1637 ],
1638 "repeat": "",
1639 "crontab": "",
1640 "once": false,
1641 "onceDelay": 0.1,
1642 "topic": "o-ran-file-management:file-upload-notification",
1643 "payload": "",
1644 "payloadType": "date",
1645 "x": 630,
1646 "y": 760,
1647 "wires": [
1648 [
1649 "e5f66f4bd6777ca0"
1650 ]
1651 ]
1652 },
1653 {
1654 "id": "775aacf9e2cc0285",
1655 "type": "inject",
1656 "z": "c5746e29f53f72ce",
1657 "name": "o-ran-file-management:file-download-event",
1658 "props": [
1659 {
1660 "p": "payload"
1661 },
1662 {
1663 "p": "topic",
1664 "vt": "str"
1665 }
1666 ],
1667 "repeat": "",
1668 "crontab": "",
1669 "once": false,
1670 "onceDelay": 0.1,
1671 "topic": "o-ran-file-management:file-download-event",
1672 "payload": "",
1673 "payloadType": "date",
1674 "x": 620,
1675 "y": 720,
1676 "wires": [
1677 [
1678 "e5f66f4bd6777ca0"
1679 ]
1680 ]
1681 },
1682 {
1683 "id": "3e3be17a65a7d1bf",
1684 "type": "inject",
1685 "z": "c5746e29f53f72ce",
1686 "d": true,
1687 "name": "o-ran-ald-port:dc-enabled-status-change",
1688 "props": [
1689 {
1690 "p": "payload"
1691 },
1692 {
1693 "p": "topic",
1694 "vt": "str"
1695 }
1696 ],
1697 "repeat": "",
1698 "crontab": "",
1699 "once": false,
1700 "onceDelay": 0.1,
1701 "topic": "o-ran-ald-port:dc-enabled-status-change",
1702 "payload": "",
1703 "payloadType": "date",
1704 "x": 620,
Martin Skorupski0ed2b692023-04-08 11:11:38 +02001705 "y": 320,
1706 "wires": [
1707 [
1708 "e5f66f4bd6777ca0"
1709 ]
1710 ]
Martin Skorupski119a6d12023-04-13 15:11:05 +02001711 },
1712 {
1713 "id": "665c45e5ccd1c9cb",
1714 "type": "inject",
1715 "z": "c5746e29f53f72ce",
1716 "d": true,
1717 "name": "o-ran-ald-port:overcurrent-report",
1718 "props": [
1719 {
1720 "p": "payload"
1721 },
1722 {
1723 "p": "topic",
1724 "vt": "str"
1725 }
1726 ],
1727 "repeat": "",
1728 "crontab": "",
1729 "once": false,
1730 "onceDelay": 0.1,
1731 "topic": "o-ran-ald-port:overcurrent-report",
1732 "payload": "",
1733 "payloadType": "date",
1734 "x": 590,
1735 "y": 360,
1736 "wires": [
1737 [
1738 "e5f66f4bd6777ca0"
1739 ]
1740 ]
1741 },
1742 {
1743 "id": "5520ce3b83578f17",
1744 "type": "inject",
1745 "z": "c5746e29f53f72ce",
1746 "d": true,
1747 "name": "o-ran-antenna-calibration:antenna-calibration-coordinated",
1748 "props": [
1749 {
1750 "p": "payload"
1751 },
1752 {
1753 "p": "topic",
1754 "vt": "str"
1755 }
1756 ],
1757 "repeat": "",
1758 "crontab": "",
1759 "once": false,
1760 "onceDelay": 0.1,
1761 "topic": "o-ran-antenna-calibration:antenna-calibration-coordinated",
1762 "payload": "",
1763 "payloadType": "date",
1764 "x": 670,
1765 "y": 400,
1766 "wires": [
1767 [
1768 "e5f66f4bd6777ca0"
1769 ]
1770 ]
1771 },
1772 {
1773 "id": "fda3090fb4f1e9d4",
1774 "type": "inject",
1775 "z": "c5746e29f53f72ce",
1776 "d": true,
1777 "name": "o-ran-antenna-calibration:antenna-calibration-multiple-time-resource-params",
1778 "props": [
1779 {
1780 "p": "payload"
1781 },
1782 {
1783 "p": "topic",
1784 "vt": "str"
1785 }
1786 ],
1787 "repeat": "",
1788 "crontab": "",
1789 "once": false,
1790 "onceDelay": 0.1,
1791 "topic": "o-ran-antenna-calibration:antenna-calibration-multiple-time-resource-params",
1792 "payload": "",
1793 "payloadType": "date",
1794 "x": 730,
1795 "y": 440,
1796 "wires": [
1797 [
1798 "e5f66f4bd6777ca0"
1799 ]
1800 ]
1801 },
1802 {
1803 "id": "2551bb6c9746a7c2",
1804 "type": "inject",
1805 "z": "c5746e29f53f72ce",
1806 "d": true,
1807 "name": "o-ran-antenna-calibration:antenna-calibration-required",
1808 "props": [
1809 {
1810 "p": "payload"
1811 },
1812 {
1813 "p": "topic",
1814 "vt": "str"
1815 }
1816 ],
1817 "repeat": "",
1818 "crontab": "",
1819 "once": false,
1820 "onceDelay": 0.1,
1821 "topic": "o-ran-antenna-calibration:antenna-calibration-required",
1822 "payload": "",
1823 "payloadType": "date",
1824 "x": 660,
1825 "y": 480,
1826 "wires": [
1827 [
1828 "e5f66f4bd6777ca0"
1829 ]
1830 ]
1831 },
1832 {
1833 "id": "0dcc72d0235e6336",
1834 "type": "inject",
1835 "z": "c5746e29f53f72ce",
1836 "d": true,
1837 "name": "o-ran-antenna-calibration:antenna-calibration-result",
1838 "props": [
1839 {
1840 "p": "payload"
1841 },
1842 {
1843 "p": "topic",
1844 "vt": "str"
1845 }
1846 ],
1847 "repeat": "",
1848 "crontab": "",
1849 "once": false,
1850 "onceDelay": 0.1,
1851 "topic": "o-ran-antenna-calibration:antenna-calibration-result",
1852 "payload": "",
1853 "payloadType": "date",
1854 "x": 650,
1855 "y": 520,
1856 "wires": [
1857 [
1858 "e5f66f4bd6777ca0"
1859 ]
1860 ]
1861 },
1862 {
1863 "id": "0abafa5c1a4ebd33",
1864 "type": "inject",
1865 "z": "c5746e29f53f72ce",
1866 "d": true,
1867 "name": "o-ran-beamforming:beamforming-information-update",
1868 "props": [
1869 {
1870 "p": "payload"
1871 },
1872 {
1873 "p": "topic",
1874 "vt": "str"
1875 }
1876 ],
1877 "repeat": "",
1878 "crontab": "",
1879 "once": false,
1880 "onceDelay": 0.1,
1881 "topic": "o-ran-beamforming:beamforming-information-update",
1882 "payload": "",
1883 "payloadType": "date",
1884 "x": 650,
1885 "y": 560,
1886 "wires": [
1887 [
1888 "e5f66f4bd6777ca0"
1889 ]
1890 ]
1891 },
1892 {
1893 "id": "d74c5f1885485d8c",
1894 "type": "inject",
1895 "z": "c5746e29f53f72ce",
1896 "d": true,
1897 "name": "o-ran-beamforming:capability-group-beamforming-information-update",
1898 "props": [
1899 {
1900 "p": "payload"
1901 },
1902 {
1903 "p": "topic",
1904 "vt": "str"
1905 }
1906 ],
1907 "repeat": "",
1908 "crontab": "",
1909 "once": false,
1910 "onceDelay": 0.1,
1911 "topic": "o-ran-beamforming:capability-group-beamforming-information-update",
1912 "payload": "",
1913 "payloadType": "date",
1914 "x": 700,
1915 "y": 600,
1916 "wires": [
1917 [
1918 "e5f66f4bd6777ca0"
1919 ]
1920 ]
1921 },
1922 {
1923 "id": "8d755b355a3d5557",
1924 "type": "inject",
1925 "z": "c5746e29f53f72ce",
1926 "d": true,
1927 "name": "o-ran-beamforming:predefined-beam-tilt-offset-complete",
1928 "props": [
1929 {
1930 "p": "payload"
1931 },
1932 {
1933 "p": "topic",
1934 "vt": "str"
1935 }
1936 ],
1937 "repeat": "",
1938 "crontab": "",
1939 "once": false,
1940 "onceDelay": 0.1,
1941 "topic": "o-ran-beamforming:predefined-beam-tilt-offset-complete",
1942 "payload": "",
1943 "payloadType": "date",
1944 "x": 660,
1945 "y": 640,
1946 "wires": [
1947 []
1948 ]
1949 },
1950 {
1951 "id": "6ebe4693c580ae00",
1952 "type": "inject",
1953 "z": "c5746e29f53f72ce",
1954 "d": true,
1955 "name": "o-ran-externalio:external-input-change",
1956 "props": [
1957 {
1958 "p": "payload"
1959 },
1960 {
1961 "p": "topic",
1962 "vt": "str"
1963 }
1964 ],
1965 "repeat": "",
1966 "crontab": "",
1967 "once": false,
1968 "onceDelay": 0.1,
1969 "topic": "o-ran-externalio:external-input-change",
1970 "payload": "",
1971 "payloadType": "date",
1972 "x": 610,
1973 "y": 680,
1974 "wires": [
1975 []
1976 ]
1977 },
1978 {
1979 "id": "89144928a6ead625",
1980 "type": "inject",
1981 "z": "c5746e29f53f72ce",
1982 "d": true,
1983 "name": "o-ran-fm:alarm-notif",
1984 "props": [
1985 {
1986 "p": "payload"
1987 },
1988 {
1989 "p": "topic",
1990 "vt": "str"
1991 }
1992 ],
1993 "repeat": "",
1994 "crontab": "",
1995 "once": false,
1996 "onceDelay": 0.1,
1997 "topic": "o-ran-fm:alarm-notif",
1998 "payload": "",
1999 "payloadType": "date",
2000 "x": 550,
2001 "y": 800,
2002 "wires": [
2003 [
2004 "e5f66f4bd6777ca0"
2005 ]
2006 ]
2007 },
2008 {
2009 "id": "8ebca0cd456a9763",
2010 "type": "inject",
2011 "z": "c5746e29f53f72ce",
2012 "d": true,
2013 "name": "o-ran-laa-operations:measurement-result",
2014 "props": [
2015 {
2016 "p": "payload"
2017 },
2018 {
2019 "p": "topic",
2020 "vt": "str"
2021 }
2022 ],
2023 "repeat": "",
2024 "crontab": "",
2025 "once": false,
2026 "onceDelay": 0.1,
2027 "topic": "o-ran-laa-operations:measurement-result",
2028 "payload": "",
2029 "payloadType": "date",
2030 "x": 620,
2031 "y": 840,
2032 "wires": [
2033 [
2034 "e5f66f4bd6777ca0"
2035 ]
2036 ]
2037 },
2038 {
2039 "id": "4778511387bc7449",
2040 "type": "inject",
2041 "z": "c5746e29f53f72ce",
2042 "d": true,
2043 "name": "o-ran-performance-management:measurement-result-stats",
2044 "props": [
2045 {
2046 "p": "payload"
2047 },
2048 {
2049 "p": "topic",
2050 "vt": "str"
2051 }
2052 ],
2053 "repeat": "",
2054 "crontab": "",
2055 "once": false,
2056 "onceDelay": 0.1,
2057 "topic": "o-ran-performance-management:measurement-result-stats",
2058 "payload": "",
2059 "payloadType": "date",
2060 "x": 670,
2061 "y": 880,
2062 "wires": [
2063 [
2064 "e5f66f4bd6777ca0"
2065 ]
2066 ]
2067 },
2068 {
2069 "id": "c106623d629fbe54",
2070 "type": "inject",
2071 "z": "c5746e29f53f72ce",
2072 "d": true,
2073 "name": "o-ran-software-management:activation-event",
2074 "props": [
2075 {
2076 "p": "payload"
2077 },
2078 {
2079 "p": "topic",
2080 "vt": "str"
2081 }
2082 ],
2083 "repeat": "",
2084 "crontab": "",
2085 "once": false,
2086 "onceDelay": 0.1,
2087 "topic": "o-ran-software-management:activation-event",
2088 "payload": "",
2089 "payloadType": "date",
2090 "x": 630,
2091 "y": 920,
2092 "wires": [
2093 [
2094 "e5f66f4bd6777ca0"
2095 ]
2096 ]
2097 },
2098 {
2099 "id": "4db0e5b915d76ddb",
2100 "type": "inject",
2101 "z": "c5746e29f53f72ce",
2102 "d": true,
2103 "name": "o-ran-software-management:download-event",
2104 "props": [
2105 {
2106 "p": "payload"
2107 },
2108 {
2109 "p": "topic",
2110 "vt": "str"
2111 }
2112 ],
2113 "repeat": "",
2114 "crontab": "",
2115 "once": false,
2116 "onceDelay": 0.1,
2117 "topic": "o-ran-software-management:download-event",
2118 "payload": "",
2119 "payloadType": "date",
2120 "x": 630,
2121 "y": 960,
2122 "wires": [
2123 [
2124 "e5f66f4bd6777ca0"
2125 ]
2126 ]
2127 },
2128 {
2129 "id": "8d3fab47729a807d",
2130 "type": "inject",
2131 "z": "c5746e29f53f72ce",
2132 "d": true,
2133 "name": "o-ran-software-management:install-event",
2134 "props": [
2135 {
2136 "p": "payload"
2137 },
2138 {
2139 "p": "topic",
2140 "vt": "str"
2141 }
2142 ],
2143 "repeat": "",
2144 "crontab": "",
2145 "once": false,
2146 "onceDelay": 0.1,
2147 "topic": "o-ran-software-management:install-event",
2148 "payload": "",
2149 "payloadType": "date",
2150 "x": 620,
2151 "y": 1000,
2152 "wires": [
2153 [
2154 "e5f66f4bd6777ca0"
2155 ]
2156 ]
2157 },
2158 {
2159 "id": "7ac87519cb59151d",
2160 "type": "inject",
2161 "z": "c5746e29f53f72ce",
2162 "d": true,
2163 "name": "o-ran-sync:gnss-state-change",
2164 "props": [
2165 {
2166 "p": "payload"
2167 },
2168 {
2169 "p": "topic",
2170 "vt": "str"
2171 }
2172 ],
2173 "repeat": "",
2174 "crontab": "",
2175 "once": false,
2176 "onceDelay": 0.1,
2177 "topic": "o-ran-sync:gnss-state-change",
2178 "payload": "",
2179 "payloadType": "date",
2180 "x": 580,
2181 "y": 1080,
2182 "wires": [
2183 [
2184 "e5f66f4bd6777ca0"
2185 ]
2186 ]
2187 },
2188 {
2189 "id": "55725b18e27c1a27",
2190 "type": "inject",
2191 "z": "c5746e29f53f72ce",
2192 "d": true,
2193 "name": "o-ran-sync:ptp-state-change",
2194 "props": [
2195 {
2196 "p": "payload"
2197 },
2198 {
2199 "p": "topic",
2200 "vt": "str"
2201 }
2202 ],
2203 "repeat": "",
2204 "crontab": "",
2205 "once": false,
2206 "onceDelay": 0.1,
2207 "topic": "o-ran-sync:ptp-state-change",
2208 "payload": "",
2209 "payloadType": "date",
2210 "x": 580,
2211 "y": 1120,
2212 "wires": [
2213 [
2214 "e5f66f4bd6777ca0"
2215 ]
2216 ]
2217 },
2218 {
2219 "id": "dde01e699dec844f",
2220 "type": "inject",
2221 "z": "c5746e29f53f72ce",
2222 "d": true,
2223 "name": "o-ran-sync:synce-state-change",
2224 "props": [
2225 {
2226 "p": "payload"
2227 },
2228 {
2229 "p": "topic",
2230 "vt": "str"
2231 }
2232 ],
2233 "repeat": "",
2234 "crontab": "",
2235 "once": false,
2236 "onceDelay": 0.1,
2237 "topic": "o-ran-sync:synce-state-change",
2238 "payload": "",
2239 "payloadType": "date",
2240 "x": 590,
2241 "y": 1160,
2242 "wires": [
2243 [
2244 "e5f66f4bd6777ca0"
2245 ]
2246 ]
2247 },
2248 {
2249 "id": "5457d995823e58f6",
2250 "type": "inject",
2251 "z": "c5746e29f53f72ce",
2252 "d": true,
2253 "name": "o-ran-sync:synchronization-state-change",
2254 "props": [
2255 {
2256 "p": "payload"
2257 },
2258 {
2259 "p": "topic",
2260 "vt": "str"
2261 }
2262 ],
2263 "repeat": "",
2264 "crontab": "",
2265 "once": false,
2266 "onceDelay": 0.1,
2267 "topic": "o-ran-sync:synchronization-state-change",
2268 "payload": "",
2269 "payloadType": "date",
2270 "x": 620,
2271 "y": 1200,
2272 "wires": [
2273 [
2274 "e5f66f4bd6777ca0"
2275 ]
2276 ]
2277 },
2278 {
2279 "id": "ca9f765b3838d5ff",
2280 "type": "inject",
2281 "z": "c5746e29f53f72ce",
2282 "d": true,
2283 "name": "o-ran-trace:trace-log-generated",
2284 "props": [
2285 {
2286 "p": "payload"
2287 },
2288 {
2289 "p": "topic",
2290 "vt": "str"
2291 }
2292 ],
2293 "repeat": "",
2294 "crontab": "",
2295 "once": false,
2296 "onceDelay": 0.1,
2297 "topic": "o-ran-trace:trace-log-generated",
2298 "payload": "",
2299 "payloadType": "date",
2300 "x": 590,
2301 "y": 1240,
2302 "wires": [
2303 [
2304 "e5f66f4bd6777ca0"
2305 ]
2306 ]
2307 },
2308 {
2309 "id": "0a837c4beaa140e0",
2310 "type": "inject",
2311 "z": "c5746e29f53f72ce",
2312 "d": true,
2313 "name": "o-ran-uplane-conf:rx-array-carriers-state-change",
2314 "props": [
2315 {
2316 "p": "payload"
2317 },
2318 {
2319 "p": "topic",
2320 "vt": "str"
2321 }
2322 ],
2323 "repeat": "",
2324 "crontab": "",
2325 "once": false,
2326 "onceDelay": 0.1,
2327 "topic": "o-ran-uplane-conf:rx-array-carriers-state-change",
2328 "payload": "",
2329 "payloadType": "date",
2330 "x": 640,
2331 "y": 1320,
2332 "wires": [
2333 [
2334 "e5f66f4bd6777ca0"
2335 ]
2336 ]
2337 },
2338 {
2339 "id": "3dfb5349f08c5ea9",
2340 "type": "inject",
2341 "z": "c5746e29f53f72ce",
2342 "d": true,
2343 "name": "o-ran-troubleshooting:troubleshooting-log-generated",
2344 "props": [
2345 {
2346 "p": "payload"
2347 },
2348 {
2349 "p": "topic",
2350 "vt": "str"
2351 }
2352 ],
2353 "repeat": "",
2354 "crontab": "",
2355 "once": false,
2356 "onceDelay": 0.1,
2357 "topic": "o-ran-troubleshooting:troubleshooting-log-generated",
2358 "payload": "",
2359 "payloadType": "date",
2360 "x": 650,
2361 "y": 1280,
2362 "wires": [
2363 [
2364 "e5f66f4bd6777ca0"
2365 ]
2366 ]
2367 },
2368 {
2369 "id": "030a6e7e6371402e",
2370 "type": "inject",
2371 "z": "c5746e29f53f72ce",
2372 "d": true,
2373 "name": "o-ran-uplane-conf:tx-array-carriers-state-change",
2374 "props": [
2375 {
2376 "p": "payload"
2377 },
2378 {
2379 "p": "topic",
2380 "vt": "str"
2381 }
2382 ],
2383 "repeat": "",
2384 "crontab": "",
2385 "once": false,
2386 "onceDelay": 0.1,
2387 "topic": "o-ran-uplane-conf:tx-array-carriers-state-change",
2388 "payload": "",
2389 "payloadType": "date",
2390 "x": 640,
2391 "y": 1360,
2392 "wires": [
2393 [
2394 "e5f66f4bd6777ca0"
2395 ]
2396 ]
Martin Skorupskidf57ed92023-04-14 09:39:04 +02002397 },
2398 {
2399 "id": "2a2e05d79287f4a0",
2400 "type": "function",
2401 "z": "c5746e29f53f72ce",
2402 "name": "Provider",
2403 "func": "global.set('topicData', msg.payload)\nreturn msg;",
2404 "outputs": 1,
2405 "noerr": 0,
2406 "initialize": "",
2407 "finalize": "",
2408 "libs": [],
2409 "x": 980,
2410 "y": 220,
2411 "wires": [
2412 [
2413 "562063a080cb99d6"
2414 ]
2415 ]
2416 },
2417 {
2418 "id": "c5648c1528804847",
2419 "type": "inject",
2420 "z": "7ba02ed596e8cde5",
Martin Skorupski115458a2023-04-14 12:14:23 +02002421 "name": "supervision-watchdog-reset for O-RU-11221",
Martin Skorupskidf57ed92023-04-14 09:39:04 +02002422 "props": [
2423 {
2424 "p": "payload"
2425 },
2426 {
2427 "p": "topic",
2428 "vt": "str"
2429 }
2430 ],
2431 "repeat": "",
2432 "crontab": "",
2433 "once": false,
2434 "onceDelay": 0.1,
2435 "topic": "supervision-watchdog-reset",
2436 "payload": "[\"O-RU-11221\"]",
2437 "payloadType": "json",
Martin Skorupski115458a2023-04-14 12:14:23 +02002438 "x": 230,
2439 "y": 100,
Martin Skorupskidf57ed92023-04-14 09:39:04 +02002440 "wires": [
2441 [
2442 "2bd693b8c7e5a3cb"
2443 ]
2444 ]
2445 },
2446 {
2447 "id": "329e838eb4bf63f4",
2448 "type": "function",
2449 "z": "7ba02ed596e8cde5",
Martin Skorupski115458a2023-04-14 12:14:23 +02002450 "name": "ResetActionData",
Martin Skorupskidf57ed92023-04-14 09:39:04 +02002451 "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;",
2452 "outputs": 1,
2453 "noerr": 0,
2454 "initialize": "",
2455 "finalize": "",
2456 "libs": [],
Martin Skorupski115458a2023-04-14 12:14:23 +02002457 "x": 570,
2458 "y": 220,
Martin Skorupskidf57ed92023-04-14 09:39:04 +02002459 "wires": [
2460 [
2461 "1a4b6a4ec23c8f9f",
Martin Skorupski115458a2023-04-14 12:14:23 +02002462 "2bd693b8c7e5a3cb"
Martin Skorupskidf57ed92023-04-14 09:39:04 +02002463 ]
2464 ]
2465 },
2466 {
2467 "id": "1a4b6a4ec23c8f9f",
2468 "type": "http request",
2469 "z": "7ba02ed596e8cde5",
Martin Skorupski115458a2023-04-14 12:14:23 +02002470 "name": "RESTCONF request",
Martin Skorupskidf57ed92023-04-14 09:39:04 +02002471 "method": "POST",
2472 "ret": "txt",
2473 "paytoqs": "ignore",
2474 "url": "",
2475 "tls": "7b2f4859e5963695",
2476 "persist": true,
2477 "proxy": "",
2478 "insecureHTTPParser": true,
2479 "authType": "basic",
2480 "senderr": false,
2481 "headers": [
2482 {
2483 "keyType": "other",
2484 "keyValue": "Accept",
2485 "valueType": "other",
2486 "valueValue": "application/json"
2487 },
2488 {
2489 "keyType": "other",
2490 "keyValue": "Content-Type",
2491 "valueType": "other",
2492 "valueValue": "application/json"
2493 }
2494 ],
Martin Skorupski115458a2023-04-14 12:14:23 +02002495 "x": 800,
2496 "y": 220,
Martin Skorupskidf57ed92023-04-14 09:39:04 +02002497 "wires": [
2498 [
2499 "eb6c2de759c8eb54"
2500 ]
2501 ]
2502 },
2503 {
2504 "id": "eb6c2de759c8eb54",
2505 "type": "debug",
2506 "z": "7ba02ed596e8cde5",
2507 "name": "Response",
2508 "active": true,
2509 "tosidebar": true,
2510 "console": false,
2511 "tostatus": false,
2512 "complete": "payload",
2513 "targetType": "msg",
2514 "statusVal": "",
2515 "statusType": "auto",
Martin Skorupski115458a2023-04-14 12:14:23 +02002516 "x": 1000,
2517 "y": 220,
Martin Skorupskidf57ed92023-04-14 09:39:04 +02002518 "wires": []
2519 },
2520 {
2521 "id": "0d3ade9a80560c04",
2522 "type": "inject",
2523 "z": "7ba02ed596e8cde5",
Martin Skorupski115458a2023-04-14 12:14:23 +02002524 "name": "Every 5s",
Martin Skorupskidf57ed92023-04-14 09:39:04 +02002525 "props": [],
Martin Skorupski115458a2023-04-14 12:14:23 +02002526 "repeat": "5",
Martin Skorupskidf57ed92023-04-14 09:39:04 +02002527 "crontab": "",
2528 "once": false,
2529 "onceDelay": 0.1,
2530 "topic": "",
Martin Skorupski115458a2023-04-14 12:14:23 +02002531 "x": 120,
2532 "y": 140,
Martin Skorupskidf57ed92023-04-14 09:39:04 +02002533 "wires": [
2534 [
2535 "5322d78ad66fcb96"
2536 ]
2537 ]
2538 },
2539 {
2540 "id": "5322d78ad66fcb96",
2541 "type": "function",
2542 "z": "7ba02ed596e8cde5",
Martin Skorupski115458a2023-04-14 12:14:23 +02002543 "name": "Consumer (new Data?)",
Martin Skorupskib50e1db2023-04-14 14:24:49 +02002544 "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; ",
Martin Skorupskidf57ed92023-04-14 09:39:04 +02002545 "outputs": 1,
2546 "noerr": 0,
2547 "initialize": "",
2548 "finalize": "",
2549 "libs": [],
Martin Skorupski115458a2023-04-14 12:14:23 +02002550 "x": 310,
2551 "y": 140,
Martin Skorupskidf57ed92023-04-14 09:39:04 +02002552 "wires": [
2553 [
2554 "2bd693b8c7e5a3cb"
2555 ]
2556 ]
2557 },
2558 {
2559 "id": "2bd693b8c7e5a3cb",
2560 "type": "loop",
2561 "z": "7ba02ed596e8cde5",
Martin Skorupski115458a2023-04-14 12:14:23 +02002562 "name": "Loop through O-RUs",
Martin Skorupskidf57ed92023-04-14 09:39:04 +02002563 "kind": "enum",
2564 "count": "",
2565 "initial": "1",
2566 "step": "1",
2567 "condition": "",
2568 "conditionType": "js",
2569 "when": "before",
2570 "enumeration": "payload",
2571 "enumerationType": "msg",
2572 "limit": "",
2573 "loopPayload": "loop-val",
2574 "finalPayload": "final-last",
Martin Skorupski115458a2023-04-14 12:14:23 +02002575 "x": 580,
2576 "y": 140,
Martin Skorupskidf57ed92023-04-14 09:39:04 +02002577 "wires": [
2578 [],
2579 [
2580 "329e838eb4bf63f4"
2581 ]
2582 ]
2583 },
2584 {
2585 "id": "f7dc363e5421d1cf",
2586 "type": "comment",
2587 "z": "7ba02ed596e8cde5",
2588 "name": "Supervision",
2589 "info": "",
2590 "x": 90,
2591 "y": 40,
2592 "wires": []
2593 },
2594 {
Martin Skorupski115458a2023-04-14 12:14:23 +02002595 "id": "a72d8f5e9683dd39",
2596 "type": "comment",
Martin Skorupskidf57ed92023-04-14 09:39:04 +02002597 "z": "7ba02ed596e8cde5",
Martin Skorupski115458a2023-04-14 12:14:23 +02002598 "name": "The Consumer checks for data on the message router provided by the \"Massage Topics\" flow.",
2599 "info": "The Consumer checks for data on the message router provided by the \"Massage Topics\" flow.",
2600 "x": 520,
Martin Skorupskidf57ed92023-04-14 09:39:04 +02002601 "y": 260,
2602 "wires": []
Martin Skorupski61f529a2023-02-05 19:11:49 +01002603 }
2604]