Configuration
From IRCBotWiki
Contents |
ircbot.conf format
The IRCBot configuration file is laid out in sections like this:
SectionName {
Directive value
};
It can also have subsections, like this:
SectionName {
Directive value
SubSectionName {
SomeKey some value
};
};
When referring to subsections, we use the following notation: SectionName/SubSectionName
Core ircbot.conf Sections
Base
Nick BotNickname Mandatory This sets the nickname the bot should use on IRC.
RegName Your license name Mandatory
RegKey Your license key Mandatory
SecsBetweenUpdates 30 Mandatory This sets how often your media servers should be polled for stats, 30 is usually a good default.
DoSpam 1 Mandatory This sets whether the bot should send song updates, etc. on a global basis.
DoOnjoin 1 Mandatory This sets whether the bot should send OnJoin greetings on a global basis.
Fork 1 Optional This will make the bot fork into the background during startup. This is good for people who run the bot in SSH windows so they don't have to use nohup.
EnableRequestSystem 1 Optional This turns the request system on and off.
PullNameFromAnyServer 1 Optional This controls whether the bot will try to get stream titles from any media server, or just the 1st media server. (default off)
AutoRegOnHello 1 Optional This controls whether the bot will automatically create a user if someone types /msg botnick hello (default off)
AllowPMRequests 1 Optional This controls whether the bot will accept !request's from PMs and consoles.
SendQ 300 Optional This controls the maximum bytes per second that will be sent to your IRC server(s). Default is 300 bps. If you find the bot is flooding off on your IRC server often, adjusting this may help.
MultiSoundServer 1 Optional This will enable Multi Sound Server Mode where each of your sound servers will be reported independently. (Things like !request, triggers, etc. will still only operate on the 1st server)
BindIP 0.0.0.0 Optional This sets the IP listening sockets will bind to. (Note: what IP outgoing connections bind to is unaffected except for IRC connections, which do bind to the IP)
LogChan #testing Optional This sets a channel the bot will display certain log messages to.
LogFile ircbot.log Optional This sets a filename the bot will log to.
SSL_Cert ircbot.pem Optional This will enable SSL connections using the specified PEM file. Note: If you do not specify SSL_Cert and a valid PEM file, SSL will not be available in IRCBot.
BackupDays 14 Optional This controls how many days files will be left in the backup folder before being deleted. (default 14, set to 0 to disable automatic deletion) Note: The file deletion scan is indiscriminate of filename or if the bot created it, it only checks the file modification time and deletes it if it is older than X days. Do not place any file in the backup folder you don't mind being automatically deleted!
Remote
The Remote section controls remote connection system for the bot client, or web-requests.
This could be a security risk somehow (but I doubt it), so it is optional.
Comment it out and the remote system will be disabled.
Port 10001 Optional This sets what port IRCBot listens on for remote connections.
MinLevel 4 Optional Sets the minimum level required to use the remote connection, it can be from 1 to 4. This is normally set to 4.
IRC
IRC/ServerX
X is from 0 to 15 (for a max of 16 servers), and you can not skip any #s
Host irc.crystalone.net Mandatory The hostname or IP of the IRC server to connect to.
Port 6667 Optional The port of the IRC server to connect to. (default 6667)
OnConnect PRIVMSG NickServ :identify YourNickServPass Optional Sets a command the bot will send to the IRC server. (default 6667)
Pass password Optional This is for password-protected IRC servers, and also BNCs that use the same mechanism to authenticate users.
SSL 0 Optional This tells IRCBot to try to connect to the server over SSL or not.
BindIP 0.0.0.0 Optional This sets the IP that the IRC connection will bind to.
On512 raw IRC command Optional This sets a raw command to be sent on the 512 numeric. It is needed for Chatnet authentication
IRC/ServerX/ChannelY
Y is from 0 to 15 (for a max of 16 channels), and you can not skip any #s
Channel #channel Mandatory This sets the name of the channel.
Key password Optional This sets the channel key (password) if needed.
DoSpam 1 Optional Sets whether song updates will be sent to this channel.
DoOnjoin 1 Optional Sets whether greetings will be sent user's joining the channel. (if a greeting is set in ircbot.text)
DoTopic 1 Optional Sets whether the bot will set the channel topic.
NoTopicCheck 0 Optional If NoTopicCheck is 1, the bot will use the old channel updating method of only changing it when an event happens.
AltTopicCommand PRIVMSG ChanServ :TOPIC %chan %topic Optional Makes the bot use an alternate command to set the channel's topic instead of the default IRC TOPIC commands. Use %chan for the channel, and %topic to use the generated topic (from ircbot.text)
moderateOnUpdate 0 Optional Sets whether the bot will set the channel +m before a channel update and -m after.
SongInterval X Optional If set to 0, song updates will be sent when the DJ or song changes. If set to anything else it will send song updates a maximum of every X minutes.
SS
Stream Servers
SS/ServerX
X is from 0 to 15 (for a max of 16 servers), and you can not skip any #s
Host 192.168.0.3 Mandatory Sets the hostname or IP of your stream server.
Port 8000 Optional The port of your stream server.
Type shoutcast Optional The type of your stream server, if it starts with ice it will be set to icecast, anything else will default to shoutcast.
Mount / Optional The mountpoint for your stream. (icecast only, defaults to /)
Timer
Timed event
Timer/TimerX
X should be a number from 0-31. You can set up to 32 timers that way, but you can't skip any #s.
Interval 30 Mandatory Sets the timer to execute every X seconds.
Network 0 Mandatory Sets the IRC network to execute the timer on.
Action raw irc command Sets the raw IRC command to send to the server
Plugin
X is from 0 to 15, and you should not skip any #s
ModuleX plugins\win32_plugin.dll ModuleX plugins/linux_plugin.so Optional This tells the bot to load a plugin. (remember to change \ to / on non-Win32 systems!)
AutoDJ Plugin ircbot.conf Sections
AutoDJ
AutoDJ/Server
This section sets the main information for your stream.
Password server_stream_pass Mandatory Sets the streaming password for your server. (Shoutcast note: this is your streaming password, not admin password)
Name Name for your Stream Mandatory Sets the name AutoDJ will use for your stream
Description Description for your stream Mandatory Sets the description AutoDJ will use for your stream
Genre Various Mandatory Sets the genre AutoDJ will use for your stream
URL http://www.example.com Optional Sets the URL AutoDJ will send for your stream
ICQ 244811 Optional Sets the ICQ # AutoDJ will send for your stream
AIM aim_username Optional Sets the AIM nick AutoDJ will send for your stream
IRC #channel, or irc://irc.server.com/channel Optional Sets the IRC server/channel AutoDJ will send for your stream
Public 1 Optional Sets the public flag AutoDJ will send for your stream
Reset 1 Optional Sets whether icy-reset: 1 is sent in your connection headers (shoutcast only) (default: 0)
Encoder mp3 Encoder aac Encoder winamp Optional Sets which Encoder you would like to use (default: mp3)
Bitrate 64 Mandatory Sets the bitrate the Encoder will use when encoding your stream (in kbps)
Sample 44100 Mandatory Sets the samplerate the Encoder will use when encoding your stream
Channels 2 Mandatory Sets the channels the Encoder will use when encoding your stream. For the MP3 Encoder plugin, 1 = Mono, 2 = Joint Stereo (if available), 3 = Stereo For others, it is typically 1 = Mono, 2 = Stereo
Mount / Optional Sets the mountpoint for your stream (Icecast2 only)
MimeOverride audio/aac Optional Forces the feeder to report this mime type to the sound server instead of the one given to it by the Encoder
Content c:\path\mp3 (Win32) Content /some/path/mp3 (Absolute Path in Linux) Content ./mp3 (Relative Path in Linux) Mandatory Sets the folder your music is in
Promo c:\path\promos (Win32) Promo /some/path/promos (Absolute Path in Linux) Promo ./promos (Relative Path in Linux) Optional Sets the folder your promo files are in
AutoDJ/ServerX
You can use these sections to enable multiple outputs of your stream. It uses all the same parameters as the AutoDJ/Server section and uses any values in that section as defaults for the ServerX sections.
Your outputs can all be different codecs, bitrates, etc. and the X number lines up with your Sound Server SS/ServerX numbers.
There is one extra configuration directive in these that is not available in the main AutoDJ/Server section:
Enabled 0 or 1 Optional Sets whether this server should be fed a stream. (default: 1 in Server0, 0 for all others)
AutoDJ/Options
This section holds various AutoDJ options.
QueuePlugin .\plugins\adjq_memory.dll (Win32) QueuePlugin ./plugins/adjq_memory.so (Linux) Optional Sets the queue plugin to use (default: adjq_memory)
DSPPlugin .\plugins\dsp_volnorm.dll (Win32) DSPPlugin ./plugins/dsp_volnorm.so (Linux) Optional Sets the DSP plugin to use (default: none)
SimpleMode 0 or 1 Optional Specifies whether AutoDJ should operate in Simple Mode or not. (default: 0 in IRCBot Full, 1 in IRCBot Basic) Only Simple Mode is available in IRCBot Basic!
AutoStart 0 or 1 Optional Specifies whether or not you want AutoDJ to start playing when the bot starts (default: 1)
AutoPlayIfNoSource 60 Optional If the number is greater than 0, AutoDJ will start playing if your shoutcast server doesn't have a source for over X seconds (default: 0)
EnableRequests 0 or 1 Optional Specifies whether or not you want AutoDJ to accept requests (default: 1)
EnableFind 0 or 1 Optional Enables or disables the find command (@find)
EnableRating 0 or 1 Optional Enables or disables the song ratings system (!rating/!rate)
EnableYP 0 or 1 Optional Specifies whether or not you want your stream added to the ShoutIRC.com stream list (default: 1)
MinReqTimePerSong 60 Optional Sets the minimum number of seconds that must pass before a song is requested again. (default: 0/disabled)
MinLevelToRate 1-5 Optional Sets the minimum level needed to use !rate. 5 (the default) allows full public usage, including users who are not registered in the bot
DoPromos X Optional Sets after how many songs a set of promos is played. This is a modulus so 2 would player after every other song, etc.
NumPromos X Optional Sets how many promos to play in a set. Default/minium is 1.
NoRepeat X Optional Tells AutoDJ not to play any song more often than X seconds. (Unless done by !request or the scheduler)
MoveDir c:\path\moved (Win32) MoveDir /some/path/moved (Absolute Path in Linux) MoveDir ./moved (Relative Path in Linux) Optional Sets the folder files are moved to when you use !move or !autodj-move (note: these commands won't work without a MoveDir set)
NoPlayFilters *badsong.mp3*,*/some/folder* Optional This sets filters to block songs from playing during normal rotation, while allowing them to be requested or queued by the AutoDJ Scheduler Multiple filters can be specified be seperating them with commas (,)
EnableVoice 0 or 1 Optional Enables or disables the AutoDJ Voice
VoiceEngine festival or espeak Optional, Linux only Sets the TTS engine the bot will use for the AutoDJ voice. You can set festival to use festival, anything else will default to espeak.
Voice Name=Microsoft SAM (Win32) Voice en/en (Linux, espeak) Optional, Win32 or Linux with espeak only This sets the voice AutoDJ will use if the AutoDJ voice is enabled. In Windows, use your control panel to get a list of voices on your system. For espeak, type speak --voices to get a list of voices, what goes here is what is in the Filename column.
VoiceArtist Artist VoiceTitle The voice of AutoDJ Optional This sets the meta data (think ID3 tag) to use for the AutoDJ voice when it is talking.
AutoDJ/FileLister
These options control the internal playlist writer of your songs.
List file.txt/html/whatever Optional This sets the filename the playlist will be written to
Header header.txt Optional Sets a file that should be written to the top of your playlist before the songs, default is no header
Footer footer.txt Optional Sets a file that should be written to the end of your playlist, default is no footer
NewChar %char% Optional Sets text to be written when the writer detects a change in the first character of the filenames being written, default is nothing written on new chars
Line %file% Optional Sets the text written for each file, default is %file%
AutoDJ/MP3_Encoder
See MP3 Encoder for configuration options.
AutoDJ/Queue_MySQL
These options control the MySQL Queue plugin.
Host localhost Required Sets the hostname of your MySQL Server
User mysql_username Required Sets the username to use to login to your MySQL Server
Pass mysql_password Optional Sets the password to use to login to your MySQL Server. (comment out or remove line for no password)
DBName database Required Sets which database to use. This database must already exist
DBTable AutoDJ Optional Sets which database table to use. The plugin will attempt to create this table if it doesn't already exist. (default: AutoDJ)
KeepHistory 0 Optional If # is greater than 0, the plugin will keep your request history for # days (default: 0)
AutoDJ/Winamp_Encoder
These options control the Winamp Encoder plugin. Note: AAC+/FLAC/WMA/MP3 have their mime type set automatically upon loading, for other plugins you will need to set MimeOverride in the AutoDJ/Server section.
Plugin enc_aacplus.dll Required (if you want to use the plugin) This sets the filename the encoder plugin you want to load
FourCC AACP Optional This sets the FourCC code of the encoder you want to use inside the encoder plugin. If this is not set, it defaults to the first (and usually only) encoder in the DLL
SAM Broadcaster Plugin ircbot.conf Sections
These options control the SAM Broadcaster plugin.
SAM
MatchDJ SAM Required Sets the text to match in the current DJ text (SHOUTcast station name) to know when SAM is playing
EnableRequests 0 or 1 Optional Specifies whether or not you want the plugin to accept requests (default: 1)
EnableFind 0 or 1 Optional Enables or disables the find command (@find)
MinReqTimePerSong 60 Optional Sets the minimum number of seconds that must pass before a song is requested again. (default: 0/disabled)
FindTrigger find Optional Sets a trigger to use for searching songs instead of find. Only put the name, not the !, @, ?, etc
SAM/MySQL
Host localhost Required Sets the hostname of your MySQL Server
User mysql_username Required Sets the username to use to login to your MySQL Server
Pass mysql_password Optional Sets the password to use to login to your MySQL Server. (comment out or remove line for no password)
DBName samdb Required Sets which database to use. This database must already exist
Auto Identify Plugin ircbot.conf Sections
These options control the Auto Identify plugin.
AutoIdentify
Pass botsnickservpass Required Sets the password to use to identify to NickServ
NickServ NickServ Optional Sets NickServ's nick (for networks that change their NickServ's name)
Channel Linking Plugin ircbot.conf Sections
These options control the ChannelLinking plugin.
ChannelLinking
NetNameX ShortNetworkNameUpTo32CharsLong Optional Sets a short name for the network specified by the number X.
Skype Plugin ircbot.conf Sections
These options control the Skype plugin.
Skype
AnswerMode AutoAnswer AnswerMode Transfer Optional Sets whether the Skype plugin should transfer incoming calls to your Skype to another Skype username or phone #. (Good for unattended bots, auto-transferring calls to your real Skype).
MoodTextString %song Optional If set, this will set your "mood text" to the string specified, you can use any Built-In Variables in this string. It is also a rich mood text, so you can use some HTML, etc. See this for details: RICH_MOOD_TEXT
RequirePrefix 0 Optional Sets whether commands must be prefixed with a !/@/? or not. If you are using a dedicated Skype username for the bot, 0 is recommended. However, if you are using the bot with your personal Skype username, you may want it to be 1 so it is less likely to interfer with your normal IM chatting.
TransferCallsTo skype_name Optional Another useful feature if you are using a dedicated Skype username for the bot, if set will forward any calls it receives to skype_name. skype_name can be a Skype username or a phone number, either *should* work.
TTS Plugin ircbot.conf Sections
These options control the TTS plugin.
- Note: if you also set a Voice or VoiceEngine in your AutoDJ settings it will override these settings.
TTS
VoiceEngine festival or espeak Optional, Linux only Sets the TTS engine the bot will use for the TTS jobs. You can set festival to use festival, anything else will default to espeak.
Voice Name=Microsoft SAM (Win32) Voice en/en (Linux, espeak) Optional, Win32 or Linux with espeak only This sets the default voice plugins will use for TTS jobs. In Windows, use your control panel to get a list of voices on your system. For espeak, type speak --voices to get a list of voices, what goes here is what is in the Filename column.
| IRCBot v • d • e
|
|---|
| IRCBot main pages |
| Main Page • Installation • Changelog • Commands • Plugins • FAQ • Configuration• Credits • Remote Client • Buffered Send • Built-In Variables • Multi Sound Server Mode |
| Auto DJ Pages |
| Auto DJ Main Page • WebRequest System • Scheduler • MP3 Encoder • Voice Support • MySQL Plugin |
