@say4n/homebridge-tapo-smart-light 1.0.4 → 1.0.6
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.
|
@@ -9,9 +9,15 @@ export declare class TapoPlatformAccessory {
|
|
|
9
9
|
private pendingUpdates;
|
|
10
10
|
private updateTimeout;
|
|
11
11
|
private readonly debounceMs;
|
|
12
|
+
private readonly transitionMs;
|
|
13
|
+
private readonly transitionDuration;
|
|
14
|
+
private readonly transitionSteps;
|
|
15
|
+
private transitionInProgress;
|
|
12
16
|
constructor(platform: TapoHomebridgePlatform, accessory: PlatformAccessory);
|
|
13
17
|
getTapoDevice(): Promise<any>;
|
|
14
18
|
private scheduleUpdate;
|
|
19
|
+
private sleep;
|
|
20
|
+
private gradualTransition;
|
|
15
21
|
private applyPendingUpdates;
|
|
16
22
|
setOn(value: CharacteristicValue): Promise<void>;
|
|
17
23
|
getOn(): Promise<CharacteristicValue>;
|
|
@@ -11,6 +11,11 @@ export class TapoPlatformAccessory {
|
|
|
11
11
|
pendingUpdates = {};
|
|
12
12
|
updateTimeout = null;
|
|
13
13
|
debounceMs = 300; // 300ms debounce
|
|
14
|
+
transitionMs = 1000; // 1 second gradual transition
|
|
15
|
+
// Gradual transition settings
|
|
16
|
+
transitionDuration = 1000; // 1 second transition
|
|
17
|
+
transitionSteps = 20; // Number of steps in transition
|
|
18
|
+
transitionInProgress = false;
|
|
14
19
|
constructor(platform, accessory) {
|
|
15
20
|
this.platform = platform;
|
|
16
21
|
this.accessory = accessory;
|
|
@@ -60,6 +65,29 @@ export class TapoPlatformAccessory {
|
|
|
60
65
|
this.applyPendingUpdates();
|
|
61
66
|
}, this.debounceMs);
|
|
62
67
|
}
|
|
68
|
+
sleep(ms) {
|
|
69
|
+
return new Promise(resolve => setTimeout(resolve, ms));
|
|
70
|
+
}
|
|
71
|
+
async gradualTransition(device, startBrightness, endBrightness, hue, saturation) {
|
|
72
|
+
const stepDelay = this.transitionDuration / this.transitionSteps;
|
|
73
|
+
const brightnessDelta = (endBrightness - startBrightness) / this.transitionSteps;
|
|
74
|
+
for (let i = 1; i <= this.transitionSteps; i++) {
|
|
75
|
+
if (!this.transitionInProgress) {
|
|
76
|
+
// Transition was interrupted
|
|
77
|
+
return;
|
|
78
|
+
}
|
|
79
|
+
const currentBrightness = Math.round(startBrightness + brightnessDelta * i);
|
|
80
|
+
if (hue !== undefined && saturation !== undefined) {
|
|
81
|
+
await device.setHSL(hue, saturation, currentBrightness);
|
|
82
|
+
}
|
|
83
|
+
else {
|
|
84
|
+
await device.setBrightness(currentBrightness);
|
|
85
|
+
}
|
|
86
|
+
if (i < this.transitionSteps) {
|
|
87
|
+
await this.sleep(stepDelay);
|
|
88
|
+
}
|
|
89
|
+
}
|
|
90
|
+
}
|
|
63
91
|
async applyPendingUpdates() {
|
|
64
92
|
const updates = { ...this.pendingUpdates };
|
|
65
93
|
this.pendingUpdates = {};
|
|
@@ -67,30 +95,48 @@ export class TapoPlatformAccessory {
|
|
|
67
95
|
if (Object.keys(updates).length === 0) {
|
|
68
96
|
return;
|
|
69
97
|
}
|
|
98
|
+
// Cancel any in-progress transition
|
|
99
|
+
this.transitionInProgress = false;
|
|
70
100
|
try {
|
|
71
101
|
const device = await this.getTapoDevice();
|
|
72
|
-
// Handle
|
|
73
|
-
if (updates.on
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
else {
|
|
79
|
-
await device.turnOff();
|
|
80
|
-
this.platform.log.debug('Set device Off');
|
|
81
|
-
return; // If turning off, skip other updates
|
|
102
|
+
// Handle turning off with gradual fade
|
|
103
|
+
if (updates.on === false) {
|
|
104
|
+
this.transitionInProgress = true;
|
|
105
|
+
const currentBrightness = this.service.getCharacteristic(this.platform.Characteristic.Brightness).value;
|
|
106
|
+
if (currentBrightness > 0) {
|
|
107
|
+
await this.gradualTransition(device, currentBrightness, 1);
|
|
82
108
|
}
|
|
109
|
+
await device.turnOff();
|
|
110
|
+
this.transitionInProgress = false;
|
|
111
|
+
this.platform.log.debug('Set device Off with gradual fade');
|
|
112
|
+
return;
|
|
113
|
+
}
|
|
114
|
+
// Handle turning on with gradual fade
|
|
115
|
+
if (updates.on === true) {
|
|
116
|
+
const targetBrightness = updates.brightness ??
|
|
117
|
+
this.service.getCharacteristic(this.platform.Characteristic.Brightness).value;
|
|
118
|
+
await device.turnOn();
|
|
119
|
+
this.transitionInProgress = true;
|
|
120
|
+
await this.gradualTransition(device, 1, targetBrightness);
|
|
121
|
+
this.transitionInProgress = false;
|
|
122
|
+
this.platform.log.debug('Set device On with gradual fade');
|
|
123
|
+
return;
|
|
83
124
|
}
|
|
84
|
-
// Handle color/brightness updates
|
|
125
|
+
// Handle color/brightness updates with gradual transition
|
|
85
126
|
if (updates.hue !== undefined || updates.saturation !== undefined || updates.brightness !== undefined) {
|
|
86
127
|
const hue = updates.hue ?? this.service.getCharacteristic(this.platform.Characteristic.Hue).value;
|
|
87
128
|
const saturation = updates.saturation ?? this.service.getCharacteristic(this.platform.Characteristic.Saturation).value;
|
|
88
|
-
const
|
|
89
|
-
|
|
90
|
-
this.platform.
|
|
129
|
+
const targetBrightness = updates.brightness ??
|
|
130
|
+
this.service.getCharacteristic(this.platform.Characteristic.Brightness).value;
|
|
131
|
+
const currentBrightness = this.service.getCharacteristic(this.platform.Characteristic.Brightness).value;
|
|
132
|
+
this.transitionInProgress = true;
|
|
133
|
+
await this.gradualTransition(device, currentBrightness, targetBrightness, hue, saturation);
|
|
134
|
+
this.transitionInProgress = false;
|
|
135
|
+
this.platform.log.debug('Set HSL with gradual transition ->', { hue, saturation, brightness: targetBrightness });
|
|
91
136
|
}
|
|
92
137
|
}
|
|
93
138
|
catch (error) {
|
|
139
|
+
this.transitionInProgress = false;
|
|
94
140
|
this.platform.log.error('Failed to apply pending updates:', error);
|
|
95
141
|
}
|
|
96
142
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"TapoPlatformAccessory.js","sourceRoot":"","sources":["../src/TapoPlatformAccessory.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,WAAW,EAAE,MAAM,wBAAwB,CAAC;
|
|
1
|
+
{"version":3,"file":"TapoPlatformAccessory.js","sourceRoot":"","sources":["../src/TapoPlatformAccessory.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
"name": "@say4n/homebridge-tapo-smart-light",
|
|
3
3
|
"displayName": "Homebridge Tapo L630",
|
|
4
4
|
"type": "module",
|
|
5
|
-
"version": "1.0.
|
|
5
|
+
"version": "1.0.6",
|
|
6
6
|
"description": "A Homebridge plugin for Tapo L630 smart lights.",
|
|
7
7
|
"author": "say4n",
|
|
8
8
|
"license": "Apache-2.0",
|