Project:Bot
Version:6.x-1.x-dev
Component:Code
Category:feature request
Priority:normal
Assigned:Unassigned
Status:active

Issue Summary

* Nick and hostmask ignoring should be possible.
* In bot_start.php, the hooks aren't fired for those nicks/hostmasks.
* But, bot_log always needs to have hooks fired, banned or not.
* Add special case for bot_log (or some sort of "honors" registry).

This would prevent bot fights but, with the honor registry, would still allow bot_log to log banned items.

Comments

#1

Is there still interest in this? Someone in our channel asked today if he could opt out of being logged. After some research, I learned that "/ignore" is an IRC client command and not a command supported by the server. There's a "/silence" command but freenode doesn't support it. :( So, no logging in manually as the bot and ignoring or silencing his nick.

#2

@crhsitefano: I'm still interested in the feature itself (from a bot collision standpoint), but it is unlikely that Druplicon would ever support it for end-users (i.e., I'd only use it for bot collisions - I wouldn't accept bribes from actual humans).

#3

The possibility of bot collisions has come to mind, but our bot is in #droplabs, a separate channel for our Drupal coworking space in Los Angeles. Do you have a suggestion for which approach to take or which function to extend to allow blacklisting of certain nicks?

#4

Ah, didn't know you had your own bot - thought you meant Druplicon.

Anyways, reading over what you wanted again, I don't think this feature would be what you're looking for, simply because it would STILL allow logging of the banned individual, for integrity purposes. It's one thing to ban a nick or hostname from messing with the bot, but it's something else entirely to remove them from logging, which can break a whole conversation from making any sense.

In your case, if you're using the Drupal 7 version of the bot, create a new module that:

* Implements hook_irc_access($data) (see bot.smartirc.inc).
* Checks $data->nick for the username you want banned.
* Return FALSE if a match.