@opcua/for-node-red 2.0.7 → 2.1.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (28) hide show
  1. package/all.js +22450 -21876
  2. package/examples/coffe-machine.json +261 -0
  3. package/examples/events.json +0 -0
  4. package/examples/explore_coffee_machine.json +115 -0
  5. package/examples/extension-object.json +0 -0
  6. package/examples/read_extension-object.json +0 -0
  7. package/examples/read_subree_with_various_output_types.json +173 -0
  8. package/examples/read_subtree.json +132 -0
  9. package/examples/read_value_of_a_many_ua-variables_injected_node-id.json +229 -0
  10. package/examples/read_value_of_a_single_ua-variable_injected_node-id.json +153 -0
  11. package/package.json +5 -2
  12. package/source/OpcUa-Client2-Browse/OpcUa-Client2-Browse.css +2 -0
  13. package/source/OpcUa-Client2-Browse/OpcUa-Client2-Browse.html +101 -0
  14. package/source/OpcUa-Client2-Browse/OpcUa-Client2-Browse.js +2 -0
  15. package/source/OpcUa-Client2-Call/OpcUa-Client2-Call.css +1 -1
  16. package/source/OpcUa-Client2-Call/OpcUa-Client2-Call.html +3 -3
  17. package/source/OpcUa-Client2-Explore/OpcUa-Client2-Explore.css +2 -0
  18. package/source/OpcUa-Client2-Explore/OpcUa-Client2-Explore.html +45 -0
  19. package/source/OpcUa-Client2-Explore/OpcUa-Client2-Explore.js +2 -0
  20. package/source/OpcUa-Client2-Monitor/OpcUa-Client2-Monitor.css +1 -1
  21. package/source/OpcUa-Client2-Monitor/OpcUa-Client2-Monitor.html +4 -4
  22. package/source/OpcUa-Client2-MonitorEvent/OpcUa-Client2-MonitorEvent.css +1 -1
  23. package/source/OpcUa-Client2-MonitorEvent/OpcUa-Client2-MonitorEvent.html +5 -5
  24. package/source/OpcUa-Client2-Read/OpcUa-Client2-Read.css +1 -1
  25. package/source/OpcUa-Client2-Read/OpcUa-Client2-Read.html +102 -7
  26. package/source/OpcUa-Client2-Write/OpcUa-Client2-Write.css +1 -1
  27. package/source/OpcUa-Client2-Write/OpcUa-Client2-Write.html +3 -3
  28. package/source/OpcUa-Endpoint2/OpcUa-Endpoint2.html +2 -2
