Improve the README
ci/woodpecker/push/woodpecker Pipeline was successful Details

This commit is contained in:
Elara 2023-12-05 09:20:57 +00:00
parent 530b5a03d3
commit b58753eb61
1 changed files with 30 additions and 13 deletions

View File

@ -1,19 +1,34 @@
# owobot - The coolest bot ever written
<p align="center">
<img src="assets/images/banner.png">
</p>
[![owobot-bin AUR package](https://img.shields.io/aur/version/owobot-bin?label=owobot-bin&logo=archlinux)](https://aur.archlinux.org/packages/owobot-bin/)
[![OCI Image Badge](https://img.shields.io/badge/oci-images-24184C?logo=opencontainersinitiative)](https://gitea.elara.ws/owobot/-/packages/container/owobot/latest)
<p align = "center">
<a href="https://aur.archlinux.org/packages/owobot-bin/"><img alt="owobot-bin AUR package" src="https://img.shields.io/aur/version/owobot-bin?label=owobot-bin&logo=archlinux&style=for-the-badge"></a>&nbsp;
<a href="https://gitea.elara.ws/owobot/owobot/releases/latest"><img alt="Gitea Releases Badge" src="https://img.shields.io/badge/gitea-release-609926?logo=gitea&style=for-the-badge"></a>&nbsp;
<a href="https://gitea.elara.ws/owobot/-/packages/container/owobot/latest"><img alt="OCI Image Badge" src="https://img.shields.io/badge/oci-images-24184C?logo=opencontainersinitiative&style=for-the-badge"></a>
</p>
## Introduction
owobot is a powerful Discord bot designed to handle a wide range of tasks in your server, from moderation to entertainment. It takes advantage of several cutting-edge discord features, such as message buttons and modals.
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.
## 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`!
### OCI/Docker images
For more advanced users, owobot provides OCI/Docker images, which can be used with Docker, Podman, LXC, and many other programs. Make sure to set `OWOBOT_DB_PATH` to wherever you've mounted the database. The image is rootless by default, so make sure that uid `65532` can access the database, or manually set the image to run as root using `-u root`.
## Features
### Vetting
In order 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 gaining access to the server.
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 create your 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.
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.
When users click the request vetting button, owobot will send a vetting request in the vetting request channel.
@ -27,7 +42,7 @@ Commands:
### Tickets
owobot can create tickets to allow users to privately talk to your server's moderators. Only one ticket per user can exist at any time. When a ticket is closed, a log containing all the messages in the ticket is sent to the event log ticket channel.
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.
Commands:
@ -38,7 +53,7 @@ Commands:
### Eventlog
The eventlog sends important events such as kicks/bans, role changes, etc. to a configurable discord channel.
The eventlog collects important events such as kicks/bans, role changes, etc. and sends them to a configurable discord channel.
Commands:
@ -49,9 +64,9 @@ Commands:
owobot has a very powerful reaction system which can find content inside of messages and then react with an emoji or reply with text.
A single reaction consists of a match type, match, reaction type, reaction, and an optional random chance.
A reaction consists of a match type, match, reaction type, reaction, and an optional random chance.
The match type can either be `contains` or `regex`. The `contains` matcher checks if a message contains the match. The `regex` matcher checks if a message matches a regular expression and extracts any submatches. If you're using the `regex` matcher with the `text` reaction type, you can include submatches in your reply by putting the submatch index in curly braces (for example: `{1}` or `{5}`).
The match type can either be `contains` or `regex`. The `contains` matcher just checks if a message contains some text, while the `regex` matcher checks if a message matches a specific pattern. If you're using the `regex` matcher with the `text` reaction type, you can include submatches in your reply by putting the submatch index in curly braces (for example: `{1}` or `{5}`), which lets you put parts of the original message in your reply.
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.
@ -84,7 +99,9 @@ Commands:
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.
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 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.
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.
If a user votes multiple times, their vote will be changed to the latest one.
Commands:
@ -92,7 +109,7 @@ Commands:
### Starboard
The starboard is a way for your users to feature the messages 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.
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:
@ -101,7 +118,7 @@ Commands:
### Rate Limiting
owobot will rate limit events such as channel deletions, kicks, and bans, ensuring that compromised mod accounts can't destroy the server. If a user gets near the rate limit, they'll receive two warnings and then they'll be kicked from the server.
owobot limits the speed at which events such as channel deletions, kicks, and bans can happen, ensuring that compromised mod accounts can't destroy the server. If a user gets near the rate limit, they'll receive two warnings and then they'll be kicked from the server if they continue.
Here are the current rate limits: