diff --git a/README.md b/README.md index 67860cd..29b9ce1 100644 --- a/README.md +++ b/README.md @@ -9,15 +9,28 @@ Discord badge

-## Introduction +owobot is a versatile Discord bot with a wide range of capabilities, from moderation to utilities to entertainment. Using state-of-the-art Discord features, owobot takes your server experience to the next level. It's the ultimate companion for your Discord server! -Meet owobot, the ultimate companion for your Discord server! owobot is a versatile Discord bot with a wide range of capabilities, from moderation to utilities to entertainment. Using state-of-the-art Discord features, owobot takes your server experience to the next level. +## Table of contents + +- [Installation Options](#installation-options) + - [Linux packages](#linux-packages) + - [OCI/Docker images](#ocidocker-images) +- [Features](#features) + - [Vetting](#vetting) + - [Tickets](#tickets) + - [Eventlog](#eventlog) + - [Reactions](#reactions) + - [Reaction Roles](#reaction-roles) + - [Polls](#polls) + - [Starboard](#starboard) + - [Rate Limiting](#rate-limiting) ## Installation Options ### Linux packages -The [latest release](https://gitea.elara.ws/owobot/owobot/releases/latest) of owobot has packages for many distros and processors. They include a systemd service to make the bot easier to use. Just install the package, edit the bot's configuration to suit your needs, and run it using `sudo systemctl enable --now owobot`! +The [latest release](https://gitea.elara.ws/owobot/owobot/releases/latest) of owobot has packages for many distros and processors. They include a systemd service to make the bot easier to use. Just install the package, edit the bot's configuration to suit your needs, and run it using `sudo systemctl enable --now owobot`. Systemd will monitor it and make sure it's always running. ### OCI/Docker images @@ -27,7 +40,7 @@ For more advanced users, owobot provides OCI/Docker images, which can be used wi ### Vetting -In order to catch trolls and other troublemakers before they get access to your precious server, owobot can be configured to require new users to go through a vetting process before gaining access to the server. +To catch trolls and other troublemakers before they get access to your server, owobot can be configured to require new users to go through a vetting process before they can get access to the server. To create a vetting message, just choose any message, click `More > Apps > Make Vetting Message`, and that's it! owobot will delete the message and post a new one with a message button which can be used by users to request vetting. @@ -35,7 +48,7 @@ When users click the request vetting button, owobot will send a vetting request If a moderator accepts the request, a new ticket will be created in which mods can talk to the user. When they're finished, they can either kick the user which will automatically close the ticket, or they can approve the user using the `/approve` command. -Commands: +**Commands:** - `/vetting role` can be used by anyone with the `Manage Server` permission to set the server's vetting role. owobot will assign this role to all new users. - `/vetting req_channel` can be used by anyone with the `Manage Server` permission to set the server's vetting request channel. This is where owobot will post vetting requests. @@ -43,9 +56,11 @@ Commands: ### Tickets -owobot can create tickets, which are like private channels that allow users to talk directly to your server's moderators. Only one ticket per user can exist at any time. When a ticket is closed, owobot compiles a log containing all the messages in the ticket and sends it to the event log ticket channel. +owobot can create tickets, which are private channels that allow users to talk directly to your server's moderators. When a ticket is closed, owobot compiles a log containing all the messages in the ticket and sends it to the event log ticket channel. -Commands: +A user can only have one open ticket at a time. + +**Commands:** - `/ticket` can be used by any user to create a ticket for themselves - `/mod_ticket` can be used by anyone with the `Manage Channels` permission to create a ticket for another user @@ -54,16 +69,16 @@ Commands: ### Eventlog -The eventlog collects important events such as kicks/bans, role changes, etc. and sends them to a configurable discord channel. +The eventlog listens for important events such as kicks, bans, role changes, etc. and sends them to a configurable discord channel so you can always access them. -Commands: +**Commands:** - `/eventlog channel` can be used by anyone with the `Manage Server` permission to set the channel for the event log - `/eventlog ticket_channel` can be used by anyone with the `Manage Server` permission to set the channel in which ticket conversations logs will be sent ### Reactions -owobot has a very powerful reaction system which can find content inside of messages and then react with an emoji or reply with text. +owobot has a very powerful reactions system which can find content inside of messages and then react with an emoji or reply with text. A reaction consists of a match type, match, reaction type, reaction, and an optional random chance. @@ -71,7 +86,7 @@ The match type can either be `contains` or `regex`. The `contains` matcher just The optional random chance allows you to add reactions that only occur a certain percentage of the time. Setting it to `10`, for example, means the reaction will only happen in 10% of detected messages. -Commands: +**Commands:** - `/reactions add` can be used by anyone with the `Manage Expressions` permission to add new reactions - `/reactions list` can be used by anyone with the `Manage Expressions` permission to get a list of all existing reactions @@ -82,11 +97,9 @@ Commands: ### Reaction Roles -Reaction roles allow users to easily assign roles to themselves using message buttons. +Reaction roles allow users to easily assign roles to themselves using message buttons. Reaction roles are organized in categories, which can have a name and a description. Having multiple categories with the same name is allowed, as long as they're in different channels. -Reaction roles are organized in categories, which can have a name and a description. You can't have more than one category with the same name in a given channel. - -Commands: +**Commands:** - `/reaction_roles new_category` can be used by anyone with the `Manage Server` permission to create a new reaction role category in the current channel - `/reaction_roles remove_category` can be used by anyone with the `Manage Server` permission to remove an existing reaction role category from the current channel @@ -98,13 +111,17 @@ Commands: ### Polls -owobot can easily create polls for your members to vote in. Polls use message components and privacy tokens to ensure that votes are always private and even the person running the bot can't find out who voted for what. +owobot can create polls for your members to vote in. Polls use message components and privacy tokens to ensure that votes are always private and even the person running the bot can't find out who voted for what. -A poll can be created using the `/poll` command. owobot will create a message with just the title and two buttons: `Add Options` and `Finish`. Clicking the `Add Options` button opens a modal (pop up) where you can type the text for a new option. Once that's done, owobot edits the message and asks the poll's owner to react with the emoji they'd like to use for that poll. Once they react, that option is added. Options can keep being added until the Finish button is clicked, which finalizes the poll, creates a thread, and opens it up to votes. +You can create a poll with the `/poll` command. owobot will create a message with the title and two buttons: `Add Option` and `Finish`. -If a user votes multiple times, their vote will be changed to the latest one. +Clicking the `Add Option` button opens a pop up where you can type the text for your new option. Once you've submitted that, owobot edits the message and asks you to react with the emoji you'd like to use for that option. -Commands: +Once you react, the option is added. You can keep adding options until you click the Finish button, which finalizes the poll, creates a thread, and opens it up to votes. + +If a user votes multiple times, only the latest vote will be counted. + +**Commands:** - `/poll` can be used by any user to create a poll @@ -112,7 +129,7 @@ Commands: The starboard is a way for your users to feature messages that they like. Users can react to messages with stars, and once a configurable threshold of stars is reached, the message will be posted to the starboard channel. -Commands: +**Commands:** - `/starboard stars` can be used by anyone with the `Manage Server` permission to set the star reaction threshold for the starboard (The default is 3) - `/starboard channel` can be used by anyone with the `Manage Server` permission to set the starboard channel for the server. @@ -125,4 +142,4 @@ Here are the current rate limits: - `channel_delete`: 10 / minute - `kick`: 10 / minute -- `ban`: 7 / 5 minutes \ No newline at end of file +- `ban`: 7 / 5 minutes