This documentation will show and explains all the user functionalities of this discord bot.
The bot is made to be used cross-server but some functionalities are not made for this.
- The askip system reunite everything together, so datas for all the servers are gathered together
- The Monix extension is only usable in our discord server / network. You must disable it.
For the simple install + launch part, you can check the README file.
The owner extension purpose is to provide to the bot owner some useful commands.
These commands should not be ran by people you don't trust, so keep in mind you must modify the conditions as described in the README.
Here is a list of the commands :
-
stop_josixStop the bot. Running this command will simply completely stop the bot and will need to restart it manually. -
create_backupCreates a backup of the database in abackup.sqlfile.tableparameter : Specify if you want to backup a single table (without specification it runs on all the tables)
-
executeExecute a SQL query from discord. Useful if you need to perfom a simple select, update, etc... and you are too lazy to log in your databasequeryThe query string that will be executed.
-
execute_backupExecute the backup file automatically (NOTE : because the backup file is just formated INSERT so it may cause conflicts) -
display_logs/display_errorsDisplays the last lines of the log or error file on discord.countThe number of lines to display (default : 100
-
(TASK)
daily_backupA task running each 24 hours that creates a backup in thedaily_backup.sqlfile
All the following commands are made to be run by discord servers staff to handle moderation functionalities of the bot
-
clearClears message from the channellimitThe limit of messages to delete must be between 1 and 50 (default 10)
-
add_coupleAdd a reaction-role couple to a message. When a member add/remove this reaction on the message he will be added/removed the role.msg_idThe ID of the messageemojiThe emoji of the reaction (must not already used in the message and not be a custom emoji)roleThe role to give/remove (must not already used in the message)
-
delete_coupleTake the same parameter as the previous command but it deletes the given couple from the message (Reacting with the emoji will no longer give/remove the role). -
set_news_channelSet the current channel so it will receive all the news from the bot (for now it just apply for birthdays reminder) -
set_xp_channelSet the current channel so it will receive all the announce for xp from the bot (Mentions when you pass a level if the XP is enabled) -
toggle_xp_systemEnable or disable the XP system on this server. If the system is disabled, no one will receive any XP. -
create_new_seasonStore the current season results (all scores and ranking) and switch to a new seasonlabelThe label for the season that will be stored
-
delete_seasonDelete a season from the historylabelThe label of the season that must be deleted
-
update_seasonUpdate a season's labelold_labelThe label of the targeted seasonnew_labelThe new label for the targeted season
-
set_custom_welcomeSet up the custom welcome for the serverchannelThe channel that will display the welcome messageroleThe role to give automatically when someone enters the servermessageThe message to display when someone enters the server (there's a default message). You have 3 possible variables in the message :- {user} : Will be replaced by the mention of the user
- {server} : Will be replaced by the server's name
- {ln} : Will be replaced by a line-break
keepA boolean to clarify if you want to keep old values if they are not set in the command (If you don't specify a role and putkeepto False, it will be deleted in the database)
-
toggle_welcomeEnable or disable the welcome message for this server -
set_loggerSet-up the custom logger for this server by choosing which logs to displaykeepA boolean so clarify if you want to keep old selected logs if they are not selected in the command
-
set_log_channelSet a channel as the logs displayer. It will display all the choosen logs in the previous commandchannelThe targeted channel
-
block_categoryBlock (or unblock) a category to prevent people for getting xp herecategoryThe category to block or unblock
The XP system is based on the MEE6 documentation
You can only earn xp each 60 seconds, meaning that after a gain you need to wait 60 seconds for your actions to pay off again.
You can earn xp by :
- Sending a message, the xp obtained will depend of the length of the message
- 75 if it's longer or equal to 100 characters
- 50 if it's between 99 and 30 characters (include)
- 25 else
- Using a Josix's command : 25 xp (Warning : All the commands does not grant xp)
- Adding a reaction to message : 25 xp
Commands :
-
(STAFF)
give_xpGives a specific amount of xp to a user and updates its level in comparison to the amount.memberThe target member that will receive the xpamountThe amount of xp to give ( >= 1 ). If it's superior to the XP limit, the user's experience will be set to this limit.
-
(STAFF)
remove_xpSame asgive_xpcommand but removes xp to the user. -
(STAFF)
give_levels/remove_levelsGives or removes a specific amount of levels and updates the user's experience to the starting point of the leverl.memberThe target member.amountThe amount of levels to give or remove ( >= 1 ).
-
leaderboardDisplay the server's leaderboard based on the user's amount of experience.limitThe limit of users to display (default 10)
-
profileShow the profile card of a user with its current level, xp and progress towards the next levelmemberThe member's card to display (default the user who called the command)
-
(STAFF)
block_user_xpBlock (or unblock) user from earning xp in your servermemberThe member you want to block or unblock
-
show_seasonsShow the seasons historical of the serverlimitThe limit of season to display (1 <= limit <= 25)
-
user_historyShow the history of the user in this server for all seasons he participatedmemberMention of the member you want to see the history (default yourself)
-
info_seasonSee the information of a seasonlabelThe label of the targeted season
-
user_season_profileSee your profile for a given seasonlabelThe label of the targeted season
The reaction role helps a discord server staff to automatically gives role to their users.
You can create a couple (see the Admin part) of role x emoji. Josix does not support custom emoji.
After adding this couple if the message had 0 couples before it will be automatically set as a reaction-role message. Then, if a user add a reaction he will get the corresponding role and if he removes the reaction he will loose the role.
Note : if you delete a role, all the couples associated with that role will be removed.
This extension is created for all the commands and functionalities that are useful for users.
The bot will also add a Open or Close tag to forum's thread when they are opened or locked with the close command.
-
helpShows all the commands or a specific command help guide. The commands are sorted by category. In the default operation, theownercommands are not displayed if the user does not match with the check.command_nameThe name of the command for the command help guide. By default it's set to None, if not set the command will displays all the commands.
-
linksDisplays a list of links (as hypertext) that can be set in theconfig.jsonfile. Name of the variable -> text shown, value -> link -
chooseChoose a sentence between all the given sentences. Each different part must be separated from the others by a;!sentencesThe message containing all the sentences. Max length of the whole message is 512 characters
-
closeAutomatically close the thread if it's in a Forum Channel. Can only be done if the user is the thread author if it has themanage threadspermission.lockTo specify if the thread should be locked or not. It's a staff only parameter
-
print_pricePrints the required price of a 3D print. -
create_pollCreate a custom poll on discord with a title (optional) and a text -
add_birthdayAdd your birthday to the database so the bot can wish you a happy birthday !dayThe day of your birthday (1-31)monthThe month of your birthday (1-12)userWhich user's birthday it is. Can only be used by a staff member. To add your own birthday you don't need to specifiy this parameter.
-
remove_birthdayRemove the birthday of given member from the bot's databasememberThe target member. You need moderate_members permissions to delete another member birthday !
-
birthdaysShows all the birthdays registered for the users in this server.monthSpecify this parameter if you want to see the birthdays for a specific month.
-
user_birthdaySee the birthday of a useruserThe user's whose you want to see the birthday
-
(TASK)
checkBirthdayA task that runs every 6 hours and that check if there's any birthdays to wish in every server.
This extension is made to only be used by our organization. You must disable it (follow the README).
-
check_stocksCheck if we need to go shopping. If the number of stocks is lower than 50 then a warning embed is created.get_stocksSpecify if you want to get an output of all the stocks in a txt file. It's a staff only parameter
-
monix_leaderboardDisplay a leaderboard of the Top 5 and Bottom 5 users or products based on how much coins they have or the quantity of the product.value_typeWhich value's leaderboard to display. It can be users or products.
-
products_rankingRank all the products from the most consumed to the less consumed during the last 7 days. -
members_rankingRank all the users from the biggest consumer to the smallest consumer during the last 7 days.
All the commands of this extension are meant to be fun. Yeah that's basically the dump part of the bot
-
helloKindly answers with a "Hello" -
pingPing the bot and gets it's latency with a cool gif. -
sayThe bot repeats the given sentence and delete the call to the commandtextThe text to repeat (must be at max 512 characters long)
-
jokeSends a random joke from BlaguesAPI. Warning : The jokes are in french only and you need a token to use this commandjoke_typeThe type of joke you want (if not specified the joke is completely random)
-
list_askipList all the askip categories registered by the botusernameIf specified, the bot will instead list all the askips registered in this category.
-
askipSends an askip (can be random or not)usernameIf specified the bot will randomly choose an askip from this user (category) onlyaskip_nameIf specified the bot will choose this askip (theusernameparameter must be set and contain this askip)
-
add_askipAdd an askip to the bot. A vot will be created, if someone disagress or less than 2 members agrees (with a 3 minute voting time) the askip is not addedusernameThe username (category name) of the askip (64 chars max)askip_nameThe name of the askip (64 chars max)askip_textThe text of the askip (512 chars max)
-
avatarDisplays the avatar of a useruserIf specified displays the given user's avatar. Else displays the command author's avatar.
The extension that contains all the commands for games. Currently there is 4 games available. Each can be launched by a command with their name, you can't enter 2 games at the same moment.
quit_gameQuit your current game. Useful if you are stuck in a game.
A game where you need to turn all the tiles in blue. When clicking a tile, this one and the ones direclty connected to it (excluding diagonals) are switched.
pattern_gameLaunch the game
connect4Launch the gameopponentYour opponent in the game
tic_tac_toeLaunch the gameopponentYour opponent in the game
-
othelloLaunch the gameopponentYour opponent in the game
-
othello rulesDisplays the rules for the game Othello


