node-red-contrib-power-saver 5.1.4 → 5.2.0
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/README.md +1 -2
- package/examples/add-general-tariff.json +120 -0
- package/examples/best-save-for-water-heater.json +122 -0
- package/examples/elvia-add-tariff.json +106 -0
- package/examples/elvia-get-tariff-types.json +58 -0
- package/examples/elvia-get-tariff.json +60 -0
- package/examples/example-grid-tariff-capacity-flow.json +244 -0
- package/examples/fixed-schedule-morning.json +138 -0
- package/examples/heat-capacitor-for-room-heating.json +186 -0
- package/examples/light-saver.json +162 -0
- package/examples/lowest-price-for-heating-cables.json +146 -0
- package/examples/price-filter.json +139 -0
- package/examples/schedule-merger.json +179 -0
- package/package.json +4 -2
- package/src/elvia/elvia-add-tariff.js +1 -1
- package/src/general-add-tariff-functions.js +3 -3
- package/src/general-add-tariff.html +2 -2
- package/src/handle-input.js +0 -1
- package/src/handle-output.js +0 -3
- package/src/light-saver.html +697 -646
- package/src/price-filter.html +72 -0
- package/src/price-filter.js +100 -0
- package/src/schedule-merger.js +2 -2
- package/src/strategy-best-save-functions.js +20 -5
- package/src/strategy-best-save.js +1 -1
- package/src/strategy-fixed-schedule.html +2 -2
- package/src/strategy-functions.js +1 -1
- package/src/strategy-heat-capacitor-functions.js +4 -4
- package/src/strategy-heat-capacitor.js +2 -2
- package/src/strategy-lowest-price.html +1 -2
- package/src/strategy-lowest-price.js +3 -4
- package/src/utils.js +4 -5
package/README.md
CHANGED
|
@@ -6,5 +6,4 @@ A Node-RED node to save money when power prices are changing by the hour.
|
|
|
6
6
|
|
|
7
7
|
## Please read more in the [documentation](https://powersaver.no/).
|
|
8
8
|
|
|
9
|
-
|
|
10
|
-
[](https://powersaver.no/contribute/#donate)
|
|
9
|
+
[](https://powersaver.no/contribute/#donate)
|
|
@@ -0,0 +1,120 @@
|
|
|
1
|
+
[
|
|
2
|
+
{
|
|
3
|
+
"id": "a621e21fe99857ef",
|
|
4
|
+
"type": "inject",
|
|
5
|
+
"z": "7b33d8ec8339db62",
|
|
6
|
+
"name": "House",
|
|
7
|
+
"props": [
|
|
8
|
+
{
|
|
9
|
+
"p": "payload"
|
|
10
|
+
}
|
|
11
|
+
],
|
|
12
|
+
"repeat": "",
|
|
13
|
+
"crontab": "",
|
|
14
|
+
"once": false,
|
|
15
|
+
"onceDelay": 0.1,
|
|
16
|
+
"topic": "",
|
|
17
|
+
"payload": "{viewer{home(id:\"12345678-abcd-4df4-ba6d-654321a987ab\"){currentSubscription{priceInfo(resolution:QUARTER_HOURLY){today{totalenergytaxstartsAt}tomorrow{totalenergytaxstartsAt}}}}}}",
|
|
18
|
+
"payloadType": "str",
|
|
19
|
+
"x": 70,
|
|
20
|
+
"y": 100,
|
|
21
|
+
"wires": [["2b55670453ea3277"]]
|
|
22
|
+
},
|
|
23
|
+
{
|
|
24
|
+
"id": "2b55670453ea3277",
|
|
25
|
+
"type": "tibber-query",
|
|
26
|
+
"z": "7b33d8ec8339db62",
|
|
27
|
+
"name": "Get prices",
|
|
28
|
+
"active": true,
|
|
29
|
+
"apiEndpointRef": "0b8e6a120837e93c",
|
|
30
|
+
"x": 210,
|
|
31
|
+
"y": 100,
|
|
32
|
+
"wires": [["7eeb5593b6da21f1"]]
|
|
33
|
+
},
|
|
34
|
+
{
|
|
35
|
+
"id": "027b09b451ef7b59",
|
|
36
|
+
"type": "ps-general-add-tariff",
|
|
37
|
+
"z": "7b33d8ec8339db62",
|
|
38
|
+
"name": "Add General Tariff",
|
|
39
|
+
"periods": [
|
|
40
|
+
{
|
|
41
|
+
"start": "22",
|
|
42
|
+
"value": 0.23
|
|
43
|
+
},
|
|
44
|
+
{
|
|
45
|
+
"start": "06",
|
|
46
|
+
"value": 0.45
|
|
47
|
+
}
|
|
48
|
+
],
|
|
49
|
+
"validFrom": "",
|
|
50
|
+
"validTo": "",
|
|
51
|
+
"x": 570,
|
|
52
|
+
"y": 100,
|
|
53
|
+
"wires": [["c65dfd3ad3f7b10d"]],
|
|
54
|
+
"days": {
|
|
55
|
+
"Mon": true,
|
|
56
|
+
"Tue": true,
|
|
57
|
+
"Wed": true,
|
|
58
|
+
"Thu": true,
|
|
59
|
+
"Fri": true,
|
|
60
|
+
"Sat": true,
|
|
61
|
+
"Sun": true
|
|
62
|
+
}
|
|
63
|
+
},
|
|
64
|
+
{
|
|
65
|
+
"id": "7eeb5593b6da21f1",
|
|
66
|
+
"type": "ps-receive-price",
|
|
67
|
+
"z": "7b33d8ec8339db62",
|
|
68
|
+
"name": "Price Receiver",
|
|
69
|
+
"x": 380,
|
|
70
|
+
"y": 100,
|
|
71
|
+
"wires": [["027b09b451ef7b59"]]
|
|
72
|
+
},
|
|
73
|
+
{
|
|
74
|
+
"id": "c65dfd3ad3f7b10d",
|
|
75
|
+
"type": "ps-strategy-lowest-price",
|
|
76
|
+
"z": "7b33d8ec8339db62",
|
|
77
|
+
"name": "Lowest Price",
|
|
78
|
+
"doNotSplit": "false",
|
|
79
|
+
"sendCurrentValueWhenRescheduling": true,
|
|
80
|
+
"outputIfNoSchedule": "true",
|
|
81
|
+
"outputOutsidePeriod": "false",
|
|
82
|
+
"x": 750,
|
|
83
|
+
"y": 100,
|
|
84
|
+
"wires": [[], [], ["9eb381b935ec987c"]],
|
|
85
|
+
"fromHour": "00",
|
|
86
|
+
"fromMinute": "00",
|
|
87
|
+
"toHour": "00",
|
|
88
|
+
"toMinute": "00",
|
|
89
|
+
"minutesOn": "720",
|
|
90
|
+
"maxPrice": null,
|
|
91
|
+
"outputValueForOn": true,
|
|
92
|
+
"outputValueForOff": false,
|
|
93
|
+
"outputValueForOntype": "bool",
|
|
94
|
+
"outputValueForOfftype": "bool",
|
|
95
|
+
"contextStorage": "default"
|
|
96
|
+
},
|
|
97
|
+
{
|
|
98
|
+
"id": "9eb381b935ec987c",
|
|
99
|
+
"type": "debug",
|
|
100
|
+
"z": "7b33d8ec8339db62",
|
|
101
|
+
"name": "",
|
|
102
|
+
"active": true,
|
|
103
|
+
"tosidebar": true,
|
|
104
|
+
"console": false,
|
|
105
|
+
"tostatus": false,
|
|
106
|
+
"complete": "false",
|
|
107
|
+
"statusVal": "",
|
|
108
|
+
"statusType": "auto",
|
|
109
|
+
"x": 960,
|
|
110
|
+
"y": 120,
|
|
111
|
+
"wires": []
|
|
112
|
+
},
|
|
113
|
+
{
|
|
114
|
+
"id": "0b8e6a120837e93c",
|
|
115
|
+
"type": "tibber-api-endpoint",
|
|
116
|
+
"feedUrl": "wss://api.tibber.com/v1-beta/gql/subscriptions",
|
|
117
|
+
"queryUrl": "https://api.tibber.com/v1-beta/gql",
|
|
118
|
+
"name": "Tibber prices"
|
|
119
|
+
}
|
|
120
|
+
]
|
|
@@ -0,0 +1,122 @@
|
|
|
1
|
+
[
|
|
2
|
+
{
|
|
3
|
+
"id": "4f11b5ae.4cc22c",
|
|
4
|
+
"type": "inject",
|
|
5
|
+
"z": "d938c47f.3398f8",
|
|
6
|
+
"name": "Refresh",
|
|
7
|
+
"props": [
|
|
8
|
+
{
|
|
9
|
+
"p": "payload"
|
|
10
|
+
}
|
|
11
|
+
],
|
|
12
|
+
"repeat": "3600",
|
|
13
|
+
"crontab": "",
|
|
14
|
+
"once": true,
|
|
15
|
+
"onceDelay": "1",
|
|
16
|
+
"topic": "",
|
|
17
|
+
"payload": "{viewer{homes{currentSubscription{priceInfo(resolution:QUARTER_HOURLY){today{totalstartsAt}tomorrow{totalstartsAt}}}}}}",
|
|
18
|
+
"payloadType": "str",
|
|
19
|
+
"x": 120,
|
|
20
|
+
"y": 40,
|
|
21
|
+
"wires": [["ab2d599a.077738"]]
|
|
22
|
+
},
|
|
23
|
+
{
|
|
24
|
+
"id": "ab2d599a.077738",
|
|
25
|
+
"type": "tibber-query",
|
|
26
|
+
"z": "d938c47f.3398f8",
|
|
27
|
+
"name": "Get Tibber prices",
|
|
28
|
+
"active": true,
|
|
29
|
+
"apiEndpointRef": "b70ec5d0.6f8f08",
|
|
30
|
+
"x": 310,
|
|
31
|
+
"y": 40,
|
|
32
|
+
"wires": [["0ef929fde193cf4d"]]
|
|
33
|
+
},
|
|
34
|
+
{
|
|
35
|
+
"id": "0ef929fde193cf4d",
|
|
36
|
+
"type": "ps-receive-price",
|
|
37
|
+
"z": "d938c47f.3398f8",
|
|
38
|
+
"name": "Price Receiver",
|
|
39
|
+
"x": 140,
|
|
40
|
+
"y": 100,
|
|
41
|
+
"wires": [["5b6be1568744c6cf"]]
|
|
42
|
+
},
|
|
43
|
+
{
|
|
44
|
+
"id": "5b6be1568744c6cf",
|
|
45
|
+
"type": "ps-strategy-best-save",
|
|
46
|
+
"z": "d938c47f.3398f8",
|
|
47
|
+
"name": "Best Save",
|
|
48
|
+
"minSaving": 0.01,
|
|
49
|
+
"sendCurrentValueWhenRescheduling": true,
|
|
50
|
+
"outputIfNoSchedule": "true",
|
|
51
|
+
"x": 410,
|
|
52
|
+
"y": 140,
|
|
53
|
+
"wires": [["5e485ff7.db156"], ["9c978d1c.ee76"], ["aa4f06692a2fe46b"]],
|
|
54
|
+
"maxMinutesOff": 180,
|
|
55
|
+
"minMinutesOff": 60,
|
|
56
|
+
"recoveryPercentage": 50,
|
|
57
|
+
"recoveryMaxMinutes": 120,
|
|
58
|
+
"outputValueForOn": true,
|
|
59
|
+
"outputValueForOff": false,
|
|
60
|
+
"outputValueForOntype": "bool",
|
|
61
|
+
"outputValueForOfftype": "bool",
|
|
62
|
+
"contextStorage": "default"
|
|
63
|
+
},
|
|
64
|
+
{
|
|
65
|
+
"id": "5e485ff7.db156",
|
|
66
|
+
"type": "debug",
|
|
67
|
+
"z": "d938c47f.3398f8",
|
|
68
|
+
"name": "Turn on VVB",
|
|
69
|
+
"active": true,
|
|
70
|
+
"tosidebar": true,
|
|
71
|
+
"console": false,
|
|
72
|
+
"tostatus": false,
|
|
73
|
+
"complete": "payload",
|
|
74
|
+
"targetType": "msg",
|
|
75
|
+
"statusVal": "",
|
|
76
|
+
"statusType": "auto",
|
|
77
|
+
"x": 710,
|
|
78
|
+
"y": 40,
|
|
79
|
+
"wires": []
|
|
80
|
+
},
|
|
81
|
+
{
|
|
82
|
+
"id": "9c978d1c.ee76",
|
|
83
|
+
"type": "debug",
|
|
84
|
+
"z": "d938c47f.3398f8",
|
|
85
|
+
"name": "Turn off VVB",
|
|
86
|
+
"active": true,
|
|
87
|
+
"tosidebar": true,
|
|
88
|
+
"console": false,
|
|
89
|
+
"tostatus": false,
|
|
90
|
+
"complete": "payload",
|
|
91
|
+
"targetType": "msg",
|
|
92
|
+
"statusVal": "",
|
|
93
|
+
"statusType": "auto",
|
|
94
|
+
"x": 710,
|
|
95
|
+
"y": 160,
|
|
96
|
+
"wires": []
|
|
97
|
+
},
|
|
98
|
+
{
|
|
99
|
+
"id": "aa4f06692a2fe46b",
|
|
100
|
+
"type": "debug",
|
|
101
|
+
"z": "d938c47f.3398f8",
|
|
102
|
+
"name": "Best Save Schedule",
|
|
103
|
+
"active": true,
|
|
104
|
+
"tosidebar": true,
|
|
105
|
+
"console": false,
|
|
106
|
+
"tostatus": false,
|
|
107
|
+
"complete": "payload",
|
|
108
|
+
"targetType": "msg",
|
|
109
|
+
"statusVal": "",
|
|
110
|
+
"statusType": "auto",
|
|
111
|
+
"x": 740,
|
|
112
|
+
"y": 280,
|
|
113
|
+
"wires": []
|
|
114
|
+
},
|
|
115
|
+
{
|
|
116
|
+
"id": "b70ec5d0.6f8f08",
|
|
117
|
+
"type": "tibber-api-endpoint",
|
|
118
|
+
"feedUrl": "wss://api.tibber.com/v1-beta/gql/subscriptions",
|
|
119
|
+
"queryUrl": "https://api.tibber.com/v1-beta/gql",
|
|
120
|
+
"name": "Tibber API"
|
|
121
|
+
}
|
|
122
|
+
]
|
|
@@ -0,0 +1,106 @@
|
|
|
1
|
+
[
|
|
2
|
+
{
|
|
3
|
+
"id": "a621e21fe99857ef",
|
|
4
|
+
"type": "inject",
|
|
5
|
+
"z": "7b33d8ec8339db62",
|
|
6
|
+
"name": "House",
|
|
7
|
+
"props": [
|
|
8
|
+
{
|
|
9
|
+
"p": "payload"
|
|
10
|
+
}
|
|
11
|
+
],
|
|
12
|
+
"repeat": "",
|
|
13
|
+
"crontab": "",
|
|
14
|
+
"once": false,
|
|
15
|
+
"onceDelay": 0.1,
|
|
16
|
+
"topic": "",
|
|
17
|
+
"payload": "{viewer{home(id:\"12345678-abcd-4df4-ba6d-654321a987ab\"){currentSubscription{priceInfo(resolution:QUARTER_HOURLY){today{totalenergytaxstartsAt}tomorrow{totalenergytaxstartsAt}}}}}}",
|
|
18
|
+
"payloadType": "str",
|
|
19
|
+
"x": 70,
|
|
20
|
+
"y": 100,
|
|
21
|
+
"wires": [["2b55670453ea3277"]]
|
|
22
|
+
},
|
|
23
|
+
{
|
|
24
|
+
"id": "2b55670453ea3277",
|
|
25
|
+
"type": "tibber-query",
|
|
26
|
+
"z": "7b33d8ec8339db62",
|
|
27
|
+
"name": "Get prices",
|
|
28
|
+
"active": true,
|
|
29
|
+
"apiEndpointRef": "0b8e6a120837e93c",
|
|
30
|
+
"x": 210,
|
|
31
|
+
"y": 100,
|
|
32
|
+
"wires": [["7eeb5593b6da21f1"]]
|
|
33
|
+
},
|
|
34
|
+
{
|
|
35
|
+
"id": "7eeb5593b6da21f1",
|
|
36
|
+
"type": "ps-receive-price",
|
|
37
|
+
"z": "7b33d8ec8339db62",
|
|
38
|
+
"name": "Price Receiver",
|
|
39
|
+
"x": 380,
|
|
40
|
+
"y": 100,
|
|
41
|
+
"wires": [["5482ec46805cd9fd"]]
|
|
42
|
+
},
|
|
43
|
+
{
|
|
44
|
+
"id": "c65dfd3ad3f7b10d",
|
|
45
|
+
"type": "ps-strategy-lowest-price",
|
|
46
|
+
"z": "7b33d8ec8339db62",
|
|
47
|
+
"name": "Lowest Price",
|
|
48
|
+
"doNotSplit": "false",
|
|
49
|
+
"sendCurrentValueWhenRescheduling": true,
|
|
50
|
+
"outputIfNoSchedule": "true",
|
|
51
|
+
"outputOutsidePeriod": "false",
|
|
52
|
+
"x": 750,
|
|
53
|
+
"y": 100,
|
|
54
|
+
"wires": [[], [], ["9eb381b935ec987c"]],
|
|
55
|
+
"fromHour": "00",
|
|
56
|
+
"fromMinute": "00",
|
|
57
|
+
"toHour": "00",
|
|
58
|
+
"toMinute": "00",
|
|
59
|
+
"minutesOn": "720",
|
|
60
|
+
"maxPrice": null,
|
|
61
|
+
"outputValueForOn": true,
|
|
62
|
+
"outputValueForOff": false,
|
|
63
|
+
"outputValueForOntype": "bool",
|
|
64
|
+
"outputValueForOfftype": "bool",
|
|
65
|
+
"contextStorage": "default"
|
|
66
|
+
},
|
|
67
|
+
{
|
|
68
|
+
"id": "5482ec46805cd9fd",
|
|
69
|
+
"type": "ps-elvia-add-tariff",
|
|
70
|
+
"z": "7b33d8ec8339db62",
|
|
71
|
+
"name": "Add Elvia Grid Tariff",
|
|
72
|
+
"elviaConfig": "45c5580013db88b3",
|
|
73
|
+
"tariffKey": "private_tou_rush1",
|
|
74
|
+
"x": 570,
|
|
75
|
+
"y": 100,
|
|
76
|
+
"wires": [["c65dfd3ad3f7b10d"]]
|
|
77
|
+
},
|
|
78
|
+
{
|
|
79
|
+
"id": "9eb381b935ec987c",
|
|
80
|
+
"type": "debug",
|
|
81
|
+
"z": "7b33d8ec8339db62",
|
|
82
|
+
"name": "",
|
|
83
|
+
"active": true,
|
|
84
|
+
"tosidebar": true,
|
|
85
|
+
"console": false,
|
|
86
|
+
"tostatus": false,
|
|
87
|
+
"complete": "false",
|
|
88
|
+
"statusVal": "",
|
|
89
|
+
"statusType": "auto",
|
|
90
|
+
"x": 960,
|
|
91
|
+
"y": 120,
|
|
92
|
+
"wires": []
|
|
93
|
+
},
|
|
94
|
+
{
|
|
95
|
+
"id": "0b8e6a120837e93c",
|
|
96
|
+
"type": "tibber-api-endpoint",
|
|
97
|
+
"feedUrl": "wss://api.tibber.com/v1-beta/gql/subscriptions",
|
|
98
|
+
"queryUrl": "https://api.tibber.com/v1-beta/gql",
|
|
99
|
+
"name": "Tibber prices"
|
|
100
|
+
},
|
|
101
|
+
{
|
|
102
|
+
"id": "45c5580013db88b3",
|
|
103
|
+
"type": "ps-elvia-config",
|
|
104
|
+
"name": "Elvia Config"
|
|
105
|
+
}
|
|
106
|
+
]
|
|
@@ -0,0 +1,58 @@
|
|
|
1
|
+
[
|
|
2
|
+
{
|
|
3
|
+
"id": "4168826b961c92d8",
|
|
4
|
+
"type": "ps-elvia-tariff-types",
|
|
5
|
+
"z": "7b33d8ec8339db62",
|
|
6
|
+
"name": "Elvia Tariff Types",
|
|
7
|
+
"elviaConfig": "45c5580013db88b3",
|
|
8
|
+
"x": 280,
|
|
9
|
+
"y": 320,
|
|
10
|
+
"wires": [["9c125f23de65a5b7"]]
|
|
11
|
+
},
|
|
12
|
+
{
|
|
13
|
+
"id": "9c125f23de65a5b7",
|
|
14
|
+
"type": "debug",
|
|
15
|
+
"z": "7b33d8ec8339db62",
|
|
16
|
+
"name": "",
|
|
17
|
+
"active": true,
|
|
18
|
+
"tosidebar": true,
|
|
19
|
+
"console": false,
|
|
20
|
+
"tostatus": false,
|
|
21
|
+
"complete": "false",
|
|
22
|
+
"statusVal": "",
|
|
23
|
+
"statusType": "auto",
|
|
24
|
+
"x": 470,
|
|
25
|
+
"y": 320,
|
|
26
|
+
"wires": []
|
|
27
|
+
},
|
|
28
|
+
{
|
|
29
|
+
"id": "9b1a2d7f9a96214c",
|
|
30
|
+
"type": "inject",
|
|
31
|
+
"z": "7b33d8ec8339db62",
|
|
32
|
+
"name": "",
|
|
33
|
+
"props": [
|
|
34
|
+
{
|
|
35
|
+
"p": "payload"
|
|
36
|
+
},
|
|
37
|
+
{
|
|
38
|
+
"p": "topic",
|
|
39
|
+
"vt": "str"
|
|
40
|
+
}
|
|
41
|
+
],
|
|
42
|
+
"repeat": "",
|
|
43
|
+
"crontab": "",
|
|
44
|
+
"once": false,
|
|
45
|
+
"onceDelay": 0.1,
|
|
46
|
+
"topic": "",
|
|
47
|
+
"payload": "",
|
|
48
|
+
"payloadType": "date",
|
|
49
|
+
"x": 110,
|
|
50
|
+
"y": 320,
|
|
51
|
+
"wires": [["4168826b961c92d8"]]
|
|
52
|
+
},
|
|
53
|
+
{
|
|
54
|
+
"id": "45c5580013db88b3",
|
|
55
|
+
"type": "ps-elvia-config",
|
|
56
|
+
"name": "Elvia Config"
|
|
57
|
+
}
|
|
58
|
+
]
|
|
@@ -0,0 +1,60 @@
|
|
|
1
|
+
[
|
|
2
|
+
{
|
|
3
|
+
"id": "77f2f8de4c2153e7",
|
|
4
|
+
"type": "ps-elvia-tariff",
|
|
5
|
+
"z": "7b33d8ec8339db62",
|
|
6
|
+
"name": "Elvia Tariff",
|
|
7
|
+
"elviaConfig": "45c5580013db88b3",
|
|
8
|
+
"tariffKey": "private_tou_daynight2",
|
|
9
|
+
"range": "today",
|
|
10
|
+
"x": 290,
|
|
11
|
+
"y": 440,
|
|
12
|
+
"wires": [["cd59d4855edd052c"]]
|
|
13
|
+
},
|
|
14
|
+
{
|
|
15
|
+
"id": "551da2a5de1259dc",
|
|
16
|
+
"type": "inject",
|
|
17
|
+
"z": "7b33d8ec8339db62",
|
|
18
|
+
"name": "",
|
|
19
|
+
"props": [
|
|
20
|
+
{
|
|
21
|
+
"p": "payload"
|
|
22
|
+
},
|
|
23
|
+
{
|
|
24
|
+
"p": "topic",
|
|
25
|
+
"vt": "str"
|
|
26
|
+
}
|
|
27
|
+
],
|
|
28
|
+
"repeat": "",
|
|
29
|
+
"crontab": "",
|
|
30
|
+
"once": false,
|
|
31
|
+
"onceDelay": 0.1,
|
|
32
|
+
"topic": "",
|
|
33
|
+
"payload": "",
|
|
34
|
+
"payloadType": "date",
|
|
35
|
+
"x": 120,
|
|
36
|
+
"y": 440,
|
|
37
|
+
"wires": [["77f2f8de4c2153e7"]]
|
|
38
|
+
},
|
|
39
|
+
{
|
|
40
|
+
"id": "cd59d4855edd052c",
|
|
41
|
+
"type": "debug",
|
|
42
|
+
"z": "7b33d8ec8339db62",
|
|
43
|
+
"name": "",
|
|
44
|
+
"active": true,
|
|
45
|
+
"tosidebar": true,
|
|
46
|
+
"console": false,
|
|
47
|
+
"tostatus": false,
|
|
48
|
+
"complete": "false",
|
|
49
|
+
"statusVal": "",
|
|
50
|
+
"statusType": "auto",
|
|
51
|
+
"x": 450,
|
|
52
|
+
"y": 440,
|
|
53
|
+
"wires": []
|
|
54
|
+
},
|
|
55
|
+
{
|
|
56
|
+
"id": "45c5580013db88b3",
|
|
57
|
+
"type": "ps-elvia-config",
|
|
58
|
+
"name": "Elvia Config"
|
|
59
|
+
}
|
|
60
|
+
]
|