Comments (68)
@Sholofly You did it! It's working! So far I've been able to change channels, look at the recordings. I've restarted HA and all working.
from lghorizon.
For our GB users @ChrisThomas42 @caraar12345 @mattlongman , @dnwlmz @davepearson1628 Please try the new version and let me know!
from lghorizon.
Thank you @caraar12345 & @Sholofly - tested and authenticating correctly with Virgin Media (GB) now.
from lghorizon.
Ok, it's a bit tricky with the different profiles :-) I tested them all and in fact you first need to find the one linked to the TV Box. In my case it was the third one, but you need to test it
The good profile gives on the telenettv website this in the profiles:
All good now and confirmed working :-)
Thanks for all your efforts @Sholofly !!!!
for some people it will be searching. but for the most of them it will be clear on that screen.
from lghorizon.
All credits are for @caraar12345...
from lghorizon.
Hey - I only made the Virgin bit work, you made everything else (and thank you greatly for that) 😁
from lghorizon.
@caraar12345 Wonderful insight and work, appreciate it!
from lghorizon.
from lghorizon.
@Kimvdp1988 @wimvermoens Please update to the latest version. Issue seems to be solved by providing your Telenet account identifier. Please read the readme for the instructions.
from lghorizon.
from lghorizon.
I've heard that before. Is it true that when you try to login using the telenet.tv app, you are asked for some extra stuff? Like choosing an account or so e confirmation shizzle?
from lghorizon.
Yes, indeed, the Telenet TV app ask me to choose one out of three options ( all on the same adress and all with basic subscriptions)
from lghorizon.
That's a pity, I can't cope with that situation yet. Problem is that, even when I have Telenet credentials, I need a Belgium hosted VPN server to connect to the internet, otherwise i'm presented with a recaptcha image :(
from lghorizon.
If you like, i can setup a vpn server from my place, and provide you with account, then you are on Telenet network.
from lghorizon.
That would be awesome. Please contact me on Discord if you like: Sholofly#4951
from lghorizon.
Hi did you find a way to get it back working?
from lghorizon.
I've just updated to latest version and getting the same unable to connect error on VirginMedia (GB). Here's what I see in the log,
`Logger: lghorizon.lghorizon_api
Source: /usr/local/lib/python3.10/site-packages/backoff/_common.py:120
First occurred: 15:27:53 (4 occurrences)
Last logged: 15:29:46
Giving up _do_api_call(...) after 3 tries (lghorizon.exceptions.LGHorizonApiConnectionError: Unable to call https://web-api-prod-obo.horizon.tv/oesp/v4/GB/eng/web/auth-service/v1/mqtt/token. Error:404 Client Error: Not Found for url: https://web-api-prod-obo.horizon.tv/oesp/v4/GB/eng/web/auth-service/v1/mqtt/token)`
Chris
from lghorizon.
Do I need to remove the other integration, Arris DCX960?
from lghorizon.
from lghorizon.
@Sholofly Could you be more specific which logs? I can't see anything else listed related, I'm probably not looking in the right place!
from lghorizon.
unless this is what you mean. I'm growing my Homeassistant knowledge daily!
2022-11-17 15:28:54.095 ERROR (SyncWorker_6) [lghorizon.lghorizon_api] Giving up _do_api_call(...) after 3 tries (lghorizon.exceptions.LGHorizonApiConnectionError: Unable to call https://web-api-prod-obo.horizon.tv/oesp/v4/GB/eng/web/auth-service/v1/mqtt/token. Error:404 Client Error: Not Found for url: https://web-api-prod-obo.horizon.tv/oesp/v4/GB/eng/web/auth-service/v1/mqtt/token) 2022-11-17 15:29:46.038 ERROR (SyncWorker_4) [lghorizon.lghorizon_api] Giving up _do_api_call(...) after 3 tries (lghorizon.exceptions.LGHorizonApiConnectionError: Unable to call https://web-api-prod-obo.horizon.tv/oesp/v4/GB/eng/web/auth-service/v1/mqtt/token. Error:404 Client Error: Not Found for url: https://web-api-prod-obo.horizon.tv/oesp/v4/GB/eng/web/auth-service/v1/mqtt/token)
from lghorizon.
@Sholofly are there any updates?
from lghorizon.
Hi @JasperVanZeir Unfortunately i hadn't the time to check. I'll get back to this soon.
from lghorizon.
Hi, I'm getting the attached 'logo' error when trying to setup the connection for Virgin Media (IE).
Any idea what's causing this?
from lghorizon.
That's a strange one. Is there someon willing to share account details (temporary) so i can test my code locally?
Please contact me on discord if you like: Sholofly#4951
from lghorizon.
Please @JasperVanZeir, @Hjem013 Try installing again
from lghorizon.
Please @JasperVanZeir, @Hjem013 Try installing again
Thanks! That's working now, integration successfully added!
from lghorizon.
Ok can you tell me the brand and model of your settop box?
from lghorizon.
Ok can you tell me the brand and model of your settop box?
The setup box is a HUMAX 1008R-HDD-VM/IE
from lghorizon.
@Sholofly
I've upgraded to the ltest version and I've removed the Arris integration but I'm still getting the cannot connect error when I try and submit, the only log entry I can find;
`Logger: lghorizon.lghorizon_api
Source: /usr/local/lib/python3.10/site-packages/backoff/_common.py:120
First occurred: 11:16:48 (2 occurrences)
Last logged: 12:19:21
Giving up _authorize(...) after 3 tries (lghorizon.exceptions.LGHorizonApiConnectionError: Internal server error)
`
I get this error if my box is on or off. I don't see a Virgin UK in the dialog but I've tried all the other options with the same result.
Chris
from lghorizon.
I get the same as @ChrisThomas42 Virgin UK so selected the IE option assuming that is the one to use? Log just shows [lghorizon.lghorizon_api] Giving up _authorize(...) after 3 tries (lghorizon.exceptions.LGHorizonApiConnectionError: Internal server error)
from lghorizon.
@Sholofly Is there anything I can do to help diagnose the issue?
from lghorizon.
Please can you provide me a full debug log? Please add:
logger:
default: warning
logs:
custom_components.lghorizon: debug
lghorizon: debug
to your config
from lghorizon.
@Sholofly Is this what you're after?
2022-12-04 22:15:23.675 DEBUG (SyncWorker_6) [lghorizon.lghorizon_api] Connect to API 2022-12-04 22:15:23.676 DEBUG (SyncWorker_6) [lghorizon.lghorizon_api] Authorizing 2022-12-04 22:15:24.196 INFO (SyncWorker_6) [lghorizon.lghorizon_api] Backing off _authorize(...) for 0.2s (lghorizon.exceptions.LGHorizonApiConnectionError: Internal server error) 2022-12-04 22:15:24.402 DEBUG (SyncWorker_6) [lghorizon.lghorizon_api] Authorizing 2022-12-04 22:15:24.695 INFO (SyncWorker_6) [lghorizon.lghorizon_api] Backing off _authorize(...) for 0.4s (lghorizon.exceptions.LGHorizonApiConnectionError: Internal server error) 2022-12-04 22:15:25.120 DEBUG (SyncWorker_6) [lghorizon.lghorizon_api] Authorizing 2022-12-04 22:15:25.403 ERROR (SyncWorker_6) [lghorizon.lghorizon_api] Giving up _authorize(...) after 3 tries (lghorizon.exceptions.LGHorizonApiConnectionError: Internal server error)
Chris
from lghorizon.
After update to latest version I get this in the log
2022-12-06 10:43:16.700 DEBUG (SyncWorker_6) [lghorizon.lghorizon_api] Connect to API 2022-12-06 10:43:16.701 DEBUG (SyncWorker_6) [lghorizon.lghorizon_api] Step 1 - Get Authorization data 2022-12-06 10:43:16.886 DEBUG (SyncWorker_6) [lghorizon.lghorizon_api] Obtain mqtt token... 2022-12-06 10:43:16.887 INFO (SyncWorker_6) [lghorizon.lghorizon_api] Executing API call to https://prod.spark.virginmedia.com/auth-service/v1/mqtt/token 2022-12-06 10:43:17.027 DEBUG (SyncWorker_6) [lghorizon.lghorizon_api] Step 1 - Get Authorization data 2022-12-06 10:43:17.177 INFO (SyncWorker_6) [lghorizon.lghorizon_api] Backing off _do_api_call(...) for 1.0s (lghorizon.exceptions.LGHorizonApiConnectionError: Unable to call https://prod.spark.virginmedia.com/auth-service/v1/mqtt/token. Error:401 Client Error: Unauthorized for url: https://prod.spark.virginmedia.com/auth-service/v1/mqtt/token) 2022-12-06 10:43:18.150 INFO (SyncWorker_6) [lghorizon.lghorizon_api] Executing API call to https://prod.spark.virginmedia.com/auth-service/v1/mqtt/token 2022-12-06 10:43:18.202 DEBUG (SyncWorker_6) [lghorizon.lghorizon_api] Step 1 - Get Authorization data 2022-12-06 10:43:18.334 INFO (SyncWorker_6) [lghorizon.lghorizon_api] Backing off _do_api_call(...) for 1.8s (lghorizon.exceptions.LGHorizonApiConnectionError: Unable to call https://prod.spark.virginmedia.com/auth-service/v1/mqtt/token. Error:401 Client Error: Unauthorized for url: https://prod.spark.virginmedia.com/auth-service/v1/mqtt/token) 2022-12-06 10:43:20.178 INFO (SyncWorker_6) [lghorizon.lghorizon_api] Executing API call to https://prod.spark.virginmedia.com/auth-service/v1/mqtt/token 2022-12-06 10:43:20.234 DEBUG (SyncWorker_6) [lghorizon.lghorizon_api] Step 1 - Get Authorization data 2022-12-06 10:43:20.371 ERROR (SyncWorker_6) [lghorizon.lghorizon_api] Giving up _do_api_call(...) after 3 tries (lghorizon.exceptions.LGHorizonApiConnectionError: Unable to call https://prod.spark.virginmedia.com/auth-service/v1/mqtt/token. Error:401 Client Error: Unauthorized for url: https://prod.spark.virginmedia.com/auth-service/v1/mqtt/token)
and the same can't connect error.
Is this helping?
Chris
from lghorizon.
A little, Are there more log lines before this part? This part is about setting up a real time connection between the component and the box. But I really would like to know if the default API calls works.
from lghorizon.
@Sholofly
I've just tried to add again, and this is everything from Settings, System, Logs, Home Assistant Core, Load full Logs,
2022-12-06 15:08:28.310 DEBUG (SyncWorker_4) [lghorizon.lghorizon_api] Connect to API 2022-12-06 15:08:28.311 DEBUG (SyncWorker_4) [lghorizon.lghorizon_api] Step 1 - Get Authorization data 2022-12-06 15:08:28.537 DEBUG (SyncWorker_4) [lghorizon.lghorizon_api] Obtain mqtt token... 2022-12-06 15:08:28.538 INFO (SyncWorker_4) [lghorizon.lghorizon_api] Executing API call to https://prod.spark.virginmedia.com/auth-service/v1/mqtt/token 2022-12-06 15:08:28.693 DEBUG (SyncWorker_4) [lghorizon.lghorizon_api] Step 1 - Get Authorization data 2022-12-06 15:08:28.841 INFO (SyncWorker_4) [lghorizon.lghorizon_api] Backing off _do_api_call(...) for 0.8s (lghorizon.exceptions.LGHorizonApiConnectionError: Unable to call https://prod.spark.virginmedia.com/auth-service/v1/mqtt/token. Error:401 Client Error: Unauthorized for url: https://prod.spark.virginmedia.com/auth-service/v1/mqtt/token) 2022-12-06 15:08:29.683 INFO (SyncWorker_4) [lghorizon.lghorizon_api] Executing API call to https://prod.spark.virginmedia.com/auth-service/v1/mqtt/token 2022-12-06 15:08:29.832 DEBUG (SyncWorker_4) [lghorizon.lghorizon_api] Step 1 - Get Authorization data 2022-12-06 15:08:29.967 INFO (SyncWorker_4) [lghorizon.lghorizon_api] Backing off _do_api_call(...) for 0.8s (lghorizon.exceptions.LGHorizonApiConnectionError: Unable to call https://prod.spark.virginmedia.com/auth-service/v1/mqtt/token. Error:401 Client Error: Unauthorized for url: https://prod.spark.virginmedia.com/auth-service/v1/mqtt/token) 2022-12-06 15:08:30.785 INFO (SyncWorker_4) [lghorizon.lghorizon_api] Executing API call to https://prod.spark.virginmedia.com/auth-service/v1/mqtt/token 2022-12-06 15:08:30.834 DEBUG (SyncWorker_4) [lghorizon.lghorizon_api] Step 1 - Get Authorization data 2022-12-06 15:08:30.964 ERROR (SyncWorker_4) [lghorizon.lghorizon_api] Giving up _do_api_call(...) after 3 tries (lghorizon.exceptions.LGHorizonApiConnectionError: Unable to call https://prod.spark.virginmedia.com/auth-service/v1/mqtt/token. Error:401 Client Error: Unauthorized for url: https://prod.spark.virginmedia.com/auth-service/v1/mqtt/token)
There's nothing else LGHorizon related I can see either before or after in the log.
Chris
from lghorizon.
If I try and browse to ...prodspark... I get
`
HTTP ERROR 401 Unauthorized
URI: | /public/v1/mqtt/token |
---|---|
401 | |
Unauthorized | |
jersey |
If I try and connect to this service, how do I pass my credentials?
from lghorizon.
Also to add, that if I try and connect with anything other than Virgin Media I get an Invalid Credentials error, not the Can't connect error.
from lghorizon.
Ok, thank you! Your efforts and patience are appreciated. It's for me a process of trial and error so I have to investigate a bit more.
I'll get back to you!
from lghorizon.
Ok, let me know if I can help.
from lghorizon.
👋 As an extra data point, I'm also seeing the same.
Will do a bit more investigation but logs included just in case they help 👀
2022-12-07 00:39:36.408 DEBUG (SyncWorker_13) [lghorizon.lghorizon_api] Connect to API
2022-12-07 00:39:36.430 DEBUG (SyncWorker_13) [lghorizon.lghorizon_api] Step 1 - Get Authorization data
2022-12-07 00:39:36.722 DEBUG (SyncWorker_13) [lghorizon.lghorizon_api] Obtain mqtt token...
2022-12-07 00:39:36.723 INFO (SyncWorker_13) [lghorizon.lghorizon_api] Executing API call to https://prod.spark.virginmedia.com/auth-service/v1/mqtt/token
2022-12-07 00:39:36.947 DEBUG (SyncWorker_13) [lghorizon.lghorizon_api] Step 1 - Get Authorization data
2022-12-07 00:39:37.182 INFO (SyncWorker_13) [lghorizon.lghorizon_api] Backing off _do_api_call(...) for 0.2s (lghorizon.exceptions.LGHorizonApiConnectionError: Unable to call https://prod.spark.virginmedia.com/auth-service/v1/mqtt/token. Error:401 Client Error: Unauthorized for url: https://prod.spark.virginmedia.com/auth-service/v1/mqtt/token)
2022-12-07 00:39:37.398 INFO (SyncWorker_13) [lghorizon.lghorizon_api] Executing API call to https://prod.spark.virginmedia.com/auth-service/v1/mqtt/token
2022-12-07 00:39:37.463 DEBUG (SyncWorker_13) [lghorizon.lghorizon_api] Step 1 - Get Authorization data
2022-12-07 00:39:37.711 INFO (SyncWorker_13) [lghorizon.lghorizon_api] Backing off _do_api_call(...) for 0.9s (lghorizon.exceptions.LGHorizonApiConnectionError: Unable to call https://prod.spark.virginmedia.com/auth-service/v1/mqtt/token. Error:401 Client Error: Unauthorized for url: https://prod.spark.virginmedia.com/auth-service/v1/mqtt/token)
2022-12-07 00:39:38.647 INFO (SyncWorker_13) [lghorizon.lghorizon_api] Executing API call to https://prod.spark.virginmedia.com/auth-service/v1/mqtt/token
2022-12-07 00:39:38.715 DEBUG (SyncWorker_13) [lghorizon.lghorizon_api] Step 1 - Get Authorization data
2022-12-07 00:39:38.941 ERROR (SyncWorker_13) [lghorizon.lghorizon_api] Giving up _do_api_call(...) after 3 tries (lghorizon.exceptions.LGHorizonApiConnectionError: Unable to call https://prod.spark.virginmedia.com/auth-service/v1/mqtt/token. Error:401 Client Error: Unauthorized for url: https://prod.spark.virginmedia.com/auth-service/v1/mqtt/token)
from lghorizon.
I have the same issue. When i logon to telenet.tv I have to choose which address in my account before I can watch TV.
Is there anything possible to skip this?
from lghorizon.
@Sholofly I'm not sure if this info is helpful, but when I login on the Android or Windows app I don't get asked anymore info after login and I can control the settop box from either of those apps.
Chris
from lghorizon.
Without credentials I am unable to solve this issue, I am sorry. The login procedure is so much different in this case.
from lghorizon.
@Sholofly That is a shame, thank you for your hard work and for trying. Can I revert to the ArrisDCX960 integration?
from lghorizon.
Unfortunately not. It's not working anymore...
from lghorizon.
@Sholofly Just had a thought, could the issue be related to the Device Management and the Authorised devices?
from lghorizon.
I don't think so, but don't have this situation in my own account so can't tell for sure. It looks like some people have multiple accounts at Telenet (didn't see it at other providers yet). It looks like you have to set a default account once in your cookie and fromt hat moment on it's using that account.
from lghorizon.
I have multiple installations address on one account. I have to pick the subscription that I want to use.
from lghorizon.
@smolders33 Can you provide me with the URL sequences that are used for that one? using Chrome's dev tools?
Or better, provide me with credentials so I can test it myself
from lghorizon.
from lghorizon.
@Sholofly I'm happy to help and around (most of) today as well.
from lghorizon.
@smolders33 Can you provide me with the URL sequences that are used for that one? using Chrome's dev tools? Or better, provide me with credentials so I can test it myself
Can we setup a call for this. The login is going to multiple url's.
I can then also share my credentials if needed
from lghorizon.
Thank you for your wilingness to coorporate. Its very much appreciated. Unfortunately i=I am at work ATM and not able to join now. Can we set a meeting for an evening?
from lghorizon.
HI, I'm still having problems logging in to Virgin Media UK - I always get the "Can't Connect" error.
Luckily I haven't yet removed the old Arris DCX960 integration, which is still working for me.
It would be good to be able to migrate the this newer version, though.
from lghorizon.
I'm having the same issue as well with Virgin UK;
I've also removed the Arris integration :(
from lghorizon.
Same issue with Virgin GB. I see there are a few offers of help above, but happy to configure a VPN for testing too if needed.
from lghorizon.
Hi UK users, thanks for offering help. I will get back to you soon.
from lghorizon.
So I've had a bit of a deep dive on Virgin GB with Burp to try and watch how it authenticates. And it seems the method by which to get the MQTT token is entirely different to the rest (obviously...!).
- Authorisation takes place by hitting
https://prod.oesp.virginmedia.com/oesp/v4/GB/eng/web/authorization
with a JSON payload:{"authorizationGrant":{"authorizationCode":"<6 char>","validityToken":"<jwt>","state":"<uuid>"}}
- That responds with a JSON payload containing a JWT refresh token and your customer ID / username.
- That payload is POSTed to
https://prod.oesp.virginmedia.com/oesp/v4/GB/eng/web/session?token=true
. - That responds with a huge JSON blob containing a load of profile information, but importantly,
accessToken
andoespToken
which are both identical JWTs and are then used throughout. - To get the JWT used for MQTT, it connects to
https://prod.oesp.virginmedia.com/oesp/v4/GB/eng/web/tokens/jwt
withx-oesp-token
andx-oesp-username
set in the request headers. These are from the above request. - Two messages are then sent via a websocket connection to
wss://obomsg.prod.uk.horizon.tv/mqtt
- The first:
00000000: 10 .
- The second:
���MQTT�î<�<mqtt_client_id>2<customer_ID>_gb/<same_seemingly_random_id>/statusP{"source":"<mqtt_client_id>","state":"OFFLINE","deviceType":"HGO"}<customer_ID>_gbÁ<jwt from tokens/jwt>
- This seems to just be a standard MQTT over websocket exchange
- The first:
- At which point, the MQTT connection is open and works fine.
from lghorizon.
I was starting to get somewhere with the actual auth but...
{'system': 'OESP', 'reason': 'user 203276049 has reached the maximum number of simultaneous sessions allowed'}
🤦
from lghorizon.
@Sholofly Do you want any of the logs from a successful configuration? There's loads of info... Still have debug enabled, about to remove.
from lghorizon.
Have just tested it for Telenet BE, and the connection works! I added the DTVxxxxx identifier and all is good! I just don't see the device yet in HA, but the integration appears!
from lghorizon.
@geertmeersman Are you sure using the right identifier? The boxes should all appear right away.
from lghorizon.
Ok, it's a bit tricky with the different profiles :-)
I tested them all and in fact you first need to find the one linked to the TV Box.
In my case it was the third one, but you need to test it
The good profile gives on the telenettv website this in the profiles:
All good now and confirmed working :-)
Thanks for all your efforts @Sholofly !!!!
from lghorizon.
@Sholofly Works like a Charm! perfect mate, Cheers to you.
Enjoy the holiday season!
from lghorizon.
Thanks all!
from lghorizon.
@Kimvdp1988 @wimvermoens Please update to the latest version. Issue seems to be solved by providing your Telenet account identifier. Please read the readme for the instructions.
Hi @Sholofly. This works perfectly for me now with the addition of the correct DTV number. Awesome, keep up the good work!
from lghorizon.
Related Issues (20)
- Update to HA core 2024.2.0 crashes LG-Horizon and HA HOT 25
- Intergration fails to initalize HOT 14
- Dependency Dashboard
- Action Required: Fix Renovate Configuration
- Can't login anymore HOT 7
- LG Horizon unavailable again and breaking HA as last time HOT 2
- LGhorizon intergration is running Command not send HOT 3
- LH Horizon integration not working HOT 2
- Giving up connect / KeyError: 'refreshToken HOT 24
- MediaFastForeward not working? HOT 1
- Send letter keys not only numbers
- Reduce time out when integration fails HOT 1
- SSL certificate expired HOT 10
- Fail to setup HOT 5
- Correct channel names for voice assistants HOT 5
- Virgin Stream Box HOT 3
- Deprication for lghorizon in HA version 2025.5 HOT 1
- No more connection to ziggo next mini HOT 3
- Support for BASE TV-Box HOT 3
- Network unreachable HOT 3
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from lghorizon.