13 KiB
Administrative
- Logging in and out
- Admin management commands
- Channel management commands
- Module management commands
- Plugin management commands
- Command metadata commands
- Miscellaneous commands
Logging in and out
You cannot use any of the admin commands unless you login. Note that login requires that your hostmask matches PBot’s records.
However, if your admin account has the autologin
metadata set to a true value then you
will not need to login. ### login Logs into PBot.
Usage: login [channel] <password>
logout
Logs out of PBot.
Usage: logout
Admin management commands
adminadd
Adds a new admin to PBot.
Usage:
adminadd <name> <channel> <hostmask> <level> <password>
Parameter | Description |
---|---|
<name> |
A unique name to identify this account (usually the
nick of the admin, but can be any identifier). |
<channel> |
Which channel the admin can administrate; use global
for all channels. This field cannot be changed without removing and
re-adding the admin. |
<hostmask> |
What hostmask the admin is recognized/allowed to login from (e.g.,
somenick!*@*somedomain.com or
*@unaffiliated/someuser ). This field cannot be changed
without removing and re-adding the admin. |
<level> |
An integer representing the admin’s level of privileges. See admin-levels. |
<password> |
The password the admin will use to login (from /msg!). A password is
not required if the autologin metadata is set for the admin; however,
a dummy password still needs to be set. |
adminrem
Removes an admin from PBot. You can use the name field or the
hostmask field that was set via adminadd
.
Usage:
adminrem <channel> <name or hostmask>
Admin levels
This is a list of admin commands allowed by each admin level. Higher level admins have access to all lower level admin commands.
Note that you can use cmdset
to
adjust any command’s admin level.
Level | Commands |
---|---|
10 | actiontrigger, antispam, whitelist, blacklist, chanlist, ban, unban, mute, unmute, op, deop, voice, devoice, invite, kick, ignore, unignore |
40 | chanset, chanunset, chanadd, chanrem, join, part, mode |
60 | adminadd, adminrem, adminset, adminunset, akalink, akaunlink, regset, regunset, regsetmeta, regunsetmeta, regchange, dumpbans |
90 | sl, plug, unplug, replug, load, unload, reload, export, rebuildaliases, refresh, die |
99 | eval |
adminset
Sets metadata for an admin account. You can use the name
field or the hostmask
field that was set via
adminadd
. See also: admin
metadata list.
If key
is omitted, it will list all the keys and values
that are set. If value
is omitted, it will show the value
for key
.
Usage:
adminset <channel> <name or hostmask> [<key> [value]]
adminunset
Deletes a metadata key from an admin account. You can use the name
field
or the hostmask
field that was set via
adminadd.
Usage:
adminunset <channel> <name or hostmask> <key>
Admin metadata list
This is a list of recognized metadata keys for admin accounts.
Name | Description |
---|---|
name |
A unique name identifying this admin account. |
level |
The privilege level of the admin. See admin levels. |
password |
The password for this admin account. |
loggedin |
Whether the admin is logged in or not. |
stayloggedin |
Do not log the admin out when they part/quit. |
autologin |
Automatically log the admin in when they join the channel. Make sure the admin’s hostmask wildcards are minimal. |
autoop |
Automatically give the admin operator status when they join the channel. Make sure the admin’s hostmask wildcards are minimal. |
autovoice |
Automatically give the admin voiced status when they join the channel. Make sure the admin’s hostmask wildcards are minimal. |
Listing admins
To list admins, use the list admins
command. This is not
an admin command, but it is included here for completeness.
Usage: list admins
When used in a channel, it will list only the admins for that channel, plus all global admins. When used from private message, it will list all admins from all channels, including global admins.
Channel management commands
join
To temporarily join a channel, use the join
command. The
channels may be a comma- separated list.
Usage: join <channel(s)>
part
To temporarily leave a channel (that is, without removing it from
PBot’s list of channels), use the part
command. The
channels may be a comma-separated list.
Usage part <channel(s)>
chanadd
chanadd
permanently adds a channel to PBot’s list of
channels to auto-join and manage.
Usage: chanadd <channel>
chanrem
chanrem
removes a channel from PBot’s list of channels
to auto-join and manage.
Usage: chanrem <channel>
chanset
chanset
sets a channel’s metadata. See channel metadata list
Usage: chanset <channel> [key [value]]
If both key
and value
are omitted, chanset
will show all the keys and values for that channel. If only
value
is omitted, chanset will show the value for that
key.
chanunset
chanunset
deletes a channel’s metadata key.
Usage: chanunset <channel> <key>
chanlist
chanlist
lists all added channels and their metadata
keys and values.
Channel metadata list
Name | Description |
---|---|
enabled |
When set to a true value, PBot will auto-join this channel after
identifying to NickServ (unless
general.autojoin_wait_for_nickserv is 0 , in
which case auto-join happens immediately). |
chanop |
When set to a true value, PBot will perform channel management (anti-flooding, ban-evasion, etc). |
permop |
When set to a true value, PBot will automatically op itself when joining and remain opped instead of automatically opping and deopping as necessary. |
ignore
Ignore a user. If you omit [channel]
PBot will ignore
the user in all channels, including private messages.
Usage:
ignore <hostmask regex> [channel [timeout]]
Timeout can be specified as an relative time in English; for
instance, 5 minutes
, 1 month and 2 weeks
,
next thursday
, friday after next
,
forever
and such.
unignore
Unignores a user. If you omit [channel]
PBot will
unignore the user from all channels, including private messages.
Usage: unignore <hostmask regex> [channel]
whitelist
Whitelists a hostmask regex to be exempt from ban evasions or anti-flood enforcement.
Usages:
whitelist <show/list>
whitelist add <channel> <hostmask>
whitelist remove <channel> <hostmask>
blacklist
Blacklists a hostmask regex from joining a channel.
Usages:
blacklist <show/list>
blacklist add <hostmask regex> [channel]
blacklist remove <hostmask regex> [channel]
op
deop
voice
devoice
The op
, deop
, voice
and
devoice
commands all perform their respective named
action.
The targets
parameter can be a list of multiple nicks,
optionally containing wildcards. If targets
is omitted, the
action will be performed on the caller.
Usages:
In channel:
op [targets]
deop [targets]
voice [targets]
devoice [targets]
From private message:
op <channel> [targets]
deop <channel> [targets]
voice <channel> [targets]
devoice <channel> [targets]
mode
Sets or unsets channel or user modes.
Usage: mode [channel] <flags> [targets]
PBot extends the IRC MODE
command in useful ways. For
instance, the targets
parameter may contain wildcards. To
op everybody whose nick ends with |dev
you can do
!mode +o *|dev
in a channel.
ban/mute
Bans or mutes a user. If the argument is a nick instead of a hostmask, it will determine an appropriate banmask for that nick. The argument can be a comma-separated list of multiple nicks or masks.
Usages: -
ban <nick or hostmask> [channel [timeout]]
-
mute <nick or hostmask> [channel [timeout]]
If timeout
is omitted, PBot will ban the user for 24
hours. Timeout can be specified as an relative time in English; for
instance, 5 minutes
, 1 month and 2 weeks
,
next thursday
, friday after next
,
forever
and such.
unban/unmute
Unbans or unmutes a user. If the argument is a nick instead of a hostmask, it will find all bans that match any of that nick’s hostmasks or NickServ accounts and unban them. The argument can be a comma-separated list of multiple nicks or masks.
Usages: - unban <nick or hostmask> [channel]
-
unmute <nick or hostmask> [channel]
invite
Invites a user to a channel.
Usage: invite [channel] <nick>
kick
Removes a user from the channel. <nick>
can be a
comma-separated list of multiple users, optionally containing wildcards.
If [reason]
is omitted, a random insult will be used.
Usage from channel: kick <nick> [reason]
From
private message:
kick <channel> <nick> [reason]
Module management commands
Note that modules are “reloaded” each time they are executed. There
is no need to refresh
after editing a module.
load
This command loads a module in $data_dir/modules/
as a
PBot command. It is equivalent to factadd
ing a new keyword
and then setting its type
to module
.
Usage: load <keyword> <module>
For example, to load $data_dir/modules/qalc.sh
as the
qalc
command:
<pragma-> !load qalc qalc.sh
unload
This command unloads a module. It is equivalent to deleting the factoid keyword the module was loaded as.
Usage: unload <keyword>
Listing modules
To list the loaded modules, use the list modules
command. This is not an admin command, but it is included here for
completeness.
Usage: list modules
Plugin management commands
plug
Loads a plugin into PBot.
Usage: plug <plugin>
unplug
Unloads a plugin from PBot.
Usage: unplug <plugin>
replug
Reloads a plugin into PBot. The plugin is first unloaded and then it is loaded again.
Usage: replug <plugin>
pluglist
Lists all currently loaded plugins. This isn’t an admin command, but it is included here for completeness.
Usage: pluglist
<pragma-> !pluglist
<PBot> Loaded plugins: ActionTrigger, AntiAway, AntiKickAutoRejoin, AntiNickSpam, AntiRepeat, AntiTwitter, AutoRejoin, GoogleSearch, Quotegrabs, RemindMe, UrlTitles
Command metadata commands
cmdset
Use cmdset
to set various metadata for built-in commands.
Usage: cmdset <command> [key [value]]
Omit <key>
and <value>
to list
all the keys and values for a command. Specify <key>
,
but omit <value>
to see the value for a specific
key.
cmdunset
Use cmdset
to delete various metadata from built-in commands.
Usage: cmdunset <command> <key>
Command metadata list
Name | Description |
---|---|
help |
The text to display for the help command. |
level |
The admin level of this command. See also admin-levels |
Miscellaneous commands
These are some of the miscellaneous admin commands that have not been covered above or in the rest of the PBot documentation.
export
Exports specified list to HTML file in $data_dir
.
Usage: export <factoids|quotegrabs>
refresh
Refreshes/reloads PBot core modules and plugins (not the command-line modules since those are executed/loaded each time they are invoked).
reload
Reloads a data or configuration file from $data_dir
.
This is useful if you manually edit a data or configuration file and you
want PBot to know about the modifications.
Usage
reload <admins|bantimeouts|blacklist|channels|factoids|funcs|ignores|mutetimeouts|registry|whitelist>
sl
Sends a raw IRC command to the server. Use the sl
command when PBot does not have a built-in command to do what you
need.
Usage: sl <irc command>
<pragma-> sl PRIVMSG #channel :Test message
<PBot> Test message
die
Tells PBot to disconnect and exit.