diff options
Diffstat (limited to 'modules/botserv/bs_autoassign.cpp')
-rw-r--r-- | modules/botserv/bs_autoassign.cpp | 37 |
1 files changed, 37 insertions, 0 deletions
diff --git a/modules/botserv/bs_autoassign.cpp b/modules/botserv/bs_autoassign.cpp new file mode 100644 index 000000000..a716525f9 --- /dev/null +++ b/modules/botserv/bs_autoassign.cpp @@ -0,0 +1,37 @@ +/* + * + * (C) 2003-2024 Anope Team + * Contact us at team@anope.org + * + * Please read COPYING and README for further details. + * + */ + +#include "module.h" + +class BSAutoAssign final + : public Module +{ +public: + BSAutoAssign(const Anope::string &modname, const Anope::string &creator) : Module(modname, creator, VENDOR) + { + } + + void OnChanRegistered(ChannelInfo *ci) override + { + const Anope::string &bot = Config->GetModule(this)->Get<const Anope::string>("bot"); + if (bot.empty()) + return; + + BotInfo *bi = BotInfo::Find(bot, true); + if (bi == NULL) + { + Log(this) << "bs_autoassign is configured to assign bot " << bot << ", but it does not exist?"; + return; + } + + bi->Assign(NULL, ci); + } +}; + +MODULE_INIT(BSAutoAssign) |