Basic goal: get commands like !keyboard to work over Discord. At first, there should still only be one database table for commands, and the Discord side should just make sure that commands don't exceed 500 characters so that they're still usable on Twitch.
Figure out whether I want ~300 individual slash commands or just a /twitchcommand command to handle all of them...?
I can't have >100 commands, so I should just add some very obviously needed commands like /help or /faq and then have a /twitchcommand command to handle the rest.
Actual tasks:
[x] Get the code cleaned up so that I can have the /twitchcommand command. It doesn't need to do anything in the initial commit. It should just respond to text commands that are stored in the Twitch database.
[x] Make the /twitchcommand command. With no arguments, it should just link you to the web interface. With an argument, it should try fetching that text command from the database. If it fails, it should just link you to the web interface.
[ ] Test this
[ ] Delete the user, server, and ping commands.
Eventually, I need to redesign some of the database so that I can have some platform-specific stuff, but that may be part of another task. All of the built-in commands need to have special considerations for Twitch and Discord.
Read in commands on the Twitch side like I did on the Discord side (by reading dynamically from files).
Also eventually, make sure that the Discord component is separate enough from the Twitch component. I don't want a failure in one to affect the operation of the other.
class
for this to see how I like it, and then consider whether I want to refactor the Twitch part of the code.!keyboard
to work over Discord. At first, there should still only be one database table for commands, and the Discord side should just make sure that commands don't exceed 500 characters so that they're still usable on Twitch./twitchcommand
command to handle all of them...?/help
or/faq
and then have a/twitchcommand
command to handle the rest.Actual tasks:
/twitchcommand
command. It doesn't need to do anything in the initial commit. It should just respond to text commands that are stored in the Twitch database./twitchcommand
command. With no arguments, it should just link you to the web interface. With an argument, it should try fetching that text command from the database. If it fails, it should just link you to the web interface.user
,server
, andping
commands.