ban: Enhanced banmask tracking

All commands described here are only available to bot admins. !ban and !unban are only enabled once the bot is a channel operator.

Creating bans

!ban subject [duration] [reason]

Creates a ban on subject for the given duration and reason and kicks anyone who matches the created ban.

See the Duration type for the duration option. reason can be anything. It will show in the banlist and in the kick message(s) if applicable.

The bot will do its best to find out the correct hostmask to ban:

  • If subject is a full hostmask and contains wildcards like *, the bot will create a ban on that hostmask.
  • If subject is a full hostmask and contains no wildcards, the bot will apply a wildcard on the username part and another on the ident part if no identd authentified it(~), leaving just the host part, sometimes with the identd.
  • If subject is the nickname of someone present in the channel, the bot will select the user’s full hostmask and run the transformation above.
  • If not, it creates a ban on the nickname itself (ie. nick!*@*).

Some examples:

!ban paul 5d ragequitter
  • If paul is present in the channel, it will do a host/ip ban on him.
  • If paul is not present in the channel, the bot will create a ban on paul!*@*, meaning that nobody with the nickname paul can enter the channel. However, an offending user can circumvent this ban simply by changing nickname.

In both cases, the ban will stand for 5 days and have ragequitter as reason.

!ban paul!*@* 5d ragequitter
Forces a nickname ban regardless of whether paul is online or not.
!ban roger!~rfeder@ 5d too good for us
Creates a ban on *!*@
!ban frank!feinst@ 5d aimbotter
Creates a ban on *!feinst@
!ban *!*@225.70.*
Creates a ban on *!*@225.70.*. (IP range ban from to

Bans the last kicked person for the default duration with the kick message as the reason.

Searching bans

!banlist #id
!banlist search

Show active or recently expired bans.

If search is provided, the bot will search against all data on the bans. Also, if you provide a hostmask as search text, it will be matched against existing banmasks. Useful if you know someone’s hostmask and want too know why they are banned.

If the search returns only one result (for instance if you used the #id form), all details will be shown, including the ban reason.

!banhistory [search|#id]

Show expired bans.

Editing bans

!unban search|#id

Lifts a ban. Use a hostmask as search to your advantage here.

!ban search|#id [duration] [reason]

Edits a ban.


[Ban]default duration = permanent (Duration)

Default duration for bans in case it isn’t specified.

[Ban]keep expired bans for = 1 week (Duration)

Purge the database of bans which expired more than this time ago.

[Ban]check interval = 2 min (Duration)

Interval between two of the bot’s periodic checks on bans to lift. You don’t really need to touch it.

Project Versions

Table Of Contents

Previous topic

pickup_playertracking: Simple game recording

Next topic

topic: Channel topic management

This Page