Commands Object¶
Note
This commands object is an extention of basic-client.
Usage..
from slack import commands
client = commands.Client(..., prefix="!")
@client.command(name="msg")
async def message(ctx: commands.Context, *args):
await ctx.channel.send("message received!")
@client.command()
async def ping(ctx: commands.Context, *args):
await ctx.channel.send("pong!")
If commands was start your prefix and the command was registered, dispatch command-function.
Bot¶
This class need…
user-token.
bot-token.
app-token.
prefix.
Prefix is a string for command occur. If you don’t need this, you put prefix=””
- class slack.commands.Bot¶
This is
slack.Client’s subclass.New in version 1.2.0.
- token¶
App-level token. It is startwith ‘xapp-…’
Changed in version 1.4.0: To optional.
- Type
Optional[
str]
- logger¶
Logger object.
New in version 1.4.0.
- Type
Logger.Logger
- @command(name=None)¶
Register command of your client-object.
- Parameters
name (
str) – command name. If you don’t set, use function name.
- @event¶
- event is a decorator that takes a coroutine function and sets
it as an attribute of the class it’s decorating.
- Parameters
coro (
Coro) – The coroutine function to be decorated.- Return type
The coro function itself.
- property commands: Dict[str, Command]¶
Return all commands
New in version 1.4.0.
- Return type
Dict[:class:`str,
Command]
- is_closed() bool¶
It returns a boolean value.
- Returns
The return value is a boolean value.
- Return type
- await on_error(event_name, exc: Exception, *args, **kwargs) None¶
It prints the name of the event that raised the exception, the name of the exception, and the name of the class that the event is in.
- Parameters
event_name – The name of the event that was raised.
exc (Exception) – The exception that was raised.
- run() None¶
A blocking call that abstracts away the event loop initialisation from you. If you want more control over the event loop then this function should not be used. Use
start()coroutine orconnect()+login(). Roughly Equivalent to:try: loop.run_until_complete(start(*args, **kwargs)) except KeyboardInterrupt: loop.run_until_complete(close()) # cancel all tasks lingering finally: loop.close()
Warning
This function must be the last function to call due to the fact that it is blocking. That means that registration of events or anything being called after this function call will not execute until it returns.
Context¶
- class slack.commands.Context¶
A context is a message that is sent to a handler
- property author: Optional[Member]¶
Message author.
- Returns
Message author.
- Return type
Optional[
Member]
- await delete() DeletedMessage¶
Delete context message.
- Returns
Data of deleted message.
- Return type
DeletedMessage
- await edit(text: str, is_bot: bool = True)¶
This function is a coroutine Edit sent message.
New in version 1.4.0.
Command¶
Note
If raise exception in commands object, it will go to on_command_error(ctx, err) event.