Getting started
Kabukibot is built to be pluggable, so a lot of its functionality depends on the plugins it offers. This also means that the channel owner (the broadcaster) has to manage the plugins and their permissions, before anyone can use them.
A plugin provides one specific feature to the chat. There's a plugin for GTA-related commands, as well as a plugin for banning links to certain domains. A plugin can have any number of commands and permissions.
All the configuration happens in your channel. Only the initial join has to happen in
#kabukibot
.
Commands
All commands begin with an exclamation mark and consist of only letters, numbers and the underscore. Upper- or lowercase is generally not important, so !foo and !FOO are equivalent.
#somewheretester_man: !commandx kabukibot: (response to commandx)Most commands are introduced by plugins, but there are some exceptions, namely the global commands.
Global Commands
Apart from the functionality and commands that plugins provide, there are also global, fixed commands. These are available everywhere and are used to manage plugins and permissions. To make sure they don't conflict with other bots, they are all prefixed with k_.
Overview
Usually, the workflow is as follows:
- Make Kabukibot join your channel.
- Enable the plugins you want.
- Set their permissions (if any), e.g. granting moderators to use certain commands.
- Profit!
Get Kabukibot in your channel
You can make Kabukibot join your channel by visiting its channel and typing !k_join.
#kabukibottester_man: !k_join kabukibot: tester_man, I've joined your channel.
That's it already. You can now leave #kabukibot
and never come back.
Enabling plugins
To get a list of available plugins, type !k_plugins in your channel.
#tester_mantester_man: !k_plugins kabukibot: tester_man, available plugins are: domain_ban, emote_counter and gta
In the case above, there are three plugins: domain_ban
,
emote_counter
and gta
. To enable the domain_ban
plugin, use the !k_enable command:
#tester_mantester_man: !k_enable domain_ban kabukibot: tester_man, the "domain_ban" plugin has been enabled.
Now you have the plugin enabled. You should look in the plugin's documentation on what permissions it allows you to control and what commands exist and how they work.
To disable a plugin again, use !k_disable:
#tester_mantester_man: !k_disable domain_ban kabukibot: tester_man, the "domain_ban" plugin has been disabled.
Note than when you disable a plugin, all its settings are retained and immediately in effect when you re-enable the plugin at a later time.
Granting permissions
You can ask Kabukibot what permissions are available in your channel. Use the !k_permissions commands.
#tester_mantester_man: !k_permissions kabukibot: tester_man, available permissions are: configure_domain_bans
Seems like the domain_ban
plugin offers you one permission to set,
the permission to ban or unban domains in your channel.
By default, nobody is allowed anything, except for you. You can grant the
configure_domain_bans
permissions now to either user groups or specific
users. In most cases, you want to use the groups, of which there are 6: $mods
,
$subs
, $turbos
,$staff
(Twitch staff members),
$admins
(Twitch admins) and $all
.
You don't have to grant anything, if you are the only one who should be able to ban domains (by
default, you as the channel owner are always allowed to use any commands). But for the sake of this
example, let's continue.
To grant permissions, use the !k_allow command. Give it the permission you want to grant
(configure_domain_bans
) and then a list of groups/users whom to grant
it to. So if you want to allow moderators, admins and your mom to configure domain bans, you'd type:
#tester_mantester_man: !k_allow configure_domain_bans $mods,$admins,my_mom
Notice how the groups are prefixed with a dollar sign ($mods
), while regular
usernames are non-prefixed (my_mom
). Both usernames and groups are automatically
converted to lowercase, so my_mom
and MY_MOM
are equivalent.
To revoke permissions, use the !k_deny command. It works the same way !k_allow does. So if you decide that admins should not be allowed to configure domain bans, type:
#tester_mantester_man: !k_deny configure_domain_bans $admins
$mods
permissions to. It's your channel and you make the rules.
Profit!
Now that you know how to manage Kabukibot in your channel, take a look at the available plugins. There you will find all the information about permissions and commands that each of them offer.