homebridge-melcloud-control 4.6.7-beta.8 → 4.7.0-beta.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/CHANGELOG.md +1 -0
- package/homebridge-ui/public/index.html +5 -10
- package/package.json +1 -1
- package/src/deviceatw.js +3 -3
- package/src/mqtt.js +2 -4
package/CHANGELOG.md
CHANGED
|
@@ -30,6 +30,7 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
|
|
|
30
30
|
|
|
31
31
|
- add support for ATW, fix [#233](https://github.com/grzegorz914/homebridge-melcloud-control/issues/233), thanks @bastienb99
|
|
32
32
|
- fix [#232](https://github.com/grzegorz914/homebridge-melcloud-control/issues/232)
|
|
33
|
+
- prevent login to melcloud if account type is set to disable
|
|
33
34
|
- config schema updated
|
|
34
35
|
- bump dependencies
|
|
35
36
|
- cleanup
|
|
@@ -117,8 +117,6 @@
|
|
|
117
117
|
|
|
118
118
|
// Tworzenie przycisków
|
|
119
119
|
accounts.forEach((account, i) => {
|
|
120
|
-
this.account = account;
|
|
121
|
-
|
|
122
120
|
const button = document.createElement("button");
|
|
123
121
|
button.type = "button";
|
|
124
122
|
button.id = `button${i}`;
|
|
@@ -143,7 +141,7 @@
|
|
|
143
141
|
formElements.passwd.value = account.passwd || '';
|
|
144
142
|
formElements.language.value = account.language || '0';
|
|
145
143
|
formElements.accountType.value = account.type || 'disabled';
|
|
146
|
-
formElements.logIn.disabled = !(account.name && account.user && account.passwd && account.language && account.type);
|
|
144
|
+
formElements.logIn.disabled = !(account.name && account.user && account.passwd && account.language && account.type !== 'disabled');
|
|
147
145
|
|
|
148
146
|
this.account = account;
|
|
149
147
|
});
|
|
@@ -155,15 +153,12 @@
|
|
|
155
153
|
// Jeden listener input dla całego formularza
|
|
156
154
|
document.getElementById('configForm').addEventListener('input', async () => {
|
|
157
155
|
const account = this.account;
|
|
158
|
-
if (!account) return;
|
|
159
|
-
|
|
160
156
|
account.name = formElements.name.value;
|
|
161
157
|
account.user = formElements.user.value;
|
|
162
158
|
account.passwd = formElements.passwd.value;
|
|
163
159
|
account.language = formElements.language.value;
|
|
164
160
|
account.type = formElements.accountType.value;
|
|
165
|
-
|
|
166
|
-
formElements.logIn.disabled = !(account.name && account.user && account.passwd && account.language && account.type);
|
|
161
|
+
formElements.logIn.disabled = !(account.name && account.user && account.passwd && account.language && account.type !== 'disabled');
|
|
167
162
|
|
|
168
163
|
await homebridge.updatePluginConfig(pluginConfig);
|
|
169
164
|
await homebridge.savePluginConfig();
|
|
@@ -247,7 +242,7 @@
|
|
|
247
242
|
|
|
248
243
|
// Login & Sync Logic
|
|
249
244
|
document.getElementById('logIn').addEventListener('click', async () => {
|
|
250
|
-
document.getElementById('logIn').
|
|
245
|
+
document.getElementById('logIn').disabled = true;
|
|
251
246
|
const lightingMode = homebridge.userCurrentLightingMode();
|
|
252
247
|
const fontColor = lightingMode === 'dark' ? 'black' : 'white';
|
|
253
248
|
|
|
@@ -262,6 +257,7 @@
|
|
|
262
257
|
|
|
263
258
|
if (!response.State) {
|
|
264
259
|
updateInfo('info', response.Info, 'red');
|
|
260
|
+
document.getElementById('logIn').disabled = false;
|
|
265
261
|
homebridge.hideSpinner();
|
|
266
262
|
return;
|
|
267
263
|
}
|
|
@@ -437,13 +433,12 @@
|
|
|
437
433
|
|
|
438
434
|
await homebridge.updatePluginConfig(pluginConfig);
|
|
439
435
|
await homebridge.savePluginConfig();
|
|
440
|
-
|
|
441
436
|
} catch (error) {
|
|
442
437
|
updateInfo('info', `Prepare config error`, "red");
|
|
443
438
|
updateInfo('info1', `Error: ${JSON.stringify(error)}`, "red");
|
|
444
439
|
} finally {
|
|
445
|
-
document.getElementById('logIn').className = "btn btn-secondary";
|
|
446
440
|
homebridge.hideSpinner();
|
|
441
|
+
document.getElementById('logIn').disabled = false;
|
|
447
442
|
}
|
|
448
443
|
});
|
|
449
444
|
})();
|
package/package.json
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"displayName": "MELCloud Control",
|
|
3
3
|
"name": "homebridge-melcloud-control",
|
|
4
|
-
"version": "4.
|
|
4
|
+
"version": "4.7.0-beta.0",
|
|
5
5
|
"description": "Homebridge plugin to control Mitsubishi Air Conditioner, Heat Pump and Energy Recovery Ventilation.",
|
|
6
6
|
"license": "MIT",
|
|
7
7
|
"author": "grzegorz914",
|
package/src/deviceatw.js
CHANGED
|
@@ -1807,7 +1807,7 @@ class DeviceAtw extends EventEmitter {
|
|
|
1807
1807
|
let currentOperationMode = 0;
|
|
1808
1808
|
let targetOperationMode = 0;
|
|
1809
1809
|
let roomTemperature = null;
|
|
1810
|
-
let setTemperature =
|
|
1810
|
+
let setTemperature = null;
|
|
1811
1811
|
let lockPhysicalControl = 0;
|
|
1812
1812
|
let operationModeSetPropsMinValue = 0;
|
|
1813
1813
|
let operationModeSetPropsMaxValue = 0;
|
|
@@ -1925,7 +1925,8 @@ class DeviceAtw extends EventEmitter {
|
|
|
1925
1925
|
{ type: Characteristic.TemperatureDisplayUnits, value: obj.useFahrenheit }
|
|
1926
1926
|
);
|
|
1927
1927
|
|
|
1928
|
-
if (heatCoolModes === 0 || heatCoolModes ===
|
|
1928
|
+
if (heatCoolModes === 0 || heatCoolModes === 1) characteristics.push({ type: Characteristic.HeatingThresholdTemperature, value: setTemperature });
|
|
1929
|
+
if ((heatCoolModes === 0 || heatCoolModes === 2) && i !== caseHotWater) characteristics.push({ type: Characteristic.CoolingThresholdTemperature, value: setTemperature });
|
|
1929
1930
|
break;
|
|
1930
1931
|
case 2: //Thermostat
|
|
1931
1932
|
switch (i) {
|
|
@@ -2152,7 +2153,6 @@ class DeviceAtw extends EventEmitter {
|
|
|
2152
2153
|
break;
|
|
2153
2154
|
}
|
|
2154
2155
|
|
|
2155
|
-
|
|
2156
2156
|
//add every sensor to array
|
|
2157
2157
|
const sensor = {
|
|
2158
2158
|
name: name,
|
package/src/mqtt.js
CHANGED
|
@@ -38,10 +38,8 @@ class Mqtt extends EventEmitter {
|
|
|
38
38
|
}
|
|
39
39
|
});
|
|
40
40
|
|
|
41
|
-
// MQTT v5 subscription results
|
|
42
|
-
|
|
43
|
-
this.emit('subscribed', `MQTT Subscribe topic: ${subscribeTopic}`);
|
|
44
|
-
|
|
41
|
+
// MQTT v5 subscription results
|
|
42
|
+
this.emit('connected', `MQTT Subscribe topic: ${subscribeTopic}`);
|
|
45
43
|
} catch (error) {
|
|
46
44
|
if (config.logWarn) this.emit('warn', `MQTT Subscribe error: ${error}`);
|
|
47
45
|
}
|