Skip to content

wr1ght/kodicord

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

27 Commits
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Kodicord

Kodi Music rich presence for Discord

just for music, nothing else.

NPM version NPM downloads Dependencies

Contents


Notice

this is completely safe if you keep the API_ABUSE setting disabled!

This is an experimental integration and incorrect usage may be considered as Discord API abuse. If you are not comfortable entering your Discord account token into this integration then it's not for you.

By enabling the API_ABUSE setting in .env, you will be considered as abusing the Discord API and if reported you are at risk of deletion. I've asked a Discord developer regarding changing the application name programmatically every time the song name is changed and they confirmed it is indeed API abuse.

Album covers may take up to 15 seconds to update due to Discord caching. This usually is not the case.

How to use

In order for this to work, you must have remote connections via HTTP enabled on your XMBC/Kodi device.

screenshot

Step One: Creating a Discord application

Go to the Discord Developer Portal and create an Application. Name it something nice, for example: "Music"

(if the API_ABUSE setting is enabled then the application name will be overridden by the current song name)
Step Two: Uploading a default album cover

You'll need to upload a default album cover for when the application cannot fetch the artwork of the album you're listening to.

Upload any image and name the asset specifically defaultcover.

screenshot

Step Three: Editing the configuration

Once you've uploaded your default cover, you'll need to edit .env.default with the necessary values and rename it to .env.

  • URL : The link to your Kodi/XMBC HTTP dashboard. (see screenshot above)
  • CLIENT_ID: Your application's client ID.
  • USER_TOKEN: The token of YOUR Discord account.
  • LASTFM_KEY: Your Last.FM API key. Get one at their API portal for free with no limits.
  • API_ABUSE: read the Notice section
Step Four: Starting the integration

As of now there is no UI for this integration and it is command-line based. Good news is you only have to run the command once and it'll remain in the background.

Run npm install then npm start in your choice of terminal. (ex: command prompt)

Step Five: Get Banned (kidding)

No, I'm kidding. You won't be banned for simply using this integration... unless you're being edgy and using the API_ABUSE feature.

If all goes well you'll end up with a presence like this: (left = API abuse, right = no API abuse)

screenshot screenshot

License

This repository has been released under the MIT license.


Project maintained by Wright (wr1ght)

Contact me on Discord: wright#0666