Skip to main content

A package allowing you to display interactive help in Discord easily

Project description

Discord Interactive Help

gif

A Discord python framework to display an interactive help easily.

GitHub release Lint status Docs licence

FeaturesUsageExampleAdvanced Running in DockerNotes
Documentation

Features

  • 🔆 Easy to naviguate : Use reactions to naviguate through the Help manual.
  • Customized reaction : Use any emoji as naviguation icon.
  • 🎮 Commands support : Go even further with interactive commands.

Usage

Install the package :

pip install discord-interactive


Import the Page and Help objects into your bot's code, and create your own help manual :

from discord_interactive import Page, Help

# Define each page
root = Page('Welcome !\n')
page_1 = Page('This is page 1')
page_2 = Page('This is page 2')

# Link pages together
page_1.link(page_2, description='Click this icon to access page 2', reaction='💩')
root.link(page_1, description='Click this icon to access page 1')

# Set the root page as the root of other page (so user can come back with a specific reaction)
root.root_of([page_1, page_2])

# Create the Help object
client = discord.Client()
h = Help(client, root)

...

# And display the help !
@client.event
async def on_message(message):
    if message.author != client.user:  # Do not answer to myself
        if message.content.startswith('/help'):
            await h.display(message.author)

Example

You can try the interactive help in this Discord server !

Simply join the server, and type /help in the chat.

Also, take a look at the code for this interactive help ! Check out the script main.py.

Advanced

If you are interested in advanced usage such as interactive commands, take a look at the full documentation.

Example of advanced usage :

gif


If you can't find what you are looking for, or need help about this library, you can open a discussion thread or an issue, we will be glad to help !

Running in Docker

A Dockerfile is available to run the example easily. Just build the image :

docker build -t discord_interactive_help .

And then start it with your Discord bot token :

DISCORD_BOT_SECRET="<your_token>" docker run -e DISCORD_BOT_SECRET discord_interactive_help

Notes

  • This idea was already known for some time, I didn't get the idea myself. I just wanted to share an easy framework to implement it for your own bot.

  • This is working only with the Python Discord API.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

discord_interactive-4.1.0.tar.gz (12.1 kB view details)

Uploaded Source

Built Distribution

discord_interactive-4.1.0-py3-none-any.whl (11.2 kB view details)

Uploaded Python 3

File details

Details for the file discord_interactive-4.1.0.tar.gz.

File metadata

  • Download URL: discord_interactive-4.1.0.tar.gz
  • Upload date:
  • Size: 12.1 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.2 CPython/3.11.4

File hashes

Hashes for discord_interactive-4.1.0.tar.gz
Algorithm Hash digest
SHA256 bc661c259ecef29db73077e1b5b2a6da5651b839e4026cf010df2f3eca9a8cbb
MD5 e6c6a4ebd5b0fc78d327c762d1539637
BLAKE2b-256 64025d2d3a8ededbb4768e70483b395e98d267b4909bc7a088989001e4ceb907

See more details on using hashes here.

File details

Details for the file discord_interactive-4.1.0-py3-none-any.whl.

File metadata

File hashes

Hashes for discord_interactive-4.1.0-py3-none-any.whl
Algorithm Hash digest
SHA256 0804908fcca05ea3fb1afbf76c497186579dbdcf3dd60b14c253d3b408967777
MD5 159d1b1db2fa1f2727bd42b10bf72c69
BLAKE2b-256 ab0dd7fbb4e0e47095bb4716c0fe679ebed76f960b8346f5d28f04eae96102bc

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page