- Module: builtin
- Module: custom-commands
- Module: debug
- Module: image
- Module: interactive
- Module: markov
- Module: math
- Module: plugin
- Module: quote
- Module: random
- Module: reaction
- Module: reminder
- Module: role
- Module: services
- Module: string
- Module: time
- Module: timer
about: Get information about the bot
Examples:
!about
!about -v <- verbose
!about -vv <- even more verbose
addalias: Add alias for commands
Usage: !addalias <command> <alias>
Example: !addalias ping pong
addcmd: Add command
Example: !addcmd hello Hello!
avatar: Change bot avatar
Example: !avatar <image>
Hint: Use !listimg for list of available images
code: `@args@`
This command can be used as subcommand
codeblock: ```
@args@
```
This command can be used as subcommand
config: Setup some channel specific configurations
Examples:
!config reactions <enable/disable>
!config markovlog <enable/disable>
!config responses <enable/disable>
!config markovresponses <enable/disable>
!config markovpings <enable/disable>
curl: Perform HTTP request
Usage:
!curl <url>
!curl <url> --no-proxy
This command can be used as subcommand
delalias: Delete command alias
Usage: !delalias <alias>
Example: !delalias pong
disablecmd: Disable command in specified scope
Examples:
!disablecmd ping
!disablecmd ping channel
!disablecmd ping guild
!disablecmd ping global
disabletl: Disable time limit for command
Example: !disabletl ping
echo: @args@
This command can be used as subcommand
enableallcmd: Enable all available commands in specified scope
Examples:
!enableallcmd
!enableallcmd channel
!enableallcmd guild
!enableallcmd global
enablecmd: Enable command in specified scope
Examples:
!enablecmd ping
!enablecmd ping channel
!enablecmd ping guild
!enablecmd ping global
extexec: Execute external shell command
Note: Be careful when you are executing external commands!
Example: !extexec uname -a
This command can be used as subcommand
getmentioncmd: Get current command which is executed on bot ping
Example: !getmentioncmd
This command can be used as subcommand
help: Print list of commands and get examples
Usage:
!help
!help -p (alternative: !help --plain)
!help -a (alternative: !help --all)
!help <command_name>
listalias: Print list of aliases
Example: !listalias
This command can be used as subcommand
message: Get message by its order number counting from the newest message
Example: !message
This command can be used as subcommand
nick: Change nickname
Usage: !nick walbot
permcmd: Set commands permission
Example: !permcmd ping 0
permlevel: Get permission level for user
Usage: !permlevel
!permlevel `@user`
permuser: Set user permission
Example: !permuser @nickname 0
pin: Print pinned message by its index
Example: !pin 0
This command can be used as subcommand
ping: 🏓 Pong! @author@ 🏓
This command can be used as subcommand
profile: Print information about user
Examples:
!profile
!profile `@user`
restart: Restart the bot
Example: !restart
server: Print information about current server
Example: !server
setmaxexeccmdtime: Print how many times command was invoked
Example: !setmaxexeccmdtime echo 3
setmentioncmd: Set current command which is executed on bot ping
Examples:
!setmentioncmd ping
!setmentioncmd markov
shutdown: Shutdown the bot
Example: !shutdown
silent: Make the following command silent (without any output to the chat)
Example: !silent ping
slowmode: Edit slowmode
Example: !slowmode 0
status: Change bot status
Examples:
!status idle
!status playing Dota 2
Possible activities: [playing, streaming, watching, listening]
Possible bot statuses: [online, idle, dnd, invisible]
timescmd: Print how many times command was invoked
Examples:
!timescmd echo
!timescmd echo -s
This command can be used as subcommand
tts: Send text-to-speech (TTS) message
Example: !tts Hello!
updcmd: Update command (works only for commands that already exist)
Example: !updcmd hello Hello!
uptime: Show bot uptime
Example: !uptime
This command can be used as subcommand
version: Get version of the bot
Examples:
!version
!version short
whitelist: Bot's whitelist
Examples:
!whitelist enable/disable
!whitelist add
!whitelist remove
wme: Send direct message to author with something
Example: !wme Hello!
addextcmd: Add command that executes external process
Note: Be careful when you are executing external commands!
Example: !addextcmd uname uname -a
delcmd: Delete command
Example: !delcmd hello
updextcmd: Update command that executes external process (works only for commands that already exist)
Note: Be careful when you are executing external commands!
Example: !updextcmd uname uname -a
dbg: Debug command
Example: !dbg <diagnostic-name>
This command can be used as subcommand
eval: Evaluate Python code in bot context.
Note: Dangerous, use it only if you know what you are doing
Example: !eval <code>
addimg: Add image for !img command
Example: !addimg name url
delimg: Delete image for !img command
Example: !delimg name
img: Send image (use !listimg for list of available images)
Example: !img <image_name>
listimg: Print list of available images for !img command
Example: !listimg
updimg: Update image for !img command
Example: !updimg name url
poll: Create poll and collect result after selected time
Example: !poll 60 option 1;option 2;option 3
addmarkovfilter: Add regular expression filter for Markov model
Example: !addmarkovfilter regex
addmarkovignoredprefix: Add message prefix that should be ignored by Markov model
Example: !addmarkovignoredprefix $
delmarkov: Delete all words in Markov model by regex
Example: !delmarkov hello
delmarkovfilter: Delete regular expression filter for Markov model by index
Example: !delmarkovfilter 0
delmarkovignoredprefix: Delete message prefix that should be ignored by Markov model by its index
Example: !delmarkovignoredprefix 0
dropmarkov: Drop Markov database
Example: !dropmarkov
findmarkov: Match words in Markov model using regex. If you have permission level >= 1,
you can add -f flag to show full list of found words
Examples:
!findmarkov hello
!findmarkov hello -f
getmarkovword: Get particular word from Markov model by regex
Examples:
!getmarkovword hello -a <- get amount of found words
!getmarkovword hello 0 <- get word by index
This command can be used as subcommand
inspectmarkov: Inspect next words in Markov model for current one
Example: !inspectmarkov hello
listmarkovfilter: Print list of regular expression filters for Markov model
Example: !listmarkovfilter
This command can be used as subcommand
listmarkovignoredprefix: List all prefixes that should be ignored by Markov model
Example: !listmarkovignoredprefix
This command can be used as subcommand
markov: Generate message using Markov chain
Example: !markov
This command can be used as subcommand
markovgc: Garbage collect Markov model nodes
Example: !markovgc
statmarkov: Show stats for Markov module
Example: !statmarkov
calc: Calculate mathematical expression
Examples:
!calc 2+2*2
!calc 4/2-1
This command can be used as subcommand
if: If expression is true (!= 0) then return first expression otherwise return the second one
Examples:
!if 1 It's true;It's false -> It's true
!if 0 It's true;It's false -> It's false
This command can be used as subcommand
loop: Repeat an action n times
Examples:
!loop 2 ping
!loop 5 echo Hello!
This command can be used as subcommand
autostartplugin: Check if plugin automatically starts when bot loads up and set autostart flag for plugin
Usage:
!autostartplugin <plugin_name> <- check if autostart is enabled
!autostartplugin <plugin_name> enable <- enable autostart for plugin
!autostartplugin <plugin_name> disable <- disable autostart for plugin
listplugin: Print list of plugins
Usage:
!listplugin
loadplugin: Load plugin by its name
Usage:
!loadplugin <plugin_name>
reloadplugin: Reload plugin by its name
Usage:
!reloadplugin <plugin_name>
reloadpluginmanager: Reload plugin manager
Usage: !reloadpluginmanager
unloadplugin: Unload plugin by its name
Usage:
!unloadplugin <plugin_name>
updateplugin: Update plugin by its name (if updater is implemented for this plugin).
Note: This command only updates implementation files!
To enable updated plugin you need to execute the following commands:
!reloadpluginmanager
!reloadplugin <plugin_name>
Usage:
!updateplugin <plugin_name>
addquote: Add quote to quotes database
Example: !addquote Hello, world!
delquote: Delete quote from quotes database by index
Example: !delquote 0
listquote: Print list of all quotes
Example: !listquote
quote: Print some quote from quotes database
Examples:
!quote
!quote 1
setquoteauthor: Set author of quote by its index
Example: !setquoteauthor 0 WalBot
random: Get random number in range [left, right]
Example: !random 5 10
This command can be used as subcommand
randselect: Get random option among provided strings (split by space)
Example: !randselect a b c
This command can be used as subcommand
randselects: Get random option among provided strings (split by semicolon)
Example: !randselects a;b;c
This command can be used as subcommand
addreaction: Add reaction
Example: !addreaction emoji regex
addresponse: Add bot response on message that contains particular regex
Example: !addresponse regex;text
delreaction: Delete reaction
Examples:
!delreaction index
delresponse: Delete response
Examples:
!delresponse index
listreaction: Print list of reactions
Example: !listreaction
This command can be used as subcommand
listresponse: Print list of responses
Example: !listresponse
updreaction: Update reaction
Example: !updreaction index emoji regex
updresponse: Update bot response
Example: !updresponse index regex;text
addreminder: Print message at particular time
Examples:
!addreminder 2020-01-01 00:00 Happy new year!
!addreminder today 08:00 Wake up
!addreminder tomorrow 08:00 Wake up
!addreminder monday 09:00 Time to work
!addreminder sat 11:00 Time to chill
!addreminder 2d 08:00 Wake up <- 2 days
!addreminder 1w 08:00 Wake up <- 1 week
!addreminder 1m Monthly event
!addreminder 1y Annual event
!addreminder in 1w5d10h5m Test reminder
!addreminder in 1w Test reminder 2
!addreminder in 5h10m Test reminder 3
addremindernotes: Add reminder notes for specific reminder
Example: !addremindernotes 1 Some text
delreminder: Delete reminders by index
Example: !delreminder 0 1 2
delremindernotes: Delete reminder notes for specific reminder
Example: !delremindernotes 1
listreminder: Print list of reminders
Examples:
!listreminder
!listreminder 5 <- prints only first 5 reminders
listreminderlocal: Print list of reminders for current channel
Examples:
!listreminderlocal
!listreminderlocal 5 <- prints only first 5 reminders
remindeme: Ask bot to send you an e-mail when it sends reminder
Example: !remindeme 1 <your-email-address>
reminder: Print information about reminder
Example:
!reminder 1
remindme: Ask bot to ping you when it sends reminder
Example: !remindme 1
remindwme: Ask bot to send direct message you when it sends reminder
Example: !remindwme 1
repeatreminder: Make reminder repeating with particular period
Examples:
!repeatreminder 1 1
!repeatreminder 1 hourly
!repeatreminder 1 daily
!repeatreminder 1 weekly
!repeatreminder 1 monthly
!repeatreminder 1 annually
!repeatreminder 1 2h
!repeatreminder 1 2d
!repeatreminder 1 2w
!repeatreminder 1 2m
!repeatreminder 1 2y
!repeatreminder 1 0
Note: number without postfix is translated to minutes. 0 means disabling repetition
repeatreminderfor: Limit amount of repetitions for reminder
Example: !repeatreminderfor 1 5 <- repeat reminder 1 only 5 times
repeatreminderuntil: Limit amount of repetitions with particular date
Example:
!repeatreminderuntil 1 2022-12-01 <- repeat reminder 1 until Dec 1, 2022 00:00
!repeatreminderuntil 1 2022-12-31 23:59 <- repeat reminder 1 until Dec 31, 2022 23:59
setprereminders: Set pre reminders notifying that reminder will be sent in particular time.
For example, send pre reminder 10 minutes before actual event (to prepare or something)
Usage: !setprereminders <reminder_id> [<time_before_reminder_in_minutes> ...]
Examples:
!setprereminders 1 10
!setprereminders 2 5 10 15
setreminderchannel: Set channel where reminder will be sent
Example: !setreminderchannel 1 <channel_id>
skipreminder: Skip next instance of recurring (repeating) reminder
Example: !skipreminder 1
Note: only recurring (repeating) reminders are affected by this command
timeuntilreminder: Show time until particular reminder
Example: !timeuntilreminder 1
This command can be used as subcommand
updreminder: Update reminder by index
Examples:
!updreminder 0 2020-01-01 00:00 Happy new year!
!updreminder 0 2020-01-01 00:00 Happy new year!
!updreminder 0 today 08:00 Wake up
!updreminder 0 tomorrow 08:00 Wake up
!updreminder 0 monday 09:00 Time to work
!updreminder 0 sat 11:00 Time to chill
!updreminder 0 2d 08:00 Wake up <- 2 days
!updreminder 0 1w 08:00 Wake up <- 1 week
!addreminder 0 1m Monthly event
!addreminder 0 1y Annual event
!updreminder 0 in 1w5d10h5m Test reminder
!updreminder 0 in 1w Test reminder 2
!updreminder 0 in 5h10m Test reminder 3
addrole: Assign a role to the user
Usage: !addrole @user role_name
delrole: Unassign a role from the user
Usage: !delrole @user role_name
listrole: Print list of all roles available on this server
Usage: !listrole
netcheck: Check network and proxy settings
Usage: !netcheck
This command can be used as subcommand
translate: Translate text to specified language
Usage: !translate <lang> <text>
This command can be used as subcommand
weather: Get current weather using wttr.in
Usage: !weather <city>
This command can be used as subcommand
weatherforecast: Get weather forecast using wttr.in
Usage: !weatherforecast <city>
countchars: Calculate length of the message
Example: !countchars some text
This command can be used as subcommand
countlines: Count amount of lines
Example: !countlines some text
This command can be used as subcommand
countwords: Count amount of words
Example: !countwords some text
This command can be used as subcommand
demojify: Demojify text
Example: !demojify 🇭 🇪 🇱 🇱 🇴
This command can be used as subcommand
dropchars: Drop n characters of the string
Examples:
!dropchars 2 hello
Result: llo
!dropchars -2 hello
Result: hel
This command can be used as subcommand
droplines: Drop n lines of the string
Examples:
!droplines 2 a
b
c
Result: c
!droplines -2 a
b
c
Result: a
This command can be used as subcommand
dropwords: Drop n words of the string
Examples:
!dropwords 2 a b c
Result: c
!dropwords -2 a b c
Result: a
This command can be used as subcommand
emojify: Emojify text
Example: !emojify Hello!
This command can be used as subcommand
eqstrs: Check if two strings separated by ';' are equal or not
Example: !eqstrs a;b
This command can be used as subcommand
eqwords: Check if two words are equal or not
Example: !eqwords a b
This command can be used as subcommand
join: Join words with string as separator
Example: !join + 1 2 3 -> 1+2+3
This command can be used as subcommand
range: Generate range of numbers
Examples:
!range <stop>
!range <start> <stop>
!range <start> <stop> <step>
This command can be used as subcommand
takechars: Take n characters of the string
Examples:
!takechars 2 hello
Result: he
!takechars -2 hello
Result: lo
This command can be used as subcommand
takelines: Take n lines of the string
Examples:
!takelines 2 a
b
c
Result: a
b
!takelines -2 a
b
c
Result: b
c
This command can be used as subcommand
takewords: Take n words of the string
Examples:
!takewords 2 a b c
Result: a b
!takewords -2 a b c
Result: b c
This command can be used as subcommand
tolower: Convert text to lower case
Example: !tolower SoMe TeXt
This command can be used as subcommand
toupper: Convert text to upper case
Example: !toupper SoMe TeXt
This command can be used as subcommand
urlencode: Urlencode string
Example: !urlencode hello, world!
This command can be used as subcommand
setusertz: Set timezone for the user
Usage:
!setusertz
!setusertz Europe/Moscow
!setusertz America/New_York
time: Show current time
Examples:
!time
!time Europe/Moscow
!time America/New_York
Full timezone database list: <https://en.wikipedia.org/wiki/List_of_tz_database_time_zones>
This command can be used as subcommand
tz: Get current timezone
Usage: !tz
stopstopwatch: Stop stopwatch
Usage: !stopstopwatch 1
stoptimer: Stop timer
Usage: !stoptimer 1
stopwatch: Start stopwatch
Usage: !stopwatch
timer: Set timer
Usage: !timer 10