samuelsogbesan / leetbot

LeetCode Question Bot for Discord.
Apache License 2.0
1 stars 0 forks source link

Implement Command Executer 🎰 #16

Closed samuelsogbesan closed 3 years ago

samuelsogbesan commented 3 years ago

Create a component used to handle the execution of commands.

Commands take a similar form to commands from a user terminal, with a syntax similar to:

-commandName --arg1 optionalValue1 optionalValue2 --argWithNoValues --anotherArg

Users are able to call commands from the discord bot. These are parsed by the Parser(#14).

The CommandProvider is the interface that exposes the commands, since we don't want to meddle with them directly.

(These commands although currently listed locally, will likely be migrated into the cloud as firebase functions. For now, add new commands to the CommandProvider. It'll be best practise to store a reference to the url of the HTTP callable firebase function, save that to an array and use that as a file called CommandList. That way the CommandProvider interface won't have to change.)