@mp-consulting/homebridge-daikin-cloud 1.3.33 → 1.5.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.
Files changed (44) hide show
  1. package/README.md +3 -0
  2. package/config.schema.json +21 -1
  3. package/dist/src/accessories/base-accessory.d.ts.map +1 -1
  4. package/dist/src/accessories/base-accessory.js +7 -1
  5. package/dist/src/accessories/base-accessory.js.map +1 -1
  6. package/dist/src/api/daikin-api.d.ts +18 -0
  7. package/dist/src/api/daikin-api.d.ts.map +1 -1
  8. package/dist/src/api/daikin-api.js +52 -98
  9. package/dist/src/api/daikin-api.js.map +1 -1
  10. package/dist/src/api/daikin-device.d.ts +34 -0
  11. package/dist/src/api/daikin-device.d.ts.map +1 -1
  12. package/dist/src/api/daikin-device.js +52 -0
  13. package/dist/src/api/daikin-device.js.map +1 -1
  14. package/dist/src/api/daikin-mobile-oauth.d.ts.map +1 -1
  15. package/dist/src/api/daikin-mobile-oauth.js +2 -36
  16. package/dist/src/api/daikin-mobile-oauth.js.map +1 -1
  17. package/dist/src/api/daikin-oauth.d.ts.map +1 -1
  18. package/dist/src/api/daikin-oauth.js +15 -55
  19. package/dist/src/api/daikin-oauth.js.map +1 -1
  20. package/dist/src/api/http-transport.d.ts +41 -0
  21. package/dist/src/api/http-transport.d.ts.map +1 -0
  22. package/dist/src/api/http-transport.js +242 -0
  23. package/dist/src/api/http-transport.js.map +1 -0
  24. package/dist/src/config/config-manager.d.ts +2 -0
  25. package/dist/src/config/config-manager.d.ts.map +1 -1
  26. package/dist/src/config/config-manager.js.map +1 -1
  27. package/dist/src/features/feature-manager.d.ts.map +1 -1
  28. package/dist/src/features/feature-manager.js +1 -0
  29. package/dist/src/features/feature-manager.js.map +1 -1
  30. package/dist/src/features/modes/firmware-update.feature.d.ts +46 -0
  31. package/dist/src/features/modes/firmware-update.feature.d.ts.map +1 -0
  32. package/dist/src/features/modes/firmware-update.feature.js +126 -0
  33. package/dist/src/features/modes/firmware-update.feature.js.map +1 -0
  34. package/dist/src/features/modes/index.d.ts +1 -0
  35. package/dist/src/features/modes/index.d.ts.map +1 -1
  36. package/dist/src/features/modes/index.js +1 -0
  37. package/dist/src/features/modes/index.js.map +1 -1
  38. package/dist/src/platform.d.ts.map +1 -1
  39. package/dist/src/platform.js +7 -0
  40. package/dist/src/platform.js.map +1 -1
  41. package/homebridge-ui/public/index.html +17 -0
  42. package/homebridge-ui/public/script.js +9 -1
  43. package/homebridge-ui/server.js +18 -0
  44. package/package.json +1 -1
