Pigpog / vlc-discord-rpc

Discord rich presence for VLC media player.
MIT License
206 stars 31 forks source link

Special characters in passwords #20

Closed FogLizard closed 5 years ago

FogLizard commented 5 years ago

When I add VLC process as a game, Discord grabs the current band name and song title playing and then never updates it upon songs changing or vlc restarting.

I've removed the username below, don't mind the double slashes

node /home//vlc-discord-rpc/rpc.js withvlc Running... url.js:338 this.auth = decodeURIComponent(rest.slice(0, atSign)); ^

URIError: URI malformed at decodeURIComponent () at Url.parse (url.js:338:19) at Object.urlParse [as parse] (url.js:149:13) at Request.init (/home//vlc-discord-rpc/node_modules/request/request.js:138:53) at new Request (/home//vlc-discord-rpc/node_modules/request/request.js:98:8) at request (/home//vlc-discord-rpc/node_modules/request/index.js:50:11) at VlcService.HttpService.get (/home//vlc-discord-rpc/node_modules/droopy-http/HttpService.js:18:3) at VlcService._statusRequest (/home//vlc-discord-rpc/node_modules/droopy-vlc/VlcService.js:27:7) at VlcService.status (/home//vlc-discord-rpc/node_modules/droopy-vlc/VlcService.js:49:14) at update (/home//vlc-discord-rpc/rpc.js:28:6)

Linux node --version v11.14.0

There were 11 vulnerabilities and audit couldn't fix it, so I installed with no audit.

Pigpog commented 5 years ago

Do not add the vlc process to your Game Activity list. Please reply with lines 2 and 3 of your config.js file

FogLizard commented 5 years ago

Here's the config, I've only changed the pass and it was formatted like that originally after I git cloned. I've been adding VLC manually because it is not showing up on it's own.

exports.vlcPass="the_password_ive_set" //Lua HTTP password^M exports.vlcPort=8080 //default value^M exports.vlcHost="localhost" //shouldnt need to change but whatever^M //Start commands^M exports.windowsvlc=C:/Program Files/VideoLAN/VLC/vlc.exe^M exports.linuxvlc=vlc^M exports.macvlc=/Applications/VLC.app/Contents/MacOS/VLC^M

Pigpog commented 5 years ago

I've been adding VLC manually because it is not showing up on it's own.

Then what you're seeing isn't the rich presence, and the rich presence isn't working at all.

There were 11 vulnerabilities and audit couldn't fix it, so I installed with no audit.

I have updated the package.json file, solving all of the vulnerabilities. Please clone the repository again.

FogLizard commented 5 years ago

I've re-cloned and re-installed without any warnings, but it's still not working with the same output in bash as in OP. I can add vlc manually with correct title only if I start it with

node /home/user/vlc-discord-rpc/rpc.js withvlc

But it still won't update the title. I've enabled development mode and still no luck.

Pigpog commented 5 years ago

I was able to replicate the problem. If your password contains special characters, you're probably creating unicode sequences that aren't allowed in the uri schema.

FogLizard commented 5 years ago

I've removed the special chars and now it's working, thank you for your help! Is there a way to customize the text it's sending to Discord? It shows the "VLC Media Player" text near the nickname first instead of the band name and song title.

Pigpog commented 5 years ago

Is there a way to customize the text it's sending to Discord?

Unfortunately, that is beyond the realm of possibility with rich presence at this time. Even Spotify doesn't have that.

I'm gonna leave this issue open until I implement either a warning or a filter for the password.

FogLizard commented 5 years ago

Np, I am still happy it's working as intended. You're doing an awesome job, thanks again! Please let me know here if I can be helpful testing stuff for you until the bug is fixed.