An extension library for interactions.py to add text-based commands! Ported from dis-snek.
Project description
interactions-molter
An extension library for interactions.py to add text-based (AKA message or prefix) commands! Ported from dis-snek
's molter
.
This attempts to make the message command experience much like discord.py
's message 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
bot = interactions.Client(
token="TOKEN",
intents=interactions.Intents.DEFAULT | interactions.Intents.GUILD_MESSAGE_CONTENT,
)
molt = molter.Molter(bot)
@molt.msg_command(aliases=["test2"])
async def test(ctx: molter.MolterContext, some_var: int):
await ctx.reply(str(some_var))
bot.start()
Extension
import interactions
from interactions.ext import molter
# very important to use the below instead of Extension
# message commands will not work otherwise
class Extend(molter.MolterExtension):
def __init__(self, bot: interactions.Client):
self.bot = bot
@molter.msg_command()
async def soup(self, ctx: molter.MolterContext):
await ctx.reply("give soup")
def setup(bot: interactions.Client):
Extend(bot)
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.2.0.tar.gz
Algorithm | Hash digest | |
---|---|---|
SHA256 | a7beb3bcdb626167d9f1f5de0c87651c6d9abfeff222c925dacbb340e225ccfe |
|
MD5 | f820a882df7106f82dd10e2ad94ec886 |
|
BLAKE2b-256 | 4f689637686416498c3e0e29ef5b2c5150063f8913c58b18e74a832a74fc738b |
Hashes for interactions_molter-0.2.0-py3-none-any.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 54fa752d4701c6bfd05c2546f4c891ecb58b2d53ca73e41f0c8aff91ea7f16d0 |
|
MD5 | df3464f556677a6bd55ae08dd3ad3e42 |
|
BLAKE2b-256 | b2f1f7db956e6dd10172909912796804e13ec633e8a12033e6e56f09031f2c8c |