@@ -0,0 +1,46 @@
1
+ /**
2
+ * Firmware Update Feature
3
+ *
4
+ * Exposes gateway firmware updates as a HomeKit switch, replacing the need to
5
+ * install them from the Onecta app. The switch is ON while an update is
6
+ * installing; turning it ON triggers installation of a staged update via the
7
+ * dedicated firmware endpoint (see DaikinApi.triggerFirmwareUpdate). Firmware
8
+ * characteristics live on the *gateway* management point, not the climate
9
+ * control one the other features use.
10
+ */
11
+ import type { CharacteristicValue } from 'homebridge';
12
+ import { BaseFeature } from '../base-feature';
13
+ export declare class FirmwareUpdateFeature extends BaseFeature {
14
+ private announcedVersion?;
15
+ private announcedStatus?;
16
+ get featureName(): string;
17
+ get serviceSubtype(): string;
18
+ get configKey(): string;
19
+ isSupported(): boolean;
20
+ /**
21
+ * Unlike other features, never inherit the legacy `showExtraFeatures`
22
+ * catch-all: a switch that installs firmware should only appear when
23
+ * explicitly enabled, so an all-switches scene can't trigger it unnoticed.
24
+ */
25
+ protected isEnabledInConfig(): boolean;
26
+ handleGet(): Promise<CharacteristicValue>;
27
+ handleSet(value: CharacteristicValue): Promise<void>;
28
+ /**
29
+ * Push status to HomeKit and announce availability / outcome transitions.
30
+ */
31
+ refresh(): void;
32
+ private get gatewayId();
33
+ private get updateStatus();
34
+ private installStagedUpdate;
35
+ private triggerInstall;
36
+ private handleTurnOff;
37
+ /**
38
+ * HomeKit assumes a set succeeded unless the handler throws; when the set is
39
+ * merely a no-op (nothing to install / can't cancel), push the real state
40
+ * back shortly after so the switch doesn't stick in the wrong position.
41
+ */
42
+ private revertSwitchTo;
43
+ private announceAvailability;
44
+ private announceOutcome;
45
+ }
46
+ //# sourceMappingURL=firmware-update.feature.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"firmware-update.feature.d.ts","sourceRoot":"","sources":["../../../../src/features/modes/firmware-update.feature.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAEH,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,YAAY,CAAC;AACtD,OAAO,EAAE,WAAW,EAAE,MAAM,iBAAiB,CAAC;AAK9C,qBAAa,qBAAsB,SAAQ,WAAW;IACpD,OAAO,CAAC,gBAAgB,CAAC,CAAS;IAClC,OAAO,CAAC,eAAe,CAAC,CAAS;IAEjC,IAAI,WAAW,IAAI,MAAM,CAExB;IAED,IAAI,cAAc,IAAI,MAAM,CAE3B;IAED,IAAI,SAAS,IAAI,MAAM,CAEtB;IAED,WAAW,IAAI,OAAO;IAMtB;;;;OAIG;IACH,SAAS,CAAC,iBAAiB,IAAI,OAAO;IAIhC,SAAS,IAAI,OAAO,CAAC,mBAAmB,CAAC;IAIzC,SAAS,CAAC,KAAK,EAAE,mBAAmB,GAAG,OAAO,CAAC,IAAI,CAAC;IAW1D;;OAEG;IACH,OAAO,IAAI,IAAI;IAMf,OAAO,KAAK,SAAS,GAEpB;IAED,OAAO,KAAK,YAAY,GAGvB;YAEa,mBAAmB;YAUnB,cAAc;IAa5B,OAAO,CAAC,aAAa;IAOrB;;;;OAIG;IACH,OAAO,CAAC,cAAc;IAMtB,OAAO,CAAC,oBAAoB;IAU5B,OAAO,CAAC,eAAe;CASxB"}
@@ -0,0 +1,126 @@
1
+ "use strict";
2
+ /**
3
+ * Firmware Update Feature
4
+ *
5
+ * Exposes gateway firmware updates as a HomeKit switch, replacing the need to
6
+ * install them from the Onecta app. The switch is ON while an update is
7
+ * installing; turning it ON triggers installation of a staged update via the
8
+ * dedicated firmware endpoint (see DaikinApi.triggerFirmwareUpdate). Firmware
9
+ * characteristics live on the *gateway* management point, not the climate
10
+ * control one the other features use.
11
+ */
12
+ Object.defineProperty(exports, "__esModule", { value: true });
13
+ exports.FirmwareUpdateFeature = void 0;
14
+ const base_feature_1 = require("../base-feature");
15
+ const IN_PROGRESS = 'in-progress';
16
+ const SWITCH_REVERT_DELAY_MS = 1000;
17
+ class FirmwareUpdateFeature extends base_feature_1.BaseFeature {
18
+ announcedVersion;
19
+ announcedStatus;
20
+ get featureName() {
21
+ return 'Firmware Update';
22
+ }
23
+ get serviceSubtype() {
24
+ return 'firmware_update';
25
+ }
26
+ get configKey() {
27
+ return 'showFirmwareUpdateSwitch';
28
+ }
29
+ isSupported() {
30
+ const gatewayId = this.gatewayId;
31
+ return gatewayId !== undefined
32
+ && this.accessory.context.device.isFirmwareUpdateSupported(gatewayId);
33
+ }
34
+ /**
35
+ * Unlike other features, never inherit the legacy `showExtraFeatures`
36
+ * catch-all: a switch that installs firmware should only appear when
37
+ * explicitly enabled, so an all-switches scene can't trigger it unnoticed.
38
+ */
39
+ isEnabledInConfig() {
40
+ return this.platform.config[this.configKey] === true;
41
+ }
42
+ async handleGet() {
43
+ return this.updateStatus === IN_PROGRESS;
44
+ }
45
+ async handleSet(value) {
46
+ if (!value) {
47
+ return this.handleTurnOff();
48
+ }
49
+ if (this.updateStatus === IN_PROGRESS) {
50
+ this.log.info(`[${this.name}] Firmware update already in progress`);
51
+ return;
52
+ }
53
+ await this.installStagedUpdate();
54
+ }
55
+ /**
56
+ * Push status to HomeKit and announce availability / outcome transitions.
57
+ */
58
+ refresh() {
59
+ this.announceAvailability();
60
+ this.announceOutcome();
61
+ super.refresh();
62
+ }
63
+ get gatewayId() {
64
+ return this.accessory.context.device.getManagementPointIdByType('gateway');
65
+ }
66
+ get updateStatus() {
67
+ const gatewayId = this.gatewayId;
68
+ return gatewayId ? this.accessory.context.device.getFirmwareUpdateStatus(gatewayId) : undefined;
69
+ }
70
+ async installStagedUpdate() {
71
+ const gatewayId = this.gatewayId;
72
+ const info = gatewayId ? this.accessory.context.device.getFirmwareUpdateInfo(gatewayId) : undefined;
73
+ if (!gatewayId || !info) {
74
+ this.log.info(`[${this.name}] Firmware is up to date — no update staged by Daikin`);
75
+ return this.revertSwitchTo(false);
76
+ }
77
+ await this.triggerInstall(gatewayId, info.version);
78
+ }
79
+ async triggerInstall(gatewayId, version) {
80
+ try {
81
+ const info = await this.accessory.context.device.triggerFirmwareUpdate(gatewayId);
82
+ this.log.info(`[${this.name}] Installing firmware update ${info.version ?? version ?? ''} `
83
+ + '— the unit will be unavailable until it finishes');
84
+ }
85
+ catch (e) {
86
+ this.log.warn(`[${this.name}] Failed to start firmware update: ${e instanceof Error ? e.message : e}`);
87
+ throw new this.platform.api.hap.HapStatusError(-70402 /* this.platform.api.hap.HAPStatus.SERVICE_COMMUNICATION_FAILURE */);
88
+ }
89
+ }
90
+ handleTurnOff() {
91
+ if (this.updateStatus === IN_PROGRESS) {
92
+ this.log.info(`[${this.name}] A running firmware update cannot be cancelled`);
93
+ this.revertSwitchTo(true);
94
+ }
95
+ }
96
+ /**
97
+ * HomeKit assumes a set succeeded unless the handler throws; when the set is
98
+ * merely a no-op (nothing to install / can't cancel), push the real state
99
+ * back shortly after so the switch doesn't stick in the wrong position.
100
+ */
101
+ revertSwitchTo(value) {
102
+ setTimeout(() => {
103
+ this.switchService?.getCharacteristic(this.platform.Characteristic.On).updateValue(value);
104
+ }, SWITCH_REVERT_DELAY_MS);
105
+ }
106
+ announceAvailability() {
107
+ const gatewayId = this.gatewayId;
108
+ const info = gatewayId ? this.accessory.context.device.getFirmwareUpdateInfo(gatewayId) : undefined;
109
+ if (info && info.version !== this.announcedVersion) {
110
+ this.announcedVersion = info.version;
111
+ this.log.info(`[${this.name}] Firmware update available: ${info.version ?? 'unknown version'}`
112
+ + `${info.description ? ` (${info.description})` : ''} — turn on the "Firmware Update" switch to install`);
113
+ }
114
+ }
115
+ announceOutcome() {
116
+ const status = this.updateStatus;
117
+ if (status !== this.announcedStatus) {
118
+ this.announcedStatus = status;
119
+ if (status === 'succeeded' || status === 'failed') {
120
+ this.log.info(`[${this.name}] Firmware update ${status}`);
121
+ }
122
+ }
123
+ }
124
+ }
125
+ exports.FirmwareUpdateFeature = FirmwareUpdateFeature;
126
+ //# sourceMappingURL=firmware-update.feature.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"firmware-update.feature.js","sourceRoot":"","sources":["../../../../src/features/modes/firmware-update.feature.ts"],"names":[],"mappings":"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"}
@@ -8,4 +8,5 @@ export * from './oscillation-mode.feature';
8
8
  export * from './dry-operation-mode.feature';
