Everneth / EMI

Everneth Management Interface - This is a all-inclusive tool to open up commands and access to players who help run the various teams for the Everneth Survival Multiplayer community
MIT License
3 stars 0 forks source link

Discord Integrations #48

Closed TptMike closed 4 years ago

TptMike commented 5 years ago

Discord Integrations

Apparently I started work before a ticket was created. Woops. High level overview of the upcoming discord integration is including the means for players to apply via Discord. This includes using an !!apply command, the bot DMs the application questions and takes replies back as input, asking the player to confirm their application with yes or no answers. If Yes, their application is sent to the forums as a post and an embed copy is posted in #staff-room. If No, the applicant redoes the process of filling out their app.

Progress

TptMike commented 4 years ago

This will now require a new bot to be developed. Everneth/Gatekeeper repo has been created for this task

TptMike commented 4 years ago

Gatekeeper (AKA Jasper) has been tested and is currently working when scoring users in the applicant role. The current functionality has hard coded values that need to be offloaded to a config file.

With this file there are some troubleshooting commands that staff will need in order to make tweaks and debug the bot if there are issues that bubble up. One potential issue will be stale or orphaned data in the cached applicants.json file. Staff will need the ability to refresh the cache and keep on trucking.

Some other commands that will be helpful will be a listing of current applicants via embed and possibly fetching the json file and embedding it in discord. With these commands we will need to permission them out accordingly. Once Jasper is feature complete, the rest of this ticket falls onto The Wench's codebase and a new listener for role changes will be required to initiate a vote in #staff-room and properly reject or deny applicants.

TptMike commented 4 years ago

Extensive testing completed. Thus far Jasper has experienced no bugs and has worked as designed. The wench on the other hand still has reaction validation logic required (properly detects official emojis, but not custom), and role changes upon rejection and approval of the application.

Further tests are required for citizening when rejoining our discord guild and a player record exists in the database. Vote requests may be removed from the scope. Getting to the pending rank is simple enough. Manual citizening will still be added.