iobroker.bshb 0.2.8 → 0.3.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 +6 -2
- package/build/bshb-controller.js +2 -0
- package/build/bshb-controller.js.map +1 -1
- package/build/bshb-definition.js.map +1 -1
- package/build/controller/handler/bshb-automation-handler.js +226 -0
- package/build/controller/handler/bshb-automation-handler.js.map +1 -0
- package/io-package.json +15 -28
- package/package.json +20 -19
package/README.md
CHANGED
|
@@ -33,6 +33,12 @@ If you want to support the work I would appreciate a small donation. This is 100
|
|
|
33
33
|
|
|
34
34
|
## Changelog
|
|
35
35
|
|
|
36
|
+
### 0.3.0
|
|
37
|
+
* (holomekc) Support for user automations
|
|
38
|
+
|
|
39
|
+
### 0.2.8
|
|
40
|
+
* (holomekc) Improve stability and update dependencies
|
|
41
|
+
|
|
36
42
|
### 0.2.7
|
|
37
43
|
* (holomekc) Update dependencies and fix rate limiting
|
|
38
44
|
|
|
@@ -50,8 +56,6 @@ If you want to support the work I would appreciate a small donation. This is 100
|
|
|
50
56
|
* (holomekc) Add support for climate schedules with two options to activate them
|
|
51
57
|
* (holomekc) Update intrusion detection so that more information is shown
|
|
52
58
|
* (holomekc) Update intrusion detection and climate schedule switches stay active now
|
|
53
|
-
|
|
54
|
-
### 0.2.2
|
|
55
59
|
* (holomekc) Support for rooms. Configuration to ignore server certificates. Allow ttesting controller 2 and can prevent issues in case certificates expire. Less secure though.
|
|
56
60
|
|
|
57
61
|
### 0.2.1
|
package/build/bshb-controller.js
CHANGED
|
@@ -20,6 +20,7 @@ const bshb_device_status_update_handler_1 = require("./controller/handler/bshb-d
|
|
|
20
20
|
const bshb_climate_handler_1 = require("./controller/handler/bshb-climate-handler");
|
|
21
21
|
const bshb_user_defined_states_handler_1 = require("./controller/handler/bshb-user-defined-states-handler");
|
|
22
22
|
const rate_limiter_1 = require("./rate-limiter");
|
|
23
|
+
const bshb_automation_handler_1 = require("./controller/handler/bshb-automation-handler");
|
|
23
24
|
/**
|
|
24
25
|
* This controller encapsulates bosch-smart-home-bridge and provides it to iobroker.bshb
|
|
25
26
|
*
|
|
@@ -56,6 +57,7 @@ class BshbController {
|
|
|
56
57
|
this.handlers = [];
|
|
57
58
|
this.handlers.push(new bshb_general_update_handler_1.BshbGeneralUpdateHandler(this.bshb, this.boschSmartHomeBridge));
|
|
58
59
|
this.handlers.push(new bshb_scenario_handler_1.BshbScenarioHandler(this.bshb, this.boschSmartHomeBridge));
|
|
60
|
+
this.handlers.push(new bshb_automation_handler_1.BshbAutomationHandler(this.bshb, this.boschSmartHomeBridge));
|
|
59
61
|
this.handlers.push(new bshb_user_defined_states_handler_1.BshbUserDefinedStatesHandler(this.bshb, this.boschSmartHomeBridge));
|
|
60
62
|
this.handlers.push(new bshb_device_status_update_handler_1.BshbDeviceStatusUpdateHandler(this.bshb, this.boschSmartHomeBridge));
|
|
61
63
|
this.handlers.push(new bshb_messages_handler_1.BshbMessagesHandler(this.bshb, this.boschSmartHomeBridge));
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"bshb-controller.js","sourceRoot":"","sources":["../src/bshb-controller.ts"],"names":[],"mappings":";;;AAAA,qEAA0F;AAE1F,+CAAyC;AACzC,+BAAqG;AACrG,8CAAiE;AACjE,mCAA8B;AAE9B,sFAA+E;AAC/E,kFAA2E;AAC3E,sFAA+E;AAC/E,sGAA6F;AAC7F,4GAAoG;AACpG,kGAA0F;AAC1F,4GAAmG;AACnG,gGAAwF;AACxF,4FAAoF;AACpF,8EAAuE;AACvE,8GAAqG;AACrG,oFAA6E;AAC7E,4GAAmG;AACnG,iDAAyC;
|
|
1
|
+
{"version":3,"file":"bshb-controller.js","sourceRoot":"","sources":["../src/bshb-controller.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"bshb-definition.js","sourceRoot":"","sources":["../src/bshb-definition.ts"],"names":[],"mappings":";;;AAAA;;;;;GAKG;AACH,8CAAyC;AACzC,oDAAgD;AAChD,8CAAyC;AACzC,gDAA2C;AAC3C,8CAAyC;AAEzC,MAAa,cAAc;IAEhB,MAAM,CAAC,iBAAiB,CAAC,KAAa;QACzC,MAAM,IAAI,GAAG,oBAAS,CAAC,KAAK,CAAC,CAAC;QAC9B,IAAI,IAAI,KAAK,IAAI,IAAI,OAAO,IAAI,KAAK,WAAW,EAAE,CAAC;YAC/C,OAAO,IAAI,CAAC;QAChB,CAAC;QACD,OAAO,SAA8B,CAAC;IAC1C,CAAC;IAED;;;;;;;OAOG;IACI,MAAM,CAAC,cAAc,CAAC,IAAY,EAAE,GAAW;QAClD,MAAM,SAAS,GAAG,aAAK,CAAC,IAAI,CAAC,CAAC;QAE9B,IAAI,SAAS,KAAK,IAAI,IAAI,OAAO,SAAS,KAAK,WAAW,EAAE,CAAC;YACzD,MAAM,KAAK,GAAG,SAAS,CAAC,GAAG,CAAC,CAAC;YAE7B,IAAI,KAAK,KAAK,IAAI,IAAI,OAAO,KAAK,KAAK,WAAW,EAAE,CAAC;gBACjD,OAAO,KAAK,CAAC;YACjB,CAAC;QACL,CAAC;QAED,OAAO,IAAI,CAAC;IAChB,CAAC;IAED;;;;OAIG;IACI,MAAM,CAAC,aAAa,CAAC,KAAU;QAClC,IAAI,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE,CAAC;YACvB,OAAO,OAAO,CAAC;QACnB,CAAC;QACD,OAAO,CAAC,OAAO,KAAK,
|
|
1
|
+
{"version":3,"file":"bshb-definition.js","sourceRoot":"","sources":["../src/bshb-definition.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,226 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.BshbAutomationHandler = void 0;
|
|
4
|
+
const bshb_handler_1 = require("./bshb-handler");
|
|
5
|
+
const rxjs_1 = require("rxjs");
|
|
6
|
+
const operators_1 = require("rxjs/operators");
|
|
7
|
+
/**
|
|
8
|
+
* This handler is used to detect automations of bshc
|
|
9
|
+
*
|
|
10
|
+
* @author Christopher Holomek
|
|
11
|
+
* @since 18.01.2020
|
|
12
|
+
*/
|
|
13
|
+
class BshbAutomationHandler extends bshb_handler_1.BshbHandler {
|
|
14
|
+
automationRegex = /bshb\.\d+\.automations\.(.+?)\.(.+)/;
|
|
15
|
+
handleDetection() {
|
|
16
|
+
return this.detectAutomations().pipe((0, rxjs_1.tap)({
|
|
17
|
+
subscribe: () => this.bshb.log.info('Start detecting automations...'),
|
|
18
|
+
finalize: () => this.bshb.log.info('Detecting automations finished')
|
|
19
|
+
}));
|
|
20
|
+
}
|
|
21
|
+
handleBshcUpdate(resultEntry) {
|
|
22
|
+
if (resultEntry['@type'] === 'automationRule') {
|
|
23
|
+
this.detectAutomations().subscribe();
|
|
24
|
+
return true;
|
|
25
|
+
}
|
|
26
|
+
return false;
|
|
27
|
+
}
|
|
28
|
+
sendUpdateToBshc(id, state) {
|
|
29
|
+
const match = this.automationRegex.exec(id);
|
|
30
|
+
let result = (0, rxjs_1.of)(false);
|
|
31
|
+
if (match) {
|
|
32
|
+
const automationId = match[1];
|
|
33
|
+
const key = match[2];
|
|
34
|
+
this.bshb.log.debug(`Found automation with id=${automationId}, key=${key} and value=${state.val}`);
|
|
35
|
+
if (key === 'trigger') {
|
|
36
|
+
result = this.getBshcClient().triggerAutomation(automationId, { timeout: this.long_timeout })
|
|
37
|
+
.pipe((0, operators_1.delay)(1000), (0, rxjs_1.switchMap)(() => (0, rxjs_1.from)(this.bshb.setStateAsync(id, {
|
|
38
|
+
val: false,
|
|
39
|
+
ack: true
|
|
40
|
+
}))), (0, rxjs_1.tap)(this.handleBshcSendError(`id=${automationId}, value=${state.val}, key=${key}, automationId=${automationId}`)), (0, rxjs_1.map)(() => true));
|
|
41
|
+
}
|
|
42
|
+
else {
|
|
43
|
+
const idPrefix = 'automations.' + automationId;
|
|
44
|
+
const data = {};
|
|
45
|
+
data['@type'] = 'automationRule';
|
|
46
|
+
data.id = automationId;
|
|
47
|
+
result = (0, rxjs_1.from)(this.addAutomationValue(idPrefix, 'enabled', data)
|
|
48
|
+
.then(() => this.addAutomationValue(idPrefix, 'name', data))
|
|
49
|
+
.then(() => this.addAutomationValue(idPrefix, 'automationConditions', data, val => JSON.parse(val)))
|
|
50
|
+
.then(() => this.addAutomationValue(idPrefix, 'automationTriggers', data, val => JSON.parse(val)))
|
|
51
|
+
.then(() => this.addAutomationValue(idPrefix, 'automationActions', data, val => JSON.parse(val)))
|
|
52
|
+
.then(() => this.addAutomationValue(idPrefix, 'conditionLogicalOp', data)))
|
|
53
|
+
.pipe((0, rxjs_1.switchMap)(() => this.getBshcClient().setAutomation(automationId, data, { timeout: this.long_timeout })), (0, rxjs_1.tap)(this.handleBshcSendError(`id=${automationId}, value=${state.val}, data=${JSON.stringify(data)}`)), (0, rxjs_1.map)(() => true));
|
|
54
|
+
}
|
|
55
|
+
}
|
|
56
|
+
return result;
|
|
57
|
+
}
|
|
58
|
+
async addAutomationValue(idPrefix, key, data, mapFnc) {
|
|
59
|
+
let state = await this.bshb.getStateAsync(`${idPrefix}.${key}`);
|
|
60
|
+
if (mapFnc) {
|
|
61
|
+
return (data[key] = mapFnc((state).val));
|
|
62
|
+
}
|
|
63
|
+
else {
|
|
64
|
+
return (data[key] = (state).val);
|
|
65
|
+
}
|
|
66
|
+
}
|
|
67
|
+
detectAutomations() {
|
|
68
|
+
return this.setObjectNotExistsAsync('automations', {
|
|
69
|
+
type: 'folder',
|
|
70
|
+
common: {
|
|
71
|
+
name: 'automations',
|
|
72
|
+
read: true
|
|
73
|
+
},
|
|
74
|
+
native: {
|
|
75
|
+
id: 'automations'
|
|
76
|
+
},
|
|
77
|
+
}).pipe((0, rxjs_1.switchMap)(() => this.getBshcClient().getAutomations(undefined, { timeout: this.long_timeout })), (0, rxjs_1.switchMap)(response => this.deleteMissingAutomations((response.parsedResponse)).pipe((0, rxjs_1.last)(undefined, void 0), (0, rxjs_1.switchMap)(() => (0, rxjs_1.from)(response.parsedResponse)))), (0, rxjs_1.mergeMap)(automation => {
|
|
78
|
+
this.bshb.log.debug(`Found automation ${automation.id}, ${automation.name}`);
|
|
79
|
+
const id = 'automations.' + automation.id;
|
|
80
|
+
// we overwrite object here on purpose because we reflect 1-1 the data from controller here.
|
|
81
|
+
return (0, rxjs_1.from)(this.bshb.setObjectAsync(id, {
|
|
82
|
+
type: 'folder',
|
|
83
|
+
common: {
|
|
84
|
+
name: automation.name,
|
|
85
|
+
type: 'boolean',
|
|
86
|
+
role: 'switch',
|
|
87
|
+
write: true,
|
|
88
|
+
read: false
|
|
89
|
+
},
|
|
90
|
+
native: {
|
|
91
|
+
id: automation.id,
|
|
92
|
+
name: automation.name
|
|
93
|
+
},
|
|
94
|
+
})).pipe((0, rxjs_1.switchMap)(() => (0, rxjs_1.from)(this.bshb.setObjectAsync(`${id}.enabled`, {
|
|
95
|
+
type: 'state',
|
|
96
|
+
common: {
|
|
97
|
+
name: 'enabled',
|
|
98
|
+
type: 'boolean',
|
|
99
|
+
role: 'switch',
|
|
100
|
+
write: true,
|
|
101
|
+
read: true
|
|
102
|
+
},
|
|
103
|
+
native: {
|
|
104
|
+
id: `${id}.enabled`,
|
|
105
|
+
name: 'enabled'
|
|
106
|
+
},
|
|
107
|
+
}))), (0, rxjs_1.tap)(() => this.bshb.setState(`${id}.enabled`, { val: automation.enabled, ack: true })), (0, rxjs_1.switchMap)(() => (0, rxjs_1.from)(this.bshb.setObjectAsync(`${id}.name`, {
|
|
108
|
+
type: 'state',
|
|
109
|
+
common: {
|
|
110
|
+
name: 'name',
|
|
111
|
+
type: 'string',
|
|
112
|
+
role: 'text',
|
|
113
|
+
write: true,
|
|
114
|
+
read: true
|
|
115
|
+
},
|
|
116
|
+
native: {
|
|
117
|
+
id: `${id}.name`,
|
|
118
|
+
name: 'name'
|
|
119
|
+
},
|
|
120
|
+
}))), (0, rxjs_1.tap)(() => this.bshb.setState(`${id}.name`, { val: automation.name, ack: true })), (0, rxjs_1.switchMap)(() => (0, rxjs_1.from)(this.bshb.setObjectAsync(`${id}.trigger`, {
|
|
121
|
+
type: 'state',
|
|
122
|
+
common: {
|
|
123
|
+
name: 'trigger',
|
|
124
|
+
type: 'boolean',
|
|
125
|
+
role: 'switch',
|
|
126
|
+
write: true,
|
|
127
|
+
read: false
|
|
128
|
+
},
|
|
129
|
+
native: {
|
|
130
|
+
id: `${id}.trigger`,
|
|
131
|
+
name: 'trigger'
|
|
132
|
+
},
|
|
133
|
+
}))), (0, rxjs_1.tap)(() => this.bshb.setState(`${id}.trigger`, { val: false, ack: true })), (0, rxjs_1.switchMap)(() => (0, rxjs_1.from)(this.bshb.setObjectAsync(`${id}.automationConditions`, {
|
|
134
|
+
type: 'state',
|
|
135
|
+
common: {
|
|
136
|
+
name: 'automationConditions',
|
|
137
|
+
type: 'array',
|
|
138
|
+
role: 'list',
|
|
139
|
+
write: true,
|
|
140
|
+
read: true
|
|
141
|
+
},
|
|
142
|
+
native: {
|
|
143
|
+
id: `${id}.automationConditions`,
|
|
144
|
+
name: 'automationConditions'
|
|
145
|
+
},
|
|
146
|
+
}))), (0, rxjs_1.tap)(() => this.bshb.setState(`${id}.automationConditions`, {
|
|
147
|
+
val: this.mapValueToStorage(automation.automationConditions),
|
|
148
|
+
ack: true
|
|
149
|
+
})), (0, rxjs_1.switchMap)(() => (0, rxjs_1.from)(this.bshb.setObjectAsync(`${id}.automationTriggers`, {
|
|
150
|
+
type: 'state',
|
|
151
|
+
common: {
|
|
152
|
+
name: 'automationTriggers',
|
|
153
|
+
type: 'array',
|
|
154
|
+
role: 'list',
|
|
155
|
+
write: true,
|
|
156
|
+
read: true
|
|
157
|
+
},
|
|
158
|
+
native: {
|
|
159
|
+
id: `${id}.automationTriggers`,
|
|
160
|
+
name: 'automationTriggers'
|
|
161
|
+
},
|
|
162
|
+
}))), (0, rxjs_1.tap)(() => this.bshb.setState(`${id}.automationTriggers`, {
|
|
163
|
+
val: this.mapValueToStorage(automation.automationTriggers),
|
|
164
|
+
ack: true
|
|
165
|
+
})), (0, rxjs_1.switchMap)(() => (0, rxjs_1.from)(this.bshb.setObjectAsync(`${id}.automationActions`, {
|
|
166
|
+
type: 'state',
|
|
167
|
+
common: {
|
|
168
|
+
name: 'automationActions',
|
|
169
|
+
type: 'array',
|
|
170
|
+
role: 'list',
|
|
171
|
+
write: true,
|
|
172
|
+
read: true
|
|
173
|
+
},
|
|
174
|
+
native: {
|
|
175
|
+
id: `${id}.automationActions`,
|
|
176
|
+
name: 'automationActions'
|
|
177
|
+
},
|
|
178
|
+
}))), (0, rxjs_1.tap)(() => this.bshb.setState(`${id}.automationActions`, {
|
|
179
|
+
val: this.mapValueToStorage(automation.automationActions),
|
|
180
|
+
ack: true
|
|
181
|
+
})), (0, rxjs_1.switchMap)(() => (0, rxjs_1.from)(this.bshb.setObjectAsync(`${id}.conditionLogicalOp`, {
|
|
182
|
+
type: 'state',
|
|
183
|
+
common: {
|
|
184
|
+
name: 'conditionLogicalOp',
|
|
185
|
+
type: 'string',
|
|
186
|
+
role: 'text',
|
|
187
|
+
write: true,
|
|
188
|
+
read: true
|
|
189
|
+
},
|
|
190
|
+
native: {
|
|
191
|
+
id: `${id}.conditionLogicalOp`,
|
|
192
|
+
name: 'conditionLogicalOp'
|
|
193
|
+
},
|
|
194
|
+
}))), (0, rxjs_1.tap)(() => this.bshb.setState(`${id}.conditionLogicalOp`, {
|
|
195
|
+
val: automation.conditionLogicalOp,
|
|
196
|
+
ack: true
|
|
197
|
+
})));
|
|
198
|
+
}), (0, rxjs_1.switchMap)(() => (0, rxjs_1.of)(undefined)));
|
|
199
|
+
}
|
|
200
|
+
deleteMissingAutomations(automations) {
|
|
201
|
+
return (0, rxjs_1.from)(this.bshb.getStatesOfAsync('automations', '')).pipe((0, rxjs_1.switchMap)(objects => (0, rxjs_1.from)(objects)), (0, rxjs_1.switchMap)(object => {
|
|
202
|
+
let found = false;
|
|
203
|
+
for (let i = 0; i < automations.length; i++) {
|
|
204
|
+
if (object.native.id === automations[i].id) {
|
|
205
|
+
// found automation
|
|
206
|
+
found = true;
|
|
207
|
+
break;
|
|
208
|
+
}
|
|
209
|
+
}
|
|
210
|
+
if (!found) {
|
|
211
|
+
return (0, rxjs_1.from)(this.bshb.deleteStateAsync('automations', '', object.native.id)).pipe((0, rxjs_1.tap)(() => this.bshb.log.info(`automation with id=${object.native.id} removed because it does not exist anymore.`)), (0, operators_1.catchError)(err => {
|
|
212
|
+
this.bshb.log.error(`Could not delete automation with id=${object.native.id} because: ` + err);
|
|
213
|
+
return (0, rxjs_1.of)(undefined);
|
|
214
|
+
}));
|
|
215
|
+
}
|
|
216
|
+
else {
|
|
217
|
+
return (0, rxjs_1.of)(undefined);
|
|
218
|
+
}
|
|
219
|
+
}));
|
|
220
|
+
}
|
|
221
|
+
name() {
|
|
222
|
+
return 'automationHandler';
|
|
223
|
+
}
|
|
224
|
+
}
|
|
225
|
+
exports.BshbAutomationHandler = BshbAutomationHandler;
|
|
226
|
+
//# sourceMappingURL=bshb-automation-handler.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"bshb-automation-handler.js","sourceRoot":"","sources":["../../../src/controller/handler/bshb-automation-handler.ts"],"names":[],"mappings":"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"}
|
package/io-package.json
CHANGED
|
@@ -1,8 +1,21 @@
|
|
|
1
1
|
{
|
|
2
2
|
"common": {
|
|
3
3
|
"name": "bshb",
|
|
4
|
-
"version": "0.
|
|
4
|
+
"version": "0.3.0",
|
|
5
5
|
"news": {
|
|
6
|
+
"0.3.0": {
|
|
7
|
+
"de": "Unterstützung für Automationen.",
|
|
8
|
+
"en": "Support for automations.",
|
|
9
|
+
"ru": "Поддержка автоматики.",
|
|
10
|
+
"pt": "Suporte para automatizações.",
|
|
11
|
+
"nl": "Ondersteuning voor automatiseringen.",
|
|
12
|
+
"fr": "Prise en charge des automatismes.",
|
|
13
|
+
"it": "Supporto per le automazioni.",
|
|
14
|
+
"es": "Soporte para automatizaciones.",
|
|
15
|
+
"pl": "Wsparcie dla automatyzacji.",
|
|
16
|
+
"uk": "Підтримка автоматизації.",
|
|
17
|
+
"zh-cn": "支持自动化。"
|
|
18
|
+
},
|
|
6
19
|
"0.2.8": {
|
|
7
20
|
"de": "Aktualisierung der Abhängigkeiten und Stabilisierungsmaßnahmen.",
|
|
8
21
|
"en": "Updating dependencies and stabilization measures.",
|
|
@@ -81,19 +94,6 @@
|
|
|
81
94
|
"uk": "Оновлення інтерфейсу контролера, кліматичного розкладу та інші покращення.",
|
|
82
95
|
"zh-cn": "更新控制器界面,气候时间表和其他改进。"
|
|
83
96
|
},
|
|
84
|
-
"0.2.2": {
|
|
85
|
-
"de": "Unterstützung für Räume.",
|
|
86
|
-
"en": "Support for rooms.",
|
|
87
|
-
"ru": "Поддержка помещений.",
|
|
88
|
-
"pt": "Apoio aos quartos.",
|
|
89
|
-
"nl": "Steun voor kamers.",
|
|
90
|
-
"fr": "Soutien pour les salles.",
|
|
91
|
-
"it": "Supporto per le stanze.",
|
|
92
|
-
"es": "Soporte para salas.",
|
|
93
|
-
"pl": "Wsparcie dla pomieszczeń.",
|
|
94
|
-
"uk": "Підтримка номерів.",
|
|
95
|
-
"zh-cn": "对房间的支持。"
|
|
96
|
-
},
|
|
97
97
|
"0.2.1": {
|
|
98
98
|
"de": "Unterstützung für weitere Dienste.",
|
|
99
99
|
"en": "Support for additional services.",
|
|
@@ -119,19 +119,6 @@
|
|
|
119
119
|
"pl": "Rozwiązano problemy z funkcją OpenDoorsAndWindows.",
|
|
120
120
|
"uk": "Виправлено проблеми з openDoorsAndWindows.",
|
|
121
121
|
"zh-cn": "修正了openDoorsAndWindows的问题。"
|
|
122
|
-
},
|
|
123
|
-
"0.1.19": {
|
|
124
|
-
"de": "Probleme beim initialen Setup behoben.",
|
|
125
|
-
"en": "Problems with initial setup fixed.",
|
|
126
|
-
"ru": "Исправлены проблемы с начальной настройкой.",
|
|
127
|
-
"pt": "Problemas com a configuração inicial resolvidos.",
|
|
128
|
-
"nl": "Problemen met de eerste installatie opgelost.",
|
|
129
|
-
"fr": "Correction de problèmes lors de l'installation initiale.",
|
|
130
|
-
"it": "Problemi con la configurazione iniziale risolti.",
|
|
131
|
-
"es": "Se han solucionado los problemas de la configuración inicial.",
|
|
132
|
-
"pl": "Naprawiono problemy z początkową konfiguracją.",
|
|
133
|
-
"uk": "Виправлено проблеми з початковим налаштуванням.",
|
|
134
|
-
"zh-cn": "初始设置的问题得到解决。"
|
|
135
122
|
}
|
|
136
123
|
},
|
|
137
124
|
"titleLang": {
|
|
@@ -184,7 +171,7 @@
|
|
|
184
171
|
"dataSource": "push",
|
|
185
172
|
"dependencies": [
|
|
186
173
|
{
|
|
187
|
-
"js-controller": ">=
|
|
174
|
+
"js-controller": ">=5.0.19"
|
|
188
175
|
}
|
|
189
176
|
],
|
|
190
177
|
"globalDependencies": [
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "iobroker.bshb",
|
|
3
|
-
"version": "0.
|
|
3
|
+
"version": "0.3.0",
|
|
4
4
|
"description": "Connects Bosch Smart Home Interface-Processes to ioBroker",
|
|
5
5
|
"author": {
|
|
6
6
|
"name": "Christopher Holomek",
|
|
@@ -21,30 +21,31 @@
|
|
|
21
21
|
"node": ">= 18"
|
|
22
22
|
},
|
|
23
23
|
"dependencies": {
|
|
24
|
-
"@iobroker/adapter-core": "3.1.
|
|
25
|
-
"bosch-smart-home-bridge": "1.
|
|
24
|
+
"@iobroker/adapter-core": "^3.1.6",
|
|
25
|
+
"bosch-smart-home-bridge": "1.6.0",
|
|
26
26
|
"rxjs": "7.8.1"
|
|
27
27
|
},
|
|
28
28
|
"devDependencies": {
|
|
29
|
-
"@iobroker/adapter-dev": "1.3.0",
|
|
30
|
-
"@iobroker/testing": "4.1.3",
|
|
31
|
-
"@types/chai": "4.3.16",
|
|
32
|
-
"@types/mocha": "10.0.6",
|
|
33
|
-
"@types/node": "20.12.8",
|
|
34
|
-
"@types/proxyquire": "1.3.31",
|
|
35
|
-
"@typescript-eslint/eslint-plugin": "7.8.0",
|
|
36
|
-
"@typescript-eslint/parser": "7.8.0",
|
|
29
|
+
"@iobroker/adapter-dev": "^1.3.0",
|
|
30
|
+
"@iobroker/testing": "^4.1.3",
|
|
37
31
|
"@tsconfig/node20": "20.1.4",
|
|
38
|
-
"chai": "
|
|
39
|
-
"
|
|
40
|
-
"
|
|
41
|
-
"
|
|
32
|
+
"@types/chai": "4.3.17",
|
|
33
|
+
"@types/mocha": "10.0.7",
|
|
34
|
+
"@types/node": "20.14.8",
|
|
35
|
+
"@types/proxyquire": "1.3.31",
|
|
36
|
+
"@typescript-eslint/eslint-plugin": "8.0.1",
|
|
37
|
+
"@typescript-eslint/parser": "8.0.1",
|
|
38
|
+
"chai": "4.5.0",
|
|
39
|
+
"eslint": "9.9.0",
|
|
40
|
+
"express": "4.19.2",
|
|
41
|
+
"globals": "^15.9.0",
|
|
42
|
+
"mocha": "10.7.3",
|
|
43
|
+
"nyc": "17.0.0",
|
|
42
44
|
"proxyquire": "2.1.3",
|
|
43
|
-
"rimraf": "
|
|
45
|
+
"rimraf": "6.0.1",
|
|
44
46
|
"source-map-support": "0.5.21",
|
|
45
47
|
"ts-node": "10.9.2",
|
|
46
|
-
"typescript": "5.4
|
|
47
|
-
"express": "4.19.2"
|
|
48
|
+
"typescript": "5.5.4"
|
|
48
49
|
},
|
|
49
50
|
"main": "build/main.js",
|
|
50
51
|
"files": [
|
|
@@ -68,7 +69,7 @@
|
|
|
68
69
|
"test": "npm run test:ts && npm run test:package",
|
|
69
70
|
"check": "tsc --noEmit",
|
|
70
71
|
"coverage": "nyc npm run test:ts",
|
|
71
|
-
"lint": "eslint
|
|
72
|
+
"lint": "eslint",
|
|
72
73
|
"release": "release-script",
|
|
73
74
|
"pack": "npm run build && npm pack",
|
|
74
75
|
"translate": "translate-adapter"
|