9
9
  export * from './fan-only-operation-mode.feature';
10
10
  export * from './holiday-mode.feature';
11
+ export * from './firmware-update.feature';
11
12
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/features/modes/index.ts"],"names":[],"mappings":"AAAA,cAAc,yBAAyB,CAAC;AACxC,cAAc,sBAAsB,CAAC;AACrC,cAAc,yBAAyB,CAAC;AACxC,cAAc,+BAA+B,CAAC;AAC9C,cAAc,8BAA8B,CAAC;AAC7C,cAAc,yBAAyB,CAAC;AACxC,cAAc,4BAA4B,CAAC;AAC3C,cAAc,8BAA8B,CAAC;AAC7C,cAAc,mCAAmC,CAAC;AAClD,cAAc,wBAAwB,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/features/modes/index.ts"],"names":[],"mappings":"AAAA,cAAc,yBAAyB,CAAC;AACxC,cAAc,sBAAsB,CAAC;AACrC,cAAc,yBAAyB,CAAC;AACxC,cAAc,+BAA+B,CAAC;AAC9C,cAAc,8BAA8B,CAAC;AAC7C,cAAc,yBAAyB,CAAC;AACxC,cAAc,4BAA4B,CAAC;AAC3C,cAAc,8BAA8B,CAAC;AAC7C,cAAc,mCAAmC,CAAC;AAClD,cAAc,wBAAwB,CAAC;AACvC,cAAc,2BAA2B,CAAC"}
@@ -24,4 +24,5 @@ __exportStar(require("./oscillation-mode.feature"), exports);
24
24
  __exportStar(require("./dry-operation-mode.feature"), exports);
