Android tv sees server, but wont let me log in with username and password, or via quick connect.....
32 replies
tomspark wrote:
You didn't break anything — two separate things here. Quick connect is switched off out of the box, so that one failing is normal. For the username and password: the TV wants your Jellyfin login, which is the username sparkbox plus a password SparkBox generated for you — it's not the same as your dashboard password, and that trips a lot of people up. To find it, open your SparkBox dashboard, go to Settings, then Passwords, and look for Jellyfin admin. Try it in a normal web browser first at http://YOUR-SPARKBOX-IP:8096 — once it works there, type exactly the same thing on the TV (TV keyboards make typos easy). Tell me how it goes and I'll help you turn quick connect on so you never have to type on the TV again.
Grimma84 wrote:
sorry let me clarify, it says it cannot connect to server.
tomspark wrote:
Ah, that changes things — that message means the TV app isn't reaching the box at all yet, so it's not a password problem and nothing's broken. Quick test first: on your phone or computer (same wifi as the SparkBox), open a web browser and go to http://YOUR-SPARKBOX-IP:8096. If a Jellyfin login page shows up, the server is fine and it's just the TV. In that case, on the TV don't pick the server it found by itself — choose to type the address in manually and enter exactly http://YOUR-SPARKBOX-IP:8096, with the http:// and the :8096 on the end. The auto-found entry is what usually fails. Also worth checking the TV is on the same wifi as the box, not a guest network. Tell me what the browser shows and we'll go from there.
Grimma84 wrote:
Super tired, dumb question, how do I see my spark box ip?
tomspark wrote:
Not a dumb question at all! The IP is just the address of the computer SparkBox is installed on. On that computer, click Start, type cmd, press enter, then type ipconfig in the black window and press enter. Find the line that says IPv4 Address — the numbers next to it (something like 192.168.1.23) are your SparkBox IP. So in the browser test you'd go to http://192.168.1.23:8096, but with your numbers. Get some rest — this'll go smoother tomorrow, and I'll be here when you try it.
Grimma84 wrote:
OK so i get to the page on my PC, i type in username and password and says credentials are wrong. i go forgot password and it says its putting a file with a pin in the jellyfin folder, which i navigate to and nothing... no file.
tomspark wrote:
Good news — getting that login page on your PC means the hard part is done. Skip the forgot-password route: that file gets written to a hidden folder inside the system, so you'll never find it, and you don't need it. The catch is this page doesn't want a password you made up. The username is sparkbox, all lowercase. The password is a long one SparkBox generated for you: open your SparkBox dashboard like before, go to Settings, then Passwords, find Jellyfin admin, and copy-paste it in rather than typing it. If that exact pair still gets rejected, tell me — that would be on our end and I'll dig into it.
Grimma84 wrote:
Still rejected on my end, found the user name and password, which is what i was origianly trying as it pops up from the dashboard when i open jellyfin from there. Still a no go...
tomspark wrote:
That settles it — the password the dashboard shows has fallen out of sync with the one Jellyfin actually wants. That's a bug on our side and I've filed it, but you can get back in today. On the Jellyfin login page click Forgot Password, type sparkbox, and submit — that writes the pin file. It's invisible from Windows, but Ubuntu can see it: open the Ubuntu window like you did for the install and paste sudo cat /opt/sparkbox/modules/media/config/jellyfin/passwordreset.json You'll see Pin with some letters and numbers. Back on the login page carry on to the pin screen, enter it, then sign in as sparkbox with the password box left empty — you're in. Last thing so the TV works too: person icon top right, Profile, set a new password (current one stays blank) and paste the dashboard one into both new boxes so everything matches again. The pin expires in 30 minutes, so do it in one go.
Grimma84 wrote:
sudo cat /opt/sparkbox/modules/media/config/jellyfin/passwordreset.json No such file or directory this is the error i got in the ubuntu.
tomspark wrote:
That error just means the pin file wasn't sitting there when the command went looking — the pin doesn't stick around forever, so let's do the whole thing in one go. On the Jellyfin login page click Forgot Password, type sparkbox, submit — then straight away, in the Ubuntu window, paste this exactly as written, quotes and all: sudo bash -c 'cat /opt/sparkbox/modules/media/config/jellyfin/passwordreset.json || ls /opt/sparkbox/modules/media/config/jellyfin/' If you see Pin with letters and numbers, that's it — use it on the pin screen within 30 minutes like before. If you instead get an error followed by a list of names, copy everything it printed and paste it here — that list shows me exactly where the file is hiding.
Grimma84 wrote:
ls /opt/sparkbox/modules/media/config/jellyfin/' cat: '/opt/sparkbox/modules/media/config/jellyfin/passwordreset.json': No such file or directory config data log metadata plugins root still getting this trying out you way listed above.
tomspark wrote:
Thanks for your patience — that printout actually solved the mystery: the pin file is never being written at all, which is part of the same bug on our side. So forget the pin route, there's a better way. SparkBox keeps its own spare key to Jellyfin for rescues exactly like this, and the command below uses it to force Jellyfin's password back to the one your dashboard shows. Paste the whole thing into the Ubuntu window in one go: sudo bash -c 'f=/opt/sparkbox/state/jellyfin-admin-password.txt; k=$(sed -n "s/^apikey: //p" $f); p=$(sed -n "s/^password: //p" $f); u=$(curl -s -H "X-Emby-Token: $k" http://localhost:8096/Users | grep -oP "\"Name\":\"sparkbox\".?\"Id\":\"\K[0-9a-f]+" | head -1); curl -s -o /dev/null -w "step1:%{httpcode}\n" -X POST -H "X-Emby-Token: $k" -H "Content-Type: application/json" -d "{\"ResetPassword\":true}" http://localhost:8096/Users/$u/Password; curl -s -o /dev/null -w "step2:%{httpcode}\n" -X POST -H "X-Emby-Token: $k" -H "Content-Type: application/json" -d "{\"CurrentPw\":\"\",\"NewPw\":\"$p\"}" http://localhost:8096/Users/$u/Password' Success looks like two lines: step1:204 and step2:204. Then go back to the login page and sign in as sparkbox with the dashboard password, copy-pasted — and once that works on the PC, the TV takes the exact same login. If either line shows a different number, paste both lines here and I'll take it from there.
Grimma84 wrote:
step1:400 step2:204
tomspark wrote:
Those two numbers are good news — the two steps were just two different ways of doing the same job, and the second one going through (the 204) means it worked. The first line failing doesn't matter. So head back to the Jellyfin login page on your PC: username sparkbox, and copy-paste the dashboard password like before. It should let you in this time. Once it works on the PC, the TV takes the exact same login — pick the option to type the address in manually and enter http://YOUR-SPARKBOX-IP:8096 with your numbers. One backup just in case: if the PC still says wrong password, try once more with the password box left completely empty, and tell me which of the two got you in.
Grimma84 wrote:
tried all the steps you just laid out, still error of invalid username or password, with both the password field filled in or not filled in.... step1:400 step2:204 same steps as prior, sorry for late response iv been in and out today, but am home now
tomspark wrote:
No worries on the timing — and new theory, one that finally fits everything: Jellyfin quietly freezes an account after too many wrong password tries, and between us we've given it two days' worth. Once frozen, even the correct password gets "invalid username or password" — which is why the reset went through (the 204) but the door stayed shut. The command below unfreezes the account, sets the password once more, then tries the login itself right on the box. Paste the whole thing into the Ubuntu window in one go: sudo bash -c 'f=/opt/sparkbox/state/jellyfin-admin-password.txt; k=$(sed -n "s/^apikey: //p" $f); p=$(sed -n "s/^password: //p" $f); u=$(curl -s -H "X-Emby-Token: $k" http://localhost:8096/Users | grep -oP "\"Name\":\"sparkbox\".?\"Id\":\"\K[0-9a-f]+" | head -1); curl -s -H "X-Emby-Token: $k" http://localhost:8096/Users/$u | python3 -c "import sys,json;d=json.load(sys.stdin);q=d[\"Policy\"];print(\"was-locked:\",q.get(\"IsDisabled\"),\"bad-tries:\",q.get(\"InvalidLoginAttemptCount\"));q[\"IsDisabled\"]=False;q[\"InvalidLoginAttemptCount\"]=0;open(\"/tmp/sbpol.json\",\"w\").write(json.dumps(q))"; curl -s -o /dev/null -w "unlock:%{httpcode}\n" -X POST -H "X-Emby-Token: $k" -H "Content-Type: application/json" -d @/tmp/sbpol.json http://localhost:8096/Users/$u/Policy; curl -s -o /dev/null -w "setpw:%{httpcode}\n" -X POST -H "X-Emby-Token: $k" -H "Content-Type: application/json" -d "{\"CurrentPw\":\"\",\"NewPw\":\"$p\"}" http://localhost:8096/Users/$u/Password; curl -s -o /dev/null -w "login-test:%{httpcode}\n" -X POST -H "Content-Type: application/json" -H "X-Emby-Authorization: MediaBrowser Client=\"sb\", Device=\"sb\", DeviceId=\"sb\", Version=\"1.0\"" -d "{\"Username\":\"sparkbox\",\"Pw\":\"$p\"}" http://localhost:8096/Users/AuthenticateByName' The last line is the verdict. login-test:200 means the box itself just logged in as sparkbox successfully — go straight back to the login page on your PC and copy-paste the dashboard password again. If that last line shows anything other than 200, paste everything the command printed here and I'll take it from there.
Grimma84 wrote:
[sudo: authenticate] Password: was-locked: False bad-tries: 0 unlock:204 setpw:204 login-test:200 went to login, still invalid user name or password
tomspark wrote:
That result cracked it. The login-test:200 line means the box itself just signed into Jellyfin successfully — so the password stored on the box works, and the only thing left is the password you're pasting. And I found why: the dashboard's passwords page has been showing your Jellyfin password with extra text stuck to it — three different things squished into one box — so what you copied was never just the password. That's a bug on our side and it's filed. To see the real password on its own, paste this in the Ubuntu window: sudo sed -n 's/^password: //p' /opt/sparkbox/state/jellyfin-admin-password.txt It prints a single line, and that whole line is the password. On the login page: username sparkbox, paste that line, nothing else around it. Once you're in on the PC, the TV takes the exact same login. Tell me how it goes!
Grimma84 wrote:
nope still invalid🤣everything is working, except for logging me in on the jellyfish page i find using http://myip:8096.......... just invalid username or password
Grimma84 wrote:
ok, im retarded.....im so sorry, so a week or so ago before i found your content, i downloaded jellyfish to see what it was about. i realized i made an account at that point in time. i just went to find my password and loggin for it. it loggged me in on the ip page. So do i have to delete this jellyfish account? can i? i just had a an ahha! moment of clarity and remembered this.
Grimma84 wrote:
I am also truly sorry for the work you had put in last 2 days.
tomspark wrote:
Please don't apologize — that was the missing puzzle piece, and honestly two Jellyfins on one computer would confuse anyone. Here's what was happening: the Jellyfin you installed a week ago is a whole separate copy, and it's the one that's been answering at that address the entire time. So while we were fixing the password on SparkBox's copy, your browser was knocking on the old one's door — no wonder nothing matched. You don't need to delete the account, just remove that old program: click Start, open Settings, go to Apps, then Installed apps, find Jellyfin and hit Uninstall. Restart the computer, then go back to http://YOUR-IP:8096 — sign in as sparkbox with the dashboard password and it should finally let you in. The TV takes the exact same login. You got this!
Grimma84 wrote:
holy absolute hell......still wont let me log, same error......i went back step1:400 step2:204 still getting these, tried the larger comand line you sent was-locked: False bad-tries: 0 unlock:204 setpw:204 login-test:200 went and got the password and coppied it from ubuntu....... still zip.....
Grimma84 wrote:
ok after also uninstalling docker from my system which i also installed...... rebooted the system, came back in restarted the spark box, now i cant get to the http://myip:8096 at all
tomspark wrote:
Believe it or not, this is probably progress: with the old copy gone, that address finally shows the truth — SparkBox's Jellyfin may never have been at that address in the first place. Two things to sort out now: where it actually lives, and whether removing docker took anything SparkBox needed. Paste this in the Ubuntu window: hostname -I && curl -s -o /dev/null -w "jellyfin:%{httpcode}\n" http://localhost:8096 Paste the output here. If the jellyfin number is 200 or 302, the server is alive and we just need the right address — try http://localhost:8096 in the browser on that same computer, and also the first number from the command with :8096 after it. If it says jellyfin:000, the docker you removed was the one SparkBox was using — fixable, don't worry. And one question that settles a lot: is the Ubuntu window a window on this same Windows computer, or a separate machine?
Grimma84 wrote:
ok first off that comand line gave me a 302, which is good, second off and also the first number from the command with :8096 after it. If it says jellyfin:000, the docker you removed was the one SparkBox was using? i dont understand what you mean by this. also i just opened windows powershell, wsl, and run your arr in that. does that help?
Grimma84 wrote:
also local host :8096 took me to a login page and then i was able to log in so i know that server is working, just need to know how to connect it to the ip of this system.
tomspark wrote:
You're one step away, and this last bit is expected, not another bug. SparkBox lives inside wsl — that Ubuntu layer inside Windows — and Windows keeps it to itself: the PC can reach it as localhost, but the rest of your house, like the TV, can't see it yet. One paste fixes that. Click Start, type powershell, right-click Windows PowerShell and pick Run as administrator, then paste this whole line: $ip=(wsl hostname -I).Trim().Split()[0]; netsh interface portproxy add v4tov4 listenport=8096 listenaddress=0.0.0.0 connectport=8096 connectaddress=$ip; netsh advfirewall firewall add rule name="SparkBox Jellyfin" dir=in action=allow protocol=TCP localport=8096 Success looks like a quiet Ok. at the end. Then on the TV, choose to type the address manually and enter the same style of address as before: http:// then your computer's ipconfig number, then :8096 — and use the exact login that just worked on the PC. One heads-up: if the TV ever stops connecting after the computer restarts, run that same line again and tell me — there's a permanent version I can set up for you once we know this works.
Grimma84 wrote:
with the powershell still open, do i have to type wsl, then run your arr stack line every time i restart my computer? in order to have ubuntu running, and your stack running?
Grimma84 wrote:
i did not have to type in maualy the ip....it found it.....its working!!!!!!!!😀
tomspark wrote:
Fantastic — genuinely happy it's working, you earned that one! And to answer your earlier question: yes, after the computer restarts, just open PowerShell and type wsl once. You don't need to run the big install line again — everything is already installed, so Ubuntu wakes up and starts all the SparkBox apps by itself within a couple of minutes. You can close the window afterwards, it keeps running in the background. One last thing: if the TV ever says it can't connect after a restart, run that one administrator PowerShell line from before again and it'll be happy. Enjoy!