iobroker.zendure-solarflow 1.6.7 → 1.7.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.
- package/README.md +11 -1
- package/build/helpers/createCalculationStates.js +31 -34
- package/build/helpers/createCalculationStates.js.map +2 -2
- package/build/helpers/createControlStates.js +122 -62
- package/build/helpers/createControlStates.js.map +2 -2
- package/build/helpers/createSolarFlowStates.js +347 -182
- package/build/helpers/createSolarFlowStates.js.map +2 -2
- package/build/main.js +42 -8
- package/build/main.js.map +2 -2
- package/build/models/ISolarFlowDeviceDetails.js.map +1 -1
- package/build/models/ISolarFlowMqttProperties.js +48 -0
- package/build/models/ISolarFlowMqttProperties.js.map +2 -2
- package/build/services/fallbackMqttService.js +10 -9
- package/build/services/fallbackMqttService.js.map +2 -2
- package/build/services/mqttService.js +219 -45
- package/build/services/mqttService.js.map +3 -3
- package/io-package.json +27 -27
- package/package.json +2 -2
|
@@ -21,29 +21,30 @@ __export(createSolarFlowStates_exports, {
|
|
|
21
21
|
createSolarFlowStates: () => createSolarFlowStates
|
|
22
22
|
});
|
|
23
23
|
module.exports = __toCommonJS(createSolarFlowStates_exports);
|
|
24
|
+
var import_adapterService = require("../services/adapterService");
|
|
24
25
|
var import_createCalculationStates = require("./createCalculationStates");
|
|
25
26
|
var import_createControlStates = require("./createControlStates");
|
|
26
|
-
const createSolarFlowStates = async (adapter,
|
|
27
|
-
productKey = productKey.replace(adapter.FORBIDDEN_CHARS, "");
|
|
28
|
-
deviceKey = deviceKey.replace(adapter.FORBIDDEN_CHARS, "");
|
|
27
|
+
const createSolarFlowStates = async (adapter, device, type) => {
|
|
28
|
+
const productKey = device.productKey.replace(adapter.FORBIDDEN_CHARS, "");
|
|
29
|
+
const deviceKey = device.deviceKey.replace(adapter.FORBIDDEN_CHARS, "");
|
|
29
30
|
adapter.log.debug(
|
|
30
31
|
`[createSolarFlowStates] Creating or updating SolarFlow states for productKey ${productKey} and deviceKey ${deviceKey}.`
|
|
31
32
|
);
|
|
32
|
-
await (adapter == null ? void 0 : adapter.
|
|
33
|
+
await (adapter == null ? void 0 : adapter.extendObject(productKey, {
|
|
33
34
|
type: "device",
|
|
34
35
|
common: {
|
|
35
36
|
name: { de: "Produkt " + productKey, en: "Product " + productKey }
|
|
36
37
|
},
|
|
37
38
|
native: {}
|
|
38
39
|
}));
|
|
39
|
-
await (adapter == null ? void 0 : adapter.
|
|
40
|
+
await (adapter == null ? void 0 : adapter.extendObject(productKey + "." + deviceKey, {
|
|
40
41
|
type: "channel",
|
|
41
42
|
common: {
|
|
42
43
|
name: { de: "Device Key " + deviceKey, en: "Device Key " + deviceKey }
|
|
43
44
|
},
|
|
44
45
|
native: {}
|
|
45
46
|
}));
|
|
46
|
-
await (adapter == null ? void 0 : adapter.
|
|
47
|
+
await (adapter == null ? void 0 : adapter.extendObject(`${productKey}.${deviceKey}.calculations`, {
|
|
47
48
|
type: "channel",
|
|
48
49
|
common: {
|
|
49
50
|
name: {
|
|
@@ -53,7 +54,7 @@ const createSolarFlowStates = async (adapter, productKey, deviceKey) => {
|
|
|
53
54
|
},
|
|
54
55
|
native: {}
|
|
55
56
|
}));
|
|
56
|
-
await (adapter == null ? void 0 : adapter.
|
|
57
|
+
await (adapter == null ? void 0 : adapter.extendObject(`${productKey}.${deviceKey}.packData`, {
|
|
57
58
|
type: "channel",
|
|
58
59
|
common: {
|
|
59
60
|
name: {
|
|
@@ -63,7 +64,7 @@ const createSolarFlowStates = async (adapter, productKey, deviceKey) => {
|
|
|
63
64
|
},
|
|
64
65
|
native: {}
|
|
65
66
|
}));
|
|
66
|
-
await (adapter == null ? void 0 : adapter.
|
|
67
|
+
await (adapter == null ? void 0 : adapter.extendObject(`${productKey}.${deviceKey}.lastUpdate`, {
|
|
67
68
|
type: "state",
|
|
68
69
|
common: {
|
|
69
70
|
name: { de: "Letztes Update", en: "Last Update" },
|
|
@@ -75,7 +76,7 @@ const createSolarFlowStates = async (adapter, productKey, deviceKey) => {
|
|
|
75
76
|
},
|
|
76
77
|
native: {}
|
|
77
78
|
}));
|
|
78
|
-
await (adapter == null ? void 0 : adapter.
|
|
79
|
+
await (adapter == null ? void 0 : adapter.extendObject(`${productKey}.${deviceKey}.buzzerSwitch`, {
|
|
79
80
|
type: "state",
|
|
80
81
|
common: {
|
|
81
82
|
name: {
|
|
@@ -83,153 +84,143 @@ const createSolarFlowStates = async (adapter, productKey, deviceKey) => {
|
|
|
83
84
|
en: "Enable buzzer on HUB"
|
|
84
85
|
},
|
|
85
86
|
type: "boolean",
|
|
86
|
-
desc: "
|
|
87
|
+
desc: "buzzerSwitch",
|
|
87
88
|
role: "value",
|
|
88
89
|
read: true,
|
|
89
90
|
write: false
|
|
90
91
|
},
|
|
91
92
|
native: {}
|
|
92
93
|
}));
|
|
93
|
-
await (adapter == null ? void 0 : adapter.
|
|
94
|
+
await (adapter == null ? void 0 : adapter.extendObject(`${productKey}.${deviceKey}.packState`, {
|
|
94
95
|
type: "state",
|
|
95
96
|
common: {
|
|
96
|
-
name: {
|
|
97
|
-
de: "Einstellung des Bypass Modus",
|
|
98
|
-
en: "Setting of bypass mode"
|
|
99
|
-
},
|
|
97
|
+
name: { de: "Systemstatus", en: "Status of system" },
|
|
100
98
|
type: "string",
|
|
101
|
-
desc: "
|
|
99
|
+
desc: "packState",
|
|
102
100
|
role: "value",
|
|
103
101
|
read: true,
|
|
104
102
|
write: false
|
|
105
103
|
},
|
|
106
104
|
native: {}
|
|
107
105
|
}));
|
|
108
|
-
await (adapter == null ? void 0 : adapter.
|
|
106
|
+
await (adapter == null ? void 0 : adapter.extendObject(`${productKey}.${deviceKey}.electricLevel`, {
|
|
109
107
|
type: "state",
|
|
110
108
|
common: {
|
|
111
|
-
name: { de: "
|
|
112
|
-
type: "
|
|
113
|
-
desc: "
|
|
114
|
-
role: "value",
|
|
109
|
+
name: { de: "SOC Gesamtsystem", en: "SOC of the system" },
|
|
110
|
+
type: "number",
|
|
111
|
+
desc: "electricLevel",
|
|
112
|
+
role: "value.battery",
|
|
115
113
|
read: true,
|
|
116
|
-
write: false
|
|
114
|
+
write: false,
|
|
115
|
+
unit: "%"
|
|
117
116
|
},
|
|
118
117
|
native: {}
|
|
119
118
|
}));
|
|
120
|
-
|
|
119
|
+
if (device.electricity) {
|
|
120
|
+
await (0, import_adapterService.updateSolarFlowState)(
|
|
121
|
+
adapter,
|
|
122
|
+
device.productKey,
|
|
123
|
+
device.deviceKey,
|
|
124
|
+
"electricLevel",
|
|
125
|
+
device.electricity
|
|
126
|
+
);
|
|
127
|
+
}
|
|
128
|
+
await (adapter == null ? void 0 : adapter.extendObject(`${productKey}.${deviceKey}.name`, {
|
|
121
129
|
type: "state",
|
|
122
130
|
common: {
|
|
123
|
-
name: {
|
|
124
|
-
|
|
125
|
-
|
|
126
|
-
},
|
|
127
|
-
type: "boolean",
|
|
128
|
-
desc: "autoRecover",
|
|
131
|
+
name: { de: "Name", en: "Name" },
|
|
132
|
+
type: "string",
|
|
133
|
+
desc: "name",
|
|
129
134
|
role: "value",
|
|
130
135
|
read: true,
|
|
131
136
|
write: false
|
|
132
137
|
},
|
|
133
138
|
native: {}
|
|
134
139
|
}));
|
|
135
|
-
await (adapter == null ? void 0 : adapter.
|
|
140
|
+
await (adapter == null ? void 0 : adapter.extendObject(`${productKey}.${deviceKey}.snNumber`, {
|
|
136
141
|
type: "state",
|
|
137
142
|
common: {
|
|
138
|
-
name: { de: "
|
|
143
|
+
name: { de: "Seriennnummer", en: "Serial ID" },
|
|
139
144
|
type: "string",
|
|
140
|
-
desc: "
|
|
145
|
+
desc: "snNumber",
|
|
141
146
|
role: "value",
|
|
142
147
|
read: true,
|
|
143
148
|
write: false
|
|
144
149
|
},
|
|
145
150
|
native: {}
|
|
146
151
|
}));
|
|
147
|
-
|
|
152
|
+
if (device.snNumber) {
|
|
153
|
+
await (0, import_adapterService.updateSolarFlowState)(
|
|
154
|
+
adapter,
|
|
155
|
+
device.productKey,
|
|
156
|
+
device.deviceKey,
|
|
157
|
+
"snNumber",
|
|
158
|
+
device.snNumber.toString()
|
|
159
|
+
);
|
|
160
|
+
}
|
|
161
|
+
await (adapter == null ? void 0 : adapter.extendObject(`${productKey}.${deviceKey}.productName`, {
|
|
148
162
|
type: "state",
|
|
149
163
|
common: {
|
|
150
|
-
name: { de: "
|
|
151
|
-
type: "
|
|
152
|
-
desc: "
|
|
153
|
-
role: "value
|
|
164
|
+
name: { de: "Produkt Name", en: "Product name" },
|
|
165
|
+
type: "string",
|
|
166
|
+
desc: "productName",
|
|
167
|
+
role: "value",
|
|
154
168
|
read: true,
|
|
155
|
-
write: false
|
|
156
|
-
unit: "%"
|
|
169
|
+
write: false
|
|
157
170
|
},
|
|
158
171
|
native: {}
|
|
159
172
|
}));
|
|
160
|
-
await (
|
|
173
|
+
await (0, import_adapterService.updateSolarFlowState)(
|
|
174
|
+
adapter,
|
|
175
|
+
device.productKey,
|
|
176
|
+
device.deviceKey,
|
|
177
|
+
"productName",
|
|
178
|
+
device.productName
|
|
179
|
+
);
|
|
180
|
+
await (adapter == null ? void 0 : adapter.extendObject(`${productKey}.${deviceKey}.registeredServer`, {
|
|
161
181
|
type: "state",
|
|
162
182
|
common: {
|
|
163
|
-
name: { de: "
|
|
183
|
+
name: { de: "Registrierter Server", en: "Registered server" },
|
|
164
184
|
type: "string",
|
|
165
|
-
desc: "
|
|
185
|
+
desc: "registeredServer",
|
|
166
186
|
role: "value",
|
|
167
187
|
read: true,
|
|
168
188
|
write: false
|
|
169
189
|
},
|
|
170
190
|
native: {}
|
|
171
191
|
}));
|
|
172
|
-
await (adapter == null ? void 0 : adapter.
|
|
192
|
+
await (adapter == null ? void 0 : adapter.extendObject(`${productKey}.${deviceKey}.energyPower`, {
|
|
173
193
|
type: "state",
|
|
174
194
|
common: {
|
|
175
|
-
name: { de: "
|
|
176
|
-
type: "
|
|
177
|
-
desc: "
|
|
178
|
-
role: "value",
|
|
195
|
+
name: { de: "Leistung am Smartmeter", en: "Smartmeter energy power" },
|
|
196
|
+
type: "number",
|
|
197
|
+
desc: "energyPower",
|
|
198
|
+
role: "value.power",
|
|
179
199
|
read: true,
|
|
180
|
-
write: false
|
|
200
|
+
write: false,
|
|
201
|
+
unit: "W"
|
|
181
202
|
},
|
|
182
203
|
native: {}
|
|
183
204
|
}));
|
|
184
|
-
await (adapter == null ? void 0 : adapter.
|
|
205
|
+
await (adapter == null ? void 0 : adapter.extendObject(`${productKey}.${deviceKey}.outputPackPower`, {
|
|
185
206
|
type: "state",
|
|
186
207
|
common: {
|
|
187
|
-
name: { de: "
|
|
188
|
-
type: "
|
|
189
|
-
desc: "
|
|
190
|
-
role: "value",
|
|
208
|
+
name: { de: "Ladeleistung zur Batterie", en: "charge power" },
|
|
209
|
+
type: "number",
|
|
210
|
+
desc: "outputPackPower",
|
|
211
|
+
role: "value.power",
|
|
191
212
|
read: true,
|
|
192
|
-
write: false
|
|
213
|
+
write: false,
|
|
214
|
+
unit: "W"
|
|
193
215
|
},
|
|
194
216
|
native: {}
|
|
195
217
|
}));
|
|
196
|
-
await (adapter == null ? void 0 : adapter.
|
|
197
|
-
`${productKey}.${deviceKey}.registeredServer`,
|
|
198
|
-
{
|
|
199
|
-
type: "state",
|
|
200
|
-
common: {
|
|
201
|
-
name: { de: "Registrierter Server", en: "Registered server" },
|
|
202
|
-
type: "string",
|
|
203
|
-
desc: "registeredServer",
|
|
204
|
-
role: "value",
|
|
205
|
-
read: true,
|
|
206
|
-
write: false
|
|
207
|
-
},
|
|
208
|
-
native: {}
|
|
209
|
-
}
|
|
210
|
-
));
|
|
211
|
-
await (adapter == null ? void 0 : adapter.extendObjectAsync(
|
|
212
|
-
`${productKey}.${deviceKey}.outputHomePower`,
|
|
213
|
-
{
|
|
214
|
-
type: "state",
|
|
215
|
-
common: {
|
|
216
|
-
name: { de: "Ausgangsleistung", en: "output power" },
|
|
217
|
-
type: "number",
|
|
218
|
-
desc: "outputHomePower",
|
|
219
|
-
role: "value.power",
|
|
220
|
-
read: true,
|
|
221
|
-
write: false,
|
|
222
|
-
unit: "W"
|
|
223
|
-
},
|
|
224
|
-
native: {}
|
|
225
|
-
}
|
|
226
|
-
));
|
|
227
|
-
await (adapter == null ? void 0 : adapter.extendObjectAsync(`${productKey}.${deviceKey}.outputLimit`, {
|
|
218
|
+
await (adapter == null ? void 0 : adapter.extendObject(`${productKey}.${deviceKey}.packInputPower`, {
|
|
228
219
|
type: "state",
|
|
229
220
|
common: {
|
|
230
|
-
name: { de: "
|
|
221
|
+
name: { de: "Entladeleistung aus Batterie", en: "discharge power" },
|
|
231
222
|
type: "number",
|
|
232
|
-
desc: "
|
|
223
|
+
desc: "packInputPower",
|
|
233
224
|
role: "value.power",
|
|
234
225
|
read: true,
|
|
235
226
|
write: false,
|
|
@@ -237,55 +228,20 @@ const createSolarFlowStates = async (adapter, productKey, deviceKey) => {
|
|
|
237
228
|
},
|
|
238
229
|
native: {}
|
|
239
230
|
}));
|
|
240
|
-
await (adapter == null ? void 0 : adapter.
|
|
241
|
-
|
|
242
|
-
{
|
|
243
|
-
|
|
244
|
-
|
|
245
|
-
|
|
246
|
-
|
|
247
|
-
|
|
248
|
-
|
|
249
|
-
|
|
250
|
-
|
|
251
|
-
|
|
252
|
-
|
|
253
|
-
|
|
254
|
-
}
|
|
255
|
-
));
|
|
256
|
-
await (adapter == null ? void 0 : adapter.extendObjectAsync(
|
|
257
|
-
`${productKey}.${deviceKey}.packInputPower`,
|
|
258
|
-
{
|
|
259
|
-
type: "state",
|
|
260
|
-
common: {
|
|
261
|
-
name: { de: "Entladeleistung aus Batterie", en: "discharge power" },
|
|
262
|
-
type: "number",
|
|
263
|
-
desc: "packInputPower",
|
|
264
|
-
role: "value.power",
|
|
265
|
-
read: true,
|
|
266
|
-
write: false,
|
|
267
|
-
unit: "W"
|
|
268
|
-
},
|
|
269
|
-
native: {}
|
|
270
|
-
}
|
|
271
|
-
));
|
|
272
|
-
await (adapter == null ? void 0 : adapter.extendObjectAsync(
|
|
273
|
-
`${productKey}.${deviceKey}.solarInputPower`,
|
|
274
|
-
{
|
|
275
|
-
type: "state",
|
|
276
|
-
common: {
|
|
277
|
-
name: { de: "Leistung der Solarmodule", en: "solar power" },
|
|
278
|
-
type: "number",
|
|
279
|
-
desc: "solarInputPower",
|
|
280
|
-
role: "value.power",
|
|
281
|
-
read: true,
|
|
282
|
-
write: false,
|
|
283
|
-
unit: "W"
|
|
284
|
-
},
|
|
285
|
-
native: {}
|
|
286
|
-
}
|
|
287
|
-
));
|
|
288
|
-
await (adapter == null ? void 0 : adapter.extendObjectAsync(`${productKey}.${deviceKey}.pvPower1`, {
|
|
231
|
+
await (adapter == null ? void 0 : adapter.extendObject(`${productKey}.${deviceKey}.solarInputPower`, {
|
|
232
|
+
type: "state",
|
|
233
|
+
common: {
|
|
234
|
+
name: { de: "Leistung der Solarmodule", en: "solar power" },
|
|
235
|
+
type: "number",
|
|
236
|
+
desc: "solarInputPower",
|
|
237
|
+
role: "value.power",
|
|
238
|
+
read: true,
|
|
239
|
+
write: false,
|
|
240
|
+
unit: "W"
|
|
241
|
+
},
|
|
242
|
+
native: {}
|
|
243
|
+
}));
|
|
244
|
+
await (adapter == null ? void 0 : adapter.extendObject(`${productKey}.${deviceKey}.pvPower1`, {
|
|
289
245
|
type: "state",
|
|
290
246
|
common: {
|
|
291
247
|
name: { de: "Leistung PV 1", en: "solar power channel 1" },
|
|
@@ -298,7 +254,7 @@ const createSolarFlowStates = async (adapter, productKey, deviceKey) => {
|
|
|
298
254
|
},
|
|
299
255
|
native: {}
|
|
300
256
|
}));
|
|
301
|
-
await (adapter == null ? void 0 : adapter.
|
|
257
|
+
await (adapter == null ? void 0 : adapter.extendObject(`${productKey}.${deviceKey}.pvPower2`, {
|
|
302
258
|
type: "state",
|
|
303
259
|
common: {
|
|
304
260
|
name: { de: "Leistung PV 2", en: "solar power channel 2" },
|
|
@@ -311,22 +267,19 @@ const createSolarFlowStates = async (adapter, productKey, deviceKey) => {
|
|
|
311
267
|
},
|
|
312
268
|
native: {}
|
|
313
269
|
}));
|
|
314
|
-
await (adapter == null ? void 0 : adapter.
|
|
315
|
-
|
|
316
|
-
{
|
|
317
|
-
|
|
318
|
-
|
|
319
|
-
|
|
320
|
-
|
|
321
|
-
|
|
322
|
-
|
|
323
|
-
|
|
324
|
-
|
|
325
|
-
|
|
326
|
-
|
|
327
|
-
}
|
|
328
|
-
));
|
|
329
|
-
await (adapter == null ? void 0 : adapter.extendObjectAsync(`${productKey}.${deviceKey}.remainOutTime`, {
|
|
270
|
+
await (adapter == null ? void 0 : adapter.extendObject(`${productKey}.${deviceKey}.remainInputTime`, {
|
|
271
|
+
type: "state",
|
|
272
|
+
common: {
|
|
273
|
+
name: { de: "Erwartete Ladedauer", en: "remaining charge time" },
|
|
274
|
+
type: "number",
|
|
275
|
+
desc: "remainInputTime",
|
|
276
|
+
role: "value.interval",
|
|
277
|
+
read: true,
|
|
278
|
+
write: false
|
|
279
|
+
},
|
|
280
|
+
native: {}
|
|
281
|
+
}));
|
|
282
|
+
await (adapter == null ? void 0 : adapter.extendObject(`${productKey}.${deviceKey}.remainOutTime`, {
|
|
330
283
|
type: "state",
|
|
331
284
|
common: {
|
|
332
285
|
name: {
|
|
@@ -341,7 +294,7 @@ const createSolarFlowStates = async (adapter, productKey, deviceKey) => {
|
|
|
341
294
|
},
|
|
342
295
|
native: {}
|
|
343
296
|
}));
|
|
344
|
-
await (adapter == null ? void 0 : adapter.
|
|
297
|
+
await (adapter == null ? void 0 : adapter.extendObject(`${productKey}.${deviceKey}.socSet`, {
|
|
345
298
|
type: "state",
|
|
346
299
|
common: {
|
|
347
300
|
name: { de: "Max. SOC", en: "max. SOC" },
|
|
@@ -354,7 +307,7 @@ const createSolarFlowStates = async (adapter, productKey, deviceKey) => {
|
|
|
354
307
|
},
|
|
355
308
|
native: {}
|
|
356
309
|
}));
|
|
357
|
-
await (adapter == null ? void 0 : adapter.
|
|
310
|
+
await (adapter == null ? void 0 : adapter.extendObject(`${productKey}.${deviceKey}.minSoc`, {
|
|
358
311
|
type: "state",
|
|
359
312
|
common: {
|
|
360
313
|
name: { de: "Min. SOC", en: "min. SOC" },
|
|
@@ -367,37 +320,22 @@ const createSolarFlowStates = async (adapter, productKey, deviceKey) => {
|
|
|
367
320
|
},
|
|
368
321
|
native: {}
|
|
369
322
|
}));
|
|
370
|
-
await (adapter == null ? void 0 : adapter.
|
|
323
|
+
await (adapter == null ? void 0 : adapter.extendObject(`${productKey}.${deviceKey}.inverseMaxPower`, {
|
|
371
324
|
type: "state",
|
|
372
325
|
common: {
|
|
373
|
-
name: {
|
|
374
|
-
|
|
375
|
-
|
|
326
|
+
name: {
|
|
327
|
+
de: "Maximal akzeptabler Eingang des PV-Mikrowechselrichters",
|
|
328
|
+
en: "highest acceptable input power"
|
|
329
|
+
},
|
|
330
|
+
type: "number",
|
|
331
|
+
desc: "inverseMaxPower",
|
|
376
332
|
role: "value",
|
|
377
333
|
read: true,
|
|
378
334
|
write: false
|
|
379
335
|
},
|
|
380
336
|
native: {}
|
|
381
337
|
}));
|
|
382
|
-
await (adapter == null ? void 0 : adapter.
|
|
383
|
-
`${productKey}.${deviceKey}.inverseMaxPower`,
|
|
384
|
-
{
|
|
385
|
-
type: "state",
|
|
386
|
-
common: {
|
|
387
|
-
name: {
|
|
388
|
-
de: "Maximal akzeptabler Eingang des PV-Mikrowechselrichters",
|
|
389
|
-
en: "highest acceptable input power"
|
|
390
|
-
},
|
|
391
|
-
type: "number",
|
|
392
|
-
desc: "inverseMaxPower",
|
|
393
|
-
role: "value",
|
|
394
|
-
read: true,
|
|
395
|
-
write: false
|
|
396
|
-
},
|
|
397
|
-
native: {}
|
|
398
|
-
}
|
|
399
|
-
));
|
|
400
|
-
await (adapter == null ? void 0 : adapter.extendObjectAsync(`${productKey}.${deviceKey}.wifiState`, {
|
|
338
|
+
await (adapter == null ? void 0 : adapter.extendObject(`${productKey}.${deviceKey}.wifiState`, {
|
|
401
339
|
type: "state",
|
|
402
340
|
common: {
|
|
403
341
|
name: {
|
|
@@ -412,7 +350,14 @@ const createSolarFlowStates = async (adapter, productKey, deviceKey) => {
|
|
|
412
350
|
},
|
|
413
351
|
native: {}
|
|
414
352
|
}));
|
|
415
|
-
await (
|
|
353
|
+
await (0, import_adapterService.updateSolarFlowState)(
|
|
354
|
+
adapter,
|
|
355
|
+
device.productKey,
|
|
356
|
+
device.deviceKey,
|
|
357
|
+
"wifiState",
|
|
358
|
+
device.wifiStatus ? "Connected" : "Disconnected"
|
|
359
|
+
);
|
|
360
|
+
await (adapter == null ? void 0 : adapter.extendObject(`${productKey}.${deviceKey}.hubState`, {
|
|
416
361
|
type: "state",
|
|
417
362
|
common: {
|
|
418
363
|
name: {
|
|
@@ -427,10 +372,230 @@ const createSolarFlowStates = async (adapter, productKey, deviceKey) => {
|
|
|
427
372
|
},
|
|
428
373
|
native: {}
|
|
429
374
|
}));
|
|
375
|
+
await (adapter == null ? void 0 : adapter.extendObject(`${productKey}.${deviceKey}.packNum`, {
|
|
376
|
+
type: "state",
|
|
377
|
+
common: {
|
|
378
|
+
name: {
|
|
379
|
+
de: "Anzahl der angeschlossenen Batterien",
|
|
380
|
+
en: "Number of batteries"
|
|
381
|
+
},
|
|
382
|
+
type: "number",
|
|
383
|
+
desc: "packNum",
|
|
384
|
+
role: "value",
|
|
385
|
+
read: true,
|
|
386
|
+
write: false
|
|
387
|
+
},
|
|
388
|
+
native: {}
|
|
389
|
+
}));
|
|
390
|
+
if (type == "ace") {
|
|
391
|
+
await (adapter == null ? void 0 : adapter.extendObject(`${productKey}.${deviceKey}.dcOutputPower`, {
|
|
392
|
+
type: "state",
|
|
393
|
+
common: {
|
|
394
|
+
name: {
|
|
395
|
+
de: "Aktuelle DC Ausgangsleistung",
|
|
396
|
+
en: "Current DC output power"
|
|
397
|
+
},
|
|
398
|
+
type: "number",
|
|
399
|
+
desc: "dcOutputPower",
|
|
400
|
+
role: "value.power",
|
|
401
|
+
read: true,
|
|
402
|
+
write: false,
|
|
403
|
+
unit: "W"
|
|
404
|
+
},
|
|
405
|
+
native: {}
|
|
406
|
+
}));
|
|
407
|
+
await (adapter == null ? void 0 : adapter.extendObject(`${productKey}.${deviceKey}.dcSwitch`, {
|
|
408
|
+
type: "state",
|
|
409
|
+
common: {
|
|
410
|
+
name: {
|
|
411
|
+
de: "DC Schalter",
|
|
412
|
+
en: "DC switch"
|
|
413
|
+
},
|
|
414
|
+
type: "boolean",
|
|
415
|
+
desc: "dcSwitch",
|
|
416
|
+
role: "value",
|
|
417
|
+
read: true,
|
|
418
|
+
write: false
|
|
419
|
+
},
|
|
420
|
+
native: {}
|
|
421
|
+
}));
|
|
422
|
+
}
|
|
423
|
+
await (adapter == null ? void 0 : adapter.extendObject(`${productKey}.${deviceKey}.inputLimit`, {
|
|
424
|
+
type: "state",
|
|
425
|
+
common: {
|
|
426
|
+
name: { de: "Limit der Eingangsleistung", en: "limit of input power" },
|
|
427
|
+
type: "number",
|
|
428
|
+
desc: "inputLimit",
|
|
429
|
+
role: "value.power",
|
|
430
|
+
read: true,
|
|
431
|
+
write: false,
|
|
432
|
+
unit: "W"
|
|
433
|
+
},
|
|
434
|
+
native: {}
|
|
435
|
+
}));
|
|
436
|
+
await (adapter == null ? void 0 : adapter.extendObject(`${productKey}.${deviceKey}.gridPower`, {
|
|
437
|
+
type: "state",
|
|
438
|
+
common: {
|
|
439
|
+
name: { de: "Leistung vom Stromnetz", en: "Grid power" },
|
|
440
|
+
type: "number",
|
|
441
|
+
desc: "gridPower",
|
|
442
|
+
role: "value.power",
|
|
443
|
+
read: true,
|
|
444
|
+
write: false,
|
|
445
|
+
unit: "W"
|
|
446
|
+
},
|
|
447
|
+
native: {}
|
|
448
|
+
}));
|
|
449
|
+
if (type == "solarflow") {
|
|
450
|
+
await (adapter == null ? void 0 : adapter.extendObject(`${productKey}.${deviceKey}.pass`, {
|
|
451
|
+
type: "state",
|
|
452
|
+
common: {
|
|
453
|
+
name: { de: "Bypass an/aus", en: "Bypass on/off" },
|
|
454
|
+
type: "boolean",
|
|
455
|
+
desc: "pass",
|
|
456
|
+
role: "value",
|
|
457
|
+
read: true,
|
|
458
|
+
write: false
|
|
459
|
+
},
|
|
460
|
+
native: {}
|
|
461
|
+
}));
|
|
462
|
+
await (adapter == null ? void 0 : adapter.extendObject(`${productKey}.${deviceKey}.autoRecover`, {
|
|
463
|
+
type: "state",
|
|
464
|
+
common: {
|
|
465
|
+
name: {
|
|
466
|
+
de: "Am n\xE4chsten Tag Bypass auf Automatik",
|
|
467
|
+
en: "Automatic recovery of bypass"
|
|
468
|
+
},
|
|
469
|
+
type: "boolean",
|
|
470
|
+
desc: "autoRecover",
|
|
471
|
+
role: "value",
|
|
472
|
+
read: true,
|
|
473
|
+
write: false
|
|
474
|
+
},
|
|
475
|
+
native: {}
|
|
476
|
+
}));
|
|
477
|
+
}
|
|
478
|
+
if (type == "solarflow" || type == "hyper") {
|
|
479
|
+
await (adapter == null ? void 0 : adapter.extendObject(`${productKey}.${deviceKey}.passMode`, {
|
|
480
|
+
type: "state",
|
|
481
|
+
common: {
|
|
482
|
+
name: {
|
|
483
|
+
de: "Einstellung des Bypass Modus",
|
|
484
|
+
en: "Setting of bypass mode"
|
|
485
|
+
},
|
|
486
|
+
type: "string",
|
|
487
|
+
desc: "passMode",
|
|
488
|
+
role: "value",
|
|
489
|
+
read: true,
|
|
490
|
+
write: false
|
|
491
|
+
},
|
|
492
|
+
native: {}
|
|
493
|
+
}));
|
|
494
|
+
await (adapter == null ? void 0 : adapter.extendObject(`${productKey}.${deviceKey}.pvBrand`, {
|
|
495
|
+
type: "state",
|
|
496
|
+
common: {
|
|
497
|
+
name: { de: "Wechselrichter Hersteller", en: "brand of inverter" },
|
|
498
|
+
type: "string",
|
|
499
|
+
desc: "pvBrand",
|
|
500
|
+
role: "value",
|
|
501
|
+
read: true,
|
|
502
|
+
write: false
|
|
503
|
+
},
|
|
504
|
+
native: {}
|
|
505
|
+
}));
|
|
506
|
+
await (adapter == null ? void 0 : adapter.extendObject(`${productKey}.${deviceKey}.outputHomePower`, {
|
|
507
|
+
type: "state",
|
|
508
|
+
common: {
|
|
509
|
+
name: { de: "Ausgangsleistung", en: "output power" },
|
|
510
|
+
type: "number",
|
|
511
|
+
desc: "outputHomePower",
|
|
512
|
+
role: "value.power",
|
|
513
|
+
read: true,
|
|
514
|
+
write: false,
|
|
515
|
+
unit: "W"
|
|
516
|
+
},
|
|
517
|
+
native: {}
|
|
518
|
+
}));
|
|
519
|
+
await (adapter == null ? void 0 : adapter.extendObject(`${productKey}.${deviceKey}.outputLimit`, {
|
|
520
|
+
type: "state",
|
|
521
|
+
common: {
|
|
522
|
+
name: { de: "Limit der Ausgangsleistung", en: "limit of output power" },
|
|
523
|
+
type: "number",
|
|
524
|
+
desc: "outputLimit",
|
|
525
|
+
role: "value.power",
|
|
526
|
+
read: true,
|
|
527
|
+
write: false,
|
|
528
|
+
unit: "W"
|
|
529
|
+
},
|
|
530
|
+
native: {}
|
|
531
|
+
}));
|
|
532
|
+
}
|
|
533
|
+
if (type == "ace" || type == "hyper") {
|
|
534
|
+
await (adapter == null ? void 0 : adapter.extendObject(`${productKey}.${deviceKey}.batteryElectric`, {
|
|
535
|
+
type: "state",
|
|
536
|
+
common: {
|
|
537
|
+
name: { de: "Batterie Leistung", en: "Battery electric" },
|
|
538
|
+
type: "number",
|
|
539
|
+
desc: "batteryElectric",
|
|
540
|
+
role: "value.power",
|
|
541
|
+
read: true,
|
|
542
|
+
write: false,
|
|
543
|
+
unit: "W"
|
|
544
|
+
},
|
|
545
|
+
native: {}
|
|
546
|
+
}));
|
|
547
|
+
await (adapter == null ? void 0 : adapter.extendObject(`${productKey}.${deviceKey}.gridInputPower`, {
|
|
548
|
+
type: "state",
|
|
549
|
+
common: {
|
|
550
|
+
name: {
|
|
551
|
+
de: "Aktuelle AC Eingangsleistung",
|
|
552
|
+
en: "current ac input power"
|
|
553
|
+
},
|
|
554
|
+
type: "number",
|
|
555
|
+
desc: "gridInputPower",
|
|
556
|
+
role: "value.power",
|
|
557
|
+
read: true,
|
|
558
|
+
write: false,
|
|
559
|
+
unit: "W"
|
|
560
|
+
},
|
|
561
|
+
native: {}
|
|
562
|
+
}));
|
|
563
|
+
await (adapter == null ? void 0 : adapter.extendObject(`${productKey}.${deviceKey}.acOutputPower`, {
|
|
564
|
+
type: "state",
|
|
565
|
+
common: {
|
|
566
|
+
name: {
|
|
567
|
+
de: "Aktuelle AC Ausgangsleistung",
|
|
568
|
+
en: "Current AC output power"
|
|
569
|
+
},
|
|
570
|
+
type: "number",
|
|
571
|
+
desc: "acOutputPower",
|
|
572
|
+
role: "value.power",
|
|
573
|
+
read: true,
|
|
574
|
+
write: false,
|
|
575
|
+
unit: "W"
|
|
576
|
+
},
|
|
577
|
+
native: {}
|
|
578
|
+
}));
|
|
579
|
+
await (adapter == null ? void 0 : adapter.extendObject(`${productKey}.${deviceKey}.acSwitch`, {
|
|
580
|
+
type: "state",
|
|
581
|
+
common: {
|
|
582
|
+
name: {
|
|
583
|
+
de: "AC Schalter",
|
|
584
|
+
en: "AC switch"
|
|
585
|
+
},
|
|
586
|
+
type: "boolean",
|
|
587
|
+
desc: "acSwitch",
|
|
588
|
+
role: "value",
|
|
589
|
+
read: true,
|
|
590
|
+
write: false
|
|
591
|
+
},
|
|
592
|
+
native: {}
|
|
593
|
+
}));
|
|
594
|
+
}
|
|
430
595
|
if (!adapter.config.useFallbackService) {
|
|
431
|
-
await (0, import_createControlStates.createControlStates)(adapter, productKey, deviceKey);
|
|
596
|
+
await (0, import_createControlStates.createControlStates)(adapter, productKey, deviceKey, type);
|
|
432
597
|
}
|
|
433
|
-
if (adapter.config.useCalculation) {
|
|
598
|
+
if (adapter.config.useCalculation && (type == "solarflow" || type == "hyper")) {
|
|
434
599
|
await (0, import_createCalculationStates.createCalculationStates)(adapter, productKey, deviceKey);
|
|
435
600
|
} else {
|
|
436
601
|
}
|