homebridge-eosstb 2.3.7 → 2.3.9
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/CHANGELOG.md +21 -0
- package/README.md +18 -12
- package/index.js +12 -12
- package/package.json +10 -10
package/CHANGELOG.md
CHANGED
|
@@ -10,6 +10,27 @@ Please restart Homebridge after every plugin update.
|
|
|
10
10
|
|
|
11
11
|
- Try and get authentication working again for CH and GB HELP NEEDED
|
|
12
12
|
|
|
13
|
+
## 2.3.9 (2026-05-09)
|
|
14
|
+
- Fixed Error on Homebridge v2: Cannot read properties of undefined (reading 'STRING')
|
|
15
|
+
- Adapted hidden channel name to reduce warning messages with Homebridge v2
|
|
16
|
+
- Updated iOS and Homebridge version references in Readme
|
|
17
|
+
- Bumped engine "^1.11.4||^2.0.0",
|
|
18
|
+
- Bumped engine "node": "^24.15.0"
|
|
19
|
+
- Bumped dependency "axios": "^1.16.0",
|
|
20
|
+
- Bumped dependency "axios-cookiejar-support": "^7.0.0",
|
|
21
|
+
- Bumped dependency "mqtt": "^5.15.1",
|
|
22
|
+
- Bumped dependency "qs": "^6.15.1",
|
|
23
|
+
- Bumped dependency "semver": "^7.8.0",
|
|
24
|
+
- Bumped dependency "tough-cookie": "^6.0.1",
|
|
25
|
+
- Bumped dependency "ws": "^8.20.0"
|
|
26
|
+
|
|
27
|
+
## 2.3.8 (2026-02-27)
|
|
28
|
+
|
|
29
|
+
This is a maintenance release to bring dependencies up to date.
|
|
30
|
+
|
|
31
|
+
- Updated iOS and Homebridge version references in Readme
|
|
32
|
+
- Bumped dependency "qs": "^6.15.0",
|
|
33
|
+
|
|
13
34
|
## 2.3.7 (2026-02-14)
|
|
14
35
|
|
|
15
36
|
This is a maintenance release to bring dependencies up to date.
|
package/README.md
CHANGED
|
@@ -11,13 +11,15 @@
|
|
|
11
11
|
# IMPORTANT NOTICE
|
|
12
12
|
|
|
13
13
|
<hr><b>
|
|
14
|
-
|
|
14
|
+
|
|
15
|
+
* 09 May 2026: Logon method for CH is currently in testing, available shortly from v2.4.0. See alpha and beta versions if you wish to test.
|
|
15
16
|
|
|
16
|
-
22
|
|
17
|
+
* 22 August 2025: Logon method for NL confirmed working again, available from v2.3.6.
|
|
17
18
|
|
|
18
|
-
|
|
19
|
+
* 22 June 2024: Logon method for BE confirmed working again, available from v2.3.2.
|
|
20
|
+
|
|
21
|
+
The logon method to the backend systems changed in January / February 2024. I managed to get CH working again from April 2026 for CH. NL was confirmed working OK in May 2026. BE was confirmed working OK in June 2024.
|
|
19
22
|
|
|
20
|
-
If you know anything about session authentication and are able to help, please get in touch.
|
|
21
23
|
</b><hr>
|
|
22
24
|
|
|
23
25
|
[](https://www.npmjs.com/package/homebridge-eosstb)
|
|
@@ -44,6 +46,10 @@ Supports multiple set-top boxes, should you have more than one.
|
|
|
44
46
|
If you like this plugin, consider buying me a coffee!<br>
|
|
45
47
|
<a target="blank" href="https://ko-fi.com/jsiegenthaler"><img src="https://img.shields.io/badge/Ko--Fi-Buy%20me%20a%20coffee-29abe0.svg?logo=ko-fi"/></a>
|
|
46
48
|
|
|
49
|
+
# Update May 2026
|
|
50
|
+
|
|
51
|
+
Logon method for CH working again from v2.4.0 (in alpha and beta stage). Use Authentication Method E.
|
|
52
|
+
|
|
47
53
|
# Update August 2025
|
|
48
54
|
|
|
49
55
|
Logon methods for NL working again from v2.3.6. Use Authentication Method A.
|
|
@@ -58,7 +64,7 @@ Logon methods for many providers changed from January 2024 to mid February 2024.
|
|
|
58
64
|
|
|
59
65
|
## Help Wanted
|
|
60
66
|
|
|
61
|
-
For GB, IE
|
|
67
|
+
For GB, IE the logon method is no longer working. Refer Issue [#112](https://github.com/jsiegenthaler/homebridge-eosstb/issues/112). If are able to help, please get in touch.
|
|
62
68
|
|
|
63
69
|
## Readme Applicability
|
|
64
70
|
|
|
@@ -71,10 +77,10 @@ As [Liberty Global](https://en.wikipedia.org/wiki/Liberty_Global) (the operator
|
|
|
71
77
|
| Country | TV Provider | Web App | Box Name | Notes |
|
|
72
78
|
| ------- | --------------------------------------------- | ---------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------- |
|
|
73
79
|
| BE | [Telenet](https://www2.telenet.be/) | [Telenet TV](https://www.telenettv.be/nl.html) | [Telenet TV-Box](https://www2.telenet.be/nl/klantenservice/ontdek-de-telenet-tv-box/) | As of 15 June 2024 should be working again. Use Authentication Method B. |
|
|
74
|
-
| CH | [Sunrise](https://www.sunrise.ch/en/) | [Sunrise TV](https://www.sunrisetv.ch/en.html) | [Sunrise TV Box](https://www.sunrise.ch/en/internet-tv/tv-subscription) | As of
|
|
80
|
+
| CH | [Sunrise](https://www.sunrise.ch/en/) | [Sunrise TV](https://www.sunrisetv.ch/en.html) | [Sunrise TV Box](https://www.sunrise.ch/en/internet-tv/tv-subscription) | As of May 2026, connection is working again |
|
|
75
81
|
| GB | [Virgin Media](https://www.virginmedia.com/) | [Virgin TV Go](https://virgintvgo.virginmedia.com/en.html) | [Virgin TV 360](https://www.virginmedia.com/shop/tv/virgin-tv-360) and [Virgin TV 360 Mini](https://www.virginmedia.com/shop/tv/multiroom) | As of January 2024, connection to box is no longer working. Help Wanted! |
|
|
76
82
|
| IE | [Virgin Media](https://www.virginmedia.ie/) | [Virgin TV Anywhere](https://www.virginmediatv.ie/en.html) | [360 Box](https://www.virginmedia.ie/virgintv360support/) | As of January 2024, connection to box is no longer working. Help Wanted! |
|
|
77
|
-
| NL | [Ziggo](https://www.ziggo.nl/) | [Ziggo GO](https://www.ziggogo.tv/nl.html) | [Mediabox Next](https://www.ziggo.nl/televisie/mediaboxen/mediabox-next#ziggo-tv) |
|
|
83
|
+
| NL | [Ziggo](https://www.ziggo.nl/) | [Ziggo GO](https://www.ziggogo.tv/nl.html) | [Mediabox Next](https://www.ziggo.nl/televisie/mediaboxen/mediabox-next#ziggo-tv) | Confirmed working in May 2026. |
|
|
78
84
|
| SK | [UPC Broadband Slovakia](https://www.upc.sk/) | [UPC TV](https://www.upctv.sk/sk/home) | UPC TV Box | _Testers Wanted_ |
|
|
79
85
|
| ------- | ----------- | ------- | -------- | ------------- |
|
|
80
86
|
| PL | [UPC PL](https://www.upc.pl/) | [UPC TV GO](https://www.upctv.pl/pl/home) | UPC TV Box | [UPC TV in Poland appears to have been discontinued in August 2023](https://en.wikipedia.org/wiki/UPC_Poland) |
|
|
@@ -101,8 +107,8 @@ This plugin is not provided by Telenet or Sunrise or Virgin Media or Ziggo any o
|
|
|
101
107
|
|
|
102
108
|
## Requirements
|
|
103
109
|
|
|
104
|
-
- An Apple iPhone or iPad with iOS/iPadOS 14.0 (or later). Developed on iOS 14.1...
|
|
105
|
-
- [Homebridge](https://homebridge.io/) v1.1.116 (or later). Developed on Homebridge 1.1.116....
|
|
110
|
+
- An Apple iPhone or iPad with iOS/iPadOS 14.0 (or later). Developed on iOS 14.1...26.4, earlier versions not tested.
|
|
111
|
+
- [Homebridge](https://homebridge.io/) v1.1.116 (or later). Developed on Homebridge 1.1.116....2.0.1, earlier versions not tested.
|
|
106
112
|
- A TV subscription from one of the supported countries and TV providers.
|
|
107
113
|
- An online account for viewing TV in the web app (often part of your TV package), see the table above.
|
|
108
114
|
- An ARRIS DCX960 or HUMAX EOS1008R / 2008C / VIP5002W set-top box, provided by your TV provider as part of your TV subscription, called by the system an "EOSSTB", "EOS2STB" or "APLSTB" and marketed under different names in different countries.
|
|
@@ -145,7 +151,7 @@ This plugin is not provided by Telenet or Sunrise or Virgin Media or Ziggo any o
|
|
|
145
151
|
|
|
146
152
|
- **Fully Configurable**: A large amount of configuration items exist to allow you to configure your plugin the way you want.
|
|
147
153
|
|
|
148
|
-
- **Future Feature Support**: The plugin also supports current and target media state as well as closed captions, even though the Home app accessory cannot currently display or control this data in the home app (as at iOS
|
|
154
|
+
- **Future Feature Support**: The plugin also supports current and target media state as well as closed captions, even though the Home app accessory cannot currently display or control this data in the home app (as at iOS 26.4). Hopefully, Apple will add support for these features in the future. You can however use this data in Home Automations or the Shortcuts app.
|
|
149
155
|
|
|
150
156
|
## Installation
|
|
151
157
|
|
|
@@ -242,7 +248,7 @@ Services used in this set-top box accessory are:
|
|
|
242
248
|
|
|
243
249
|
### Media State (Play/Pause) Limitations
|
|
244
250
|
|
|
245
|
-
The eosstb plugin can detect the target and current media state and shows STOP, PLAY, PAUSE or LOADING (loading is displayed only for current media state when fast-forwarding or rewinding) in the Homebridge logs. Unfortunately, the Apple Home app cannot do anything with the media state (as at iOS
|
|
251
|
+
The eosstb plugin can detect the target and current media state and shows STOP, PLAY, PAUSE or LOADING (loading is displayed only for current media state when fast-forwarding or rewinding) in the Homebridge logs. Unfortunately, the Apple Home app cannot do anything with the media state (as at iOS 26.4) apart from allow you to read it in Shortcuts or Automations. Hopefully this will improve in the future.
|
|
246
252
|
|
|
247
253
|
### Recording State Limitations
|
|
248
254
|
|
|
@@ -250,7 +256,7 @@ The eosstb plugin can detect the current recording state of the set-top box, bot
|
|
|
250
256
|
|
|
251
257
|
### Closed Captions Limitations
|
|
252
258
|
|
|
253
|
-
The eosstb plugin can detect the closed captions state (**Subtitle options** in the set-top box menu) and shows ENABLED or DISABLED in the Homebridge logs. Unfortunately, the Apple Home app cannot do anything with the closed captions state (as at iOS
|
|
259
|
+
The eosstb plugin can detect the closed captions state (**Subtitle options** in the set-top box menu) and shows ENABLED or DISABLED in the Homebridge logs. Unfortunately, the Apple Home app cannot do anything with the closed captions state (as at iOS 26.4) apart from allow you to read it in Shortcuts or Automations. Hopefully this will improve in the future.
|
|
254
260
|
|
|
255
261
|
## Configuration
|
|
256
262
|
|
package/index.js
CHANGED
|
@@ -5184,7 +5184,7 @@ class stbDevice {
|
|
|
5184
5184
|
.setCharacteristic(
|
|
5185
5185
|
Characteristic.ProgramMode,
|
|
5186
5186
|
Characteristic.ProgramMode.NO_PROGRAM_SCHEDULED
|
|
5187
|
-
) // NO_PROGRAM_SCHEDULED or PROGRAM_SCHEDULED or
|
|
5187
|
+
) // NO_PROGRAM_SCHEDULED or PROGRAM_SCHEDULED or PROGRAM_SCHEDULED_MANUAL_MODE
|
|
5188
5188
|
.setCharacteristic(
|
|
5189
5189
|
Characteristic.StatusActive,
|
|
5190
5190
|
Characteristic.Active.ACTIVE
|
|
@@ -5310,8 +5310,8 @@ class stbDevice {
|
|
|
5310
5310
|
"Current Channel Id",
|
|
5311
5311
|
"00000001" + BASE_UUID,
|
|
5312
5312
|
{
|
|
5313
|
-
format:
|
|
5314
|
-
perms: [
|
|
5313
|
+
format: this.api.hap.Formats.STRING,
|
|
5314
|
+
perms: [this.api.hap.Perms.PAIRED_READ, this.api.hap.Perms.NOTIFY],
|
|
5315
5315
|
}
|
|
5316
5316
|
);
|
|
5317
5317
|
hapCharacteristic.value = ""; // add a default empty value
|
|
@@ -5326,8 +5326,8 @@ class stbDevice {
|
|
|
5326
5326
|
"Current Channel Name",
|
|
5327
5327
|
"00000002" + BASE_UUID,
|
|
5328
5328
|
{
|
|
5329
|
-
format:
|
|
5330
|
-
perms: [
|
|
5329
|
+
format: this.api.hap.Formats.STRING,
|
|
5330
|
+
perms: [this.api.hap.Perms.PAIRED_READ, this.api.hap.Perms.NOTIFY],
|
|
5331
5331
|
}
|
|
5332
5332
|
);
|
|
5333
5333
|
hapCharacteristic.value = ""; // add a default empty value
|
|
@@ -5428,8 +5428,8 @@ class stbDevice {
|
|
|
5428
5428
|
|
|
5429
5429
|
// default values to hide the input if nothing exists in this.channelList
|
|
5430
5430
|
var chFixedName = `Input ${i < 10 ? `0${i}` : i}`; // fixed if not profile 0
|
|
5431
|
-
var chName = "
|
|
5432
|
-
var chId = "
|
|
5431
|
+
var chName = "HIDDEN" + ("0" + (i + 1)).slice(-2);
|
|
5432
|
+
var chId = "HIDDEN" + i;
|
|
5433
5433
|
var visState = Characteristic.CurrentVisibilityState.HIDDEN;
|
|
5434
5434
|
var configState = Characteristic.IsConfigured.NOT_CONFIGURED;
|
|
5435
5435
|
|
|
@@ -5445,9 +5445,9 @@ class stbDevice {
|
|
|
5445
5445
|
}
|
|
5446
5446
|
|
|
5447
5447
|
// some channels are deliberately hidden, so assign a fictional channelId and disable them
|
|
5448
|
-
if (chName.includes("
|
|
5449
|
-
// name contains '
|
|
5450
|
-
chId = "
|
|
5448
|
+
if (chName.includes("HIDDEN")) {
|
|
5449
|
+
// name contains 'HIDDEN'
|
|
5450
|
+
chId = "HIDDEN" + i;
|
|
5451
5451
|
visState = Characteristic.CurrentVisibilityState.HIDDEN;
|
|
5452
5452
|
configState = Characteristic.IsConfigured.NOT_CONFIGURED;
|
|
5453
5453
|
}
|
|
@@ -6721,10 +6721,10 @@ class stbDevice {
|
|
|
6721
6721
|
// array must stay same size and have elements that can be queried, but channelId must never match valid entries
|
|
6722
6722
|
this.channelList[i] = {
|
|
6723
6723
|
id: "hiddenChId_" + i, // channelid must be unique string, must be different from standard channel ids
|
|
6724
|
-
name: "
|
|
6724
|
+
name: "HIDDEN" + ("0" + (i + 1)).slice(-2),
|
|
6725
6725
|
logicalChannelNumber: null,
|
|
6726
6726
|
linearProducts: null,
|
|
6727
|
-
configuredName: "
|
|
6727
|
+
configuredName: "HIDDEN" + ("0" + (i + 1)).slice(-2),
|
|
6728
6728
|
visibilityState: Characteristic.CurrentVisibilityState.HIDDEN,
|
|
6729
6729
|
};
|
|
6730
6730
|
|
package/package.json
CHANGED
|
@@ -3,22 +3,22 @@
|
|
|
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.3.
|
|
6
|
+
"version": "2.3.9",
|
|
7
7
|
"platformname": "eosstb",
|
|
8
8
|
"dependencies": {
|
|
9
|
-
"axios": "^1.
|
|
10
|
-
"axios-cookiejar-support": "^
|
|
9
|
+
"axios": "^1.16.0",
|
|
10
|
+
"axios-cookiejar-support": "^7.0.0",
|
|
11
11
|
"debug": "^4.4.3",
|
|
12
|
-
"mqtt": "^5.15.
|
|
13
|
-
"qs": "^6.
|
|
14
|
-
"semver": "^7.
|
|
15
|
-
"tough-cookie": "^6.0.
|
|
16
|
-
"ws": "^8.
|
|
12
|
+
"mqtt": "^5.15.1",
|
|
13
|
+
"qs": "^6.15.1",
|
|
14
|
+
"semver": "^7.8.0",
|
|
15
|
+
"tough-cookie": "^6.0.1",
|
|
16
|
+
"ws": "^8.20.0"
|
|
17
17
|
},
|
|
18
18
|
"deprecated": false,
|
|
19
19
|
"engines": {
|
|
20
|
-
"homebridge": "^1.11.
|
|
21
|
-
"node": "^24.
|
|
20
|
+
"homebridge": "^1.11.4||^2.0.0",
|
|
21
|
+
"node": "^24.15.0"
|
|
22
22
|
},
|
|
23
23
|
"homepage": "https://github.com/jsiegenthaler/homebridge-eosstb#readme",
|
|
24
24
|
"keywords": [
|