25
25
  __exportStar(require("./fan-only-operation-mode.feature"), exports);
26
26
  __exportStar(require("./holiday-mode.feature"), exports);
27
+ __exportStar(require("./firmware-update.feature"), exports);
27
28
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/features/modes/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,0DAAwC;AACxC,uDAAqC;AACrC,0DAAwC;AACxC,gEAA8C;AAC9C,+DAA6C;AAC7C,0DAAwC;AACxC,6DAA2C;AAC3C,+DAA6C;AAC7C,oEAAkD;AAClD,yDAAuC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/features/modes/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,0DAAwC;AACxC,uDAAqC;AACrC,0DAAwC;AACxC,gEAA8C;AAC9C,+DAA6C;AAC7C,0DAAwC;AACxC,6DAA2C;AAC3C,+DAA6C;AAC7C,oEAAkD;AAClD,yDAAuC;AACvC,4DAA0C"}
@@ -1 +1 @@
1
- {"version":3,"file":"platform.d.ts","sourceRoot":"","sources":["../../src/platform.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,GAAG,EAAE,cAAc,EAAE,qBAAqB,EAAE,MAAM,EAAE,iBAAiB,EAAE,cAAc,EAAE,OAAO,EAAE,MAAM,YAAY,CAAC;AASjI,OAAO,KAAK,EAAE,iBAAiB,EAA0B,MAAM,OAAO,CAAC;AACvE,OAAO,EAAmB,qBAAqB,EAAE,MAAM,OAAO,CAAC;AAW/D,MAAM,MAAM,2BAA2B,GAAG;IACtC,MAAM,EAAE,iBAAiB,CAAC;CAC7B,CAAC;AAEF,qBAAa,mBAAoB,YAAW,qBAAqB;aAkBzC,GAAG,EAAE,MAAM;aACX,MAAM,EAAE,cAAc;aACtB,GAAG,EAAE,GAAG;IAnB9B,SAAgB,OAAO,EAAE,OAAO,OAAO,CAAC;IACxC,SAAgB,cAAc,EAAE,OAAO,cAAc,CAAC;IAEtD,SAAgB,WAAW,EAAE,iBAAiB,CAAC,2BAA2B,CAAC,EAAE,CAAM;IAEnF,SAAgB,WAAW,EAAE,MAAM,CAAM;IAClC,UAAU,EAAE,qBAAqB,GAAG,SAAS,CAAC;IAErD,SAAgB,mBAAmB,EAAE,MAAM,CAAC;IAC5C,OAAO,CAAC,cAAc,CAA6B;IACnD,OAAO,CAAC,kBAAkB,CAA6B;IACvD,OAAO,CAAC,QAAQ,CAAC,gBAAgB,CAAmB;IACpD,OAAO,CAAC,QAAQ,CAAC,YAAY,CAAe;IAC5C,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAoC;IAC7D,OAAO,CAAC,QAAQ,CAAC,eAAe,CAAiC;gBAG3C,GAAG,EAAE,MAAM,EACX,MAAM,EAAE,cAAc,EACtB,GAAG,EAAE,GAAG;IA4KvB,kBAAkB,CAAC,SAAS,EAAE,iBAAiB;YAKxC,eAAe;IAgB7B,OAAO,CAAC,aAAa;IAsDrB,OAAO,CAAC,oBAAoB;IAQ5B,sBAAsB,CAAC,SAAS,EAAE,iBAAiB,CAAC,2BAA2B,CAAC,EAAE,QAAQ,EAAE,MAAM,IAAI;YAIxF,aAAa;IAW3B,kBAAkB,CAAC,KAAK,GAAE,MAAmF;IA0B7G,OAAO,CAAC,0BAA0B;YAWpB,eAAe;IAc7B,OAAO,CAAC,gBAAgB;IAIxB,OAAO,CAAC,wBAAwB;IAchC,OAAO,CAAC,mBAAmB;IAU3B;;SAEK;IACL,OAAO,CAAC,2BAA2B;CAuBpC"}
1
+ {"version":3,"file":"platform.d.ts","sourceRoot":"","sources":["../../src/platform.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,GAAG,EAAE,cAAc,EAAE,qBAAqB,EAAE,MAAM,EAAE,iBAAiB,EAAE,cAAc,EAAE,OAAO,EAAE,MAAM,YAAY,CAAC;AASjI,OAAO,KAAK,EAAE,iBAAiB,EAA0B,MAAM,OAAO,CAAC;AACvE,OAAO,EAAmB,qBAAqB,EAAE,MAAM,OAAO,CAAC;AAa/D,MAAM,MAAM,2BAA2B,GAAG;IACtC,MAAM,EAAE,iBAAiB,CAAC;CAC7B,CAAC;AAEF,qBAAa,mBAAoB,YAAW,qBAAqB;aAkBzC,GAAG,EAAE,MAAM;aACX,MAAM,EAAE,cAAc;aACtB,GAAG,EAAE,GAAG;IAnB9B,SAAgB,OAAO,EAAE,OAAO,OAAO,CAAC;IACxC,SAAgB,cAAc,EAAE,OAAO,cAAc,CAAC;IAEtD,SAAgB,WAAW,EAAE,iBAAiB,CAAC,2BAA2B,CAAC,EAAE,CAAM;IAEnF,SAAgB,WAAW,EAAE,MAAM,CAAM;IAClC,UAAU,EAAE,qBAAqB,GAAG,SAAS,CAAC;IAErD,SAAgB,mBAAmB,EAAE,MAAM,CAAC;IAC5C,OAAO,CAAC,cAAc,CAA6B;IACnD,OAAO,CAAC,kBAAkB,CAA6B;IACvD,OAAO,CAAC,QAAQ,CAAC,gBAAgB,CAAmB;IACpD,OAAO,CAAC,QAAQ,CAAC,YAAY,CAAe;IAC5C,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAoC;IAC7D,OAAO,CAAC,QAAQ,CAAC,eAAe,CAAiC;gBAG3C,GAAG,EAAE,MAAM,EACX,MAAM,EAAE,cAAc,EACtB,GAAG,EAAE,GAAG;IAmLvB,kBAAkB,CAAC,SAAS,EAAE,iBAAiB;YAKxC,eAAe;IAgB7B,OAAO,CAAC,aAAa;IAsDrB,OAAO,CAAC,oBAAoB;IAQ5B,sBAAsB,CAAC,SAAS,EAAE,iBAAiB,CAAC,2BAA2B,CAAC,EAAE,QAAQ,EAAE,MAAM,IAAI;YAIxF,aAAa;IAW3B,kBAAkB,CAAC,KAAK,GAAE,MAAmF;IA0B7G,OAAO,CAAC,0BAA0B;YAWpB,eAAe;IAc7B,OAAO,CAAC,gBAAgB;IAIxB,OAAO,CAAC,wBAAwB;IAchC,OAAO,CAAC,mBAAmB;IAU3B;;SAEK;IACL,OAAO,CAAC,2BAA2B;CAuBpC"}
@@ -10,6 +10,7 @@ const node_path_1 = require("node:path");
10
10
  const strings_1 = require("./utils/strings");
11
11
  const node_fs_1 = __importDefault(require("node:fs"));
12
12
  const api_1 = require("./api");
13
+ const http_transport_1 = require("./api/http-transport");
13
14
  const update_mapper_1 = require("./utils/update-mapper");
14
15
  const config_manager_1 = require("./config/config-manager");
15
16
  const constants_1 = require("./constants");
@@ -44,6 +45,12 @@ class DaikinCloudPlatform {
44
45
  // Determine authentication mode
45
46
  this.authMode = this.config.authMode === 'mobile_app' ? 'mobile_app' : 'developer_portal';
46
47
  this.log.info(`[Config] Authentication mode: ${this.authMode}`);
48
+ // Select the HTTP transport (env var DAIKIN_HTTP_TRANSPORT wins over config)
49
+ (0, http_transport_1.configureHttpTransport)(this.config.httpTransport);
50
+ if ((0, http_transport_1.getHttpTransportMode)() === 'curl') {
51
+ this.log.info('[Config] HTTP transport: curl subprocess (WAF fingerprint workaround). '
52
+ + 'Note: WebSocket connections still use Node TLS — disable WebSocket if it cannot connect.');
53
+ }
47
54
  // Validate configuration
48
55
  const configManager = new config_manager_1.ConfigManager(this.config);
49
56
  const validation = configManager.validate();
@@ -1 +1 @@
1
- {"version":3,"file":"platform.js","sourceRoot":"","sources":["../../src/platform.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"platform.js","sourceRoot":"","sources":["../../src/platform.ts"],"names":[],"mappings":"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"}
@@ -212,6 +212,15 @@
212
212
  <input class="form-check-input" type="checkbox" role="switch" id="showHolidayMode">
213
213
  </div>
214
214
  </div>
215
+ <div class="list-group-item d-flex justify-content-between align-items-center">
216
+ <div>
217
+ <div class="fw-medium">Firmware Update</div>
218
+ <small class="text-muted">Install staged gateway firmware updates from HomeKit. Never enabled implicitly &mdash; the unit is unavailable while it updates</small>
219
+ </div>
220
+ <div class="form-check form-switch mb-0">
221
+ <input class="form-check-input" type="checkbox" role="switch" id="showFirmwareUpdateSwitch">
222
+ </div>
223
+ </div>
215
224
  </div>
216
225
  </div>
217
226
  </div>
@@ -258,6 +267,14 @@
258
267
  pattern="^((25[0-5]|(2[0-4]|1\d|[1-9]|)\d)\.?\b){4}$">
259
268
  <div class="form-text">IPv4 address for OAuth callback server (use 0.0.0.0 for all interfaces)</div>
260
269
  </div>
270
+ <div class="mt-3 mb-0">
271
+ <label class="form-label" for="httpTransport">HTTP Transport</label>
272
+ <select class="form-select" id="httpTransport">
273
+ <option value="node" selected>Node (default)</option>
274
+ <option value="curl">curl subprocess (WAF fingerprint workaround)</option>
275
+ </select>
276
+ <div class="form-text">Use "curl subprocess" only if authentication times out on your network while curl works &mdash; some WAFs drop Node's TLS fingerprint (issue #6). Requires the curl binary; WebSocket still uses Node TLS.</div>
277
+ </div>
261
278
  </div>
262
279
  </div>
263
280
  </div>
@@ -581,7 +581,7 @@ const Settings = {
581
581
  ],
582
582
 
583
583
  // Standalone toggles that default to off (never enabled implicitly by the legacy flag).
584
- STANDALONE_KEYS: ['showSeparateFanControl'],
584
+ STANDALONE_KEYS: ['showSeparateFanControl', 'showFirmwareUpdateSwitch'],
585
585
 
586
586
  async load() {
587
587
  try {
@@ -605,6 +605,8 @@ const Settings = {
605
605
  $id(id)?.addEventListener('change', handler);
606
606
  });
607
607
 
608
+ $id('httpTransport')?.addEventListener('change', handler);
609
+
608
610
  // Number/text inputs
609
611
  ['updateIntervalInMinutes', 'forceUpdateDelay', 'oidcCallbackServerBindAddr'].forEach(id => {
610
612
  const el = $id(id);
@@ -670,6 +672,11 @@ const Settings = {
670
672
  bindAddr.value = config.oidcCallbackServerBindAddr || '0.0.0.0';
671
673
  }
672
674
 
675
+ const transport = $id('httpTransport');
676
+ if (transport) {
677
+ transport.value = config.httpTransport === 'curl' ? 'curl' : 'node';
678
+ }
679
+
673
680
  const enableWS = $id('enableWebSocket');
674
681
  if (enableWS) {
675
682
  enableWS.checked = config.enableWebSocket !== false;
@@ -761,6 +768,7 @@ const Settings = {
761
768
  oidcCallbackServerBindAddr: $id('oidcCallbackServerBindAddr')?.value?.trim() || '0.0.0.0',
762
769
  excludedDevicesByDeviceId: this.excludedIds,
763
770
  enableWebSocket: $id('enableWebSocket')?.checked ?? true,
771
+ httpTransport: $id('httpTransport')?.value === 'curl' ? 'curl' : 'node',
764
772
  };
765
773
 
766
774
  [...this.FEATURE_KEYS, ...this.STANDALONE_KEYS].forEach(key => {
@@ -12,6 +12,7 @@ const distPath = join(__dirname, '..', 'dist', 'src', 'api');
12
12
  const { DaikinOAuth } = require(join(distPath, 'daikin-oauth'));
13
13
  const { DaikinMobileOAuth } = require(join(distPath, 'daikin-mobile-oauth'));
14
14
  const { DaikinApi } = require(join(distPath, 'daikin-api'));
15
+ const { configureHttpTransport } = require(join(distPath, 'http-transport'));
15
16
 
16
17
  // =============================================================================
17
18
  // Configuration
@@ -428,10 +429,27 @@ class DaikinCloudUiServer extends HomebridgePluginUiServer {
428
429
  this.authResult = null;
429
430
  this.callbackServer = new CallbackServer();
430
431
 
432
+ this.applyTransportFromConfig();
431
433
  this.registerHandlers();
432
434
  this.ready();
433
435
  }
434
436
 
437
+ /**
438
+ * Honour the plugin's httpTransport setting in the setup wizard too, so a
439
+ * network that blocks Node's TLS fingerprint (issue #6) can still complete
440
+ * authentication from the UI. Env var DAIKIN_HTTP_TRANSPORT wins.
441
+ */
442
+ applyTransportFromConfig() {
443
+ try {
444
+ const configPath = resolve(this.homebridgeStoragePath || process.env.UIX_STORAGE_PATH || '', 'config.json');
445
+ const config = JSON.parse(fs.readFileSync(configPath, 'utf8'));
446
+ const platform = (config.platforms || []).find((p) => p.platform === 'DaikinCloud');
447
+ configureHttpTransport(platform && platform.httpTransport);
448
+ } catch (e) {
449
+ console.log('[DaikinCloud] Could not read httpTransport from config, using default:', e.message);
450
+ }
451
+ }
452
+
435
453
  getTokenFilePath() {
436
454
  return resolve(this.homebridgeStoragePath || process.env.UIX_STORAGE_PATH || '', '.daikin-controller-cloud-tokenset');
437
455
  }
package/package.json CHANGED
@@ -2,7 +2,7 @@
2
2
  "displayName": "Daikin Cloud",
3
3
  "platformname": "daikincloud",
4
4
  "name": "@mp-consulting/homebridge-daikin-cloud",
5
- "version": "1.3.33",
5
+ "version": "1.5.0",
6
6
  "description": "Integrate with the Daikin Cloud to control your Daikin air conditioning via the cloud",
7
7
  "license": "(Apache-2.0 AND MIT)",
8
8
  "repository": {