Guide
8ball Command
The /8ball
command allows users to ask the magic 8-ball a question and receive a random response.
To use the command, type /8ball
and provide the following option:
question
- The question you want to ask the magic 8-ball. (Required)
Example usage:
/8ball --question Will it rain tomorrow?
The command provides a fun and random response from the magic 8-ball to answer the user's question.
About Command
The /about
command provides information about AshBot, including its features and how to get support.
To use the command, type /about
.
The command will display an embed with details about AshBot, including its purpose, available commands, customizable configurations, and links for support, invite, documentation, and the official website.
Example usage:
/about
Explore the world of AshBot and stay connected with the community!
Accept Command
The /accept
command allows administrators to accept a suggestion by updating its status and providing
optional reasons.
To use the command, type /accept
and provide the following options:
suggestion_id
- The ID of the suggestion to accept. (Required)reason
(Optional) - Optional reason for accepting the suggestion.
Example usage:
/accept --suggestion_id 123 --reason Accepted for implementation
Note: This command requires administrator permissions to execute.
The command fetches the suggestion details, updates its status to "Accepted," and edits the suggestion message to reflect the acceptance.
AddUser Command
The /adduser
command allows administrators to add a specified user to a channel with specific
permissions.
To use the command, type /adduser
and provide the following option:
user_id
- The ID of the user to add to the channel. (Required)
Example usage:
/adduser user_id 123456789012345678
Permissions granted:
- SEND_MESSAGES
- VIEW_CHANNEL
- READ_MESSAGE_HISTORY
Note: This command requires administrator permissions to execute.
Avatar Command
The /avatar
command allows users to fetch the avatar of a specified user or their own.
To use the command, type /avatar
and provide the following option:
user
(Optional) - The user whose avatar you want to fetch. If not provided, it will default to your own avatar.
Example usage:
/avatar
/avatar --user @UserName
Note: The image is displayed with a maximum size of 1024 pixels and is dynamic.
Ban Command
The /ban
command allows administrators to ban a specified user from the server.
To use the command, type /ban
and provide the following options:
user
- The user to ban. (Required)reason
(Optional) - The reason for the ban. If not provided, it defaults to "No reason specified."
Example usage:
/ban --user @UserName --reason Violation of rules
Note: This command requires the user executing it to have the "Ban Members" permission.
The ban action will be logged in the configured log channel with details including the user, moderator, and reason.
Stats Command
The /stats
command displays statistics about AshBot, including information about the server, user count, and system details.
To use the command, type /botstats
.
The command will display an embed with details such as the bot's tag, Discord.js version, guild count, user count, channel count, uptime, OS, CPU, and Node.js version.
Example usage:
/botstats
Discover interesting insights about AshBot's current status and system information!
Bug Command
The /bug
command allows users to report a bug, providing developers with details to investigate.
To use the command, type /bug
and provide the following option:
message
- A detailed description of the bug. (Required)
Example usage:
/bug --message Found a bug in the command handling logic.
Upon reporting the bug, the command sends relevant information to a designated bug report channel in the bot's guild.
The bug report includes details such as user information, bug description, timestamp, guild information, and an invite link to the guild.
Note: The invite link creation may fail if the bot lacks "CREATE_INSTANT_INVITE" permissions.
Calc Command
The /calc
command allows users to perform mathematical calculations using the specified expression.
To use the command, type /calc
and provide the following option:
expression
- The mathematical expression to be evaluated. (Required)
Example usage:
/calc --expression 2 + 2 * 3
The command uses the math.js library to evaluate the mathematical expression.
The result of the calculation will be displayed as a reply to the user's command.
Note: Ensure that the mathematical expression provided is valid to avoid calculation errors.
Cat Command
The /cat
command allows users to get a random cat image.
To use the command, type /cat
.
The command will fetch a random cat image from the Cat API and display it in an embed.
Example usage:
/cat
Enjoy adorable cat images with the help of the Cat command!
Checkvote Command
The /checkvote
command allows users to check their vote status for AshBot on Top.gg.
To use the command, type /checkvote
.
The command will check whether the user has voted for AshBot on Top.gg in the last 12 hours and provide a response accordingly. If the user has not voted, they will be prompted to vote, and a link to the Top.gg voting page will be provided.
Example usage:
/checkvote
Stay updated on your vote status and continue supporting AshBot!
Clearwarn Command
The /clearwarn
command allows administrators to remove all warnings for a specified user.
To use the command, type /clearwarn
and provide the following option:
user
- The user for whom you want to clear warnings. (Required)
Example usage:
/clearwarn user @UserName
Note: This command requires administrator permissions to execute.
The command will clear all warnings for the specified user in the server.
Close Command
The /close
command is used to close a support ticket. It is designed for guild usage only.
To use the command, ensure that the channel name starts with "t-" (e.g., "t-support") and type /close
.
Example usage:
/close
The command performs the following actions:
- Generates a transcript of the channel.
- Sends the transcript to the user via DM.
- Sends a notification to the specified log channel (if configured).
- Deletes the channel after a 5-second delay.
Note: Ensure that the channel topic contains the user ID for proper functioning.
Counter Command
The /counter
command allows you to set up a member counter for a specific role in a channel.
Only administrators can use this command. Using the @everyone role, will show All Members.
To use the command, type /counter
and provide the following options:
channel
- Select the channel for the member counter. (Required)role
- Select the role for the member counter. (Required)
Example usage:
/counter channel #counter-channel role @CounterRole
Delwarn Command
The /delwarn
command is used to remove the latest warning from a user. It requires the administrator permission to execute.
To use the command, type /delwarn
and mention the user from whom you want to remove the latest warning.
Example usage:
/delwarn @user
The command performs the following actions:
- Checks if the user issuing the command has the administrator permission.
- Retrieves existing warnings for the specified user from the database.
- Checks if the user has any warnings to remove. If not, a message is sent indicating no warnings.
- Removes the latest warning from the user and updates the database accordingly.
- Sends an embed message indicating the removal details.
Deny Command
The /deny
command is used to deny a suggestion. It requires the administrator permission to execute.
To use the command, type /deny
and provide the suggestion ID that you want to deny.
Example usage:
/deny --suggestion_id 123 --reason "Inappropriate content"
The command performs the following actions:
- Checks if the user issuing the command has the administrator permission.
- Parses the suggestion ID and optional reason from the command options.
- Fetches the suggestion details from the database using the suggestion ID.
- Verifies that the suggestion is from the same guild as the command was issued in.
- Updates the suggestion status to "Denied" in the database.
- Fetches the suggestion message and reactions from the specified channel.
- Calculates the voting statistics (accept and decline counts).
- Edits the suggestion message to update the embed with the "Denied" status, reason, and voting statistics.
- Replies to the user indicating that the suggestion has been denied.
Dog Command
The /dog
command is used to get a random dog image.
To use the command, type /dog
. The bot will reply with a random dog image.
Example usage:
/dog
The command performs the following actions:
- Makes a request to "https://api.thedogapi.com/v1/images/search" to fetch a random dog image.
- Creates an embed with the dog image and a blue color.
- Replies to the user with the embedded random dog image.
Embed Command
The /embed
command allows you to create a custom embed. Only administrators can use this command.
To use the command, type /embed
and provide the following options:
title
- The title of the embed (limited to 256 characters). (Required)description
- The description of the embed (limited to 2,000 characters). (Required)color
- The color of the embed in hexadecimal format (e.g., #FF0000). (Optional)channel
- The channel where the embed should be sent. (Optional)footericon
- The icon URL for the footer. (Optional)footer
- The text for the footer. (Optional)authorurl
- The URL for the author. (Optional)authoricon
- The icon URL for the author. (Optional)author
- The author name. (Optional)image
- The main image URL for the embed. (Optional)thumbnail
- The thumbnail image URL for the embed. (Optional)url
- The URL for the embed. (Optional)textcontent
- The text content above the embed. (Optional)messageid
- The message ID to edit an existing embed. (Optional)
Example usage:
/embed title Example Title description Example Description color #FF0000 channel #general footericon https://i.imgur.com/w3duR07.png footer Example Footer authorurl https://i.imgur.com/w3duR07.png author Example Author image https://i.imgur.com/w3duR07.png thumbnail https://i.imgur.com/w3duR07.png url https://i.imgur.com/w3duR07.png textcontent Example Text messageid 1234567890
Reaction Roles Setup Command
The /rrsetup
command helps you set up reaction roles in your server. Only administrators can
use this command.
To use the command, type /rrsetup
and provide the following options:
channel
- The channel to send the reaction role embed. (Required)role1
- The first role for users to react to. (Required)role2
- The second role for users to react to. (Optional)role3
- The third role for users to react to. (Optional)role4
- The fourth role for users to react to. (Optional)role5
- The fifth role for users to react to. (Optional)
Example usage:
/rrsetup channel #roles role1 @Role1 role2 @Role2 role3 @Role3 role4 @Role4 role5 @Role5
Role Command
The /role
command allows administrators to add or remove a role from a user for a given duration.
To use the command, type /role
and provide the following options:
user
- The user to add/remove the role from. (Required)role
- The role to add/remove. (Required)duration
- The duration in days to add/remove the role for. (Required)
Example usage:
/role user @Username role @RoleName duration 7
RoleAll Command
The /roleall
command allows administrators to add a specified role to all members in the server.
To use the command, type /roleall
and provide the following option:
role
- The role to add to all members. (Required)
Example usage:
/roleall role @RoleName
Note: This command requires administrator permissions to execute.
Setup Command
The /setup
command allows you to configure various settings for your server. Only administrators
can use this command.
To use the command, type /setup
and provide the following options:
log-channel
- The channel for logs. (Optional)welcome-channel
- The channel for welcome messages. (Optional)leaves-channel
- The channel for leave messages. (Optional)join-role
- The role to assign to users when they join. (Optional)ticket-channel
- The channel for tickets. (Optional)suggestion-channel
- The channel for suggestions. (Optional)
Example usage:
/setup log-channel #logs welcome-channel #welcome leaves-channel #leaves join-role @Member ticket-channel #tickets suggestion-channel #suggestions
Snipe Command
The /snipe
command retrieves the last deleted message in the current channel.
To use the command, the user must have the ADMINISTRATOR
permission.
Example usage:
/snipe
The command performs the following actions:
- Checks if the user has the
ADMINISTRATOR
permission. - Fetches the last deleted message from the database for the current channel and guild.
- If a deleted message is found, creates an embed with the author and content details.
- Replies with the embed containing the last deleted message.
- If no deleted message is found, replies with a message indicating no recently deleted messages.
- Handles errors and replies with an error message if any issues occur during the process.
Command Options:
- None
Permissions:
ADMINISTRATOR
- Required to use this command.
Stick Command
The /stick
command allows you to stick a message to the channel. Only administrators can use this
command.
To use the command, type /stick
and provide the following options:
message_content
- The content of the sticked message. (Required)
Example usage:
/stick This is a stickied message!
Suggest Command
The /suggest
command allows users to create and submit suggestions.
To use the command, type /suggest [your suggestion]
to submit a suggestion.
Example usage:
/suggest Improve the server's welcome message!
The command performs the following actions:
- Checks if the user is on cooldown for submitting suggestions.
- If not on cooldown, records the suggestion in the database.
- Fetches the configured suggestion channel for the guild from the database.
- If a suggestion channel is found, creates an embed for the suggestion.
- Sends the suggestion embed to the suggestion channel.
- Updates the suggestion's message ID in the database.
- Replies to the user that their suggestion has been submitted.
Command Options:
-
suggestion
(required): The content of the suggestion.
Cooldown:
Users are limited to submitting one suggestion every 8 hours.
Support Command
The /support
command provides users with a link to join the support server.
To use the command, type /support
to receive an embed with a support message and a button leading to the support server.
Example usage:
/support
The command performs the following actions:
- Creates a
LINK
-styled button labeledSupport
with a link to the support server. - Creates an embed with a title and description conveying the support message.
- Replies to the user with the embed and the button in a row.
Command Options:
- None
Unban Command
The /unban
command allows users with the BAN_MEMBERS
permission to unban a user from the server.
To use the command, type /unban [user_id] [reason]
to unban the specified user with an optional reason.
Example usage:
/unban 123456789012345678 Unbanned for a reason
The command performs the following actions:
- Checks if the user has the
BAN_MEMBERS
permission. - Retrieves the target user's ID and the optional reason from the command options.
- Fetches the list of banned users from the server.
- Finds the banned user by matching their ID.
- If the user is not banned, replies with an error message.
- Unbans the user and replies with a confirmation message.
- Logs the unban action in the server's log channel if available.
Command Options:
user
: The user to unban (provide the user ID) (required).reason
: The reason for the unban (optional).
Unlock Command
The /unlock
command allows users with the ADMINISTRATOR
permission to unlock a specific text channel, enabling users to send messages.
To use the command, type /unlock [channel_mention]
to unlock the specified text channel.
Example usage:
/unlock #general
The command performs the following actions:
- Checks if the user has the
ADMINISTRATOR
permission. - Retrieves the target text channel based on the provided mention.
- Checks if the channel is a text channel.
- Verifies if the channel is currently locked down (permissions deny 'SEND_MESSAGES').
- If the channel is locked, updates permissions to allow 'SEND_MESSAGES' for everyone.
- Replies with a confirmation message or an error message if unsuccessful.
Command Options:
channel
: The text channel to unlock (required).
Unmute Command
The /unmute
command allows users with the MANAGE_MESSAGES
permission to unmute a specified user in the guild.
To use the command, type /unmute [user_mention] [reason]
to unmute the specified user. The reason is optional.
Example usage:
/unmute @username /unmute @username Breaking the rules
The command performs the following actions:
- Checks if the user has the
MANAGE_MESSAGES
permission. - Retrieves the target user based on the provided mention.
- Unmutes the user, and logs the unmute in the specified log channel.
- Replies with a confirmation message or an error message if unsuccessful.
Command Options:
user
: The user to unmute (required).reason
: The reason for the unmute (optional).
The command uses the timeout
method to handle the unmute.
Unstick Command
The /unstick
command allows you to stop stickied messages in the channel. Only administrators
can use this command.
To use the command, type /unstick
. This will stop the most recent stickied message in the
channel.
Example usage:
/unstick
Userinfo Command
The /userinfo
command fetches information about a user in the guild.
To use the command, type /userinfo
to get information about yourself or /userinfo [user_mention]
to get information about a specific user.
Example usage:
/userinfo /userinfo @username
The command performs the following actions:
- Retrieves the target user based on the provided mention or defaults to the user who triggered the command.
- Formats and displays various details about the user in an embedded message.
- Sends the embedded message as a reply.
User Information Displayed:
- Username and Discriminator
- User ID
- Nickname in the server (if available)
- Server Boosted Status
- Join Date (formatted and relative)
- Account Creation Date (formatted and relative)
- Roles (sorted by position)
Vote Command
The /vote
command provides links to vote for the bot on different platforms.
To use the command, type /vote
in a channel. It will reply with buttons for various voting platforms.
Example usage:
/vote
The command performs the following actions:
- Creates an embedded message with the title "Vote for the Bot" and a description.
- Adds buttons for each voting platform (Top.gg, Discords.com, Discordlist.gg).
- Sends the embedded message with buttons as a reply.
Voting Platforms:
Waifu Command
The /waifu
command fetches a waifu image from the nekos.life API and displays it in an embedded message.
To use the command, type /waifu
in a channel. The command has a cooldown of 5 seconds per user to prevent spam.
Example usage:
/waifu
The command performs the following actions:
- Checks if the user is on cooldown. If yes, it returns a cooldown message.
- Sets the user on cooldown for 5 seconds.
- Fetches a waifu image from the nekos.life API using Axios.
- Creates an embedded message with the fetched image and sends it as a reply.
- If fetching fails, it replies with a failure message.
Warn Command
The /warn
command is used to warn a user for a specific reason. It also keeps track of the user's warnings and logs the action.
To use the command, type /warn
followed by the mention of the user and an optional reason for the warning.
Example usage:
/warn @user [reason]
The command performs the following actions:
- Checks if the user issuing the command has the
MANAGE_MESSAGES
permission. - Checks if the target user is an administrator and prevents warning admins.
- Retrieves existing warnings for the specified user from the database.
- Adds a new warning with a reason to the user's warnings in the database.
- Checks for the number of warnings and takes actions accordingly (kick or ban).
- Replies to the user with an embedded warning message.
- Sends a log to the configured log channel with details of the warning.
Warns Command
The /warns
command is used to show the number of warnings a user has with reasons.
To use the command, type /warns
. The bot will reply with an embed displaying the user's warnings and reasons.
Optional: You can mention a specific user to check their warnings.
Example usage:
/warns [@user]
The command performs the following actions:
- Checks if the user has the
ADMINISTRATOR
permission. - Retrieves existing warnings for the specified user from the database.
- Creates an embed with the user's warnings and reasons.
- Replies to the user with the embedded warnings information.
Wolfram Command
The /wolfram
command allows you to query WolframAlpha for information. Use this command to get
detailed results for your queries.
To use the command, type /wolfram
and provide the following option:
query
- The query to search on WolframAlpha. (Required)
Example usage:
/wolfram query Who is the president of the United States?
Note: The command may return both text and image results based on the query.