[
  {
    "id": "45689007.c2c51",
    "type": "tab",
    "label": "OPC UA IIoT JWT EFC",
    "disabled": false,
    "info": ""
  },
  {
    "id": "83836f37.817158",
    "type": "OPCUA-IIoT-Flex-Connector",
    "z": "45689007.c2c51",
    "name": "",
    "showStatusActivities": false,
    "showErrors": true,
    "connector": "c441ba33.56b788",
    "x": 1000,
    "y": 220,
    "wires": [
      [
        "35f9ab6c.f9e5fc"
      ]
    ]
  },
  {
    "id": "9b0e53cf.81f448",
    "type": "inject",
    "z": "45689007.c2c51",
    "name": "Server 86",
    "props": [
      {
        "p": "payload"
      },
      {
        "p": "topic",
        "vt": "str"
      }
    ],
    "repeat": "",
    "crontab": "",
    "once": false,
    "onceDelay": 0.1,
    "topic": "",
    "payload": "{\"discoveryUrl\":null,\"endpoint\":\"opc.tcp://localhost:55386/\",\"keepSessionAlive\":true,\"securityPolicy\":\"None\",\"securityMode\":\"None\",\"name\":\"LOCAL FLEXIBLE INJECTED SERVER\",\"showErrors\":true,\"publicCertificateFile\":null,\"privateKeyFile\":null,\"defaultSecureTokenLifetime\":0,\"endpointMustExist\":false,\"autoSelectRightEndpoint\":false,\"strategyMaxRetry\":0,\"strategyInitialDelay\":0,\"strategyMaxDelay\":0,\"strategyRandomisationFactor\":0,\"requestedSessionTimeout\":0,\"connectionStartDelay\":0,\"reconnectDelay\":0}",
    "payloadType": "json",
    "x": 760,
    "y": 160,
    "wires": [
      [
        "83836f37.817158"
      ]
    ]
  },
  {
    "id": "35f9ab6c.f9e5fc",
    "type": "debug",
    "z": "45689007.c2c51",
    "name": "",
    "active": true,
    "tosidebar": true,
    "console": false,
    "tostatus": false,
    "complete": "true",
    "targetType": "full",
    "statusVal": "",
    "statusType": "auto",
    "x": 1170,
    "y": 220,
    "wires": []
  },
  {
    "id": "c0121b6b.5efed",
    "type": "inject",
    "z": "45689007.c2c51",
    "name": "Server 89",
    "props": [
      {
        "p": "payload"
      },
      {
        "p": "topic",
        "vt": "str"
      }
    ],
    "repeat": "",
    "crontab": "",
    "once": false,
    "onceDelay": 0.1,
    "topic": "",
    "payload": "{\"endpoint\":\"opc.tcp://localhost:55389/\",\"keepSessionAlive\":true,\"showErrors\":true,\"defaultSecureTokenLifetime\":360000,\"endpointMustExist\":false,\"autoSelectRightEndpoint\":false}",
    "payloadType": "json",
    "x": 760,
    "y": 240,
    "wires": [
      [
        "83836f37.817158"
      ]
    ]
  },
  {
    "id": "51c6e598.bbb54c",
    "type": "inject",
    "z": "45689007.c2c51",
    "name": "Server 88",
    "props": [
      {
        "p": "payload"
      },
      {
        "p": "topic",
        "vt": "str"
      }
    ],
    "repeat": "",
    "crontab": "",
    "once": false,
    "onceDelay": 0.1,
    "topic": "",
    "payload": "{\"discoveryUrl\":null,\"endpoint\":\"opc.tcp://localhost:55388/\",\"keepSessionAlive\":true,\"securityPolicy\":\"None\",\"securityMode\":\"None\",\"name\":\"LOCAL FLEXIBLE INJECTED SERVER\",\"showErrors\":true,\"publicCertificateFile\":null,\"privateKeyFile\":null,\"defaultSecureTokenLifetime\":0,\"endpointMustExist\":false,\"autoSelectRightEndpoint\":false,\"strategyMaxRetry\":0,\"strategyInitialDelay\":0,\"strategyMaxDelay\":0,\"strategyRandomisationFactor\":0,\"requestedSessionTimeout\":0,\"connectionStartDelay\":0,\"reconnectDelay\":0}",
    "payloadType": "json",
    "x": 760,
    "y": 200,
    "wires": [
      [
        "83836f37.817158"
      ]
    ]
  },
  {
    "id": "37eeab5f.7b5204",
    "type": "OPCUA-IIoT-Server",
    "z": "45689007.c2c51",
    "port": "55386",
    "endpoint": "",
    "acceptExternalCommands": true,
    "maxAllowedSessionNumber": "",
    "maxConnectionsPerEndpoint": "",
    "maxAllowedSubscriptionNumber": "",
    "alternateHostname": "",
    "name": "Demos Server 86",
    "showStatusActivities": false,
    "showErrors": true,
    "asoDemo": true,
    "allowAnonymous": true,
    "individualCerts": false,
    "isAuditing": false,
    "serverDiscovery": false,
    "users": [],
    "xmlsets": [],
    "publicCertificateFile": "",
    "privateCertificateFile": "",
    "registerServerMethod": 1,
    "discoveryServerEndpointUrl": "",
    "capabilitiesForMDNS": "",
    "maxNodesPerRead": 1000,
    "maxNodesPerBrowse": 2000,
    "delayToClose": 1000,
    "x": 270,
    "y": 580,
    "wires": [
      []
    ]
  },
  {
    "id": "181cf4fa.a57d1b",
    "type": "OPCUA-IIoT-Flex-Server",
    "z": "45689007.c2c51",
    "port": "55378",
    "endpoint": "",
    "acceptExternalCommands": true,
    "maxAllowedSessionNumber": "",
    "maxConnectionsPerEndpoint": "",
    "maxAllowedSubscriptionNumber": "",
    "alternateHostname": "",
    "name": "Flex Server 78",
    "showStatusActivities": false,
    "showErrors": true,
    "allowAnonymous": true,
    "individualCerts": false,
    "isAuditing": false,
    "serverDiscovery": true,
    "users": [],
    "xmlsets": [],
    "publicCertificateFile": "",
    "privateCertificateFile": "",
    "registerServerMethod": 1,
    "discoveryServerEndpointUrl": "",
    "capabilitiesForMDNS": "",
    "maxNodesPerRead": 1000,
    "maxNodesPerBrowse": 2000,
    "delayToClose": 1000,
    "addressSpaceScript": "function constructAlarmAddressSpace(server, addressSpace, eventObjects, done) {\n  // server = the created node-opcua server\n  // addressSpace = script placeholder\n  // eventObjects = to hold event variables in memory from this script\n\n  // internal global sandbox objects are \n  // node = node of the flex server, \n  // coreServer = core iiot server object for debug and access to nodeOPCUA,\n  // and scriptObjects to hold variables and functions\n  const LocalizedText = opcua.LocalizedText\n  const namespace = addressSpace.getOwnNamespace()\n\n  coreServer.internalDebugLog('init dynamic address space')\n  node.warn('construct new address space for OPC UA')\n\n  // from here - see the node-opcua docs how to build address sapces\n  let tanks = namespace.addObject({\n    browseName: 'Tanks',\n    description: 'The Object representing some tanks',\n    organizedBy: addressSpace.rootFolder.objects,\n    notifierOf: addressSpace.rootFolder.objects.server\n  })\n\n  let oilTankLevel = namespace.addVariable({\n    browseName: 'OilTankLevel',\n    displayName: [\n      new LocalizedText({ text: 'Oil Tank Level', locale: 'en-US' }),\n      new LocalizedText({ text: 'Öl Tank Füllstand', locale: 'de-DE' })\n    ],\n    description: 'Fill level in percentage (0% to 100%) of the oil tank',\n    propertyOf: tanks,\n    dataType: 'Double',\n    eventSourceOf: tanks\n  })\n\n  // ---------------------------------------------------------------------------------\n  // Let's create a exclusive Limit Alarm that automatically raise itself\n  // when the tank level is out of limit\n  // ---------------------------------------------------------------------------------\n  let exclusiveLimitAlarmType = addressSpace.findEventType('ExclusiveLimitAlarmType')\n  let oilTankLevelCondition = namespace.instantiateExclusiveLimitAlarm(exclusiveLimitAlarmType, {\n    componentOf: tanks,\n    conditionSource: oilTankLevel,\n    browseName: 'OilTankLevelCondition',\n    displayName: [\n      new LocalizedText({ text: 'Oil Tank Level Condition', locale: 'en-US' }),\n      new LocalizedText({ text: 'Öl Tank Füllstand Bedingung', locale: 'de-DE' })\n    ],\n    description: 'ExclusiveLimitAlarmType Condition',\n    conditionName: 'OilLevelCondition',\n    optionals: [\n      'ConfirmedState', 'Confirm' // confirm state and confirm Method\n    ],\n    inputNode: oilTankLevel,   // the letiable that will be monitored for change\n    highHighLimit: 0.9,\n    highLimit: 0.8,\n    lowLimit: 0.2\n  })\n\n  // --------------------------------------------------------------\n  // Let's create a second letiable with no Exclusive alarm\n  // --------------------------------------------------------------\n  let gasTankLevel = namespace.addVariable({\n    browseName: 'GasTankLevel',\n    displayName: [\n      new LocalizedText({ text: 'Gas Tank Level', locale: 'en-US' }),\n      new LocalizedText({ text: 'Gas Tank Füllstand', locale: 'de-DE' })\n    ],\n    description: 'Fill level in percentage (0% to 100%) of the gas tank',\n    propertyOf: tanks,\n    dataType: 'Double',\n    eventSourceOf: tanks\n  })\n\n  let nonExclusiveLimitAlarmType = addressSpace.findEventType('NonExclusiveLimitAlarmType')\n  let gasTankLevelCondition = namespace.instantiateNonExclusiveLimitAlarm(nonExclusiveLimitAlarmType, {\n    componentOf: tanks,\n    conditionSource: gasTankLevel,\n    browseName: 'GasTankLevelCondition',\n    displayName: [\n      new LocalizedText({ text: 'Gas Tank Level Condition', locale: 'en-US' }),\n      new LocalizedText({ text: 'Gas Tank Füllstand Bedingung', locale: 'de-DE' })\n    ],\n    description: 'NonExclusiveLimitAlarmType Condition',\n    conditionName: 'GasLevelCondition',\n    optionals: [\n      'ConfirmedState', 'Confirm' // confirm state and confirm Method\n    ],\n    inputNode: gasTankLevel,   // the letiable that will be monitored for change\n    highHighLimit: 0.9,\n    highLimit: 0.8,\n    lowLimit: 0.2\n  })\n\n  // variable with value\n  if (scriptObjects.testReadWrite === undefined || scriptObjects.testReadWrite === null) {\n    scriptObjects.testReadWrite = 1000.0\n  }\n\n  let myVariables = namespace.addObject({\n    browseName: 'MyVariables',\n    description: 'The Object representing some variables',\n    organizedBy: addressSpace.rootFolder.objects,\n    notifierOf: addressSpace.rootFolder.objects.server\n  })\n\n  if (coreServer.core) {\n    namespace.addVariable({\n      componentOf: myVariables,\n      nodeId: 'ns=1;s=TestReadWrite',\n      browseName: 'TestReadWrite',\n      displayName: [\n        new LocalizedText({ text: 'Test Read and Write', locale: 'en-US' }),\n        new LocalizedText({ text: 'Test Lesen Schreiben', locale: 'de-DE' })\n      ],\n      dataType: 'Double',\n      value: {\n        get: function () {\n          return new opcua.Variant({\n            dataType: 'Double',\n            value: scriptObjects.testReadWrite\n          })\n        },\n        set: function (variant) {\n          scriptObjects.testReadWrite = parseFloat(variant.value)\n          return opcua.StatusCodes.Good\n        }\n      }\n\n    })\n\n    let memoryVariable = namespace.addVariable({\n      componentOf: myVariables,\n      nodeId: 'ns=1;s=free_memory',\n      browseName: 'FreeMemory',\n      displayName: [\n        new LocalizedText({ text: 'Free Memory', locale: 'en-US' }),\n        new LocalizedText({ text: 'ungenutzer RAM', locale: 'de-DE' })\n      ],\n      dataType: 'Double',\n\n      value: {\n        get: function () {\n          return new opcua.Variant({\n            dataType: 'Double',\n            value: coreServer.core.availableMemory()\n          })\n        }\n      }\n    })\n    addressSpace.installHistoricalDataNode(memoryVariable)\n\n  } else {\n    coreServer.internalDebugLog('coreServer.core needed for opcua')\n  }\n\n  // hold event objects in memory \n  eventObjects.oilTankLevel = oilTankLevel\n  eventObjects.oilTankLevelCondition = oilTankLevelCondition\n\n  eventObjects.gasTankLevel = gasTankLevel\n  eventObjects.gasTankLevelCondition = gasTankLevelCondition\n\n  done()\n}",
    "x": 260,
    "y": 520,
    "wires": [
      []
    ]
  },
  {
    "id": "2ec8dabd.dd9246",
    "type": "comment",
    "z": "45689007.c2c51",
    "name": "Server 88 is Default Demo Server",
    "info": "",
    "x": 310,
    "y": 480,
    "wires": []
  },
  {
    "id": "7aabc096.22f898",
    "type": "OPCUA-IIoT-Browser",
    "z": "45689007.c2c51",
    "nodeId": "ns=1;i=1234",
    "name": "",
    "justValue": true,
    "sendNodesToRead": true,
    "sendNodesToBrowser": true,
    "sendNodesToListener": true,
    "multipleOutputs": false,
    "showStatusActivities": false,
    "showErrors": true,
    "recursiveBrowse": false,
    "recursiveDepth": "",
    "delayPerMessage": "",
    "connector": "c441ba33.56b788",
    "x": 900,
    "y": 520,
    "wires": [
      [
        "3d8e0d88.f3829a",
        "7c4d582a.9602",
        "53d8b17b.0c7688",
        "92b651a5.62441"
      ]
    ]
  },
  {
    "id": "ecc74a99.a94b38",
    "type": "OPCUA-IIoT-Inject",
    "z": "45689007.c2c51",
    "injectType": "inject",
    "payload": "",
    "payloadType": "date",
    "topic": "",
    "repeat": "",
    "crontab": "",
    "once": true,
    "startDelay": "",
    "name": "Root",
    "addressSpaceItems": [],
    "x": 750,
    "y": 520,
    "wires": [
      [
        "7aabc096.22f898"
      ]
    ]
  },
  {
    "id": "3d8e0d88.f3829a",
    "type": "debug",
    "z": "45689007.c2c51",
    "name": "",
    "active": false,
    "tosidebar": true,
    "console": false,
    "tostatus": false,
    "complete": "payload",
    "targetType": "msg",
    "statusVal": "",
    "statusType": "auto",
    "x": 1110,
    "y": 520,
    "wires": []
  },
  {
    "id": "7c4d582a.9602",
    "type": "OPCUA-IIoT-Response",
    "z": "45689007.c2c51",
    "name": "",
    "compressStructure": true,
    "showStatusActivities": false,
    "showErrors": false,
    "activateUnsetFilter": false,
    "activateFilters": false,
    "negateFilter": false,
    "filters": [],
    "x": 1110,
    "y": 580,
    "wires": [
      [
        "75d66df8.232fbc",
        "ccc15fa3.258c68"
      ]
    ]
  },
  {
    "id": "75d66df8.232fbc",
    "type": "debug",
    "z": "45689007.c2c51",
    "name": "",
    "active": false,
    "tosidebar": true,
    "console": false,
    "tostatus": false,
    "complete": "payload",
    "targetType": "msg",
    "statusVal": "",
    "statusType": "auto",
    "x": 1310,
    "y": 580,
    "wires": []
  },
  {
    "id": "ccc15fa3.258c68",
    "type": "debug",
    "z": "45689007.c2c51",
    "name": "",
    "active": false,
    "tosidebar": true,
    "console": false,
    "tostatus": false,
    "complete": "true",
    "targetType": "full",
    "statusVal": "",
    "statusType": "auto",
    "x": 1290,
    "y": 540,
    "wires": []
  },
  {
    "id": "53d8b17b.0c7688",
    "type": "debug",
    "z": "45689007.c2c51",
    "name": "",
    "active": false,
    "tosidebar": true,
    "console": false,
    "tostatus": false,
    "complete": "true",
    "targetType": "full",
    "statusVal": "",
    "statusType": "auto",
    "x": 1090,
    "y": 480,
    "wires": []
  },
  {
    "id": "bbc9cee9.e4ba1",
    "type": "inject",
    "z": "45689007.c2c51",
    "name": "Server 78",
    "props": [
      {
        "p": "payload"
      },
      {
        "p": "topic",
        "vt": "str"
      }
    ],
    "repeat": "",
    "crontab": "",
    "once": false,
    "onceDelay": 0.1,
    "topic": "",
    "payload": "{\"discoveryUrl\":null,\"endpoint\":\"opc.tcp://localhost:55378/\",\"keepSessionAlive\":true,\"securityPolicy\":\"None\",\"securityMode\":\"None\",\"name\":\"LOCAL FLEXIBLE INJECTED SERVER\",\"showErrors\":true,\"publicCertificateFile\":null,\"privateKeyFile\":null,\"defaultSecureTokenLifetime\":0,\"endpointMustExist\":false,\"autoSelectRightEndpoint\":false,\"strategyMaxRetry\":0,\"strategyInitialDelay\":0,\"strategyMaxDelay\":0,\"strategyRandomisationFactor\":0,\"requestedSessionTimeout\":0,\"connectionStartDelay\":0,\"reconnectDelay\":0}",
    "payloadType": "json",
    "x": 760,
    "y": 280,
    "wires": [
      [
        "83836f37.817158"
      ]
    ]
  },
  {
    "id": "23cbf8b0.8d702",
    "type": "OPCUA-IIoT-Browser",
    "z": "45689007.c2c51",
    "nodeId": "ns=1;i=1234",
    "name": "",
    "justValue": false,
    "sendNodesToRead": false,
    "sendNodesToBrowser": false,
    "sendNodesToListener": false,
    "multipleOutputs": false,
    "showStatusActivities": false,
    "showErrors": true,
    "recursiveBrowse": false,
    "recursiveDepth": "",
    "delayPerMessage": "",
    "connector": "c441ba33.56b788",
    "x": 900,
    "y": 580,
    "wires": [
      [
        "53d8b17b.0c7688",
        "3d8e0d88.f3829a",
        "7c4d582a.9602",
        "92b651a5.62441"
      ]
    ]
  },
  {
    "id": "ddc2a09c.6929e8",
    "type": "OPCUA-IIoT-Inject",
    "z": "45689007.c2c51",
    "injectType": "inject",
    "payload": "",
    "payloadType": "date",
    "topic": "",
    "repeat": "",
    "crontab": "",
    "once": true,
    "startDelay": "",
    "name": "Root",
    "addressSpaceItems": [],
    "x": 750,
    "y": 580,
    "wires": [
      [
        "23cbf8b0.8d702"
      ]
    ]
  },
  {
    "id": "1f51b891.b195d7",
    "type": "JWT-OUT",
    "z": "45689007.c2c51",
    "name": "",
    "algoType": "HASH",
    "signature": "",
    "algoHash": "HS256",
    "privateKeyFile": "",
    "algoFile": "RS256",
    "tokenPayload": "",
    "selectedProperty": "",
    "entireMessage": false,
    "showErrors": true,
    "useOptions": false,
    "issuer": "",
    "subject": "",
    "audience": "",
    "jwtId": "",
    "tokenExpires": false,
    "expiresIn": 60,
    "expiresInUnit": "s",
    "tokenNotBefore": false,
    "notBefore": 1,
    "notBeforeUnit": "s",
    "x": 380,
    "y": 380,
    "wires": [
      [
        "972dc8a8.6837c",
        "40186644.91411"
      ]
    ]
  },
  {
    "id": "35357b9f.7e6264",
    "type": "JWT-IN",
    "z": "45689007.c2c51",
    "name": "Correct JWT In",
    "algoType": "HASH",
    "signature": "",
    "publicKeyFile": "",
    "tokenPayload": "",
    "selectedProperty": "",
    "entireMessage": false,
    "showErrors": true,
    "useOptions": false,
    "issuer": "",
    "subject": "",
    "audience": "",
    "jwtId": "",
    "ignoreExpiration": false,
    "ignoreNotBefore": false,
    "clockTolerance": 1,
    "clockToleranceUnit": "s",
    "useMaxAge": false,
    "maxAge": 120,
    "maxAgeUnit": "s",
    "x": 760,
    "y": 380,
    "wires": [
      [
        "83836f37.817158",
        "d55ad35e.bfa44"
      ]
    ]
  },
  {
    "id": "dd30bd0f.d5e8b",
    "type": "inject",
    "z": "45689007.c2c51",
    "name": "Server 86",
    "props": [
      {
        "p": "payload"
      },
      {
        "p": "topic",
        "vt": "str"
      }
    ],
    "repeat": "",
    "crontab": "",
    "once": false,
    "onceDelay": 0.1,
    "topic": "",
    "payload": "{\"discoveryUrl\":null,\"endpoint\":\"opc.tcp://localhost:55386/\",\"keepSessionAlive\":true,\"securityPolicy\":\"None\",\"securityMode\":\"None\",\"name\":\"LOCAL FLEXIBLE INJECTED SERVER\",\"showErrors\":true,\"publicCertificateFile\":null,\"privateKeyFile\":null,\"defaultSecureTokenLifetime\":0,\"endpointMustExist\":false,\"autoSelectRightEndpoint\":false,\"strategyMaxRetry\":0,\"strategyInitialDelay\":0,\"strategyMaxDelay\":0,\"strategyRandomisationFactor\":0,\"requestedSessionTimeout\":0,\"connectionStartDelay\":0,\"reconnectDelay\":0}",
    "payloadType": "json",
    "x": 200,
    "y": 380,
    "wires": [
      [
        "1f51b891.b195d7"
      ]
    ]
  },
  {
    "id": "972dc8a8.6837c",
    "type": "debug",
    "z": "45689007.c2c51",
    "name": "",
    "active": true,
    "tosidebar": true,
    "console": false,
    "tostatus": false,
    "complete": "true",
    "targetType": "full",
    "statusVal": "",
    "statusType": "auto",
    "x": 530,
    "y": 340,
    "wires": []
  },
  {
    "id": "40186644.91411",
    "type": "delay",
    "z": "45689007.c2c51",
    "name": "Network Delay",
    "pauseType": "delay",
    "timeout": "5",
    "timeoutUnits": "seconds",
    "rate": "1",
    "nbRateUnits": "1",
    "rateUnits": "second",
    "randomFirst": "1",
    "randomLast": "5",
    "randomUnits": "seconds",
    "drop": false,
    "allowrate": false,
    "outputs": 1,
    "x": 560,
    "y": 380,
    "wires": [
      [
        "35357b9f.7e6264"
      ]
    ]
  },
  {
    "id": "d55ad35e.bfa44",
    "type": "debug",
    "z": "45689007.c2c51",
    "name": "",
    "active": true,
    "tosidebar": true,
    "console": false,
    "tostatus": false,
    "complete": "true",
    "targetType": "full",
    "statusVal": "",
    "statusType": "auto",
    "x": 970,
    "y": 380,
    "wires": []
  },
  {
    "id": "b4997eda.d58de8",
    "type": "JWT-IN",
    "z": "45689007.c2c51",
    "name": "Wrong JWT In",
    "algoType": "HASH",
    "signature": "heh",
    "publicKeyFile": "",
    "tokenPayload": "",
    "selectedProperty": "",
    "entireMessage": false,
    "showErrors": true,
    "useOptions": false,
    "issuer": "",
    "subject": "",
    "audience": "",
    "jwtId": "",
    "ignoreExpiration": false,
    "ignoreNotBefore": false,
    "clockTolerance": 1,
    "clockToleranceUnit": "s",
    "useMaxAge": false,
    "maxAge": 120,
    "maxAgeUnit": "s",
    "x": 760,
    "y": 80,
    "wires": [
      [
        "9a47a373.8aa918",
        "83836f37.817158"
      ]
    ]
  },
  {
    "id": "9a47a373.8aa918",
    "type": "debug",
    "z": "45689007.c2c51",
    "name": "",
    "active": true,
    "tosidebar": true,
    "console": false,
    "tostatus": false,
    "complete": "true",
    "targetType": "full",
    "statusVal": "",
    "statusType": "auto",
    "x": 970,
    "y": 80,
    "wires": []
  },
  {
    "id": "53e12b73.1a62f4",
    "type": "JWT-OUT",
    "z": "45689007.c2c51",
    "name": "",
    "algoType": "HASH",
    "signature": "",
    "algoHash": "HS256",
    "privateKeyFile": "",
    "algoFile": "RS256",
    "tokenPayload": "",
    "selectedProperty": "",
    "entireMessage": false,
    "showErrors": true,
    "useOptions": false,
    "issuer": "",
    "subject": "",
    "audience": "",
    "jwtId": "",
    "tokenExpires": false,
    "expiresIn": 60,
    "expiresInUnit": "s",
    "tokenNotBefore": false,
    "notBefore": 1,
    "notBeforeUnit": "s",
    "x": 380,
    "y": 80,
    "wires": [
      [
        "7a4ead94.7b51c4",
        "b4997eda.d58de8"
      ]
    ]
  },
  {
    "id": "83857d33.c303b8",
    "type": "inject",
    "z": "45689007.c2c51",
    "name": "Server 86",
    "props": [
      {
        "p": "payload"
      },
      {
        "p": "topic",
        "vt": "str"
      }
    ],
    "repeat": "",
    "crontab": "",
    "once": false,
    "onceDelay": 0.1,
    "topic": "",
    "payload": "{\"discoveryUrl\":null,\"endpoint\":\"opc.tcp://localhost:55386/\",\"keepSessionAlive\":true,\"securityPolicy\":\"None\",\"securityMode\":\"None\",\"name\":\"LOCAL FLEXIBLE INJECTED SERVER\",\"showErrors\":true,\"publicCertificateFile\":null,\"privateKeyFile\":null,\"defaultSecureTokenLifetime\":0,\"endpointMustExist\":false,\"autoSelectRightEndpoint\":false,\"strategyMaxRetry\":0,\"strategyInitialDelay\":0,\"strategyMaxDelay\":0,\"strategyRandomisationFactor\":0,\"requestedSessionTimeout\":0,\"connectionStartDelay\":0,\"reconnectDelay\":0}",
    "payloadType": "json",
    "x": 200,
    "y": 80,
    "wires": [
      [
        "53e12b73.1a62f4"
      ]
    ]
  },
  {
    "id": "7a4ead94.7b51c4",
    "type": "debug",
    "z": "45689007.c2c51",
    "name": "",
    "active": true,
    "tosidebar": true,
    "console": false,
    "tostatus": false,
    "complete": "true",
    "targetType": "full",
    "statusVal": "",
    "statusType": "auto",
    "x": 530,
    "y": 40,
    "wires": []
  },
  {
    "id": "92b651a5.62441",
    "type": "debug",
    "z": "45689007.c2c51",
    "name": "",
    "active": true,
    "tosidebar": true,
    "console": false,
    "tostatus": false,
    "complete": "payload.endpoint",
    "targetType": "msg",
    "statusVal": "",
    "statusType": "auto",
    "x": 1140,
    "y": 640,
    "wires": []
  },
  {
    "id": "d2200982.614e",
    "type": "inject",
    "z": "45689007.c2c51",
    "name": "Server 80",
    "props": [
      {
        "p": "payload"
      },
      {
        "p": "topic",
        "vt": "str"
      }
    ],
    "repeat": "",
    "crontab": "",
    "once": false,
    "onceDelay": 0.1,
    "topic": "",
    "payload": "{\"discoveryUrl\":null,\"endpoint\":\"opc.tcp://localhost:55380/\",\"keepSessionAlive\":true,\"securityPolicy\":\"None\",\"securityMode\":\"None\",\"name\":\"LOCAL FLEXIBLE INJECTED SERVER\",\"showErrors\":true,\"publicCertificateFile\":null,\"privateKeyFile\":null,\"defaultSecureTokenLifetime\":0,\"endpointMustExist\":false,\"autoSelectRightEndpoint\":false,\"strategyMaxRetry\":0,\"strategyInitialDelay\":0,\"strategyMaxDelay\":0,\"strategyRandomisationFactor\":0,\"requestedSessionTimeout\":0,\"connectionStartDelay\":0,\"reconnectDelay\":0}",
    "payloadType": "json",
    "x": 760,
    "y": 320,
    "wires": [
      [
        "83836f37.817158"
      ]
    ]
  },
  {
    "id": "c441ba33.56b788",
    "type": "OPCUA-IIoT-Connector",
    "z": "45689007.c2c51",
    "discoveryUrl": "",
    "endpoint": "opc.tcp://localhost:55388/",
    "endpointMustExist": false,
    "keepSessionAlive": true,
    "loginEnabled": false,
    "name": "LOCAL FLEX CONECTOR SERVER",
    "showErrors": true,
    "securityPolicy": "None",
    "securityMode": "None",
    "publicCertificateFile": "",
    "privateKeyFile": "",
    "defaultSecureTokenLifetime": "",
    "autoSelectRightEndpoint": false,
    "strategyMaxRetry": "",
    "strategyInitialDelay": "",
    "strategyMaxDelay": "",
    "strategyRandomisationFactor": "",
    "requestedSessionTimeout": "",
    "connectionStartDelay": "",
    "reconnectDelay": ""
  }
]