Roblox / roblox-blender-plugin

A Blender plugin to upload selected assets in Blender to Roblox using Roblox's Open Cloud API.
MIT License
117 stars 28 forks source link

Login button does nothing - Port conflict #12

Closed Losqe closed 1 year ago

Losqe commented 1 year ago

When I click on log in in blender nothing happens, it says logging in but only while my cursor is over log in button and nothing else happens.

Nightriff commented 1 year ago

Expected behavior here is that your default browser launches with a login page. Can you confirm that no tab is opened in your browser?

If there is no tab, can you check for errors in Blender's system console?

On Windows, you can open this from Window > Toggle System Console On Mac, you need to restart blender from the terminal; Open Terminal, type blender, and hit return. Then, the output should go to that terminal once you reproduce the issue again.

As for it only showing after you mouse over the button, this is because mousing over the button triggers a redraw. There are some issues where the state updates but the panel doesn't get redrawn until something triggers it. This may or may not be a limitation of Blender, further investigation is required.

t3xellz commented 1 year ago

I cant log in it says this Internal client error. No module named 'pyjwt_key_fetcher'

Losqe commented 1 year ago

Thank you for your reply! I tried to log in without having my browser opened and it still didnt work. Here is what i got on console:

Read prefs: "C:\Users\PC\AppData\Roaming\Blender Foundation\Blender\3.6\config\userpref.blend" Traceback (most recent call last): File "C:\Users\PC\AppData\Roaming\Blender Foundation\Blender\3.6\scripts\addons\roblox-blender-plugin-main\lib\oauth2_login_operators.py", line 69, in on_login_complete task.result() File "C:\Users\PC\AppData\Roaming\Blender Foundation\Blender\3.6\scripts\addons\roblox-blender-plugin-main\lib\oauth2_client.py", line 178, in login await site.start() File "C:\Users\PC\AppData\Roaming\Blender Foundation\Blender\3.6\scripts\addons\roblox-blender-plugin-main\dependencies_public\aiohttp\web_runner.py", line 121, in start self._server = await loop.create_server( File "C:\Program Files\Blender Foundation\Blender 3.6\3.6\python\lib\asyncio\base_events.py", line 1519, in create_server raise OSError(err.errno, 'error while attempting ' PermissionError: [Errno 13] error while attempting to bind on address ('127.0.0.1', 8080): an attempt was made to access a socket in a way forbidden by its access permissions

Thank you for your reply once again!

Nightriff commented 1 year ago

@t3xellz Thanks for the report, I'll respond on the issue you opened about it since it seems like a different issue to this one

Nightriff commented 1 year ago

@Losqe Aha, this is probably a port conflict with another application running on your computer. To avoid such conflicts, we plan to change the plugin's port to something less common (port 8080 is a default port for web servers). We also intend to add better error handling to show a user-facing error message in case of login errors.

For now, you can try to stop whatever process is tying up your port 8080 by opening command prompt on windows, entering netstat -ao, and finding the PID (Process ID) corresponding to the Local Address that lists :8080 as the port.

Then, match this PID to the process name to figure out which process is holding it open. You can do this by entering the command

tasklist /fi "pid eq 1234"

where 1234 should be replaced with with the PID you found.

Alternatively, you can open Task Manager (Right click Windows icon, Task Manager), make sure you're in Advanced mode, go to Details page, click the PID column header to sort by process ID, and find the one matching the one you found from the netstat command. This will show its process name and, if you so choose, let you end the process.

Losqe commented 1 year ago

I got list of all PIDs with command prompt and went over them, but I couldn't find 8080. I tried to find it using other method and it doesn't show up. Here is picture what I got:

Capture

Thank you for your time!

Nightriff commented 1 year ago

The port change is now live in v1.0.1. Closing this as resolved now.