This significantly speeds up certain SQL actions on
the Messages table that were done for anti-flood detection.
The bot should now be significantly more quicker to catch
floods promptly without delay.
(Also, comment out some logging messages. Perhaps revisit this
and wrap them with a debug registry variable instead.)
We do not need to wait for any timeout period in SelectHandler's
select since IRC.pm's select has a 1 second (by default) timeout.
Removing this unnecessary delay will increase the overall
responsiveness of the bot.
If a `workdir` factoid key is present, the launcher will chdir
to make the specified value the current working directory.
Redirect stderr output to a $modulename-stderr in the module's
current working directory.
Add the -b/-before and -a/-after flags to the `recall` command to display
that many lines of surrounding context.
For example, `recall -c ##c -b 100` will show the last 100 messages in the ##c
channel.
Another example, `recall pragma- 50 -b 5 -a 5` will show the 5 messages before the 50th
most recent message spoken by pragma- and then show that 50th message and finally show
the 5 messages after it.
Randomize nick when connecting and change to botnick after identifying.
Identify after receiving connection welcome message.
Ghost existing nick if it is already in use and then attempt to regain it.
- Reduce hint wait-period from 60 seconds to 30 seconds
- Improve ignoring of common leading words in answers
- Correct several grammar mistakes/typos in questions
to register handlers to listen for events.
Update IRCHandlers module to use new event dispatcher to dispatch
irc.events. Update several modules to register with dispatcher
to listen for irc.events.
Improve handling of reconnection upon unexpected disconnection.
Todo: update more things to use new event dispatcher logic.