Usage: /nsfw <nsfw: string>
- If
<nsfw>
is omitted, gets the currently set nsfw mode - If
<nsfw>
is provided, sets the nsfw mode <nsfw>
can be either "sfw" or "nsfw"sfw
means "safe for work". this will use the e926.net apinsfw
means "not safe for work". this will use the e621.net api
- Required permissions:
MANAGE_CHANNEL
Usage /timeout_mode <timeout_mode: string>
- If
<timeout_mode>
is omitted, gets the currently set timeout mode - If
<timeout_mode>
is provided, sets the timeout mode <timeout_mode>
can be eithernormal
orrandom
random
means messages will be sent with a randomly choosen timeout, between a minimum of 3 minutes and a maximum of<timeout>
minutesnormal
means messages will be sent every<timeout>
minutes
- Required permissions:
MANAGE_CHANNEL
Usage /register_in_guild
- This will register bot application commands in the current guild
- See more information here: https://discord.com/developers/docs/interactions/application-commands#registering-a-command
- ℹ️ This command can only be used by the owner of the guild.
- Required permissions:
ADMINISTRATOR
Usage /register_globally
- This will register bot application commands globally.
- See more information here: https://discord.com/developers/docs/interactions/application-commands#registering-a-command
- ℹ️ This command can only be used by bot owners.
Usage: /shutdown
Shuts down the bot
- ℹ️ This command can only be used by bot owners.
Usage: /start
Starts sending images in the current channel.
- Required permissions:
MANAGE_CHANNEL
Usage: /stop
Stops sending images in the current channel.
- Required permissions:
MANAGE_CHANNEL
Usage: /tags <..tags: string>
- If
<tags>
is omitted, gets the currently set tags - If
<tags>
is provided, sets the tags- Tags are space separated
- Tags are the exact same thing you would enter into the e621/e926 search bar
- See more infos on tags here: https://e926.net/help/cheatsheet
- Required permissions:
MANAGE_CHANNEL
Usage: /timeout <timeout: int>
- If
<timeout>
is omitted, gets the currently set timeout - If
<timeout>
is provided, sets the timeout- Timeout is in minutes
- See
/timeout_mode
for more infos.
- Required permissions:
MANAGE_CHANNEL
The following strings are variables to be replaced in the redis keys:
BOT_PREFIX
: A prefix for the bot as to not confuse entries with other applications using the redis instanceGUILD_ID
: An ID of a discord guild. As time of writing, this is a 64 bit unsigned intCHANNEL_ID
: An ID of a discord channel. As time of writing, this is a 64 bit unsigned intMESSAGE_ID
: An ID of a discord message. As time of writing, this is a 64 bit unsigned intUSER_ID
: An ID of a discord user. As time of writing, this is a 64 bit unsigned int
Set of all guild ids
Set of all channel ids of a guild
Set of all message ids of a channel
Points to a hashmap of possible configuration parameters for a guild Current config parameters are:
- moderator_roles (
string
):- role ids separated by spaces which are allowed to run the bot commands
Points to a hashmap of possible configuration parameters for a channel Current config parameters are:
- tags (
string
):- the search query with each tag separated by spaces
- timeout (
int
):- if timeout_mode is
false
, amount of minutes to wait till the next post - if timeout_mode is
true
, the maximum amount of minutes a timeout is choosen from
- if timeout_mode is
- timeout_mode (
string
):- decided when the bot posts
- if
normal
, then the bot posts every n minutes - if
random
, then the bot chooses a random number of minutes to wait
- nsfw (
string
):- decides if queries are done against e621.net or e926.net
- if
sfw
, then e926.net is used - if
nsfw
, then e621.net is used
- repost_cache_timeout (
int
):- amount of minutes that an entry is kept in cache
A hashmap:
- post_id (
int
):- the e621/e926 post id
- delete_threshold (
int
):- downvotes needed for the post to be deleted A sorted hashmap with the key being a post ID and the value the timestamp it was posted at.
- These ID's will be evicted after
repost_cache_timeout
minutes of time have passed.
A set of discord user ids who downvoted the post on that message id.
A set of discord user ids who upvoted the post on that message id.