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.