Skip to content

Commit

Permalink
Readme update to prepare transition
Browse files Browse the repository at this point in the history
  • Loading branch information
Kaysoro committed Nov 16, 2024
1 parent 7972593 commit 0835d39
Show file tree
Hide file tree
Showing 7 changed files with 37 additions and 780 deletions.
62 changes: 37 additions & 25 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -2,25 +2,23 @@

<a href="https://discordapp.com/oauth2/authorize?&client_id=202916641414184960&scope=bot"><img align="right" src="https://i.imgur.com/9R9HLqa.png" width=27%></a>

[![Build Status](https://travis-ci.org/Kaysoro/KaellyBot.svg?branch=master)](https://travis-ci.org/Kaysoro/KaellyBot)
[![pipeline status](https://gitlab.com/Kaysoro/KaellyBot/badges/master/pipeline.svg)](https://gitlab.com/Kaysoro/KaellyBot/commits/master)
[![Known Vulnerabilities](https://snyk.io/test/github/kaysoro/kaellybot/badge.svg?targetFile=pom.xml)](https://snyk.io/test/github/kaysoro/kaellybot?targetFile=pom.xml)
[![Coverage Status](https://coveralls.io/repos/github/Kaysoro/KaellyBot/badge.svg?branch=master)](https://coveralls.io/github/Kaysoro/KaellyBot?branch=master)

KaellyBOT aims to provide useful commands for DOFUS community (FR/EN/ES)! If you have questions, suggestions or just want to say hello, feel free to join the [discord support server](https://discord.gg/CyJCFDk) :)

## Invite KaellyBOT to your server
There is a running official instance used by 10.000+ discord servers and 540.000+ users.
There is a running official instance used by 13.000+ discord servers and 660.000+ users.
Just [click here](https://discordapp.com/oauth2/authorize?&client_id=202916641414184960&scope=bot), follow the discord instructions and that's it!

## Commands

The commands below won't work anymore sooner or later. This bot was created before slash commands arrived and the new version is heavily related to this Discord interaction system now.
That being said, the commands principle remains the same, just use `/` in Discord!
![KaellyBOT commands](https://i.imgur.com/37Ifk6o.png "KaellyBOT commands")

## Data privacy
Only Discord user IDs are stored in database to make it run.
This data is registered when a user register himself in a book like the job book; users can be easily unregistered as described in each *book command* help.

**Collected informations are and will never be used for commercial purposes.**
**Collected information are and will never be used for commercial purposes.**

## Developer section
This section is dedicated for developers. If you're not, please use the official instance described above.
Expand All @@ -43,28 +41,42 @@ With the time and the growing usage, a lot of new problems appear:
- Almanax, RSS and Twitter events are not well managed for large bots (it breaks very often)
- Usage of tmux/screen to host it
- Some of these previous limitations require more RAM and so increase the cost to host it
- Updates force downtime on any servers, on any features
- One monolith handles every Discord shards making it clumsy when one shard is offline time to time

All these factors push me to put this project as deprecated and to think about a new architecture.

### What's next?
The [KaellyBot organization](https://github.com/KaellyBot/) has been created to contain several projects like:
- [Kaelly-core](https://github.com/KaellyBot/Kaelly-core) is the equivalent of this one with the following structure:
- Java 15 project based on SpringBoot V2.X and Discord4J V3.1.X.
- Built with Maven
- Dockerized with Jib
- Massive use of Reactor
- Massive use of Annotations to describe the commands
- Massive use of CDI: everything is injectable
- Commands arguments detection with regex
- Store data into MongoDB database
- Microservices and dedicated libraries built for it
- This version is still in development and is partially used by the official instance ([DofusRoom](https://www.dofusroom.com/) feature is the only one available).
- [Kaelly-portals](https://github.com/KaellyBot/Kaelly-portals) is a SpringBoot microservice to manage the portals positions from different sources like [dofus-portals.fr](https://dofus-portals.fr/). It is currently used by the official instance.
- [Kaelly-commons](https://github.com/KaellyBot/Kaelly-commons) is a SpringBoot library to bring some commons entities or tools, currently used by Kaelly-core and Kaelly-portals.
- [Kaelly-dashboard](https://github.com/KaellyBot/Kaelly-dashboard) is a first draft of a dashboard website (Node/Express/DiscordJS) to configure KaellyBot on your server. This project is paused, not prior and not used. The chosen technologies are not totally defined and will probably change in the future.
- [Kaelly-environment](https://github.com/KaellyBot/Kaelly-environment) is the place to store some docker-compose files and automate easily the launch of KaellyBot (partially or entirely) on a new machine.

There is still a lot to do, but I'm working actively on it! If you wanna help, feel free to join the [discord support server](https://discord.gg/CyJCFDk) and discuss! :)
The [KaellyBot organization](https://github.com/KaellyBot/) has been created as ecosystem divided into modular repositories (based on Golang and communicating through RabbitMQ), each serving a specific purpose:
* Kaelly-discord
* Handles Discord interactions, commands, and events.

* Kaelly-encyclopedia
* Retrieves game data like items, sets, almanax from [DofusDude API](http://dofusdu.de).

* Kaelly-configurator
* Handles bot configurations like game server binding, webhooks notifications, etc.

* Kaelly-books
* Handles alignment and job registries.

* Kaelly-rss
* Retrieves RSS feeds from Ankama games websites

* Kaelly-twitter
* Retrieves tweets from official Ankama game account

* Kaelly-metrics
* Collects, processes, and visualizes bot metrics for insights.

... and so on. Here below the planned architecture with most of the modules.
![KaellyBOT next architecture](https://i.imgur.com/4fefjkp.png "KaellyBOT next architecture")

There is still a lot to do and the beginning of a new start, I'm working actively on it! If you want to help, feel free to join the [discord support server](https://discord.gg/CyJCFDk) and discuss! :)

### What about this repository?

Well, it won't be archived but probably used as documentation to explain KaellyBot history, tech choices and how to use it right now.

## License
KaellyBOT is [GPL(v3) licensed](./LICENSE).
Expand Down
7 changes: 0 additions & 7 deletions docker-compose.yml

This file was deleted.

136 changes: 0 additions & 136 deletions src/scripts/bdd.sqlite.sql

This file was deleted.

134 changes: 0 additions & 134 deletions src/test/java/BestMatcherTest.java

This file was deleted.

Loading

0 comments on commit 0835d39

Please sign in to comment.