homebridge-melcloud-control 3.3.21-beta.5 → 3.3.21
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 +3 -1
- package/package.json +1 -1
- package/src/constants.json +7 -7
- package/src/deviceata.js +2 -2
- package/src/melcloudatw.js +8 -1
- package/src/melclouderv.js +8 -1
package/README.md
CHANGED
|
@@ -28,7 +28,8 @@ Homebridge plugin for Air Conditioner, Heat Pump and Energy Recovery Ventilation
|
|
|
28
28
|
### About The Plugin
|
|
29
29
|
|
|
30
30
|
* All devices are detected automatically.
|
|
31
|
-
*
|
|
31
|
+
* Control devices over MELCloud server.
|
|
32
|
+
* Support multiple accounts, buildings, floors, areas.
|
|
32
33
|
* Support temperature display units `Celsius/Fahrenheit`.
|
|
33
34
|
* Support assing inividual operating mode for `Heat/Cool/Auto`.
|
|
34
35
|
* Support direct `Presets` control using extra `Buttons`, switch it to `OFF` restore previous device state.
|
|
@@ -36,6 +37,7 @@ Homebridge plugin for Air Conditioner, Heat Pump and Energy Recovery Ventilation
|
|
|
36
37
|
* Support detect all device states using extra `Sensors`.
|
|
37
38
|
* Support automations, shortcuts and Siri.
|
|
38
39
|
* Support external integrations, [RESTFul](https://github.com/grzegorz914/homebridge-melcloud-control?tab=readme-ov-file#restful-integration), [MQTT](https://github.com/grzegorz914/homebridge-melcloud-control?tab=readme-ov-file#mqtt-integration).
|
|
40
|
+
* Control devices over local network You need use ESP module and [Tasmota Control](https://github.com/grzegorz914/homebridge-tasmota-control) plugin.
|
|
39
41
|
|
|
40
42
|
### Control Mode
|
|
41
43
|
|
package/package.json
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"displayName": "MELCloud Control",
|
|
3
3
|
"name": "homebridge-melcloud-control",
|
|
4
|
-
"version": "3.3.21
|
|
4
|
+
"version": "3.3.21",
|
|
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/constants.json
CHANGED
package/src/deviceata.js
CHANGED
|
@@ -597,8 +597,8 @@ class DeviceAta extends EventEmitter {
|
|
|
597
597
|
const info = hasOutdoorTemperature && outdoorTemperature !== null ? this.emit('message', `Outdoor temperature: ${outdoorTemperature}${this.accessory.temperatureUnit}`) : false;
|
|
598
598
|
const info3 = modelSupportsFanSpeed ? this.emit('message', `Target fan speed: ${CONSTANTS.AirConditioner.FanSpeed[fanSpeed]}`) : false;
|
|
599
599
|
const info4 = modelSupportsFanSpeed ? this.emit('message', `Current fan speed: ${CONSTANTS.AirConditioner.FanSpeed[actualFanSpeed]}`) : false;
|
|
600
|
-
const info5 = vaneHorizontalDirection !== null ? this.emit('message', `Vane horizontal: ${CONSTANTS.AirConditioner.HorizontalVane[vaneHorizontalDirection]}`) : false;
|
|
601
|
-
const info6 = vaneVerticalDirection !== null ? this.emit('message', `Vane vertical: ${CONSTANTS.AirConditioner.VerticalVane[vaneVerticalDirection]}`) : false;
|
|
600
|
+
const info5 = vaneHorizontalDirection !== null ? this.emit('message', `Vane horizontal: ${CONSTANTS.AirConditioner.HorizontalVane[vaneHorizontalDirection] ?? vaneHorizontalDirection}`) : false;
|
|
601
|
+
const info6 = vaneVerticalDirection !== null ? this.emit('message', `Vane vertical: ${CONSTANTS.AirConditioner.VerticalVane[vaneVerticalDirection] ?? vaneVerticalDirection}`) : false;
|
|
602
602
|
const info7 = swingFunction ? this.emit('message', `Air direction: ${CONSTANTS.AirConditioner.AirDirection[this.accessory.swingMode]}`) : false;
|
|
603
603
|
this.emit('message', `Temperature display unit: ${this.accessory.temperatureUnit}`);
|
|
604
604
|
this.emit('message', `Lock physical controls: ${this.accessory.lockPhysicalControl ? 'LOCKED' : 'UNLOCKED'}`);
|
package/src/melcloudatw.js
CHANGED
|
@@ -470,11 +470,18 @@ class MelCloudAtw extends EventEmitter {
|
|
|
470
470
|
}
|
|
471
471
|
|
|
472
472
|
await this.axiosInstancePost(CONSTANTS.ApiUrls.SetAtw, payload);
|
|
473
|
-
this.
|
|
473
|
+
this.updateData(deviceData);
|
|
474
474
|
return true;
|
|
475
475
|
} catch (error) {
|
|
476
476
|
throw new Error(`Send data error: ${error.message || error}`);
|
|
477
477
|
};
|
|
478
478
|
};
|
|
479
|
+
|
|
480
|
+
updateData(deviceData) {
|
|
481
|
+
setTimeout(() => {
|
|
482
|
+
this.emit('externalIntegrations', deviceData);
|
|
483
|
+
this.emit('deviceState', deviceData);
|
|
484
|
+
}, 500);
|
|
485
|
+
}
|
|
479
486
|
};
|
|
480
487
|
module.exports = MelCloudAtw;
|
package/src/melclouderv.js
CHANGED
|
@@ -396,11 +396,18 @@ class MelCloudErv extends EventEmitter {
|
|
|
396
396
|
}
|
|
397
397
|
|
|
398
398
|
await this.axiosInstancePost(CONSTANTS.ApiUrls.SetErv, payload);
|
|
399
|
-
this.
|
|
399
|
+
this.updateData(deviceData);
|
|
400
400
|
return true;
|
|
401
401
|
} catch (error) {
|
|
402
402
|
throw new Error(`Send data error: ${error.message || error}`);
|
|
403
403
|
};
|
|
404
404
|
};
|
|
405
|
+
|
|
406
|
+
updateData(deviceData) {
|
|
407
|
+
setTimeout(() => {
|
|
408
|
+
this.emit('externalIntegrations', deviceData);
|
|
409
|
+
this.emit('deviceState', deviceData);
|
|
410
|
+
}, 500);
|
|
411
|
+
}
|
|
405
412
|
};
|
|
406
413
|
module.exports = MelCloudErv;
|