diff options
| author | 2019-09-27 16:14:39 +0100 | |
|---|---|---|
| committer | 2019-09-27 16:14:39 +0100 | |
| commit | ddaf8a38905bfba2e076f9d5c564e5a1e2e2e90f (patch) | |
| tree | d0fed8c9916638f8f4d9091b2cbc9fffdb94b12f | |
| parent | add external_modules directory (diff) | |
| signature | ||
add !msg
| -rw-r--r-- | external_modules/.keep | 0 | ||||
| -rw-r--r-- | modules/echo.py | 9 | ||||
| -rwxr-xr-x | start.py | 9 |
3 files changed, 16 insertions, 2 deletions
diff --git a/external_modules/.keep b/external_modules/.keep deleted file mode 100644 index e69de29b..00000000 --- a/external_modules/.keep +++ /dev/null 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:])) @@ -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) |