@@ -0,0 +1,229 @@
1
+ [
2
+ {
3
+ "id": "87c05731b7193904",
4
+ "type": "tab",
5
+ "label": "Read multiple",
6
+ "disabled": false,
7
+ "info": "Demonstrate how to use the OPCU Read node to inject an array of nodeid or browsePath",
8
+ "env": []
9
+ },
10
+ {
11
+ "id": "7d59b2935fbe2e05",
12
+ "type": "OpcUa-Client2-Read",
13
+ "z": "87c05731b7193904",
14
+ "inputs": 1,
15
+ "output": 4,
16
+ "name": "Read on CoffeeMachine",
17
+ "endpoint": "c22bb208bf9b2236",
18
+ "attributeId": "Value",
19
+ "nodeId": "",
20
+ "x": 530,
21
+ "y": 160,
22
+ "wires": [
23
+ [
24
+ "c6b4a288b9753765"
25
+ ],
26
+ []
27
+ ]
28
+ },
29
+ {
30
+ "id": "bd1a6d70a7ff7941",
31
+ "type": "inject",
32
+ "z": "87c05731b7193904",
33
+ "name": "Inject browsePaths",
34
+ "props": [
35
+ {
36
+ "p": "topic",
37
+ "v": "[\"/2:DeviceSet/1:CoffeeMachine.2:DeviceClass\",\"/2:DeviceSet/1:CoffeeMachine.2:HardwareRevision\",\"/2:DeviceSet/1:CoffeeMachine.2:Manufacturer\",\"/2:DeviceSet/1:CoffeeMachine.2:ParameterSet.9:WaterTankLevel\",\"/2:DeviceSet/1:CoffeeMachine.2:ParameterSet.9:CoffeeBeanLevel\",\"/2:DeviceSet/1:CoffeeMachine.2:ParameterSet.9:ServedCoffeeCount\"]",
38
+ "vt": "json"
39
+ }
40
+ ],
41
+ "repeat": "",
42
+ "crontab": "",
43
+ "once": false,
44
+ "onceDelay": 0.1,
45
+ "topic": "",
46
+ "x": 150,
47
+ "y": 160,
48
+ "wires": [
49
+ [
50
+ "7d59b2935fbe2e05"
51
+ ]
52
+ ]
53
+ },
54
+ {
55
+ "id": "c6b4a288b9753765",
56
+ "type": "debug",
57
+ "z": "87c05731b7193904",
58
+ "name": "debug 4",
59
+ "active": true,
60
+ "tosidebar": true,
61
+ "console": false,
62
+ "tostatus": false,
63
+ "complete": "true",
64
+ "targetType": "full",
65
+ "statusVal": "",
66
+ "statusType": "auto",
67
+ "x": 760,
68
+ "y": 160,
69
+ "wires": []
70
+ },
71
+ {
72
+ "id": "cc675ecc876cd479",
73
+ "type": "OpcUa-Client2-Call",
74
+ "z": "87c05731b7193904",
75
+ "inputs": 1,
76
+ "output": 4,
77
+ "name": "FillTank",
78
+ "endpoint": "c22bb208bf9b2236",
79
+ "action": "read",
80
+ "methodId": "[/2:DeviceSet/1:CoffeeMachine.2:MethodSet.9:FillTank](ns=1;i=1014)",
81
+ "objectId": "[/2:DeviceSet/1:CoffeeMachine](ns=1;i=1000)",
82
+ "x": 470,
83
+ "y": 40,
84
+ "wires": [
85
+ [],
86
+ []
87
+ ]
88
+ },
89
+ {
90
+ "id": "f50845a77eff03f1",
91
+ "type": "inject",
92
+ "z": "87c05731b7193904",
93
+ "name": "Press to Fill Tank",
94
+ "props": [
95
+ {
96
+ "p": "payload"
97
+ },
98
+ {
99
+ "p": "topic",
100
+ "vt": "str"
101
+ }
102
+ ],
103
+ "repeat": "",
104
+ "crontab": "",
105
+ "once": false,
106
+ "onceDelay": 0.1,
107
+ "topic": "",
108
+ "payload": "",
109
+ "payloadType": "date",
110
+ "x": 140,
111
+ "y": 40,
112
+ "wires": [
113
+ [
114
+ "cc675ecc876cd479"
115
+ ]
116
+ ]
117
+ },
118
+ {
119
+ "id": "1bab7622b47611a3",
120
+ "type": "inject",
121
+ "z": "87c05731b7193904",
122
+ "name": "Press to make a Mocha",
123
+ "props": [
124
+ {
125
+ "p": "payload"
126
+ },
127
+ {
128
+ "p": "topic",
129
+ "vt": "str"
130
+ }
131
+ ],
132
+ "repeat": "",
133
+ "crontab": "",
134
+ "once": false,
135
+ "onceDelay": 0.1,
136
+ "topic": "",
137
+ "payload": "{\"CoffeeType\":1}",
138
+ "payloadType": "json",
139
+ "x": 160,
140
+ "y": 100,
141
+ "wires": [
142
+ [
143
+ "776a9917fe3aec61"
144
+ ]
145
+ ]
146
+ },
147
+ {
148
+ "id": "776a9917fe3aec61",
149
+ "type": "OpcUa-Client2-Call",
150
+ "z": "87c05731b7193904",
151
+ "inputs": 1,
152
+ "output": 4,
153
+ "name": "Make a Coffee",
154
+ "endpoint": "c22bb208bf9b2236",
155
+ "action": "read",
156
+ "methodId": "[/2:DeviceSet/1:CoffeeMachine.2:MethodSet.9:Start](ns=1;i=1008)",
157
+ "objectId": "[/2:DeviceSet/1:CoffeeMachine](ns=1;i=1000)",
158
+ "x": 500,
159
+ "y": 100,
160
+ "wires": [
161
+ [
162
+ "c6b4a288b9753765"
163
+ ],
164
+ []
165
+ ]
166
+ },
167
+ {
168
+ "id": "c22bb208bf9b2236",
169
+ "type": "OpcUa-Endpoint2",
170
+ "name": "",
171
+ "endpoint": "opc.tcp://opcuademo.sterfive.com:26543/UA/SampleServer",
172
+ "securityMode": "None",
173
+ "securityPolicy": "None",
174
+ "userIdentityType": "Anonymous",
175
+ "userName": "",
176
+ "password": "",
177
+ "userCertificate": "",
178
+ "userPrivatekey": "",
179
+ "certificate": "n",
180
+ "localfile": "",
181
+ "localkeyfile": "",
182
+ "useTransport": false,
183
+ "maxChunkCount": "1",
184
+ "maxMessageSize": "8192",
185
+ "receiveBufferSize": "8192",
186
+ "sendBufferSize": "8192",
187
+ "subscriptions": [
188
+ {
189
+ "id": "s0",
190
+ "name": "Default Subscription",
191
+ "isDefault": true,
192
+ "parameters": {
193
+ "publishingEnabled": false,
194
+ "requestedLifetimeCount": "100",
195
+ "requestedMaxKeepAliveCount": "10",
196
+ "requestedPublishingInterval": "1000",
197
+ "maxNotificationsPerPublish": "0",
198
+ "priority": "100"
199
+ }
200
+ },
201
+ {
202
+ "id": "s1",
203
+ "name": "Slow Subscription",
204
+ "isDefault": true,
205
+ "parameters": {
206
+ "publishingEnabled": false,
207
+ "requestedLifetimeCount": "100",
208
+ "requestedMaxKeepAliveCount": "2",
209
+ "requestedPublishingInterval": "5000",
210
+ "maxNotificationsPerPublish": "100",
211
+ "priority": "10"
212
+ }
213
+ },
214
+ {
215
+ "id": "s2",
216
+ "name": "Fast Subscription",
217
+ "isDefault": true,
218
+ "parameters": {
219
+ "publishingEnabled": false,
220
+ "requestedLifetimeCount": "100",
221
+ "requestedMaxKeepAliveCount": "10",
222
+ "requestedPublishingInterval": "250",
223
+ "maxNotificationsPerPublish": "100",
224
+ "priority": "200"
225
+ }
226
+ }
227
+ ]
228
+ }
229
+ ]
@@ -0,0 +1,153 @@
1
+ [
2
+ {
3
+ "id": "4d757d8a13277820",
4
+ "type": "tab",
5
+ "label": "Read OPCUA by injecting NodeId or BrowsePath",
6
+ "disabled": false,
7
+ "info": "",
8
+ "env": []
9
+ },
10
+ {
11
+ "id": "a64c1698e11e7262",
12
+ "type": "OpcUa-Client2-Read",
13
+ "z": "4d757d8a13277820",
14
+ "inputs": 1,
15
+ "output": 4,
16
+ "name": "Read on CoffeeMachine",
17
+ "endpoint": "c22bb208bf9b2236",
18
+ "attributeId": "Value",
19
+ "nodeId": "",
20
+ "x": 590,
21
+ "y": 120,
22
+ "wires": [
23
+ [
24
+ "3271ebcc1984ffb7"
25
+ ],
26
+ []
27
+ ]
28
+ },
29
+ {
30
+ "id": "ba8852a0bdf2cfd6",
31
+ "type": "inject",
32
+ "z": "4d757d8a13277820",
33
+ "name": "Inject browsePath to WaterTankLevel ",
34
+ "props": [
35
+ {
36
+ "p": "topic",
37
+ "vt": "str"
38
+ }
39
+ ],
40
+ "repeat": "",
41
+ "crontab": "",
42
+ "once": false,
43
+ "onceDelay": 0.1,
44
+ "topic": "/2:DeviceSet/1:CoffeeMachine.2:ParameterSet.9:WaterTankLevel",
45
+ "x": 260,
46
+ "y": 120,
47
+ "wires": [
48
+ [
49
+ "a64c1698e11e7262"
50
+ ]
51
+ ]
52
+ },
53
+ {
54
+ "id": "3271ebcc1984ffb7",
55
+ "type": "debug",
56
+ "z": "4d757d8a13277820",
57
+ "name": "debug 3",
58
+ "active": true,
59
+ "tosidebar": true,
60
+ "console": false,
61
+ "tostatus": false,
62
+ "complete": "true",
63
+ "targetType": "full",
64
+ "statusVal": "",
65
+ "statusType": "auto",
66
+ "x": 820,
67
+ "y": 120,
68
+ "wires": []
69
+ },
70
+ {
71
+ "id": "24c4b5d8c954840c",
72
+ "type": "OpcUa-Client2-Call",
73
+ "z": "4d757d8a13277820",
74
+ "inputs": 1,
75
+ "output": 4,
76
+ "name": "FillTank",
77
+ "endpoint": "c22bb208bf9b2236",
78
+ "action": "read",
79
+ "methodId": "/2:DeviceSet/1:CoffeeMachine.2:MethodSet.9:FillTank",
80
+ "objectId": "/2:DeviceSet/1:CoffeeMachine",
81
+ "x": 570,
82
+ "y": 60,
83
+ "wires": [
84
+ [],
85
+ []
86
+ ]
87
+ },
88
+ {
89
+ "id": "8788e699e240caf9",
90
+ "type": "inject",
91
+ "z": "4d757d8a13277820",
92
+ "name": "",
93
+ "props": [
94
+ {
95
+ "p": "payload"
96
+ },
97
+ {
98
+ "p": "topic",
99
+ "vt": "str"
100
+ }
101
+ ],
102
+ "repeat": "",
103
+ "crontab": "",
104
+ "once": false,
105
+ "onceDelay": 0.1,
106
+ "topic": "",
107
+ "payload": "",
108
+ "payloadType": "date",
109
+ "x": 180,
110
+ "y": 60,
111
+ "wires": [
112
+ [
113
+ "24c4b5d8c954840c"
114
+ ]
115
+ ]
116
+ },
117
+ {
118
+ "id": "c22bb208bf9b2236",
119
+ "type": "OpcUa-Endpoint2",
120
+ "name": "",
121
+ "endpoint": "opc.tcp://opcuademo.sterfive.com:26543/UA/SampleServer",
122
+ "securityMode": "None",
123
+ "securityPolicy": "None",
124
+ "userIdentityType": "Anonymous",
125
+ "userName": "",
126
+ "password": "",
127
+ "userCertificate": "",
128
+ "userPrivatekey": "",
129
+ "certificate": "n",
130
+ "localfile": "",
131
+ "localkeyfile": "",
132
+ "useTransport": false,
133
+ "maxChunkCount": "1",
134
+ "maxMessageSize": "8192",
135
+ "receiveBufferSize": "8192",
136
+ "sendBufferSize": "8192",
137
+ "subscriptions": [
138
+ {
139
+ "id": "s0",
140
+ "name": "Default Subscription",
141
+ "isDefault": true,
142
+ "parameters": {
143
+ "publishingEnabled": false,
144
+ "requestedLifetimeCount": "100",
145
+ "requestedMaxKeepAliveCount": "10",
146
+ "requestedPublishingInterval": "1000",
147
+ "maxNotificationsPerPublish": "0",
148
+ "priority": "100"
149
+ }
150
+ }
151
+ ]
152
+ }
153
+ ]
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@opcua/for-node-red",
3
- "version": "2.0.7",
3
+ "version": "2.1.1",
4
4
  "description": "The Node-RED node to communicate via OPC UA, powered NodeOPCUA and developed by Sterfive's team",
