jsiegenthaler / homebridge-eosstb

A homebridge plugin for the EOS set-top box as used by Sunrise, Telenet, Ziggo, Virgin Media and maybe more in various countries on the Horizon Go (HGO) platform
https://github.com/jsiegenthaler/homebridge-eosstb
32 stars 4 forks source link

Control of Settop Box no longer possible since ca 10 January 2024 #112

Open jsiegenthaler opened 7 months ago

jsiegenthaler commented 7 months ago

In Switzerland and the UK the settop box can no longer be controlled as of ca 10 Jan 2024

It looks like the MQTT session is no longer connecting

UPDATE 25 Jan 2024: Solved for many countries, please use the latest v2.3.0 (or greater). Still working on the issue for GB

jsiegenthaler commented 6 months ago

Hi @Thornton69 : Sorry, I'm still working on this. Delayed due to illness this week I'm better now. Keep watching this thread and I'll post all progress here reports.

jsiegenthaler commented 6 months ago

Progress report: GB: none yet (delayed due to illness). CH (and all other countries): yesterday I fixed the issue with the mqtt client connection that stopped working 2 days ago. Fixed in v2.3.0-beta.7.

robcarey-uk commented 6 months ago

@jsiegenthaler I'm also in the UK and really appreciate all your hard work with creating this plugin, and agree with @Thornton69 it really is one of the best. If you require any logs or info to help with the UK problem please let me know.

jsiegenthaler commented 6 months ago

Hi All, v2.3.0 published to solve logon issues for many countries. GB is still being worked on.

jsiegenthaler commented 6 months ago

Sure, I'm orenpo

Invite sent

jsiegenthaler commented 6 months ago

@OrenPo: I sent you some comments on Discord but did not get any response.

Thornton69 commented 6 months ago

Any progress on the GB login credentials yet? Many thanks

jsiegenthaler commented 6 months ago

@Thornton69 Not much apart from me having learnt a bit about PKCE and OpenId and SSO. I'd dearly love some help from someone with experience in OpenId...

OrenPo commented 5 months ago

Not sure if it is possible here, but if we can pop up a browser, it can be used for passing the first part of the authentication, and get back the needed tokens.

MartiMan79 commented 5 months ago

Same issue with Belgian Telenet.

[27/02/2024, 13:39:21] [EOSSTB] sessionWatchdog(9): Started watchdog instance 9
[27/02/2024, 13:39:21] [EOSSTB] sessionWatchdog(9): Session connected but mqtt not connected, sessionWatchdog(9) will try to reconnect mqtt now...
jsiegenthaler commented 5 months ago

Not sure if it is possible here, but if we can pop up a browser, it can be used for passing the first part of the authentication, and get back the needed tokens.

You would have to do that every time you restart Homebridge or every time the MQTT connection is lost for any reason. However it is still an interesting thought.

jsiegenthaler commented 5 months ago

Not sure if it is possible here, but if we can pop up a browser, it can be used for passing the first part of the authentication, and get back the needed tokens.

I respectfully suggest trying this yourself - you will see how complex it is. The logon process is not simple and straight-forward. It's more than just a single cookie or token

nickngsr commented 5 months ago

It's painful now Virgin media have switched to Ping Identity and use Ping One Protect (browser profiling). Might be worthwhile having a look at the android app, see if there's something helpful in there.

jimbo-l commented 5 months ago

As a fallback, is there anything that can be done with local network access only (e.g. power the box on and off), or does everything require authentication / network access?

jsiegenthaler commented 5 months ago

It's painful now Virgin media have switched to Ping Identity and use Ping One Protect (browser profiling). Might be worthwhile having a look at the android app, see if there's something helpful in there.

Indeed. Very painful. Unfortunately I do not have any Android devices. But if you do, and you can help, I would welcome the help.

jsiegenthaler commented 5 months ago

As a fallback, is there anything that can be done with local network access only (e.g. power the box on and off), or does everything require authentication / network access?

There's nothing to stop you powering the box down with a smart plug. The physical remote control communicates via wireless signal (maybe Bluetooth) to the box. I cannot intercept or emulate the wireless signals.

This is why I was using network control of the box via the backend servers, and the network control requires authentication.

jimbo-l commented 5 months ago

There's nothing to stop you powering the box down with a smart plug. The physical remote control communicates via wireless signal (maybe Bluetooth) to the box. I cannot intercept or emulate the wireless signals.

This is why I was using network control of the box via the backend servers, and the network control requires authentication.

Yep, I think the remote uses bluetooth. I just wondered if the box itself also ran a web server which allowed you to perform certain commands à la Sky Q. I guess not though.

nickngsr commented 5 months ago

Worst case scenario is to use IR, there are IR codes out there for the 'Ziggo mediabox next' that work with the VM 360 box, just the info and control available via the MQTT connection for integrations is quite appealing

Rkokie commented 5 months ago

Worst case scenario is to use IR, there are IR codes out there for the 'Ziggo mediabox next' that work with the VM 360 box, just the info and control available via the MQTT connection for integrations is quite appealing

Too bad the newer mini boxes don't have IR :')

nickngsr commented 5 months ago

Worst case scenario is to use IR, there are IR codes out there for the 'Ziggo mediabox next' that work with the VM 360 box, just the info and control available via the MQTT connection for integrations is quite appealing

Too bad the newer mini boxes don't have IR :')

That's frustrating!

jsiegenthaler commented 5 months ago

Yep, I think the remote uses bluetooth. I just wondered if the box itself also ran a web server which allowed you to perform certain commands à la Sky Q. I guess not though.

Honestly, I do not know. I've never seen any info on this functionality.

jsiegenthaler commented 5 months ago

Hi All, I made good progress tonight and the results look positive. Keep watching...

Sholofly commented 4 months ago

Any updates? Need help?

jsiegenthaler commented 4 months ago

What I discovered is that if you get past the gatekeeper, everything else is unchanged. The key is the login process. I managed to connect using the key received after a web client login. But of course this needs to be refreshed before the key expires. I need to do more work on this…

realmuster commented 4 months ago

For me the login works (CH: Sunrise TV / Authentication Method A) but whenever it starts, it is not able to find any devices. When logging in to sunrisetv, I can see the device.

What I saw in the logs in homebridge: getPersonalizationData: GET https://spark-prod-ch.gnp.cloud.sunrisetv.ch/eng/web/personalization-service/v1/customer/anonymous?with=profiles%2Cdevices

But the customer should not be anonymous. As I was able to see with the web-inspector, the url is correct, but the customerId is the correct one (not anonymous). I guess there is the issue. Where does that "anonymous" come from? Was the login not successful at all?

jsiegenthaler commented 4 months ago

Hi @realmuster: the fact that it shows your customer as anonymous shows it did not work. The login was rejected and it defaulted to anonymous. Without a proper customer number, it cannot know who you are, what boxes you have and what channels you subscribe to. Thus control of the box is not possible. If you have experience working with oauth2.0 and are willing to help, please get in touch! This project is not dead yet, it is just stuck....

diskobbbox commented 2 months ago

Great to see the plugin working again in BE! Succes getting other countries to work! Thx!!!