Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Burst with Libreelec #363

Open
RobJM2 opened this issue Dec 11, 2023 · 9 comments
Open

Burst with Libreelec #363

RobJM2 opened this issue Dec 11, 2023 · 9 comments

Comments

@RobJM2
Copy link

RobJM2 commented Dec 11, 2023

Wondering if anyone else has this issue?
I have 2 installations of Elementum, one on a Sony Bravia TV, works fine, the other an installation of Libreelec on a raspberry pi 4 , on this one I only get results from one provider, MagnetDL, pretty sure both setups have the same settings, including the same half a dozen or so providers?

@antonsoroko
Copy link
Contributor

if they in the same network - then they should behave the same. make 100% sure that they have the same settings - you can copy paste appropriate xml files. see https://kodi.wiki/view/Userdata#Location and https://kodi.wiki/view/Userdata#addon_data .

if they in different networks - then try to use VPN, for example.

@RobJM2
Copy link
Author

RobJM2 commented Dec 12, 2023

Yeah, I use a VPN with same settings for both, I'll give your copy/paste file a go and see if that helps, thanks.

@antonsoroko
Copy link
Contributor

make sure to copy settings.xml for both elementum and burst.

@antonsoroko
Copy link
Contributor

you can also enable debug logging and see if there any errors in log file - most likely it will help you to see the issue with your configuration or network.
see https://elementum.surge.sh/contribute/log/

@elgatito
Copy link
Owner

@antonsoroko

if they in the same network - then they should behave the same.

Yes and no.

https://www.zenrows.com/blog/what-is-tls-fingerprint

There is for some time TLS fingerprinting. By default Python is using OpenSSL with static TLS configuration. Same for default Golang http library.
And Cloudflare can detect that is it not a browser.
So same code and same scripts can run differently on different platforms, because Python is built differently per each OS in Kodi.

There are ways to pretend from Python/Golang to be a real browser, but that is a different story. And I have tried to make a quick change in built-in Elementum's proxy to pretend a browser, but it could not operate at all at that time.

I think because the change enables HTTP2, which is supported by modern browsers, but is not quite supported by default requests Python module, so that Python is expecting to send HTTP1 request through Elementum proxy but receives HTTP2 response.

It would be just easier to add an endpoint in Elementum that would make requests, but not as a usual http proxy, but as a service instead.

And again that won't help a lot.

@RobJM2
Copy link
Author

RobJM2 commented Dec 16, 2023

So copying settings files proved to be a bit awkward on my TV, so gave up, just looked through them all, then tried to remember when looking at kodi on my libreelec set up.

Anyhow, success! Didn't know what I was doing, but on looking through proxy settings in elementum, and remembering elgatito mentioned http , I noticed the 'use built in http' (or similar) was off, so tried putting it on, and bingo!
Thanks for your help guys!
Don't know why it was off (maybe a libreelec thing?), or even what it does to be honest, but it is on on my TV setup.

@elgatito
Copy link
Owner

@RobJM2

mentioned http , I noticed the 'use built in http' (or similar) was off, so tried putting it on, and bingo!

When you enable Elementum proxy - then all your requests are going through Elementum, that has different TLS signature, so it can be treated by Cloudflare as a different client. Sometimes it helps - sometimes not.

@antonsoroko
Copy link
Contributor

@elgatito should this issue kept open so people can easily find it if they have similar issue?
seems to be a common issue.

@RobJM2
Copy link
Author

RobJM2 commented Dec 19, 2023

@RobJM2

mentioned http , I noticed the 'use built in http' (or similar) was off, so tried putting it on, and bingo!

When you enable Elementum proxy - then all your requests are going through Elementum, that has different TLS signature, so it can be treated by Cloudflare as a different client. Sometimes it helps - sometimes not.

Cheers, whatever all that means 😊
Much appreciate your work on this app , it's the only one I use.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

3 participants