tobychui / zoraxy

A general purpose HTTP reverse proxy and forwarding tool. Now written in Go!
https://zoraxy.arozos.com
GNU Affero General Public License v3.0
2.11k stars 119 forks source link

[HELP] Jellyfin Android TV won't connect #214

Open AzAel76 opened 2 weeks ago

AzAel76 commented 2 weeks ago

Can anyone share the custom headers required for the Android TV Jellyfin app to connect to a remote instance?

All other clients work fine it just seems to be the ATV app that chokes. Works perfectly with npm.

Morethanevil commented 2 weeks ago

Maybe related to this issue? #163

AzAel76 commented 1 week ago

I think undoubtedly it does. But unfortunately I'm one of those people that Would just look for a working example and literally copy paste. This means that what I'm really asking is how to translate from commonly available examples to what I need to enter into Zoraxy to achieve the same result. Considering that I'm talking about proxying jellyfin the example in issue #163 is exactly what I'm alluding to.

AzAel76 commented 1 week ago

Just wanted to update this. It was NOT a header issue and further research lead me to discover that a full chain public cert file was required as the Jellyfin ATV requires an intermediate cert. I am still getting web socket errors though im not sure what service its for..

websocketproxy: couldn't dial to remote backend url websocket: bad handshake

Still, my earlier mention of some examples of translating other proxy header configs to Zoraxy would be helpful for anyone one attempting to use the feature.

I have a few other observances also but not sure weather to raise as a further issue. Ill note them here for now and see what the response is.

tobychui commented 1 week ago

@AzAel76 I don't use Jellyfin so there isn't much I can suggest or recommend you trying. But from the error message, it sounds like there is a connection issues to your backend from Zoraxy. WebSocket proxy is switched automatically in Zoraxy so it mostly not a protocol switching issues but a config / networking one?

Can you show us how you setup Jellyfin proxy in your Zoraxy?

Updates

Based on the previous updated comments, it seems to be a specific use-case issues instead of the issue of the reverse proxy. I am adding the external service issue label for now until there are clear network traces that shows the issue is coming from Zoraxy or the way how Zoraxy handle websocket proxy.

Morethanevil commented 1 week ago

Can you try to check "Skip Websocket origin check"? It is in the settings of your HTTP Proxy Screenshot_2024-06-22-15-18-37-30_e4424258c8b8649f6e67d283a50a2cbc

Maybe this helps

Kirari04 commented 1 week ago

Hey guys I personally use Jellyfin with Zoraxy (with Docker) and didn't have to configure any additional things to get it working (using it on Web, Android Phone (Findroid) and Apple TV (swiftfin)). There might be some misconfiguration on Jellyfin's side that Nginx fixes by having some other Defaults that Zoraxy doesn't have.

Morethanevil commented 1 week ago

The app on TV is broken, as mentioned in the last issue. It is fixed by users with those additional headers

I am using Jellyfin myself without problems similar to your setup 😃

AzAel76 commented 1 week ago

To be clear. I imported my wildcard cert from npm, it was not working for me because I didn't import the full chain certificate. Once I did my issue connecting with the ATV client was resolved. Hadn't had the time to look further into the websocket issue but did source it to the background link between jellyseer and jellyfin.