diff options
author | Michael Hazell <michaelhazell@hotmail.com> | 2017-12-29 18:16:39 -0500 |
---|---|---|
committer | Peter Powell <petpow@saberuk.com> | 2017-12-31 10:59:02 +0000 |
commit | 758cf504f1b049c5a1b33f7f774042c5e3efaea5 (patch) | |
tree | f8a0ee8284f536d02ac00243ff244d8570a2ba53 /src/modules | |
parent | 9b3e0a2cea3ac158a56001e581177e41bd71bab8 (diff) |
m_chanhistory: optionally exempt bots from receiving history.
Sending history to some bots can cause problems as without the
IRCv3 chathistory batch they have no way of knowing what messages
are history and what they should respond to.
Closes #1450.
Diffstat (limited to 'src/modules')
-rw-r--r-- | src/modules/m_chanhistory.cpp | 5 |
1 files changed, 5 insertions, 0 deletions
diff --git a/src/modules/m_chanhistory.cpp b/src/modules/m_chanhistory.cpp index e48e67fe5..08f316578 100644 --- a/src/modules/m_chanhistory.cpp +++ b/src/modules/m_chanhistory.cpp @@ -111,6 +111,7 @@ class ModuleChanHistory : public Module { HistoryMode m; bool sendnotice; + bool dobots; public: ModuleChanHistory() : m(this) { @@ -131,6 +132,7 @@ class ModuleChanHistory : public Module ConfigTag* tag = ServerInstance->Config->ConfValue("chanhistory"); m.maxlines = tag->getInt("maxlines", 50); sendnotice = tag->getBool("notice", true); + dobots = tag->getBool("bots", true); } void OnUserMessage(User* user,void* dest,int target_type, const std::string &text, char status, const CUList&) @@ -156,6 +158,9 @@ class ModuleChanHistory : public Module if (IS_REMOTE(memb->user)) return; + if (!dobots && ServerInstance->Modules->Find("m_botmode.so") && memb->user->IsModeSet('B')) + return; + HistoryList* list = m.ext.get(memb->chan); if (!list) return; |