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 hashes)

Uploaded Source

Built Distribution

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

Uploaded Python 3

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