An extension library for interactions.py to add prefixed commands. Ported from dis-snek.
Project description
interactions-molter
An extension library for interactions.py to add prefixed (AKA text-based or 'message') commands. Ported from dis-snek
's molter
.
This attempts to make the prefixed command experience much like discord.py
's prefixed commands, though it is not 1:1 on purpose.
NOTE: This is a work in progress! Some things may be broken, and some things may not work as they should. More features need to be added, too.
NOTE 2: This extension is primarily developed by Astrea49. Direct questions about this to her, please!
Installation
pip install interactions-molter
Example
Standalone
import interactions
from interactions.ext import molter
client = interactions.Client(
token="TOKEN",
intents=interactions.Intents.DEFAULT | interactions.Intents.GUILD_MESSAGE_CONTENT,
)
molt = molter.setup(client)
@molt.prefixed_command(aliases=["test2"])
async def test(ctx: molter.MolterContext, some_var: int):
await ctx.reply(str(some_var))
client.start()
Extension
import interactions
from interactions.ext import molter
# very important to use the below instead of Extension
# prefixed commands will not work otherwise
class Extend(molter.MolterExtension):
def __init__(self, client: interactions.Client):
self.client = client
@molter.prefixed_command()
async def soup(self, ctx: molter.MolterContext):
await ctx.reply("give soup")
def setup(client: interactions.Client):
Extend(client)
Other examples
To view more examples and understand how molter
works, take a look at the examples
folder in this repository.
Credit
Thanks to both dis-snek
and Toricane's interactions-message-commands
for a decent part of this! They both had a huge influence over how this port was designed.
TODO
- Add in documentation, or at least fill out docstrings.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Hashes for interactions-molter-0.4.1.tar.gz
Algorithm | Hash digest | |
---|---|---|
SHA256 | dfcfdd8ecd2685bb7d82a24cd85a6dadc09bf69fc0439c39ea8effc1497c52bf |
|
MD5 | b9b9753e7e89868cf17055829fa88886 |
|
BLAKE2b-256 | 477b319c6e80e99b8c7f2d75e58b2922f85aff2359540dd999d770abed22f2c3 |
Hashes for interactions_molter-0.4.1-py3-none-any.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | aea99962bbb3adcb46eb4a433e94ae76dac185946e84852126c89aae016c719a |
|
MD5 | 7a4621b4d0d684751e8518d722b834b6 |
|
BLAKE2b-256 | 4474cbdc50104fd642f79bca3cf95c7358c5fe91f9975ed67f7a9b68bc41e9a4 |