Misaka is a multi-purpose bot, it can play audio, manipulate images, administrate users, and much more. More or less, it's meant to entertain people. While the administration module currently lacks a lot, I plan to add more to it eventually such as ban and kick reasons.
a. Server Specifications
The bot is currently running on an AWS EC2 instance. The instance type is t2.micro. It has one virtual CPU, and 1GB of RAM. It may need to be upgraded eventually depending on how many guilds Misaka gets added to.
a. Notable Services
The services listed below are the most notable and vital to Misaka. Services that are either very basic, or insignificant will be ignored and not listed.
Monitors specified subreddits and posts new threads to the subscribed channels.
Simply runs a repeating timer that swaps Misaka's avatar every half hour or the configured interval.
Monitors CNN for breaking news and then posts it to the subscribed channels.
Most likely the most sophisticated service. Handles nearly all of the data tracking. Refer to the Data Collection section below regarding the data.
Utilized when either the reload scripts command is called, or when Misaka boots up. It executes and adds external modules.
Handles the cooldowns for commands. Cooldowns are server specific at the moment, may be channel specific in the future.
This service allows users to configure other services. For example, it can be utilized to subscribe your channel to CNN breaking news, and new subreddit posts.
The news service allows users to subscribe a text channel to a whitelisted news source.
Manages the custom prefixes for servers, and allows users to add/remove them.
b. Configuring Services
At the moment, the only two configurable services would be the Reddit service, and the CNN service. Users may now subscribe the services to their channel. Check out the Subscriptions Module under the commands page for more info.
III. Data Collection
a. What Data is Collected?
Misaka collects and stores nearly every worthy piece of data encountered. Discord objects such as users, channels, guilds, messages, attachments, and reactions are all stored. If the object is updated, the data will be as well. Therefore, deleted messages are removed from the database, and edited messages modify existing records.
Other data stored would be bot-related data such as salutations, tags, commands ran, prefixes, subscriptions, and gametime.
b. Where is it Stored?
All data is saved within a MySQL database hosted on the same server as the bot.
c. Is the Data Safe?
It's impossible to guarantee the safety of the data. Breaches or data loss can happen. However the likelihood of a breach is extremely low. If there was one, the only potentially sensitive data would be the stored messages.
IV. Known Issues
a. High Priority
✔ Welcome and leave messages seem to have stopped working, not sure of the cause, looking into it.
✔ The command usergametime takes over ten seconds to generate.
✔ Reddit and CNN service are not configurable.
✔ Allow servers to have custom prefixes.
b. Low Priority
✔ Allow users to specify an image index with the image search command.
c. Reporting Bugs
The most effective route for reporting a bug would be to refer to the contact page. If told in another manner the likeliness of forgetting or missing the report is high. To properly report a bug, you'll have to connect your Discord account, this is to prevent spam and to allow me to contact you easily if needed.