@5minds/node-red-contrib-processcube 1.1.4-feature-bc1698-m0kn1ci4 → 1.1.4
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.
- package/docker-compose.yml +1 -0
- package/externaltask-error.html +1 -0
- package/externaltask-event-listener.html +5 -0
- package/externaltask-event-listener.js +12 -18
- package/externaltask-input.html +2 -2
- package/message-event-trigger.html +4 -8
- package/message-event-trigger.js +1 -1
- package/nodered/flows.json +143 -170
- package/package.json +2 -1
- package/process-event-listener.html +89 -0
- package/process-start.html +6 -1
- package/process-terminate.html +45 -0
- package/process-terminate.js +27 -0
- package/processdefinition-query.html +6 -1
- package/processes/Call-Activity-Sample.bpmn +88 -0
- package/processinstance-query.html +6 -1
- package/signal-event-trigger.html +2 -5
- package/signal-event-trigger.js +1 -1
- package/usertask-event-listener.html +6 -0
- package/usertask-event-listener.js +18 -16
- package/usertask-output.html +3 -3
package/docker-compose.yml
CHANGED
package/externaltask-error.html
CHANGED
@@ -45,6 +45,11 @@ A node which listens for events triggered by externaltasks
|
|
45
45
|
|
46
46
|
## Outputs
|
47
47
|
|
48
|
+
: flowNodeInstanceId (string): The unique identifier for the flow node instance.
|
49
|
+
: externalTaskEvent (Object): An Object containing the event data returned by the engine.
|
50
|
+
: action (string): The event that occured.
|
51
|
+
: type (string): The target of the event.
|
52
|
+
|
48
53
|
### References
|
49
54
|
|
50
55
|
- [The ProcessCube Developer Network](https://processcube.io) - All documentation for the ProcessCube© platform
|
@@ -31,27 +31,21 @@ module.exports = function (RED) {
|
|
31
31
|
}
|
32
32
|
|
33
33
|
async function subscribe() {
|
34
|
-
|
35
|
-
created:
|
36
|
-
client.notification.onExternalTaskCreated(externalTaskCallback(
|
34
|
+
switch (config.eventtype) {
|
35
|
+
case 'created':
|
36
|
+
return await client.notification.onExternalTaskCreated(externalTaskCallback(), {
|
37
37
|
identity: currentIdentity,
|
38
|
-
})
|
39
|
-
locked:
|
40
|
-
client.notification.onExternalTaskLocked(externalTaskCallback(
|
38
|
+
});
|
39
|
+
case 'locked':
|
40
|
+
return await client.notification.onExternalTaskLocked(externalTaskCallback(), {
|
41
41
|
identity: currentIdentity,
|
42
|
-
})
|
43
|
-
unlocked:
|
44
|
-
client.notification.onExternalTaskUnlocked(externalTaskCallback(
|
42
|
+
});
|
43
|
+
case 'unlocked':
|
44
|
+
return await client.notification.onExternalTaskUnlocked(externalTaskCallback(), {
|
45
45
|
identity: currentIdentity,
|
46
|
-
})
|
47
|
-
|
48
|
-
|
49
|
-
const handler = eventHandlers[config.eventtype];
|
50
|
-
|
51
|
-
if (handler) {
|
52
|
-
return await handler();
|
53
|
-
} else {
|
54
|
-
console.error('No such event: ' + config.eventtype);
|
46
|
+
});
|
47
|
+
default:
|
48
|
+
console.error('no such event: ' + config.eventtype);
|
55
49
|
}
|
56
50
|
}
|
57
51
|
|
package/externaltask-input.html
CHANGED
@@ -37,9 +37,9 @@ the connected ProcessCube Engine for processing.
|
|
37
37
|
|
38
38
|
## Outputs
|
39
39
|
|
40
|
-
: payload (string) :
|
40
|
+
: payload (string) : The payload the external task was started with.
|
41
41
|
: task (object) : The external task object
|
42
|
-
: flowNodeInstanceId : The
|
42
|
+
: flowNodeInstanceId : The unique identifier of the external task, which is needed to complete the task
|
43
43
|
|
44
44
|
### Details
|
45
45
|
|
@@ -6,7 +6,6 @@
|
|
6
6
|
name: { value: '' },
|
7
7
|
engine: { value: '', type: 'processcube-engine-config' },
|
8
8
|
messagename: { value: '', required: true },
|
9
|
-
processInstanceId: { value: '' },
|
10
9
|
},
|
11
10
|
inputs: 1,
|
12
11
|
outputs: 1,
|
@@ -30,24 +29,21 @@
|
|
30
29
|
<label for="node-input-messagename"><i class="fa fa-tag"></i> Message Name</label>
|
31
30
|
<input type="text" id="node-input-messagename" placeholder="Name of the Message-Event" />
|
32
31
|
</div>
|
33
|
-
<div class="form-row">
|
34
|
-
<label for="node-input-processinstanceid"><i class="fa fa-tag"></i> Process Instance Id</label>
|
35
|
-
<input type="text" id="node-input-processinstanceid" placeholder="Id of the recipient process instance" />
|
36
|
-
</div>
|
37
32
|
</script>
|
38
33
|
|
39
34
|
<script type="text/markdown" data-help-name="externaltask-input">
|
40
|
-
A
|
35
|
+
A node to trigger an event that will be send to the corresponding intermediate message event in the connected ProcessCube Engine.
|
41
36
|
|
42
37
|
From the config the `messagename` and the `processInstanceId` must be set.
|
43
38
|
|
44
39
|
## Inputs
|
45
40
|
|
46
|
-
: payload (Object) :
|
41
|
+
: payload (Object) : The payload will be sent to the message event and be used as a new token payload.
|
42
|
+
: processInstanceId (string) : The process instance where the message event should be triggered.
|
47
43
|
|
48
44
|
### References
|
49
45
|
|
50
46
|
- [The ProcessCube Developer Network](https://processcube.io) - All documentation for the ProcessCube© platform
|
51
47
|
- [Node-RED Integration in ProcessCube©](https://processcube.io/docs/node-red) - Node-RED integration in ProcessCube©
|
52
|
-
|
48
|
+
|
53
49
|
</script>
|
package/message-event-trigger.js
CHANGED
@@ -15,7 +15,7 @@ module.exports = function (RED) {
|
|
15
15
|
|
16
16
|
engine.engineClient.events
|
17
17
|
.triggerMessageEvent(config.messagename, {
|
18
|
-
processInstanceId:
|
18
|
+
processInstanceId: msg.processinstanceid,
|
19
19
|
payload: msg.payload,
|
20
20
|
identity: engine.identity,
|
21
21
|
})
|
package/nodered/flows.json
CHANGED
@@ -202,14 +202,14 @@
|
|
202
202
|
"color": "#a4a4a4"
|
203
203
|
},
|
204
204
|
"nodes": [
|
205
|
-
"f7a9604a17188737",
|
206
205
|
"020d34cd4ab43900",
|
207
|
-
"
|
208
|
-
"
|
206
|
+
"127bc6e092c5724e",
|
207
|
+
"394bf2c574d29c0d",
|
208
|
+
"30354355d2a0eeb8"
|
209
209
|
],
|
210
210
|
"x": 34,
|
211
211
|
"y": 19,
|
212
|
-
"w":
|
212
|
+
"w": 532,
|
213
213
|
"h": 202
|
214
214
|
},
|
215
215
|
{
|
@@ -226,17 +226,16 @@
|
|
226
226
|
"color": "#a4a4a4"
|
227
227
|
},
|
228
228
|
"nodes": [
|
229
|
-
"ae0583e83c762956",
|
230
229
|
"f7c7682e3a6adaaa",
|
231
|
-
"a2fb6369b16c12fa",
|
232
230
|
"8ef39e83173d41e3",
|
233
231
|
"f524b8cc35d56849",
|
234
|
-
"9fb4017c1d0ac7c9"
|
232
|
+
"9fb4017c1d0ac7c9",
|
233
|
+
"fc23f271b106648f"
|
235
234
|
],
|
236
235
|
"x": 34,
|
237
236
|
"y": 259,
|
238
237
|
"w": 652,
|
239
|
-
"h":
|
238
|
+
"h": 202
|
240
239
|
},
|
241
240
|
{
|
242
241
|
"id": "a71a168415778e2c",
|
@@ -353,14 +352,14 @@
|
|
353
352
|
"color": "#a4a4a4"
|
354
353
|
},
|
355
354
|
"nodes": [
|
356
|
-
"
|
357
|
-
"
|
358
|
-
"
|
359
|
-
"
|
355
|
+
"c4f20aefe585bdad",
|
356
|
+
"451fc49b81cfe869",
|
357
|
+
"07e2258a732baddb",
|
358
|
+
"58202f3750a9762b"
|
360
359
|
],
|
361
360
|
"x": 54,
|
362
361
|
"y": 39,
|
363
|
-
"w":
|
362
|
+
"w": 432,
|
364
363
|
"h": 202
|
365
364
|
},
|
366
365
|
{
|
@@ -377,17 +376,16 @@
|
|
377
376
|
"color": "#a4a4a4"
|
378
377
|
},
|
379
378
|
"nodes": [
|
380
|
-
"59f3d5ea3d920f94",
|
381
379
|
"682a3e6e49c407c0",
|
382
|
-
"30ac2bbbc0d63b17",
|
383
380
|
"5c9668cbe4b31919",
|
384
381
|
"693e6d63e82ee961",
|
385
|
-
"c63cac30d2627c52"
|
382
|
+
"c63cac30d2627c52",
|
383
|
+
"771e1802a60ea5cc"
|
386
384
|
],
|
387
385
|
"x": 54,
|
388
386
|
"y": 279,
|
389
|
-
"w":
|
390
|
-
"h":
|
387
|
+
"w": 632,
|
388
|
+
"h": 202
|
391
389
|
},
|
392
390
|
{
|
393
391
|
"id": "e17f65347110575e",
|
@@ -1075,29 +1073,13 @@
|
|
1075
1073
|
"y": 540,
|
1076
1074
|
"wires": []
|
1077
1075
|
},
|
1078
|
-
{
|
1079
|
-
"id": "f7a9604a17188737",
|
1080
|
-
"type": "usertask-new-listener",
|
1081
|
-
"z": "fd3c725340de4f74",
|
1082
|
-
"g": "887f3fb69ad1d1fb",
|
1083
|
-
"name": "New User Task",
|
1084
|
-
"engine": "42e6796dddd9d4db",
|
1085
|
-
"multisend": false,
|
1086
|
-
"x": 160,
|
1087
|
-
"y": 120,
|
1088
|
-
"wires": [
|
1089
|
-
[
|
1090
|
-
"020d34cd4ab43900"
|
1091
|
-
]
|
1092
|
-
]
|
1093
|
-
},
|
1094
1076
|
{
|
1095
1077
|
"id": "020d34cd4ab43900",
|
1096
1078
|
"type": "debug",
|
1097
1079
|
"z": "fd3c725340de4f74",
|
1098
1080
|
"g": "887f3fb69ad1d1fb",
|
1099
1081
|
"name": "Show User Task",
|
1100
|
-
"active":
|
1082
|
+
"active": false,
|
1101
1083
|
"tosidebar": true,
|
1102
1084
|
"console": false,
|
1103
1085
|
"tostatus": false,
|
@@ -1105,26 +1087,10 @@
|
|
1105
1087
|
"targetType": "msg",
|
1106
1088
|
"statusVal": "",
|
1107
1089
|
"statusType": "auto",
|
1108
|
-
"x":
|
1090
|
+
"x": 440,
|
1109
1091
|
"y": 120,
|
1110
1092
|
"wires": []
|
1111
1093
|
},
|
1112
|
-
{
|
1113
|
-
"id": "1db0ae57c1b8486b",
|
1114
|
-
"type": "usertask-finished-listener",
|
1115
|
-
"z": "fd3c725340de4f74",
|
1116
|
-
"g": "887f3fb69ad1d1fb",
|
1117
|
-
"name": "Finished User Task",
|
1118
|
-
"engine": "42e6796dddd9d4db",
|
1119
|
-
"multisend": false,
|
1120
|
-
"x": 150,
|
1121
|
-
"y": 180,
|
1122
|
-
"wires": [
|
1123
|
-
[
|
1124
|
-
"020d34cd4ab43900"
|
1125
|
-
]
|
1126
|
-
]
|
1127
|
-
},
|
1128
1094
|
{
|
1129
1095
|
"id": "127bc6e092c5724e",
|
1130
1096
|
"type": "comment",
|
@@ -1136,22 +1102,6 @@
|
|
1136
1102
|
"y": 60,
|
1137
1103
|
"wires": []
|
1138
1104
|
},
|
1139
|
-
{
|
1140
|
-
"id": "ae0583e83c762956",
|
1141
|
-
"type": "usertask-new-listener",
|
1142
|
-
"z": "fd3c725340de4f74",
|
1143
|
-
"g": "72d3db13edc2486b",
|
1144
|
-
"name": "",
|
1145
|
-
"engine": "42e6796dddd9d4db",
|
1146
|
-
"multisend": true,
|
1147
|
-
"x": 160,
|
1148
|
-
"y": 360,
|
1149
|
-
"wires": [
|
1150
|
-
[
|
1151
|
-
"a2fb6369b16c12fa"
|
1152
|
-
]
|
1153
|
-
]
|
1154
|
-
},
|
1155
1105
|
{
|
1156
1106
|
"id": "f7c7682e3a6adaaa",
|
1157
1107
|
"type": "usertask-input",
|
@@ -1163,7 +1113,7 @@
|
|
1163
1113
|
"query_type": "msg",
|
1164
1114
|
"force_send_array": false,
|
1165
1115
|
"multisend": false,
|
1166
|
-
"x":
|
1116
|
+
"x": 180,
|
1167
1117
|
"y": 420,
|
1168
1118
|
"wires": [
|
1169
1119
|
[
|
@@ -1171,27 +1121,6 @@
|
|
1171
1121
|
]
|
1172
1122
|
]
|
1173
1123
|
},
|
1174
|
-
{
|
1175
|
-
"id": "a2fb6369b16c12fa",
|
1176
|
-
"type": "function",
|
1177
|
-
"z": "fd3c725340de4f74",
|
1178
|
-
"g": "72d3db13edc2486b",
|
1179
|
-
"name": "query",
|
1180
|
-
"func": "msg.payload = {\n flowNodeInstanceId: msg.payload.flowNodeInstanceId,\n flowNodeId: \"user_task\"\n};\n\nreturn msg;",
|
1181
|
-
"outputs": 1,
|
1182
|
-
"timeout": 0,
|
1183
|
-
"noerr": 0,
|
1184
|
-
"initialize": "",
|
1185
|
-
"finalize": "",
|
1186
|
-
"libs": [],
|
1187
|
-
"x": 210,
|
1188
|
-
"y": 420,
|
1189
|
-
"wires": [
|
1190
|
-
[
|
1191
|
-
"f7c7682e3a6adaaa"
|
1192
|
-
]
|
1193
|
-
]
|
1194
|
-
},
|
1195
1124
|
{
|
1196
1125
|
"id": "8ef39e83173d41e3",
|
1197
1126
|
"type": "function",
|
@@ -1206,7 +1135,7 @@
|
|
1206
1135
|
"finalize": "",
|
1207
1136
|
"libs": [],
|
1208
1137
|
"x": 390,
|
1209
|
-
"y":
|
1138
|
+
"y": 420,
|
1210
1139
|
"wires": [
|
1211
1140
|
[
|
1212
1141
|
"f524b8cc35d56849"
|
@@ -1223,7 +1152,7 @@
|
|
1223
1152
|
"result": "payload.result",
|
1224
1153
|
"result_type": "msg",
|
1225
1154
|
"x": 580,
|
1226
|
-
"y":
|
1155
|
+
"y": 420,
|
1227
1156
|
"wires": [
|
1228
1157
|
[]
|
1229
1158
|
]
|
@@ -1240,52 +1169,59 @@
|
|
1240
1169
|
"wires": []
|
1241
1170
|
},
|
1242
1171
|
{
|
1243
|
-
"id": "
|
1244
|
-
"type": "usertask-
|
1245
|
-
"z": "
|
1246
|
-
"g": "
|
1247
|
-
"name": "
|
1248
|
-
"engine": "
|
1249
|
-
"
|
1250
|
-
"
|
1251
|
-
"
|
1172
|
+
"id": "fc23f271b106648f",
|
1173
|
+
"type": "usertask-event-listener",
|
1174
|
+
"z": "fd3c725340de4f74",
|
1175
|
+
"g": "72d3db13edc2486b",
|
1176
|
+
"name": "",
|
1177
|
+
"engine": "42e6796dddd9d4db",
|
1178
|
+
"usertask": "user_task",
|
1179
|
+
"eventtype": "new",
|
1180
|
+
"query": "{}",
|
1181
|
+
"query_type": "json",
|
1182
|
+
"x": 160,
|
1183
|
+
"y": 360,
|
1252
1184
|
"wires": [
|
1253
1185
|
[
|
1254
|
-
"
|
1186
|
+
"f7c7682e3a6adaaa"
|
1255
1187
|
]
|
1256
1188
|
]
|
1257
1189
|
},
|
1258
1190
|
{
|
1259
|
-
"id": "
|
1260
|
-
"type": "
|
1261
|
-
"z": "
|
1262
|
-
"g": "
|
1263
|
-
"name": "
|
1264
|
-
"
|
1265
|
-
"
|
1266
|
-
"
|
1267
|
-
"
|
1268
|
-
"
|
1269
|
-
"
|
1270
|
-
"
|
1271
|
-
"
|
1272
|
-
|
1273
|
-
|
1274
|
-
|
1191
|
+
"id": "394bf2c574d29c0d",
|
1192
|
+
"type": "usertask-event-listener",
|
1193
|
+
"z": "fd3c725340de4f74",
|
1194
|
+
"g": "887f3fb69ad1d1fb",
|
1195
|
+
"name": "",
|
1196
|
+
"engine": "42e6796dddd9d4db",
|
1197
|
+
"usertask": "user_task",
|
1198
|
+
"eventtype": "new",
|
1199
|
+
"query": "{}",
|
1200
|
+
"query_type": "json",
|
1201
|
+
"x": 160,
|
1202
|
+
"y": 120,
|
1203
|
+
"wires": [
|
1204
|
+
[
|
1205
|
+
"020d34cd4ab43900"
|
1206
|
+
]
|
1207
|
+
]
|
1275
1208
|
},
|
1276
1209
|
{
|
1277
|
-
"id": "
|
1278
|
-
"type": "usertask-
|
1279
|
-
"z": "
|
1280
|
-
"g": "
|
1281
|
-
"name": "
|
1282
|
-
"engine": "
|
1283
|
-
"
|
1284
|
-
"
|
1285
|
-
"
|
1210
|
+
"id": "30354355d2a0eeb8",
|
1211
|
+
"type": "usertask-event-listener",
|
1212
|
+
"z": "fd3c725340de4f74",
|
1213
|
+
"g": "887f3fb69ad1d1fb",
|
1214
|
+
"name": "",
|
1215
|
+
"engine": "42e6796dddd9d4db",
|
1216
|
+
"usertask": "user_task",
|
1217
|
+
"eventtype": "finished",
|
1218
|
+
"query": "{}",
|
1219
|
+
"query_type": "json",
|
1220
|
+
"x": 160,
|
1221
|
+
"y": 180,
|
1286
1222
|
"wires": [
|
1287
1223
|
[
|
1288
|
-
"
|
1224
|
+
"020d34cd4ab43900"
|
1289
1225
|
]
|
1290
1226
|
]
|
1291
1227
|
},
|
@@ -1300,22 +1236,6 @@
|
|
1300
1236
|
"y": 80,
|
1301
1237
|
"wires": []
|
1302
1238
|
},
|
1303
|
-
{
|
1304
|
-
"id": "59f3d5ea3d920f94",
|
1305
|
-
"type": "usertask-new-listener",
|
1306
|
-
"z": "90fa3991405c6248",
|
1307
|
-
"g": "a135da7e3b76f6dd",
|
1308
|
-
"name": "",
|
1309
|
-
"engine": "b78932d162d8d468",
|
1310
|
-
"multisend": true,
|
1311
|
-
"x": 180,
|
1312
|
-
"y": 380,
|
1313
|
-
"wires": [
|
1314
|
-
[
|
1315
|
-
"30ac2bbbc0d63b17"
|
1316
|
-
]
|
1317
|
-
]
|
1318
|
-
},
|
1319
1239
|
{
|
1320
1240
|
"id": "682a3e6e49c407c0",
|
1321
1241
|
"type": "usertask-input",
|
@@ -1327,7 +1247,7 @@
|
|
1327
1247
|
"query_type": "msg",
|
1328
1248
|
"force_send_array": false,
|
1329
1249
|
"multisend": false,
|
1330
|
-
"x":
|
1250
|
+
"x": 200,
|
1331
1251
|
"y": 440,
|
1332
1252
|
"wires": [
|
1333
1253
|
[
|
@@ -1335,27 +1255,6 @@
|
|
1335
1255
|
]
|
1336
1256
|
]
|
1337
1257
|
},
|
1338
|
-
{
|
1339
|
-
"id": "30ac2bbbc0d63b17",
|
1340
|
-
"type": "function",
|
1341
|
-
"z": "90fa3991405c6248",
|
1342
|
-
"g": "a135da7e3b76f6dd",
|
1343
|
-
"name": "query",
|
1344
|
-
"func": "msg.payload = {\n flowNodeInstanceId: msg.payload.flowNodeInstanceId,\n flowNodeId: \"user_task_auth\"\n};\n\nreturn msg;",
|
1345
|
-
"outputs": 1,
|
1346
|
-
"timeout": 0,
|
1347
|
-
"noerr": 0,
|
1348
|
-
"initialize": "",
|
1349
|
-
"finalize": "",
|
1350
|
-
"libs": [],
|
1351
|
-
"x": 230,
|
1352
|
-
"y": 440,
|
1353
|
-
"wires": [
|
1354
|
-
[
|
1355
|
-
"682a3e6e49c407c0"
|
1356
|
-
]
|
1357
|
-
]
|
1358
|
-
},
|
1359
1258
|
{
|
1360
1259
|
"id": "5c9668cbe4b31919",
|
1361
1260
|
"type": "function",
|
@@ -1369,8 +1268,8 @@
|
|
1369
1268
|
"initialize": "",
|
1370
1269
|
"finalize": "",
|
1371
1270
|
"libs": [],
|
1372
|
-
"x":
|
1373
|
-
"y":
|
1271
|
+
"x": 390,
|
1272
|
+
"y": 440,
|
1374
1273
|
"wires": [
|
1375
1274
|
[
|
1376
1275
|
"693e6d63e82ee961"
|
@@ -1386,8 +1285,8 @@
|
|
1386
1285
|
"engine": "b78932d162d8d468",
|
1387
1286
|
"result": "payload.result",
|
1388
1287
|
"result_type": "msg",
|
1389
|
-
"x":
|
1390
|
-
"y":
|
1288
|
+
"x": 580,
|
1289
|
+
"y": 440,
|
1391
1290
|
"wires": [
|
1392
1291
|
[]
|
1393
1292
|
]
|
@@ -1403,6 +1302,80 @@
|
|
1403
1302
|
"y": 320,
|
1404
1303
|
"wires": []
|
1405
1304
|
},
|
1305
|
+
{
|
1306
|
+
"id": "771e1802a60ea5cc",
|
1307
|
+
"type": "usertask-event-listener",
|
1308
|
+
"z": "90fa3991405c6248",
|
1309
|
+
"g": "a135da7e3b76f6dd",
|
1310
|
+
"name": "",
|
1311
|
+
"engine": "b78932d162d8d468",
|
1312
|
+
"usertask": "user_task_auth",
|
1313
|
+
"eventtype": "new",
|
1314
|
+
"query": "{}",
|
1315
|
+
"query_type": "json",
|
1316
|
+
"x": 180,
|
1317
|
+
"y": 380,
|
1318
|
+
"wires": [
|
1319
|
+
[
|
1320
|
+
"682a3e6e49c407c0"
|
1321
|
+
]
|
1322
|
+
]
|
1323
|
+
},
|
1324
|
+
{
|
1325
|
+
"id": "451fc49b81cfe869",
|
1326
|
+
"type": "usertask-event-listener",
|
1327
|
+
"z": "90fa3991405c6248",
|
1328
|
+
"g": "4f03c1eb4784b442",
|
1329
|
+
"name": "",
|
1330
|
+
"engine": "b78932d162d8d468",
|
1331
|
+
"usertask": "user_task_auth",
|
1332
|
+
"eventtype": "new",
|
1333
|
+
"query": "{}",
|
1334
|
+
"query_type": "json",
|
1335
|
+
"x": 180,
|
1336
|
+
"y": 140,
|
1337
|
+
"wires": [
|
1338
|
+
[
|
1339
|
+
"58202f3750a9762b"
|
1340
|
+
]
|
1341
|
+
]
|
1342
|
+
},
|
1343
|
+
{
|
1344
|
+
"id": "07e2258a732baddb",
|
1345
|
+
"type": "usertask-event-listener",
|
1346
|
+
"z": "90fa3991405c6248",
|
1347
|
+
"g": "4f03c1eb4784b442",
|
1348
|
+
"name": "",
|
1349
|
+
"engine": "b78932d162d8d468",
|
1350
|
+
"usertask": "user_task_auth",
|
1351
|
+
"eventtype": "finished",
|
1352
|
+
"query": "{}",
|
1353
|
+
"query_type": "json",
|
1354
|
+
"x": 180,
|
1355
|
+
"y": 200,
|
1356
|
+
"wires": [
|
1357
|
+
[
|
1358
|
+
"58202f3750a9762b"
|
1359
|
+
]
|
1360
|
+
]
|
1361
|
+
},
|
1362
|
+
{
|
1363
|
+
"id": "58202f3750a9762b",
|
1364
|
+
"type": "debug",
|
1365
|
+
"z": "90fa3991405c6248",
|
1366
|
+
"g": "4f03c1eb4784b442",
|
1367
|
+
"name": "debug 31",
|
1368
|
+
"active": false,
|
1369
|
+
"tosidebar": true,
|
1370
|
+
"console": false,
|
1371
|
+
"tostatus": false,
|
1372
|
+
"complete": "false",
|
1373
|
+
"statusVal": "",
|
1374
|
+
"statusType": "auto",
|
1375
|
+
"x": 380,
|
1376
|
+
"y": 140,
|
1377
|
+
"wires": []
|
1378
|
+
},
|
1406
1379
|
{
|
1407
1380
|
"id": "baa5d814f2e1f1d8",
|
1408
1381
|
"type": "processinstance-query",
|
package/package.json
CHANGED
@@ -1,6 +1,6 @@
|
|
1
1
|
{
|
2
2
|
"name": "@5minds/node-red-contrib-processcube",
|
3
|
-
"version": "1.1.4
|
3
|
+
"version": "1.1.4",
|
4
4
|
"license": "MIT",
|
5
5
|
"description": "Node-RED nodes for ProcessCube",
|
6
6
|
"scripts": {
|
@@ -41,6 +41,7 @@
|
|
41
41
|
"externaltaskError": "externaltask-error.js",
|
42
42
|
"externaltaskEventListener": "externaltask-event-listener.js",
|
43
43
|
"processStart": "process-start.js",
|
44
|
+
"processTerminate": "process-terminate.js",
|
44
45
|
"processEventListener": "process-event-listener.js",
|
45
46
|
"processcubeEngineConfig": "processcube-engine-config.js",
|
46
47
|
"ProcessinstanceQuery": "processinstance-query.js",
|
@@ -75,6 +75,95 @@ A node which listens for events triggered by processes
|
|
75
75
|
|
76
76
|
## Outputs
|
77
77
|
|
78
|
+
### starting
|
79
|
+
|
80
|
+
: processInstanceId (string): The unique identifier for the process instance.
|
81
|
+
: processModelId (string): The id of the process model.
|
82
|
+
: processInstance (Object): An Object representing the process instance data.
|
83
|
+
: action (string): The event that occured.
|
84
|
+
: type (string): The target of the event.
|
85
|
+
|
86
|
+
### started
|
87
|
+
|
88
|
+
: processInstanceId (string): The unique identifier for the process instance.
|
89
|
+
: processModelId (string): The id of the process model.
|
90
|
+
: flowNodeId (string): The id of the flowNode the process was started with.
|
91
|
+
: token (Object): The start token of the process instance.
|
92
|
+
: processInstance (Object): An Object representing the process instance data.
|
93
|
+
: action (string): The event that occured.
|
94
|
+
: type (string): The target of the event.
|
95
|
+
|
96
|
+
### resumed
|
97
|
+
|
98
|
+
: processInstanceId (string): The unique identifier for the process instance.
|
99
|
+
: processModelId (string): The id of the process model.
|
100
|
+
: token (Object): The current token of the process instance.
|
101
|
+
: processInstance (Object): An Object representing the process instance data.
|
102
|
+
: action (string): The event that occured.
|
103
|
+
: type (string): The target of the event.
|
104
|
+
|
105
|
+
### finished
|
106
|
+
|
107
|
+
: processInstanceId (string): The unique identifier for the process instance.
|
108
|
+
: processModelId (string): The id of the process model.
|
109
|
+
: flowNodeId (string): The id of the flowNode the process was finished with.
|
110
|
+
: token (Object): The end token of the process instance.
|
111
|
+
: processInstance (Object): An Object representing the process instance data.
|
112
|
+
: action (string): The event that occured.
|
113
|
+
: type (string): The target of the event.
|
114
|
+
|
115
|
+
### terminated
|
116
|
+
|
117
|
+
: processInstanceId (string): The unique identifier for the process instance.
|
118
|
+
: processModelId (string): The id of the process model.
|
119
|
+
: token (Object): The current token of the process instance.
|
120
|
+
: processInstance (Object): An Object representing the process instance data.
|
121
|
+
: action (string): The event that occured.
|
122
|
+
: type (string): The target of the event.
|
123
|
+
|
124
|
+
### error
|
125
|
+
|
126
|
+
: processInstanceId (string): The unique identifier for the process instance.
|
127
|
+
: processModelId (string): The id of the process model.
|
128
|
+
: token (Object): The current token of the process instance.
|
129
|
+
: processInstance (Object): An Object representing the process instance data.
|
130
|
+
: action (string): The event that occured.
|
131
|
+
: type (string): The target of the event.
|
132
|
+
|
133
|
+
### owner-changed
|
134
|
+
|
135
|
+
: processInstanceId (string): The unique identifier for the process instance.
|
136
|
+
: processModelId (string): The id of the process model.
|
137
|
+
: processInstance (Object): An Object representing the process instance data.
|
138
|
+
: action (string): The event that occured.
|
139
|
+
: type (string): The target of the event.
|
140
|
+
|
141
|
+
### instances-deleted
|
142
|
+
|
143
|
+
: processInstanceId (string): The unique identifier for the process instance.
|
144
|
+
: processModelId (string): The id of the process model.
|
145
|
+
: processInstance (Object): An Object representing the process instance data.
|
146
|
+
: action (string): The event that occured.
|
147
|
+
: type (string): The target of the event.
|
148
|
+
|
149
|
+
### is-executable-changed
|
150
|
+
|
151
|
+
: processModelId (string): The id of the process model.
|
152
|
+
: action (string): The event that occured.
|
153
|
+
: type (string): The target of the event.
|
154
|
+
|
155
|
+
### deployed
|
156
|
+
|
157
|
+
: processModelId (string): The id of the process model.
|
158
|
+
: action (string): The event that occured.
|
159
|
+
: type (string): The target of the event.
|
160
|
+
|
161
|
+
### undeployed
|
162
|
+
|
163
|
+
: processModelId (string): The id of the process model.
|
164
|
+
: action (string): The event that occured.
|
165
|
+
: type (string): The target of the event.
|
166
|
+
|
78
167
|
### References
|
79
168
|
|
80
169
|
- [The ProcessCube Developer Network](https://processcube.io) - All documentation for the ProcessCube© platform
|
package/process-start.html
CHANGED
@@ -43,10 +43,15 @@ The `processModelId` and `startEventId` can be set in the message object to over
|
|
43
43
|
|
44
44
|
## Inputs
|
45
45
|
|
46
|
-
: payload (Object) : Will be used as the
|
46
|
+
: payload (Object) : Will be used as the start token for the process.
|
47
47
|
: processModelId (String) : Will be used as the process model and override the configured `Processmodel`.
|
48
48
|
: startEventId (String) : Will be used as the start event and override the configured `Startevent`.
|
49
49
|
|
50
|
+
## Outputs
|
51
|
+
|
52
|
+
: processInstanceId (string) : The unique identifier of the started process instance.
|
53
|
+
: correlationId (string) : The unique correlation identifier of the started process instance.
|
54
|
+
|
50
55
|
### References
|
51
56
|
|
52
57
|
- [The ProcessCube Developer Network](https://processcube.io) - All documentation for the ProcessCube© platform
|
@@ -0,0 +1,45 @@
|
|
1
|
+
<script type="text/javascript">
|
2
|
+
RED.nodes.registerType('process-terminate', {
|
3
|
+
category: 'ProcessCube',
|
4
|
+
color: '#02AFD6',
|
5
|
+
defaults: {
|
6
|
+
name: { value: '' },
|
7
|
+
engine: { value: '', type: 'processcube-engine-config' },
|
8
|
+
},
|
9
|
+
inputs: 1,
|
10
|
+
outputs: 1,
|
11
|
+
icon: 'font-awesome/fa-sign-in',
|
12
|
+
label: function () {
|
13
|
+
return this.name || 'process-terminate';
|
14
|
+
},
|
15
|
+
});
|
16
|
+
</script>
|
17
|
+
|
18
|
+
<script type="text/html" data-template-name="process-terminate">
|
19
|
+
<div class="form-row">
|
20
|
+
<label for="node-input-name"><i class="fa fa-tag"></i> Name</label>
|
21
|
+
<input type="text" id="node-input-name" placeholder="Name" />
|
22
|
+
</div>
|
23
|
+
<div class="form-row">
|
24
|
+
<label for="node-input-engine"><i class="fa fa-tag"></i> Engine-URL</label>
|
25
|
+
<input type="text" id="node-input-engine" placeholder="Engine-URL" />
|
26
|
+
</div>
|
27
|
+
</script>
|
28
|
+
|
29
|
+
<script type="text/markdown" data-help-name="process-terminate">
|
30
|
+
Terminate an instance of a process model in the ProcessCube.
|
31
|
+
|
32
|
+
## Inputs
|
33
|
+
|
34
|
+
: payload (string): The id of the processinstance that is going to be terminated.
|
35
|
+
|
36
|
+
## Outputs
|
37
|
+
|
38
|
+
: payload (string): The id of the processinstance that was terminated.
|
39
|
+
|
40
|
+
### References
|
41
|
+
|
42
|
+
- [The ProcessCube Developer Network](https://processcube.io) - All documentation for the ProcessCube© platform
|
43
|
+
- [Node-RED Integration in ProcessCube©](https://processcube.io/docs/node-red) - Node-RED integration in ProcessCube©
|
44
|
+
|
45
|
+
</script>
|
@@ -0,0 +1,27 @@
|
|
1
|
+
module.exports = function (RED) {
|
2
|
+
function ProcessTerminate(config) {
|
3
|
+
RED.nodes.createNode(this, config);
|
4
|
+
var node = this;
|
5
|
+
|
6
|
+
node.on('input', function (msg) {
|
7
|
+
const engine = RED.nodes.getNode(config.engine);
|
8
|
+
const client = engine.engineClient;
|
9
|
+
|
10
|
+
if (!client) {
|
11
|
+
node.error('No engine configured.');
|
12
|
+
return;
|
13
|
+
}
|
14
|
+
|
15
|
+
client.processInstances
|
16
|
+
.terminateProcessInstance(msg.payload, engine.identity)
|
17
|
+
.then(() => {
|
18
|
+
node.send(msg);
|
19
|
+
})
|
20
|
+
.catch((error) => {
|
21
|
+
node.error(error);
|
22
|
+
});
|
23
|
+
});
|
24
|
+
}
|
25
|
+
|
26
|
+
RED.nodes.registerType('process-terminate', ProcessTerminate);
|
27
|
+
};
|
@@ -61,7 +61,7 @@
|
|
61
61
|
</script>
|
62
62
|
|
63
63
|
<script type="text/markdown" data-help-name="processdefinition-query">
|
64
|
-
|
64
|
+
A node to query process definition on the ProcessCube Engine.
|
65
65
|
|
66
66
|
The `query` can be given a direkt query field from the configutation or a message property.
|
67
67
|
|
@@ -71,6 +71,11 @@ Only models can be queried by setting the `models_only` flag.
|
|
71
71
|
|
72
72
|
: payload (Object | JSON) : Will be used as the input for the query or can be directly set as JSON.
|
73
73
|
|
74
|
+
## Outputs
|
75
|
+
|
76
|
+
: processDefinitions / models (Array) : The processDefinitions / models that matched the query.
|
77
|
+
: totalCount (number) : The number of matches.
|
78
|
+
|
74
79
|
### References
|
75
80
|
|
76
81
|
- [The ProcessCube Developer Network](https://processcube.io) - All documentation for the ProcessCube© platform
|
@@ -0,0 +1,88 @@
|
|
1
|
+
<?xml version="1.0" encoding="UTF-8"?>
|
2
|
+
<bpmn:definitions xmlns:bpmn="http://www.omg.org/spec/BPMN/20100524/MODEL" xmlns:bpmndi="http://www.omg.org/spec/BPMN/20100524/DI" xmlns:dc="http://www.omg.org/spec/DD/20100524/DC" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:camunda="http://camunda.org/schema/1.0/bpmn" xmlns:di="http://www.omg.org/spec/DD/20100524/DI" id="Call-Activity-Sample_Definition" targetNamespace="http://bpmn.io/schema/bpmn" exporter="5Minds Studio" exporterVersion="1">
|
3
|
+
<bpmn:collaboration id="Collaboration_1cidyxu" name="">
|
4
|
+
<bpmn:participant id="Participant_0px403d" name="Call-Activity-Sample" processRef="Call-Activity-Sample_Process" />
|
5
|
+
</bpmn:collaboration>
|
6
|
+
<bpmn:process id="Call-Activity-Sample_Process" name="Call-Activity-Sample" isExecutable="true">
|
7
|
+
<bpmn:laneSet>
|
8
|
+
<bpmn:lane id="Lane_1xzf0d3" name="Lane">
|
9
|
+
<bpmn:flowNodeRef>StartEvent_1</bpmn:flowNodeRef>
|
10
|
+
<bpmn:flowNodeRef>Activity_1483lxt</bpmn:flowNodeRef>
|
11
|
+
<bpmn:flowNodeRef>Event_051opo1</bpmn:flowNodeRef>
|
12
|
+
<bpmn:flowNodeRef>Activity_1m883u3</bpmn:flowNodeRef>
|
13
|
+
</bpmn:lane>
|
14
|
+
</bpmn:laneSet>
|
15
|
+
<bpmn:startEvent id="StartEvent_1" name="Start">
|
16
|
+
<bpmn:outgoing>Flow_0jchwpf</bpmn:outgoing>
|
17
|
+
</bpmn:startEvent>
|
18
|
+
<bpmn:sequenceFlow id="Flow_0jchwpf" sourceRef="StartEvent_1" targetRef="Activity_1483lxt" />
|
19
|
+
<bpmn:scriptTask id="Activity_1483lxt" name="make multi">
|
20
|
+
<bpmn:incoming>Flow_0jchwpf</bpmn:incoming>
|
21
|
+
<bpmn:outgoing>Flow_1kbc11o</bpmn:outgoing>
|
22
|
+
<bpmn:script>const data = [
|
23
|
+
{
|
24
|
+
"uid": 14200
|
25
|
+
},
|
26
|
+
{
|
27
|
+
"uid": 14201
|
28
|
+
}
|
29
|
+
];
|
30
|
+
|
31
|
+
return data;</bpmn:script>
|
32
|
+
</bpmn:scriptTask>
|
33
|
+
<bpmn:sequenceFlow id="Flow_1kbc11o" sourceRef="Activity_1483lxt" targetRef="Activity_1m883u3" />
|
34
|
+
<bpmn:endEvent id="Event_051opo1">
|
35
|
+
<bpmn:incoming>Flow_0pjaqpi</bpmn:incoming>
|
36
|
+
</bpmn:endEvent>
|
37
|
+
<bpmn:sequenceFlow id="Flow_0pjaqpi" sourceRef="Activity_1m883u3" targetRef="Event_051opo1" />
|
38
|
+
<bpmn:callActivity id="Activity_1m883u3" name="call sub" calledElement="External-Task-Sample_Process">
|
39
|
+
<bpmn:extensionElements>
|
40
|
+
<camunda:properties>
|
41
|
+
<camunda:property name="startEventId" value="StartEvent_1" />
|
42
|
+
</camunda:properties>
|
43
|
+
</bpmn:extensionElements>
|
44
|
+
<bpmn:incoming>Flow_1kbc11o</bpmn:incoming>
|
45
|
+
<bpmn:outgoing>Flow_0pjaqpi</bpmn:outgoing>
|
46
|
+
<bpmn:multiInstanceLoopCharacteristics />
|
47
|
+
</bpmn:callActivity>
|
48
|
+
</bpmn:process>
|
49
|
+
<bpmndi:BPMNDiagram id="BPMNDiagram_1">
|
50
|
+
<bpmndi:BPMNPlane id="BPMNPlane_1" bpmnElement="Collaboration_1cidyxu">
|
51
|
+
<bpmndi:BPMNShape id="Participant_0px403d_di" bpmnElement="Participant_0px403d" isHorizontal="true">
|
52
|
+
<dc:Bounds x="5" y="4" width="885" height="346" />
|
53
|
+
</bpmndi:BPMNShape>
|
54
|
+
<bpmndi:BPMNShape id="Lane_1xzf0d3_di" bpmnElement="Lane_1xzf0d3" isHorizontal="true">
|
55
|
+
<dc:Bounds x="35" y="4" width="855" height="346" />
|
56
|
+
</bpmndi:BPMNShape>
|
57
|
+
<bpmndi:BPMNShape id="StartEvent_1_di" bpmnElement="StartEvent_1">
|
58
|
+
<dc:Bounds x="92" y="152" width="36" height="36" />
|
59
|
+
<bpmndi:BPMNLabel>
|
60
|
+
<dc:Bounds x="98" y="195" width="24" height="14" />
|
61
|
+
</bpmndi:BPMNLabel>
|
62
|
+
</bpmndi:BPMNShape>
|
63
|
+
<bpmndi:BPMNShape id="Activity_0uc2tzt_di" bpmnElement="Activity_1483lxt">
|
64
|
+
<dc:Bounds x="180" y="130" width="100" height="80" />
|
65
|
+
<bpmndi:BPMNLabel />
|
66
|
+
</bpmndi:BPMNShape>
|
67
|
+
<bpmndi:BPMNShape id="Event_051opo1_di" bpmnElement="Event_051opo1">
|
68
|
+
<dc:Bounds x="502" y="152" width="36" height="36" />
|
69
|
+
</bpmndi:BPMNShape>
|
70
|
+
<bpmndi:BPMNShape id="Activity_0t5p0pc_di" bpmnElement="Activity_1m883u3">
|
71
|
+
<dc:Bounds x="340" y="130" width="100" height="80" />
|
72
|
+
<bpmndi:BPMNLabel />
|
73
|
+
</bpmndi:BPMNShape>
|
74
|
+
<bpmndi:BPMNEdge id="Flow_0jchwpf_di" bpmnElement="Flow_0jchwpf">
|
75
|
+
<di:waypoint x="128" y="170" />
|
76
|
+
<di:waypoint x="180" y="170" />
|
77
|
+
</bpmndi:BPMNEdge>
|
78
|
+
<bpmndi:BPMNEdge id="Flow_1kbc11o_di" bpmnElement="Flow_1kbc11o">
|
79
|
+
<di:waypoint x="280" y="170" />
|
80
|
+
<di:waypoint x="340" y="170" />
|
81
|
+
</bpmndi:BPMNEdge>
|
82
|
+
<bpmndi:BPMNEdge id="Flow_0pjaqpi_di" bpmnElement="Flow_0pjaqpi">
|
83
|
+
<di:waypoint x="440" y="170" />
|
84
|
+
<di:waypoint x="502" y="170" />
|
85
|
+
</bpmndi:BPMNEdge>
|
86
|
+
</bpmndi:BPMNPlane>
|
87
|
+
</bpmndi:BPMNDiagram>
|
88
|
+
</bpmn:definitions>
|
@@ -46,12 +46,17 @@
|
|
46
46
|
</script>
|
47
47
|
|
48
48
|
<script type="text/markdown" data-help-name="processinstance-query">
|
49
|
-
|
49
|
+
A node to query process instances on the ProcessCube Engine.
|
50
50
|
|
51
51
|
## Inputs
|
52
52
|
|
53
53
|
: payload (Object | JSON) : Will be used as the input for the query or can be directly set as JSON.
|
54
54
|
|
55
|
+
## Outputs
|
56
|
+
|
57
|
+
: processInstances (Array) : The process instances that matched the query.
|
58
|
+
: totalCount (number) : The number of matches.
|
59
|
+
|
55
60
|
### References
|
56
61
|
|
57
62
|
- [The ProcessCube Developer Network](https://processcube.io) - All documentation for the ProcessCube© platform
|
@@ -6,7 +6,6 @@
|
|
6
6
|
name: { value: '' },
|
7
7
|
engine: { value: '', type: 'processcube-engine-config' },
|
8
8
|
signalname: { value: '', required: true },
|
9
|
-
processInstanceId: { value: '' },
|
10
9
|
},
|
11
10
|
inputs: 1,
|
12
11
|
outputs: 1,
|
@@ -30,10 +29,7 @@
|
|
30
29
|
<label for="node-input-signalname"><i class="fa fa-tag"></i> Signal Name</label>
|
31
30
|
<input type="text" id="node-input-signalname" placeholder="Name of the Signal" />
|
32
31
|
</div>
|
33
|
-
|
34
|
-
<label for="node-input-processinstanceid"><i class="fa fa-tag"></i> Process Instance Id</label>
|
35
|
-
<input type="text" id="node-input-processinstanceid" placeholder="Id of the recipient process instance" />
|
36
|
-
</div>
|
32
|
+
|
37
33
|
</script>
|
38
34
|
|
39
35
|
<script type="text/markdown" data-help-name="signal-event-trigger">
|
@@ -44,6 +40,7 @@ From the config the `signalname` and the `processInstanceId` must be set.
|
|
44
40
|
## Inputs
|
45
41
|
|
46
42
|
: payload (Object) : Will sent to the event and used an new token payload.
|
43
|
+
: processInstanceId (string) : The process instance where the signal event should be triggered.
|
47
44
|
|
48
45
|
### References
|
49
46
|
|
package/signal-event-trigger.js
CHANGED
@@ -68,6 +68,12 @@ A node which listens for events triggered by usertasks
|
|
68
68
|
|
69
69
|
## Outputs
|
70
70
|
|
71
|
+
: flowNodeInstanceId (string): The unique identifier for the usertask instance.
|
72
|
+
: userTaskEvent (Object): An Object representing the event returned by the engine.
|
73
|
+
: processInstance (Object): An Object representing the process instance data.
|
74
|
+
: action (string): The event that occured.
|
75
|
+
: type (string): The target of the event.
|
76
|
+
|
71
77
|
### References
|
72
78
|
|
73
79
|
- [The ProcessCube Developer Network](https://processcube.io) - All documentation for the ProcessCube© platform
|
@@ -46,23 +46,25 @@ module.exports = function (RED) {
|
|
46
46
|
}
|
47
47
|
|
48
48
|
async function subscribe() {
|
49
|
-
|
50
|
-
new:
|
51
|
-
|
52
|
-
client.userTasks.onUserTaskFinished(userTaskCallback(), { identity: currentIdentity }),
|
53
|
-
reserved: () =>
|
54
|
-
client.userTasks.onUserTaskReserved(userTaskCallback(), { identity: currentIdentity }),
|
55
|
-
'reservation-canceled': () =>
|
56
|
-
client.userTasks.onUserTaskReservationCanceled(userTaskCallback(), {
|
49
|
+
switch (config.eventtype) {
|
50
|
+
case 'new':
|
51
|
+
return await client.userTasks.onUserTaskWaiting(userTaskCallback(), {
|
57
52
|
identity: currentIdentity,
|
58
|
-
})
|
59
|
-
|
60
|
-
|
61
|
-
|
62
|
-
|
63
|
-
|
64
|
-
|
65
|
-
|
53
|
+
});
|
54
|
+
case 'finished':
|
55
|
+
return await client.userTasks.onUserTaskFinished(userTaskCallback(), {
|
56
|
+
identity: currentIdentity,
|
57
|
+
});
|
58
|
+
case 'reserved':
|
59
|
+
return await client.userTasks.onUserTaskReserved(userTaskCallback(), {
|
60
|
+
identity: currentIdentity,
|
61
|
+
});
|
62
|
+
case 'reservation-canceled':
|
63
|
+
return await client.userTasks.onUserTaskReservationCanceled(userTaskCallback(), {
|
64
|
+
identity: currentIdentity,
|
65
|
+
});
|
66
|
+
default:
|
67
|
+
console.error('no such event: ' + config.eventtype);
|
66
68
|
}
|
67
69
|
}
|
68
70
|
|
package/usertask-output.html
CHANGED
@@ -10,6 +10,7 @@
|
|
10
10
|
},
|
11
11
|
inputs: 1,
|
12
12
|
outputs: 1,
|
13
|
+
align: 'right',
|
13
14
|
icon: 'usertask_output.svg',
|
14
15
|
label: function () {
|
15
16
|
return this.name || 'usertask-output';
|
@@ -55,7 +56,6 @@ A node which sends the result of a usertask to the ProcessCube.
|
|
55
56
|
|
56
57
|
### References
|
57
58
|
|
58
|
-
-
|
59
|
-
-
|
60
|
-
|
59
|
+
- [The ProcessCube Developer Network](https://processcube.io) - All documentation for the ProcessCube© platform
|
60
|
+
- [Node-RED Integration in ProcessCube©](https://processcube.io/docs/node-red) - Node-RED integration in ProcessCube©
|
61
61
|
</script>
|