5
5
  "repository": {
6
6
  "type": "git",
@@ -32,7 +32,9 @@
32
32
  "version": ">=3.0",
33
33
  "nodes": {
34
34
  "OpcUa-Endpoint2": "./source/OpcUa-Endpoint2/OpcUa-Endpoint2.js",
35
+ "OpcUa-Client2-Browse": "./source/OpcUa-Client2-Browse/OpcUa-Client2-Browse.js",
35
36
  "OpcUa-Client2-Call": "./source/OpcUa-Client2-Call/OpcUa-Client2-Call.js",
37
+ "OpcUa-Client2-Explore": "./source/OpcUa-Client2-Explore/OpcUa-Client2-Explore.js",
36
38
  "OpcUa-Client2-Monitor": "./source/OpcUa-Client2-Monitor/OpcUa-Client2-Monitor.js",
37
39
  "OpcUa-Client2-MonitorEvent": "./source/OpcUa-Client2-MonitorEvent/OpcUa-Client2-MonitorEvent.js",
38
40
  "OpcUa-Client2-Read": "./source/OpcUa-Client2-Read/OpcUa-Client2-Read.js",
@@ -47,7 +49,8 @@
47
49
  "boxen": "5"
48
50
  },
49
51
  "directories": {
50
- "example": "examples"
52
+ "examples": "examples",
53
+ "source": "source"
51
54
  },
52
55
  "homepage": "https://github.com/sterfive/opcua-for-node-red-public",
53
56
  "scripts": {
@@ -0,0 +1,2 @@
1
+ .sterfive-combo-box{position:relative;width:100%}.sterfive-combo-box .sterfive-dropdown{background-color:#fff;border:1px solid #ccc;display:none;left:0;max-height:150px;overflow-y:auto;position:absolute;top:100%;width:100%;z-index:1000}.sterfive-combo-box li:before{content:none}.sterfive-tree li.expandable:before,.sterfive-tree li.no-expandable:before{content:"\f0da";cursor:pointer;font-family:FontAwesome;font-size:8pt;font-weight:900;margin-right:5px}.sterfive-tree li.no-expandable:before{opacity:0}.sterfive-tree li.expanded:before{content:"\f0d7";cursor:pointer;font-family:FontAwesome;font-size:8pt;font-weight:900;margin-right:5px}.sterfive-tree .fa{color:#333;margin-right:10px}.sterfive-tree ul{list-style:none;padding-left:15px}.sterfive-tree li{cursor:pointer;padding:5px}.sterfive-tree{list-style-type:none}.sterfive-tree,.sterfive-tree ol,.sterfive-tree ul{list-style-type:none;margin:0;padding:0}.sterfive-tree li:hover{background-color:#eee}.sterfive-tree li.loading:before{animation:fa-spin 1s linear infinite;content:"\f110";cursor:pointer;font-family:FontAwesome;font-weight:900;margin-right:5px}@keyframes spin{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}.sterfive-tree .spinner{animation:spin .7s linear infinite;border:2px solid transparent;border-radius:50%;border-top-color:#666;display:inline-block;height:16px;width:16px}.sterfive-info{background-color:#fafad2;border-radius:10px;border-style:groove;display:block;font-size:10pt;margin:5px 0;padding:5px}.sterfive-info .ok{color:green}.sterfive-info .warning{color:darkred}.input-wrapper{border:0 solid #ccc;border-radius:5px;padding:0}.input-group{align-items:center;border:1px solid #ccc;border-radius:5px;display:flex;overflow:hidden}.input-group input{border:none;flex:1;outline:none;padding:8px}.input-group button{background-color:#f1f1f1;border:none;border-left:1px solid #ccc;cursor:pointer;padding:8px 16px}.input-group button:hover{background-color:#ddd}.info-text{color:#777;font-size:12px;margin-left:10px;margin-top:5px}.custom-checkbox{cursor:pointer;display:inline-block;font-family:FontAwesome;font-size:16px;font-weight:900;margin-right:10px;text-align:center;width:1em}.custom-checkbox.unchecked:before{content:"\f096"}.custom-checkbox.checked:before{content:"\f046"}.validate-cancel-buttons{background-color:#fff;position:sticky;right:0;top:0;z-index:1001}.cancel-button,.validate-button{cursor:pointer;font-size:16px;margin:5px}.sterfive-combo-box .sterfive-dropdown{position:relative}.floating-buttons{position:fixed;z-index:1003}.mask-flag-dropdown .option-item{border:1px solid #ccc;cursor:pointer;display:inline-block;font-family:FontAwesome;font-size:16px;font-weight:900;margin-right:10px;padding:5px 10px;text-align:center;width:1em}.mask-flag-dropdown .option-item .checkbox{border:1px solid #ccc;content:"\f096";display:inline-block;height:20px;margin-right:5px;width:20px}.mask-flag-dropdown .option-item.selected .checkbox{content:"\f046"}.custom-select{background-color:#fff;border:1px solid #ccc;box-sizing:border-box;cursor:pointer;max-height:200px;overflow-y:auto;padding:5px;width:100%}.custom-select .custom-option{align-items:center;border-bottom:1px solid #eee;display:flex;padding:5px 10px}.custom-select .custom-option:last-child{border-bottom:none}.custom-select .custom-option .custom-checkbox{align-items:center;border:1px solid #ccc;display:flex;font-size:14px;height:20px;justify-content:center;margin-right:8px;width:20px}.custom-select .custom-option.selected .custom-checkbox{border-color:#007bff}.custom-select .custom-option .custom-checkbox:before{color:#007bff;content:"\f096";font-family:FontAwesome}.custom-select .custom-option.selected .custom-checkbox:before{content:"\f046"}
2
+ /*# sourceMappingURL=OpcUa-Client2-Browse.css.map */