Allow configuration of IP addresses to use for outgoing connections
[KiwiIRC.git] / config.example.js
CommitLineData
ab15f618
D
1var conf = {};
2
3// Run the Kiwi server under a different user/group
4conf.user = "";
5conf.group = "";
6
7
11dbb00f
D
8// Log file location
9conf.log = "kiwi.log";
10
11
8baf9099
D
12
13/*
14 * Server listen blocks
15 */
16
17// Do not edit this line!
ab15f618
D
18conf.servers = [];
19
8baf9099 20// Example server block
3be87cdd
D
21conf.servers.push({
22 port: 7778,
23 address: "0.0.0.0"
24});
25
ab15f618 26// Example SSL server block
38da7139
D
27//conf.servers.push({
28// port: 7777,
29// address: "0.0.0.0",
30//
31// ssl: true,
32// ssl_key: "server.key",
33// ssl_cert: "cert.pem"
34//});
ab15f618 35
b156e01a
JA
36conf.outgoing_addresses = {
37 IPv4: '0.0.0.0',
38 IPv6: '::'
39};
ab15f618 40
8baf9099 41
adefb6bd
D
42// Do we want to enable the built in Identd server?
43conf.identd = {
44 enabled: false,
45 port: 113,
46 address: "0.0.0.0"
47};
48
49
50
8baf9099
D
51
52
53
ab15f618
D
54// Where the client files are
55conf.public_http = "client/";
56
13d7faa3 57// Max connections per connection. 0 to disable
ab15f618
D
58conf.max_client_conns = 5;
59
8838bdd6 60// Max connections per server. 0 to disable.
8ae445ce
JA
61// Setting is ignored if:
62// - There is a WEBIRC password configured for the server,
63// - Kiwi is configured to send the client's ip as a username for the server, or
64// - Kiwi is running in restricted server mode.
8838bdd6
JA
65conf.max_server_conns = 0;
66
d1b3e8b3 67/*
3efb4f33 68* Default encoding to be used by the server
d1b3e8b3 69* As specified and limited to iconv-lite library support.
d1b3e8b3 70*/
3efb4f33 71conf.default_encoding = 'UTF-8';
2eec3842
D
72
73/*
74 * Client side plugins
75 * Array of URLs that will be loaded into the browser when the client first loads up
76 * See http://github.com/prawnsalad/KiwiIRC/wiki/Client-plugins
77 */
78conf.client_plugins = [
79 // "http://server.com/kiwi/plugins/myplugin.html"
80];
81
82
83
ab15f618
D
84// Enabled CAP extensions (See ENTER URL TO CAP INFO HERE PLS)
85conf.cap_options = [];
86
87
88
89
90// Directory to find the server modules
d8002ae0 91conf.module_dir = "../server_modules/";
ab15f618
D
92
93// Which modules to load
991091b7 94conf.modules = [];
ab15f618
D
95
96
97
98
99// WebIRC passwords enabled for this server
100conf.webirc_pass = {
101 //"irc.network.com": "configured_webirc_password",
102 //"127.0.0.1": "foobar"
103};
104
105// Some IRCDs require the clients IP via the username/ident
106conf.ip_as_username = [
86d127f9
PV
107 //"irc.network.com",
108 //"127.0.0.1"
ab15f618
D
109];
110
831b41b0
JA
111// Whether to verify IRC servers' SSL certificates against built-in well-known certificate authorities
112conf.reject_unauthorised_certificates = false;
ab15f618
D
113
114
d99877b8
D
115
116/*
117 * Reverse proxy settings
118 * Reverse proxies that have been reported to work can be found at:
119 * http://github.com/prawnsalad/KiwiIRC/wiki/Running-behind-a-proxy
120 */
76391784 121
d99877b8
D
122// Whitelisted HTTP proxies in CIDR format
123conf.http_proxies = ["127.0.0.1/32"];
c6e3ed44 124
31a18fa4
D
125// Header that contains the real-ip from the HTTP proxy
126conf.http_proxy_ip_header = "x-forwarded-for";
127
d99877b8
D
128// Base HTTP path to the KIWI IRC client (eg. /kiwi)
129conf.http_base_path = "/kiwi";
130
131
ac0b278c 132/*
57c22370 133 * SOCKS (version 5) proxy settings
1515556c
JA
134 * This feature is only available on node 0.10.0 and above.
135 * Do not enable it if you're running 0.8 or below or Bad Things will happen.
ac0b278c
JA
136 */
137conf.socks_proxy = {};
138
139// Enable proxying outbound connections through a SOCKS proxy
140conf.socks_proxy.enabled = false;
141
142// Proxy *all* outbound connections through a SOCKS proxy
143conf.socks_proxy.all = false;
144
145// Use SOCKS proxy for these hosts only (if conf.sock_proxy.all === false)
146conf.socks_proxy.proxy_hosts = [
147 "irc.example.com"
148];
149
150// Host and port for the SOCKS proxy
151conf.socks_proxy.address = '127.0.0.1';
152conf.socks_proxy.port = 1080;
153
154// Username and password for the SOCKS proxy
155// Set user to null to disable password authentication
156conf.socks_proxy.user = null;
157conf.socks_proxy.pass = null;
158
d99877b8
D
159
160// Enabled transports for the browser to use
ab15f618
D
161conf.transports = [
162 "websocket",
163 "flashsocket",
164 "htmlfile",
165 "xhr-polling",
166 "jsonp-polling"
167];
168
d99877b8 169
b65ad8f1 170
ab15f618
D
171
172// Default quit message
1360a454 173conf.quit_message = "http://www.kiwiirc.com/ - A hand-crafted IRC client";
ab15f618
D
174
175
76391784
D
176// Default settings for the client. These may be changed in the browser
177conf.client = {
178 server: 'irc.kiwiirc.com',
179 port: 6697,
180 ssl: true,
181 channel: '#kiwiirc',
1cfc4800
JA
182 nick: 'kiwi_?',
183 settings: {
184 theme: 'relaxed',
185 channel_list_style: 'tabs',
186 scrollback: 250,
187 show_joins_parts: true,
188 show_timestamps: false,
189 mute_sounds: false
190 }
76391784
D
191};
192
193
46f41dfb 194// If set, the client may only connect to this 1 IRC server
93e84f75
D
195//conf.restrict_server = "irc.kiwiirc.com";
196//conf.restrict_server_port = 6667;
197//conf.restrict_server_ssl = false;
198//conf.restrict_server_channel = "#kiwiirc";
199//conf.restrict_server_password = "";
200//conf.restrict_server_nick = "kiwi_";
ab15f618
D
201
202
76391784
D
203
204
ab15f618
D
205/*
206 * Do not ammend the below lines unless you understand the changes!
207 */
813ae69a 208module.exports.production = conf;