From ddaf8a38905bfba2e076f9d5c564e5a1e2e2e90f Mon Sep 17 00:00:00 2001 From: jesopo Date: Fri, 27 Sep 2019 16:14:39 +0100 Subject: add !msg --- external_modules/.keep | 0 modules/echo.py | 9 +++++++++ start.py | 9 +++++++-- 3 files changed, 16 insertions(+), 2 deletions(-) delete mode 100644 external_modules/.keep diff --git a/external_modules/.keep b/external_modules/.keep deleted file mode 100644 index e69de29b..00000000 diff --git a/modules/echo.py b/modules/echo.py index 087f6413..ee27cc2b 100644 --- a/modules/echo.py +++ b/modules/echo.py @@ -13,3 +13,12 @@ class Module(ModuleManager.BaseModule): @utils.kwarg("expect_output", False) def action(self, event): event["target"].send_message("\x01ACTION %s\x01" % event["args"]) + + @utils.hook("received.command.msg") + @utils.kwarg("min_args", 2) + @utils.kwarg("permission", "say") + @utils.kwarg("remove_empty", False) + @utils.kwarg("help", "Send a message to a target") + def msg(self, event): + event["server"].send_message(event["args_split"][0], + " ".join(event["args_split"][1:])) diff --git a/start.py b/start.py index c6d518a5..19c85719 100755 --- a/start.py +++ b/start.py @@ -42,6 +42,7 @@ arg_parser.add_argument("--module", "-m", help="Execute an action against a specific module") arg_parser.add_argument("--module-args", "-M", help="Arguments to give in action against a specific module") +arg_parser.add_argument("--external", "-e", help="External modules directory") arg_parser.add_argument("--startup-disconnects", "-D", help="Tolerate failed connections on startup", action="store_true") @@ -87,8 +88,12 @@ events = EventManager.EventRoot(log).wrap() exports = Exports.Exports() timers = Timers.Timers(database, events, log) -module_directories = [os.path.join(directory, "modules"), - os.path.join(directory, "external_modules")] +module_directories = [os.path.join(directory, "modules")] +if args.external: + module_directories.append(os.path.abspath(args.external)) +if "external-modules" in config: + module_directories.append(os.path.abspath(config["external-modules"])) + modules = ModuleManager.ModuleManager(events, exports, timers, config, log, module_directories) -- cgit v1.3.1-10-gc9f91