Skip to content

Akeno is a lovely bot who is ready to track your users ratings and help maintaining your user base in the near future!

License

Notifications You must be signed in to change notification settings

tomzig16/akeno-js

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Akeno

Akeno is a lovely bot who is ready to track your users ratings. You can invite this bot to your server by following this link!

Warning: bot is still in development, which means that any data saved durnig WIP time may and most likely will be lost.

About Akeno

At this very moment Akeno keeps ranking of the server members. If you invite bot to your server, make sure to add your server to the database. You can do that by typing !addserver command. Every server member has to manually join the system by typing !join_h command.

User honoring system

System uses points, which are called "honor points" to rank each user. User can get honor points only from other users. If user wants to honor any server member he can do it with several commands (watch commands section). Both, sender and receiver, must be registered in the database. I decided not to force anyone and not to save any data without anyone's aknowledgement, so each member in order to honor or be honored has to join the system manually, by typing !join_h command.

Each user has three pools for honors: pats, thanks and honors - how many time user was honored and what type of honor, and one more pool of how many spare honors he can give to others. Only pats, thanks and honors are added when printing total number honor. These can not be used as spare honors to spend in order to honor other people. Spare honors never mix into previously mentioned honors as well.

Akeno responds to !status

When user gives someone honor points those points are removed from sender's "spare points" pool and given to receiver's "honor points" pool.

User can add spare points to share on daily basis by typing !collect command.

Future

As this bot is still in development, more features are about to be added. You can track Akeno development state in This trello link

Currently available commands

There are a lot of commands and features planned to be made. Here are some you currently can try out yourself!

Management

  • !addserver - adds server to the database. This command is esential and can be executed only by server owner
  • !join_h - adds user to the database. User can not honor and be honored if he or honoring target is not registered in database

Honor sharing

All honoring commands accept both - mention (!pat @The Sith#4143) and name string (!pat sith).

  • !pat [user] - gives [user] 1 honor point
  • !thank [user] - gives [user] 5 honor points
  • !honor [user] [amount] - gives [user] certain [amount] of points
  • !collect - get spare honor points which are used for honoring others

Misc

  • !help - shows list of available commands (not implemented yet)
  • !status - Akeno tells how many honor points you have and how many honor points you can give

Image system

Akeno hosts images. Your server still has to be inserted to the database as images are not shared across servers (although, there are few global images)

image example

Usage

It is very early state of this command so users currently can add images and request images:

  • !image add [title] [url] - adds image to database. Title can contain more than one word (up to 32 symbols per title) and could not be duplicate. URL must end with supported format (png, .jpg, .jpeg, .gif or .webm)
  • !image [title] - posts first found image which cointains given [title] substring in title, which was added to database with
  • !image list - posts a list of available images for the server. This list is scrollable for the person who invoked the command

There will be more commands, planned lists and removing images. Although, there's thought to limit how many images can a single user add to the database

Other questions and info

Here are some details which might be interesting.

  • Bot is currently running on my raspberry pi and it is located in Easter Europe. Keep that in mind if you experience any latency.
  • Bot is written in Discord.js and uses MySQL database
  • Q: What data is actually stored?
    A: Database does not save any private information. All the information is accessible to user, server owner and Akeno developers.
    Database is created with this code: /creating_db.ddl file. Here's a picture of tables and columns: Data relations
    Although, with new features and changes introduced in bot's functionality, this graph may and most likely will be changed later.

About

Akeno is a lovely bot who is ready to track your users ratings and help maintaining your user base in the near future!

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Contributors 3

  •  
  •  
  •