A lightweight and safe package for creating custom rich presences on Discord.
(See examples/complex.py for the source code)
- Create an app by clicking "New Application" in the Discord Developers Portal.
- Give your app a name and an icon (this can be changed later). Make sure to save your changes.
- Optional: Go to "Rich Presence", and add a few images under the "Rich Presence Assets" section.
- Under "Application Id" in the "General Information" tab, copy your app's id.
- Install the latest version of Python if you haven't already.
- Run the following in your terminal:
pip install discord-rich-presence
If all goes well, it should say something like "Successfully installed discord-rich-presence".
- Create a file ending in
.py
, and paste in the following example from examples/simple.py:
from discordrp import Presence
import time
client_id = "000000000000000000" # Replace this with your own client id
with Presence(client_id) as presence:
print("Connected")
presence.set(
{
"state": "In Game",
"details": "Summoner's Rift",
"timestamps": {"start": int(time.time())},
}
)
print("Presence updated")
while True:
time.sleep(15)
Make sure you replace the client_id
variable with your app's id that you copied earlier.
- Run the program! You should now see that you have a rich presence on your profile that will be on until you stop the program! See examples/complex.py for another example with buttons and images.
Here are the methods on a Presence
instance:
presence.set(activity)
: Sets the current activity using a dictionary representing a Discord activity object.presence.clear()
: Clears the current activity.presence.close()
: Closes the current connection. This method is automatically called when the program exits using thewith
statement.
Here are the most common errors:
ActivityError
: An incorrect dictionary was passed topresence.set
. Make sure that it matches the format expected by Discord.ClientIDError
: Verify that your client ID is valid and you are passing in the client ID toPresence
as a string.PresenceError
: Read the Discord docs for more information.ConnectionRefusedError
orFileNotFoundError
: Make sure that your Discord application is open and logged in.- Program hangs for a long time and does not set the presence: Wait for at least 10 seconds before closing and trying again.