aboutsummaryrefslogtreecommitdiff
path: root/modules/stoplight/main.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'modules/stoplight/main.cpp')
-rw-r--r--modules/stoplight/main.cpp80
1 files changed, 0 insertions, 80 deletions
diff --git a/modules/stoplight/main.cpp b/modules/stoplight/main.cpp
deleted file mode 100644
index 8740a12..0000000
--- a/modules/stoplight/main.cpp
+++ /dev/null
@@ -1,80 +0,0 @@
-#include <142bot/modules.hpp>
-#include <142bot/util.hpp>
-#include <dpp/dpp.h>
-#include <cpr/cpr.h>
-#include <fmt/format.h>
-
-class StoplightModule: public Module {
- std::string stoplightBaseUrl;
- public:
- StoplightModule(Bot* creator, ModuleLoader* ml): Module(creator,ml) {
- ml->attach({I_OnSlashCommand}, this);
- auto id = creator->cfg.value("application_id", "");
- dpp::slashcommand stoplight("stoplight", "Control the 142 stop light", creator->core->me.id);
- stoplight.add_option(
- /* Stop subcommand*/
- dpp::command_option(dpp::co_sub_command, "stop", "Stops the stoplight")
- );
- stoplight.add_option(
- /* start subcommand */
- dpp::command_option(dpp::co_sub_command, "start", "Starts the stoplight")
- );
- stoplight.add_option(
- /* shots */
- dpp::command_option(dpp::co_sub_command, "shots", "Triggers shots alarm subroutine")
- .add_option(dpp::command_option(dpp::co_integer, "countdowntime", "Time to count down for", true))
- .add_option(dpp::command_option(dpp::co_integer, "gotime", "Time to shots for", true))
- );
-
- // register command
- creator->core->guild_command_create(stoplight, creator->cfg["main_guild"]);
- creator->core->log(dpp::ll_info, "Registered stoplight");
-
- this->stoplightBaseUrl = creator->cfg["stoplight_base"];
-
- }
-
- virtual std::string version() {
- return "0.1.0";
- }
-
- virtual std::string description() {
- return "Stoplight control";
- }
-
- bool OnSlashCommand(const dpp::slashcommand_t &event) {
- if (event.command.get_command_name() == "stoplight") {
- dpp::command_interaction cmd_data = event.command.get_command_interaction();
-
- auto subcommand = cmd_data.options[0];
-
- this->bot->core->log(dpp::ll_debug, fmt::format("Got subcommand: {}", subcommand.name));
-
- if (subcommand.name == "start") {
- bot->core->log(dpp::ll_debug, "Attempting to start stoplight");
- cpr::Response r = cpr::Get(cpr::Url(fmt::format("{}/start", this->stoplightBaseUrl)));
-
- if (r.status_code != 200) {
- bot->core->log(dpp::ll_error, r.text);
- throw std::exception();
- }
- event.reply(dpp::message("Started stoplight"));
-
- } else if (subcommand.name == "stop") {
- bot->core->log(dpp::ll_debug, "Attempting to stop stoplight");
- cpr::Response r = cpr::Get(cpr::Url(fmt::format("{}/stop", this->stoplightBaseUrl)));
-
- if (r.status_code != 200) {
- bot->core->log(dpp::ll_error, r.text);
- throw std::exception();
- }
- event.reply(dpp::message("Stopped stoplight"));
-
- }
- }
- return true;
- }
-};
-
-
-ENTRYPOINT(StoplightModule) \ No newline at end of file