homebridge-eosstb 2.4.0-alpha.43 → 2.4.0-alpha.45

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 (3) hide show
  1. package/CHANGELOG.md +7 -0
  2. package/index.js +19 -16
  3. package/package.json +1 -1
package/CHANGELOG.md CHANGED
@@ -51,6 +51,13 @@ Channel name: overwrite not allowed - can we disable in HomeKit. Yes, but preven
51
51
  CHALLENGE
52
52
  The mostWatchedChannelList is not working
53
53
 
54
+ ## 2.4.0-alpha.45 (2026-05-09)
55
+ - Added some debugging to the volume commands to trace an issue
56
+
57
+ ## 2.4.0-alpha.44 (2026-05-09)
58
+ - Fixed some log level issues
59
+ - Fixed issue with Remove volumeDown causing Unhandled error thrown inside write handler for characteristic
60
+
54
61
  ## 2.4.0-alpha.43 (2026-05-09)
55
62
  - Bumped dependency "semver": "^7.8.0",
56
63
 
package/index.js CHANGED
@@ -4333,10 +4333,12 @@ class StbPlatform {
4333
4333
  // (handles case where box is briefly offline when the initial request is sent)
4334
4334
  setTimeout(() => {
4335
4335
  if (!this.lastMqttUiStatusMessageReceived) {
4336
- this.log.warn(
4337
- "getUiStatus: no CPE.uiStatus received yet for %s, retrying",
4338
- device.deviceId,
4339
- );
4336
+ if (this.debugLevel > 0) {
4337
+ this.log.warn(
4338
+ "getUiStatus: no CPE.uiStatus received yet for %s, retrying",
4339
+ device.deviceId,
4340
+ );
4341
+ }
4340
4342
  this.getUiStatus(
4341
4343
  device.deviceId,
4342
4344
  this.mqttClient.options.clientId,
@@ -5630,6 +5632,7 @@ class StbDevice {
5630
5632
  this.lastRemoteKeyPressed = -1; // holds the last key pressed, -1 = no key
5631
5633
  this.keyPressHistory = new Map();
5632
5634
  this._pendingKeyTimer = null;
5635
+ this.lastVolDownKeyPress = [0, 0, 0]; // ensure initialised
5633
5636
 
5634
5637
  // do an initial accessory channel list update, required to configure the accessory
5635
5638
  // then prepare the accessory
@@ -7773,19 +7776,16 @@ class StbDevice {
7773
7776
  );
7774
7777
 
7775
7778
  // triple rapid VolDown presses triggers setMute
7776
- let tripleVolDownPress = 100000; // default high value to prevent a tripleVolDown detection when no triple key pressed
7777
7779
  if (volumeSelectorValue === Characteristic.VolumeSelector.DECREMENT) {
7778
- this.lastVolDownKeyPress[2] = this.lastVolDownKeyPress[1] || 0;
7779
- this.lastVolDownKeyPress[1] = this.lastVolDownKeyPress[0] || 0;
7780
- this.lastVolDownKeyPress[0] = Date.now();
7781
- tripleVolDownPress =
7782
- this.lastVolDownKeyPress[0] - this.lastVolDownKeyPress[2];
7783
- // check time difference between current keyPress and 2 keyPresses ago
7784
- this.log.debug(
7785
- "%s: setVolume: Timediff between volDownKeyPress[0] and volDownKeyPress[2]: %s ms",
7786
- this.name,
7787
- tripleVolDownPress, // use already-calculated variable, not recalculation
7788
- );
7780
+ // Guard: ensure array is properly initialised
7781
+ if (!Array.isArray(this.lastVolDownKeyPress) || this.lastVolDownKeyPress.length < 3) {
7782
+ this.lastVolDownKeyPress = [0, 0, 0];
7783
+ }
7784
+
7785
+ // self-limiting,shift of array values:
7786
+ this.lastVolDownKeyPress.unshift(Date.now());
7787
+ this.lastVolDownKeyPress = this.lastVolDownKeyPress.slice(0, 3); // keep only last 3
7788
+
7789
7789
  }
7790
7790
 
7791
7791
  // check for triple press of volDown, send setMute if tripleVolDownPress less than triplePressTime of 800ms
@@ -7822,6 +7822,9 @@ class StbDevice {
7822
7822
  }
7823
7823
 
7824
7824
  try {
7825
+ if (this.debugLevel > 0) {
7826
+ this.log.warn("%s: setVolume: Sending command %s", this.name, command);
7827
+ }
7825
7828
  await new Promise((resolve, reject) => {
7826
7829
  exec(command, (error, _stdout, stderr) => {
7827
7830
  if (error) reject(stderr.trim());
package/package.json CHANGED
@@ -3,7 +3,7 @@
3
3
  "displayName": "Homebridge EOSSTB",
4
4
  "description": "Add your set-top box to Homekit (for Telenet BE, Sunrise CH, UPC SK, Virgin Media GB & IE, Ziggo NL)",
5
5
  "author": "Jochen Siegenthaler (https://github.com/jsiegenthaler/)",
6
- "version": "2.4.0-alpha.43",
6
+ "version": "2.4.0-alpha.45",
7
7
  "platformname": "eosstb",
8
8
  "dependencies": {
9
9
  "axios": "^1.16.0",