homebridge-sonos-scenes 0.1.43 → 0.1.44
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 +2 -1
- package/dist/src/sceneRunner.d.ts +3 -0
- package/dist/src/sceneRunner.js +57 -15
- package/dist/src/sceneRunner.js.map +1 -1
- package/package.json +1 -1
package/README.md
CHANGED
|
@@ -50,6 +50,7 @@ Typical examples:
|
|
|
50
50
|
- Scene test runs before saving
|
|
51
51
|
- Per-room volume overrides
|
|
52
52
|
- Optional scene volume fade time for configured room volumes
|
|
53
|
+
- Fades cancel cleanly when a newer scene action arrives, so turning a scene off never waits behind a long fade
|
|
53
54
|
- Virtual rooms for Sonos Amp left and right split-room installs
|
|
54
55
|
- Per-channel on/off plus virtual room volume control
|
|
55
56
|
- Virtual room create, edit, and validation flows in the Homebridge UI
|
|
@@ -74,7 +75,7 @@ This roadmap is meant to show the direction of the project, not lock every featu
|
|
|
74
75
|
|
|
75
76
|
- **TV Source General Availability**: move local TV input scenes out of the advanced/experimental toggle after broader validation across TV-capable Sonos devices and common home-theater setups.
|
|
76
77
|
- **Scene State Reconciliation**: expand the v0.1.31 group-membership reconciliation into a stronger live-state system, including source and playback-state awareness where Sonos reports those states reliably.
|
|
77
|
-
- **Volume Ramping / Fade-In-Fade-Out**:
|
|
78
|
+
- **Volume Ramping / Fade-In-Fade-Out**: per-scene volume fade time is available and fades now cancel when a newer scene action arrives; continue tuning long fades and real-world Sonos pacing.
|
|
78
79
|
- **Scene Off = Restore Previous State**: add off behaviors beyond ungrouping, such as pause, stop, restore the prior group topology, or return rooms to a default idle state.
|
|
79
80
|
- **Crossfade, Sleep Timer, and EQ Per Scene**: add optional per-scene playback settings such as crossfade, sleep timer minutes, bass, treble, and loudness, with safeguards so scenes do not leave speakers in surprising states.
|
|
80
81
|
|
|
@@ -7,6 +7,9 @@ export declare class SceneRunner {
|
|
|
7
7
|
private readonly logger;
|
|
8
8
|
private queues;
|
|
9
9
|
private previousSceneStates;
|
|
10
|
+
private latestRunIds;
|
|
11
|
+
private activeRampAborts;
|
|
12
|
+
private runSequence;
|
|
10
13
|
constructor(discoveryService: DiscoveryService, transport: SonosTransport, logger: StructuredLogger);
|
|
11
14
|
runOn(scene: SceneDefinition): Promise<SceneRunResult>;
|
|
12
15
|
runOff(scene: SceneDefinition): Promise<SceneRunResult>;
|
package/dist/src/sceneRunner.js
CHANGED
|
@@ -3,11 +3,21 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
|
|
3
3
|
exports.SceneRunner = void 0;
|
|
4
4
|
const config_1 = require("./config");
|
|
5
5
|
const logger_1 = require("./logger");
|
|
6
|
-
function sleep(ms) {
|
|
7
|
-
if (ms <= 0) {
|
|
6
|
+
function sleep(ms, signal) {
|
|
7
|
+
if (ms <= 0 || signal?.aborted) {
|
|
8
8
|
return Promise.resolve();
|
|
9
9
|
}
|
|
10
|
-
return new Promise((resolve) =>
|
|
10
|
+
return new Promise((resolve) => {
|
|
11
|
+
const onAbort = () => {
|
|
12
|
+
clearTimeout(timer);
|
|
13
|
+
resolve();
|
|
14
|
+
};
|
|
15
|
+
const timer = setTimeout(() => {
|
|
16
|
+
signal?.removeEventListener("abort", onAbort);
|
|
17
|
+
resolve();
|
|
18
|
+
}, ms);
|
|
19
|
+
signal?.addEventListener("abort", onAbort, { once: true });
|
|
20
|
+
});
|
|
11
21
|
}
|
|
12
22
|
const VOLUME_RAMP_STEP_MS = 500;
|
|
13
23
|
const MAX_VOLUME_RAMP_STEPS = 30;
|
|
@@ -17,6 +27,9 @@ class SceneRunner {
|
|
|
17
27
|
logger;
|
|
18
28
|
queues = new Map();
|
|
19
29
|
previousSceneStates = new Map();
|
|
30
|
+
latestRunIds = new Map();
|
|
31
|
+
activeRampAborts = new Map();
|
|
32
|
+
runSequence = 0;
|
|
20
33
|
constructor(discoveryService, transport, logger) {
|
|
21
34
|
this.discoveryService = discoveryService;
|
|
22
35
|
this.transport = transport;
|
|
@@ -33,6 +46,9 @@ class SceneRunner {
|
|
|
33
46
|
}
|
|
34
47
|
enqueue(scene, trigger) {
|
|
35
48
|
const queueKey = `${scene.householdId}:${scene.coordinatorPlayerId || scene.id}`;
|
|
49
|
+
const runId = ++this.runSequence;
|
|
50
|
+
this.latestRunIds.set(queueKey, runId);
|
|
51
|
+
this.activeRampAborts.get(queueKey)?.abort();
|
|
36
52
|
const previous = this.queues.get(queueKey) ?? Promise.resolve({
|
|
37
53
|
ok: true,
|
|
38
54
|
sceneId: scene.id,
|
|
@@ -42,16 +58,19 @@ class SceneRunner {
|
|
|
42
58
|
});
|
|
43
59
|
const next = previous
|
|
44
60
|
.catch(() => undefined)
|
|
45
|
-
.then(() => this.execute(scene, trigger))
|
|
61
|
+
.then(() => this.execute(scene, trigger, queueKey, runId))
|
|
46
62
|
.finally(() => {
|
|
47
63
|
if (this.queues.get(queueKey) === next) {
|
|
48
64
|
this.queues.delete(queueKey);
|
|
49
65
|
}
|
|
66
|
+
if (this.latestRunIds.get(queueKey) === runId) {
|
|
67
|
+
this.latestRunIds.delete(queueKey);
|
|
68
|
+
}
|
|
50
69
|
});
|
|
51
70
|
this.queues.set(queueKey, next);
|
|
52
71
|
return next;
|
|
53
72
|
}
|
|
54
|
-
async execute(scene, trigger) {
|
|
73
|
+
async execute(scene, trigger, queueKey, runId) {
|
|
55
74
|
const collector = new logger_1.MemoryLogCollector();
|
|
56
75
|
const logger = this.logger.child(scene.id);
|
|
57
76
|
const scopedLogger = new logger_1.StructuredLogger(`scene:${scene.id}`, "debug", undefined, collector);
|
|
@@ -60,6 +79,12 @@ class SceneRunner {
|
|
|
60
79
|
scopedLogger[level](message);
|
|
61
80
|
logger[level](message);
|
|
62
81
|
};
|
|
82
|
+
const rampAbort = new AbortController();
|
|
83
|
+
if (this.latestRunIds.get(queueKey) !== runId) {
|
|
84
|
+
// A newer trigger is already queued behind this run; skip slow fades so it starts sooner.
|
|
85
|
+
rampAbort.abort();
|
|
86
|
+
}
|
|
87
|
+
this.activeRampAborts.set(queueKey, rampAbort);
|
|
63
88
|
log("info", `Running scene "${scene.name}" (${trigger}).`);
|
|
64
89
|
try {
|
|
65
90
|
const snapshot = await this.discoveryService.refresh();
|
|
@@ -80,7 +105,7 @@ class SceneRunner {
|
|
|
80
105
|
if (trigger === "on" && scene.offBehavior.kind === "restore_previous") {
|
|
81
106
|
await this.capturePreviousSceneState(scene, snapshot, log);
|
|
82
107
|
}
|
|
83
|
-
await this.executeOn(scene, log);
|
|
108
|
+
await this.executeOn(scene, log, rampAbort.signal);
|
|
84
109
|
log("info", `Scene "${scene.name}" complete.`);
|
|
85
110
|
return this.result(true, scene.id, trigger, collector.entries, errors, snapshot);
|
|
86
111
|
}
|
|
@@ -90,6 +115,11 @@ class SceneRunner {
|
|
|
90
115
|
log("error", message);
|
|
91
116
|
return this.result(false, scene.id, trigger, collector.entries, errors);
|
|
92
117
|
}
|
|
118
|
+
finally {
|
|
119
|
+
if (this.activeRampAborts.get(queueKey) === rampAbort) {
|
|
120
|
+
this.activeRampAborts.delete(queueKey);
|
|
121
|
+
}
|
|
122
|
+
}
|
|
93
123
|
}
|
|
94
124
|
result(ok, sceneId, trigger, logs, errors, snapshot) {
|
|
95
125
|
return {
|
|
@@ -101,7 +131,7 @@ class SceneRunner {
|
|
|
101
131
|
snapshot,
|
|
102
132
|
};
|
|
103
133
|
}
|
|
104
|
-
async executeOn(scene, log) {
|
|
134
|
+
async executeOn(scene, log, rampSignal) {
|
|
105
135
|
log("info", `Resolved coordinator: ${scene.coordinatorPlayerId}`);
|
|
106
136
|
await this.withRetry(scene, "group members", () => this.transport.setGroupMembers(scene.householdId, scene.coordinatorPlayerId, scene.memberPlayerIds));
|
|
107
137
|
log("info", `Grouped members: ${scene.memberPlayerIds.join(", ") || "none"}`);
|
|
@@ -145,9 +175,12 @@ class SceneRunner {
|
|
|
145
175
|
const label = playerId === scene.coordinatorPlayerId && scene.coordinatorVolume !== undefined
|
|
146
176
|
? `set coordinator volume ${volume}`
|
|
147
177
|
: `set room volume ${playerId}=${volume}`;
|
|
148
|
-
await this.withRetry(scene, label, () => this.applyPlayerVolume(scene, playerId, volume));
|
|
178
|
+
const rampOutcome = await this.withRetry(scene, label, () => this.applyPlayerVolume(scene, playerId, volume, rampSignal));
|
|
149
179
|
const rampMs = scene.volumeRampMs ?? 0;
|
|
150
|
-
if (
|
|
180
|
+
if (rampOutcome === "cancelled") {
|
|
181
|
+
log("info", `Volume ramp cancelled for ${playerId} because a newer scene action arrived; leaving volume at the last ramp step.`);
|
|
182
|
+
}
|
|
183
|
+
else if (playerId === scene.coordinatorPlayerId && scene.coordinatorVolume !== undefined) {
|
|
151
184
|
log("info", rampMs > 0
|
|
152
185
|
? `Ramped coordinator volume and unmuted over ${rampMs}ms: ${playerId}=${volume}`
|
|
153
186
|
: `Set coordinator volume and unmuted: ${playerId}=${volume}`);
|
|
@@ -159,32 +192,42 @@ class SceneRunner {
|
|
|
159
192
|
}
|
|
160
193
|
}));
|
|
161
194
|
}
|
|
162
|
-
async applyPlayerVolume(scene, playerId, targetVolume) {
|
|
195
|
+
async applyPlayerVolume(scene, playerId, targetVolume, rampSignal) {
|
|
163
196
|
const rampMs = scene.volumeRampMs ?? 0;
|
|
164
197
|
if (rampMs <= 0) {
|
|
165
198
|
await this.transport.setPlayerVolume(scene.householdId, playerId, targetVolume);
|
|
166
199
|
await this.transport.setPlayerMuted(scene.householdId, playerId, false);
|
|
167
|
-
return;
|
|
200
|
+
return "completed";
|
|
201
|
+
}
|
|
202
|
+
if (rampSignal.aborted) {
|
|
203
|
+
await this.transport.setPlayerMuted(scene.householdId, playerId, false);
|
|
204
|
+
return "cancelled";
|
|
168
205
|
}
|
|
169
206
|
const currentVolume = await this.transport.getPlayerVolume(scene.householdId, playerId);
|
|
170
207
|
const steps = this.volumeRampSteps(currentVolume, targetVolume, rampMs);
|
|
171
208
|
if (steps.length === 0) {
|
|
172
209
|
await this.transport.setPlayerMuted(scene.householdId, playerId, false);
|
|
173
|
-
return;
|
|
210
|
+
return "completed";
|
|
174
211
|
}
|
|
175
212
|
if (currentVolume <= targetVolume) {
|
|
176
213
|
await this.transport.setPlayerMuted(scene.householdId, playerId, false);
|
|
177
214
|
}
|
|
215
|
+
let cancelled = false;
|
|
178
216
|
const delayMs = Math.floor(rampMs / steps.length);
|
|
179
217
|
for (const [index, volume] of steps.entries()) {
|
|
218
|
+
if (rampSignal.aborted) {
|
|
219
|
+
cancelled = true;
|
|
220
|
+
break;
|
|
221
|
+
}
|
|
180
222
|
await this.transport.setPlayerVolume(scene.householdId, playerId, volume);
|
|
181
223
|
if (index < steps.length - 1) {
|
|
182
|
-
await sleep(delayMs);
|
|
224
|
+
await sleep(delayMs, rampSignal);
|
|
183
225
|
}
|
|
184
226
|
}
|
|
185
227
|
if (currentVolume > targetVolume) {
|
|
186
228
|
await this.transport.setPlayerMuted(scene.householdId, playerId, false);
|
|
187
229
|
}
|
|
230
|
+
return cancelled ? "cancelled" : "completed";
|
|
188
231
|
}
|
|
189
232
|
volumeRampSteps(currentVolume, targetVolume, rampMs) {
|
|
190
233
|
const start = Math.max(0, Math.min(100, Math.round(currentVolume)));
|
|
@@ -306,8 +349,7 @@ class SceneRunner {
|
|
|
306
349
|
let lastError;
|
|
307
350
|
for (let attempt = 0; attempt <= scene.retryCount; attempt++) {
|
|
308
351
|
try {
|
|
309
|
-
await action();
|
|
310
|
-
return;
|
|
352
|
+
return await action();
|
|
311
353
|
}
|
|
312
354
|
catch (error) {
|
|
313
355
|
lastError = error;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"sceneRunner.js","sourceRoot":"","sources":["../../src/sceneRunner.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"sceneRunner.js","sourceRoot":"","sources":["../../src/sceneRunner.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "homebridge-sonos-scenes",
|
|
3
|
-
"version": "0.1.
|
|
3
|
+
"version": "0.1.44",
|
|
4
4
|
"description": "Homebridge plugin for Sonos workflow scenes and orchestration.",
|
|
5
5
|
"author": "applemanj",
|
|
6
6
|
"homepage": "https://github.com/applemanj/homebridge-sonos-scenes#readme",
|