-
Notifications
You must be signed in to change notification settings - Fork 1
/
Copy pathsample.lizardbot.conf.php
327 lines (286 loc) · 19.4 KB
/
sample.lizardbot.conf.php
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
<?php
/***************************************
LizardBot configuration file
****************************************
*INSTRUCTIONS AREA FOR THE CONFIGURATION FILE. READ THIS TOP SECTION COMPLETELY BEFORE
*CONFIGURING LIZARDBOT! IF YOU WANT TO SEE THE SETTINGS, SCROLL DOWN BELOW THIS SECTION
*
*NB: Settings here will override the defaults found in default.conf.php.
*The defaults are shown here, but commented out so as to allow easy updating of the defaults
*when a new version of the bot is released.
*MAKE ALL CONFIGURATION CHANGES HERE, *NOT* IN DEFAULT.CONF.PHP!
*Remember to also change the name of this file to something other than sample.lizardbot.conf.php,
*lizardbot.conf.php is recommended.
Options:
[REQUIRED]
##Timezone configuration
YOU MUST SPECIFY THE BOT'S TIMEZONE. TO DO SO, SET $timezone AS BELOW TO YOUR TIMEZONE, UNLESS
YOUR TIMEZONE IS ALREADY DEFINED IN YOUR PHP CONFIGURATION FILE.
$timezone: Set the bot's timezone. String.
For possible values, see http://us3.php.net/manual/en/timezones.php
##Nickname configuration
$nickname: Set the bot's default nickname. String.
##Users configuration
$users: Set the privledged users. See below for usage.
FORMAT:
$users['<hostmask, first user, standard syntax>'] = '<access level>';
$users['<hostmask, second user, standard syntax>'] = '<access level>';
etc.
You can redefine the default access level by doing this:
$users['*!*@*'] = '<default access level>';
SPECIAL NOTE:
The default access level is overriden with the @mute command!
##Groups configuration
$privgroups: Set the user access levels. See below for usage.
FORMAT:
$privgroups['ignore' ] = 0; //'ignore' has no privs
$privgroups['*' ]['*' ] = 1; //All basic privs
$privgroups['<group 1>'] = $privgroups['*']; // '<group 1>' inherits '*'.
$privgroups['<group 1>']['<priv 1>'] = 1; //Grant <priv 1> to <group 1>
$privgroups['<group 1>']['<priv 2>'] = 1; //Grant <priv 2> to <group 1>
<...>
$privgroups['<group 2>'] = $privgroups['<group 1>']; // '<group 2>' inherits '<group 1>'.
$privgroups['<group 2>']['<priv 3>'] = 1; //Grant <priv 3> to <group 2>
$privgroups['<group 2>']['<priv 4>'] = 1; //Grant <priv 4> to <group 2>
<...>
$privgroups['root' ] = $privgroups['<group 2>']; // 'root' inherits '<group 2>'.
$privgroups['root' ]['rehash' ] = 1; //Root can rehash
$privgroups['root' ]['die' ] = 1; //Root can kill bot
$privgroups['root' ]['raw' ] = 1; //Root can dump commands into the output stream
##Pandorabot configuration
$fantasy: Enable pandorabot by default. False to disable, true to enable. Note that the
@fantasy-[on, off] commands override this.
##Windows configuration. If you are running the bot on Windows, you must set this to true!!!!!
$setIsOnWindows: Tells the bot that its running on Windows. Automatically sets $setUsePCREs to true. Please read
the guide to running the bot on Windows here: http://fastlizard4.org/wiki/LizardBot/Windows
[RECOMMENDED]
$setGecos: Set the bot's gecos, or real name. String. Default: bot
$setIdent: Set the bot's username if no ident reply is sent. String. Default: bot
$setTrigger: Set the bot's command trigger. String. Default is '@'
$setAutoModes: Sets the usermodes the bot should set on itself upon connecting to an IRC network. Default null,
accepts a string of characters. Do not include the leading + in front of the mode characters.
Examples of valid settings here: "B" to set mode +B, "iBw" to set modes +i, +B, and +w, "xiBw" to
set modes +x, +i, +B, and +w, etc.
NOTE: You can /unset/ modes at startup by preceeding the modes to be unset with a "-". For example,
setting $setAutoModes to "B-w" would set mode +B and unset mode +w, "-Bw" would unset both +B and +w,
(while setting no other modes) and "Bw-ix" would set modes +B and +w and unset modes +i and +x.
Note that modes to be unset must always follow the modes to be set.
##Services Configuration
$setNSUsername: The default NickServ username
[OPTIONAL]
##CTCP Configuration
$setCTCPVersion: Set the CTCP VERSION reply. String, null for no reply.
$setCTCPUserinfo: Set the CTCP USERINFO reply. String, null for no reply.
$setCTCPClientinfo: Set the CTCP CLIENTINFO reply. String, null for no reply.
$setUnknownCTCP_RE: Set the reply for unknown CTCPs. String, null for no reply.
$setNoBolds: Supress bolds. Boolean, true to hide.
$setAIDefaultRE: Sets the default AI response. String.
##MySQL Configuration
$setEnableMySQL: Set to true to enable MySQL and all commands that require MySQL. Boolean.
$setMySQLUserName: Set the MySQL username. String.
$setMySQLPassword: Set the MySQL connection password. String.
$setMySQLHost: Set the host for the MySQL database. String.
$setMySQLPort: Set the port for the MySQL database. Integer.
$setMySQLDB: Set the database to be used. String.
$setMySQLTablePre: Set the table prefix. String, default 'lb'.
$setEnableExec: Whether or not to enable the @exec command. Boolean, true to enable.
$setEnableEval: Whehter or not to enable the @eval command. Boolean, true to enable.
$setTrustGoogle: If, for some reason, you are extremely paranoid and don't trust the Google,
set this to false. Boolean, default TRUE.
$setUsePCREs: Instead of standard IRC hostmask syntax, use the more-powerful Perl Compatible
Regular Expressions. Not recommended for novice users. Boolean, default FALSE.
TRUE to use PCREs.
$setInsultUsers: Throw insults like the Bard! When set to true, allows use of the insult command.
See the documentation at http://fastlizard4.org/wiki/LizardBot/Docs for details.
Boolean, default TRUE.
$setEnableDelays: In favor of potentially reducing processor usage, DISABLES the stream select code that
allows POSIX signals to be acted upon with no delay. Effect on POSIX systems: Signals
recognized by the bot (such as 1 SIGHUP, 2 SIGINT, and 15 SIGTERM) will encounter a delay
up to a couple of minutes in favor of reducing processor usage. If you are willing to allow
the bot to utilize the processor, leave this set to false to allow immediate response on a
recognized signal. Has no effect on Windows sytems since Windows signals are acted upon
immediately no matter what the type, you can set this either to TRUE or FALSE on Windows.
FALSE to enable immediate signal responses AND increased CPU usage (up to 1.3% per 15 seconds
idle), TRUE to disable immediate signal responses AND to decrease idle CPU usage. No
effect on Windows machines, only POSIX machines.
$setEnableFishbot: Whether or not to enable fishb0t. Boolean, FALSE by default.
$setEnableAllTriggerHelp: Whether or not to enable a special help command that responds on all normal bot triggers, not
just the one that was assigned using the $setTrigger option. Note that this only applies to
the help command, and all other commands must still be called with the bot's normal trigger
defined by $setTrigger. Boolean, TRUE by default.
$setEnableReminders: Whether or not to enable the @remind command. Boolean, TRUE by default. REQUIRES MYSQL
TO BE ENABLED!
$setRemindOnJoin: If this boolean variable is set to TRUE, the bot will also deliver reminders to people when
it sees them join a channel the bot is in, not just when they talk in one. FALSE by default.
$setEnableBitly: Set this boolean variable to TRUE if you want to enable support for bit.ly URL shortening and
other functions. WARNING: YOU MUST HAVE THE CURL EXTENSION INSTALLED FOR THIS TO WORK!
*DO NOT SET THIS TO TRUE* if you do not have CURL installed, as it will just cause the bot to crash!
Set this to TRUE to enable, FALSE to disable bit.ly support. The default value for this is FALSE,
since, strangely, the default PHP package on many systems /does not/ include PHP-cURL.
$setBitlyAPISleep: The time you want to wait (in seconds) before allowing more use of the @bit.ly command. I.e.,
this is a bot-based rate limit so we don't trip the rate limit over at bit.ly's API. Variable accepts
an integer, default 30.
$setBitlyLogin: Your API Login username for bit.ly. You need one of these to use the API! All you need is a bit.ly account
to get this (and the API key for the next step). If you don't provide a login, bit.ly functions will not work.
Required for @bit.ly command, expects a string. Must be set with $setBitlyAPIKey!
$setBitlyAPIKey: Your API key for bit.ly. You need a bit.ly account to use the API! It's free, and it comes with a key.
If you don't provide this, bit.ly functions will not work. Required for @bit.ly command, expects a string.
Must be set with $setBitlyLogin!
** NOTE ABOUT THE ABOVE TWO CONFIGURATION VARIABLES: You can get your API Login and Key (assuming that
you have a bit.ly account) here: http://bit.ly/a/your_api_key. If you don't have an account, you'll need
to create one to use the bit.ly functions.
[AUTOCONNECT BLOCK]
This optional block, when configured, allows the bot to immeidately automatically connect to a network
when the configuration file is loaded. Note that it is unoveridable - the bot will not prompt at all.
If the directives are present, the bot will connect if it has all the information it needs, otherwise,
the bot will automatically quit.
$autoconnect['enabled']: Boolean. Whether or not to process autoconnect block. True to enable autoconnect,
false to disable autoconnect. All settings below are only needed if this is set to true
$autoconnect['network']: String. What network the bot should connect to. Format: network OR network:port.
If no port is provided, defaults to 6667.
$autoconnect['nick']: String. What nickname the bot should use. You can specify . as the value for string
to use the default you stored in the configuration file (see $nickname in the required
block above).
$autoconnect['identify']: String. Whether or not to identify. 'yes' or 'y' to identify, 'no' or 'n' to prevent
identification to services.
$autoconnect['id-nick']: String. Nickname to use for identification. Note that this is only usable on
Atheme, and cannot be used with other daemons, such as Anope to the point that
identification will fail. It is recommended you use this function with Atheme to guarantee
your bot correctly identifies. To send the default (if present, see $setNSUsername above),
suppy '.'. To send NO primary username, supply '#'.
Otherwise, enter the username you would like to use and strike enter. Please note that this
is not the same as the bot nickname. This does not need to be set if you disabled autoidentify
(above)
$autoconnect['id-pass']: String. Password to send for identification.
WARNING: PLEASE READ THE BELOW CAREFULLY
ENTERING YOUR PASSWORD HERE WILL STORE IT IN CLEAR TEXT! IT WILL BE VISIBLE TO THE ENTIRE
WORLD UNLESS YOU TAKE STEPS TO PREVENT OTHERS FROM SEEING IT! ON UNIX-BASED MACHINES, USE THE
COMMAND chmod 700 lizardbot.conf.php (replace lizardbot.conf.php with the name of your config
file as necessary) TO PREVENT OTHERS FROM READING IT. IF YOU RUN WINDOWS, MAKE SURE A PASSWORD
IS SET WITH YOUR USER ACCOUNT AND USE WINDOWS EXPLORER TO MARK THE CONFIGURATION FILE AS 'PRIVATE'
IF YOU DO NOT LIKE STORING YOUR PASSWORD IN A FILE, DO NOT SUPPLY IDENTIFICATION INFO OR DO NOT USE
THE AUTOCONNECT FUNCTION! This does not need to be set if you disabled autoidentify (above).
$autoconnect['channels']: String. Comma-delimited list of channels that the bot should join after connecting. For example:
'#chan1,##chan2,#chan3,#chan4' would be a valid entry, as would '#chan1'.
***************************************/
#################################################
# REQUIRED #
# BLOCK #
#################################################
##Timezone configuration
/*Again, here's a quick briefing on this setting:
Unless your timezone is specified in your PHP configuration file, you must specify
one here! Set $timezone to the string which contains your timezone name. For example"
$timezone = "America/Los_Angeles";
For a list of valid timezones, see http://us3.php.net/manual/en/timezones.php
*/
$timezone = "";
##Nickname configuration
$nickname = "";
##Users Configuration
// $users['Nick!User@Host mask'] = 'group';
$users['YOUR HOSTMASK HERE'] = 'root';
##Groups configuration. Commented out lines below are the defaults, replicated here
##for convenience. If you change the groups, please uncomment everything here, including
##the line to unset $privgroups. Not doing this may cause unexpected things to happen.
//unset($privgroups);
// [ Group ][ Privilege ] = 1; Don't uncomment this line.
//$privgroups[ 'ignore' ] = 0; //'ignore' has no privs
//$privgroups[ '*' ][ '*' ] = 1; //All basic privs
//$privgroups[ '*' ][ 'nyse' ] = 1;
//$privgroups[ '*' ][ 'fantasy' ] = 1;
//$privgroups[ '*' ][ 'insult' ] = 1;
//$privgroups[ '*' ][ 'tinyurl' ] = 1;
//$privgroups[ '*' ][ 'bit.ly' ] = 1;
//$privgroups[ '*' ][ 'fish' ] = 1;
//$pvivgroups[ '*' ][ 'remind' ] = 1;
//$privgroups[ 's-trusted' ] = $privgroups['*']; // 's-trusted' inherits '*'
//$privgroups[ 's-trusted' ][ 'fap' ] = 1;
//$privgroups[ 's-trusted' ][ 'say' ] = 1;
//$privgroups[ 's-trusted' ][ 'do' ] = 1;
//$privgroups[ 'trusted' ] = $privgroups['s-trusted']; // 'trusted' inherits 's-trusted'
//$privgroups[ 'trusted' ][ 'join' ] = 1;
//$privgroups[ 'trusted' ][ 'part' ] = 1;
//$privgroups[ 'trusted' ][ 'notice' ] = 1;
//$privgroups[ 'trusted' ][ 'oper-tyronet'] = 1;
//$privgroups[ 'trusted' ][ 'op' ] = 1;
//$privgroups[ 'v-trusted' ] = $privgroups['trusted']; // 'v-trusted' inherits 'trusted'
//$privgroups[ 'v-trusted' ][ 'mute' ] = 1;
//$privgroups[ 'root' ] = $privgroups['v-trusted']; // 'root' inherits 'v-trusted'.
//$privgroups[ 'root' ][ 'rehash' ] = 1;
//$privgroups[ 'root' ][ 'die' ] = 1;
//$privgroups[ 'root' ][ 'raw' ] = 1;
//$privgroups[ 'root' ][ 'nick' ] = 1;
//$privgroups[ 'root' ][ 'exec' ] = 1;
//$privgroups[ 'root' ][ 'eval' ] = 1;
##Pandorabot config
//$setFantasy = FALSE;
##If you are on Windows, YOU MUST SET THIS TO TRUE!
//$setIsOnWindows = FALSE;
#################################################
# RECOMMENDED #
# BLOCK #
#################################################
// $setIdent = "LizardBot";
// $setGecos = "LizardBot for PHP v{$version} - http://fastlizard4.org/wiki/LizardBot";
// $setTrigger = "@";
//$setAutoModes = ""; //Remember that some IRC networks require bots to have usermode +B! If it is required, set it here.
#################################################
# IDIOT LINE #
# Comment out or remove the line below. This #
# makes sure that you are actually reading and #
# correctly making use of the config file. #
# WHILE YOU ARE HERE - Did you remember to #
# replace 'YOUR HOSTMASK HERE' in the $users #
# array above with your hostmask? #
#################################################
die(">>>PLEASE CONFIGURE THE BOT CORRECTLY!\r\n");
#################################################
# OPTIONAL #
# BLOCK #
#################################################
##CTCP Configuration
// $setCTCPVersion = "LizardBot for PHP (Written in PHP 5 Procedural by FastLizard4 and the LizardBot Development Team) v{$version} http://fastlizard4.org/wiki/LizardBot";
// $setCTCPUserinfo = "LizardBot for PHP: Boldly Going Where No Bot Has Gone Before! - http://fastlizard4.org/wiki/LizardBot";
//$setUnknownCTCP_RE = NULL; //Not yet implemented
// $setNoBolds = FALSE;
// $setAIDefaultRE = "Probably";
##MySQL configuration
// $setEnableMySQL = FALSE;
// $setMySQLUserName = NULL;
// $setMySQLPassword = NULL;
// $setMySQLHost = 'localhost';
// $setMySQLPort = 3306;
// $setMySQLDB = NULL;
// $setMySQLTablePre = 'lb';
// $setNSPassword = NULL; //No longer implemented
// $setNSUsername = NULL;
##Misc configuration
// $setEnableExec = FALSE;
// $setEnableEval = FALSE;
// $setTrustGoogle = TRUE;
// $setUsePCREs = FALSE;
// $setInsultUsers = TRUE;
//$setEnableDelays = FALSE;
//$setEnableFishbot = FALSE;
//$setEnableAllTriggerHelp = TRUE;
//$setEnableReminders = TRUE;
// $setRemindOnJoin = FALSE;
// $setEnableBitly = FALSE;
//$setBitlyAPISleep = 30;
// $setBitlyLogin = '';
// $setBitlyAPIKey = '';
#################################################
# AUTOCONNECT #
# BLOCK #
#################################################
if(!$rehash) { //Don't touch this line, else you risk exposing your password
// $autoconnect['enabled'] = FALSE;
// $autoconnect['network'] = NULL;
// $autoconnect['nick'] = NULL;
//$autoconnect['identify'] = NULL;
// $autoconnect['id-nick'] = NULL;
// $autoconnect['id-pass'] = NULL;
//$autoconnect['channels'] = NULL;
} //Don't touch this line, else you risk exposing your password
?>