Domain Ban Plugin

This plugin will ban or timeout anyone who posts a link to a banned domain on your chat. For this you can maintain a list of blacklisted domains ( naked-whatever.com, naked-someone.com, …).

Note that even writing a domain name creates a link in Twitch chat, so if you ban foo.com and someone posts "I hate this foo.com spam!", that will be regarded as posting the evil link and result in a ban/timeout.

Because of this, it's recommended to not let Kabukibot outright ban people, but just time them out for one year or so. This way, when a legitimate user gets accidentally timed out, moderators can quickly revert that.

You can configure whether to ban or to timeout for each domain independently.

Synopsis

Identifier:
domain_ban
Permissions:
configure_domain_bans
Commands:
!ban_domain, !unban_domain, !banned_domains

Setup

Simply enable the plugin using the global command !k_enable:

#tester_mantester_man: !k_enable domain_ban
kabukibot: tester_man, the plugin "domain_ban" has been enabled.
This plugin does not make sense if you don't give Kabukibot moderator status in your channel.

Usage

To add a domain to your blacklist, use the !ban_domain command and just give the domain name and what action to take. If you want to ban the person, just write:

#tester_mantester_man: !ban_domain naked-julia.com
kabukibot: tester_man, links to naked-julia.com will be *banned*.

If you want to give a timeout, add "timeout" and the time the person should be kicked for (for example, 30s, 15m or 30d):

#tester_mantester_man: !ban_domain naked-julia.com timeout 5m
kabukibot: tester_man, links to naked-julia.com will be timed out for 5 minutes.

You can change existing ban rules by using !ban_domain – if the domain already is blacklisted, the ban type will simply be updated.

To unban a domain, use !unban_domain. There are no further arguments than the domain itself:

#tester_mantester_man: !unban_domain naked-julia.com
kabukibot: tester_man, links to naked-julia.com will no longer be timed out for 5 minutes.

To get a list of your current blacklist, use !banned_domains:

#tester_mantester_man: !banned_domains
kabukibot: tester_man, banned domain are: naked-julia.com (5m t/o)

Whenever a bad link is posted, the configured action is taken and Kabukibot tells the user what happened:

#tester_mantrollx: http://www.naked-julia.com/?refid=isuckass
kabukibot: trollx, you have been timed out for 5 minutes for posting a link to a banned domain.

Permissions

Use the global commands !k_allow and !k_deny to control the permissions for this plugin.

configure_domain_bans
Users with this permission may use all commands of this plugin.
It's highly recommended to only grant this to very few, trusted people.

Example:

#tester_mantester_man: !k_allow configure_domain_bans my_mom
kabukibot: tester_man, granted permission "configure_domain_bans" to my_mom.