]> jfr.im git - irc/rizon/qchat.git/blame - config.py.example
This url rewriting thing is a bad idea, just use SSL only
[irc/rizon/qchat.git] / config.py.example
CommitLineData
bf9239a1
CP
1# qwebirc configuration file
2#
3# This a Python program that is imported, so feel free to use any
4# Python here!
5#
6# Note that some changes to this configuration file require re-running
7# compile.py and others require restarting qwebirc (and some require
8# both!)
9# If in doubt always re-compile and restart.
818ca418 10
c16954f7
CP
11# The following line is required, don't remove it!
12from qwebirc.config_options import *
13
35c4bd87
A
14INSTANCE_ID = "1"
15LISTEN_IP = "192.168.1.2"
16
bf9239a1
CP
17# IRC OPTIONS
18# ---------------------------------------------------------------------
19#
20# OPTION: IRCSERVER
21# Hostname (or IP address) of IRC server to connect to.
22# OPTION: IRCPORT
23# Port of IRC server to connect to.
35c4bd87 24IRCSERVER, IRCPORT = "irc.rizon.net", 6667
bf9239a1 25
0b9b1aba
CP
26# OPTION: SSLPORT
27# SSL port of IRC server to connect to.
28# If this option is uncommented it will override IRCPORT.
29#SSLPORT = 6697
30
bf9239a1
CP
31# OPTION: REALNAME
32# The realname field of IRC clients will be set to this value.
35c4bd87 33REALNAME = "Rizon Web IRC @ http://qchat.rizon.net/"
555c15ad 34
bf9239a1 35# OPTION: IDENT
c16954f7
CP
36# ident to use on irc, possible values include:
37# - a string, e.g. IDENT = "webchat"
38# - the literal value IDENT_HEX, this will set the ident to the
39# a hexadecimal version of the users IP address, e.g
4618a88e 40# IDENT = IDENT_HEX
c16954f7
CP
41# - the literal value IDENT_NICKNAME, this will use the users
42# supplied nickname as their ident.
35c4bd87 43IDENT = "qwebirc"
bf9239a1 44
55b01628
CP
45# OPTION: OUTGOING_IP
46# The IP address to bind to when connecting to the IRC server.
47#
48# This will not change the IP address that qwebirc listens on.
49# You will need to call run.py with the --ip/-i option if you
50# want that.
51#OUTGOING_IP = "127.0.0.1"
52
bf9239a1 53# OPTION: WEBIRC_MODE
d79fec48
CP
54# This option controls how the IP/hostname of the connecting
55# browser will be sent to IRC.
bf9239a1
CP
56#
57# Possible values include:
28899c93 58# - the string "webirc", i.e. WEBIRC_MODE = "webirc"
6ad41563
CP
59# Use WEBIRC type blocks, with a server configuration of
60# the following style:
61#
62# cgiirc {
63# type webirc;
64# hostname <qwebirc's ip address>;
65# password <password>;
66# };
67#
68# Remember to set the WEBIRC_PASSWORD value to be the
69# same as <password>.
28899c93 70# - the string "cgiirc", i.e. WEBIRC_MODE = "cgiirc"
bf9239a1
CP
71# old style CGIIRC command, set CGIIRC_STRING to be the
72# command used to set the ip/hostname, and set
73# WEBIRC_PASSWORD to be the password used in the server's
74# configuration file.
28899c93 75# - the literal value None, i.e. WEBIRC_MODE = None
bf9239a1
CP
76# Send the IP and hostname in the realname field, overrides
77# the REALNAME option.
78WEBIRC_MODE = None
79
80# OPTION: WEBIRC_PASSWORD
81# Used for WEBIRC_MODE webirc and cgiirc, see WEBIRC_MODE
82# option documentation.
83#WEBIRC_PASSWORD = "fish"
84
85# OPTION: CGIIRC_STRING
86# Command sent to IRC server in for cgiirc WEBIRC_MODE.
87# See WEBIRC_MODE option documentation.
88#CGIIRC_STRING = "CGIIRC"
89
90# UI OPTIONS
91# ---------------------------------------------------------------------
92#
93# OPTION: BASE_URL
d79fec48
CP
94# URL that this qwebirc instance will be available at, add the
95# port number if your instance runs on a port other than 80.
e47e6b1d 96BASE_URL = "http://qchat.rizon.net/"
029a026e 97
bf9239a1
CP
98# OPTION: NETWORK_NAME
99# The name of your IRC network, displayed throughout the
100# application.
35c4bd87 101NETWORK_NAME = "Rizon"
bf9239a1 102
72e3f67e
CP
103# OPTION: ANALYTICS_HTML
104# If you have an analytics service, you can paste the HTML
105# between the triple quotes.
106#ANALYTICS_HTML = """
107#"""
108
bf9239a1
CP
109# OPTION: APP_TITLE
110# The title of the application in the web browser.
111APP_TITLE = NETWORK_NAME + " Web IRC"
112
a74e781f
CP
113# NICKNAME VALIDATION OPTIONS
114# ---------------------------------------------------------------------
115#
116# OPTION: NICKNAME_VALIDATE
117# If True then user nicknames will be validated according to
118# the configuration below, otherwise they will be passed
119# directly to the ircd.
120NICKNAME_VALIDATE = True
121
122# OPTION: NICKNAME_VALID_FIRST_CHAR
123# A string containing valid characters for the first letter of
124# a nickname.
125# Default is as in RFC1459.
126import string
127NICKNAME_VALID_FIRST_CHAR = string.letters + "_[]{}`^\\|"
128
129# OPTION: NICKNAME_VALID_SUBSEQUENT_CHAR
130# A string containing valid characters for the rest of the
131# nickname.
132NICKNAME_VALID_SUBSEQUENT_CHARS = NICKNAME_VALID_FIRST_CHAR + string.digits + "-"
133
134# OPTION: NICKNAME_MINIMUM_LENGTH
135# Minimum characters permitted in a nickname on your network.
35c4bd87 136NICKNAME_MINIMUM_LENGTH = 1
a74e781f
CP
137
138# OPTION: NICKNAME_MAXIMUM_LENGTH
139# Maximum characters permitted in a nickname on your network.
140# Ideally we'd extract this from the ircd, but we need to know
141# before we connect.
35c4bd87 142NICKNAME_MAXIMUM_LENGTH = 30
bf9239a1
CP
143
144# FEEDBACK OPTIONS
145# ---------------------------------------------------------------------
146#
147# These options control the feedback module, which allows users to
148# send feedback directly from qwebirc (via email).
149#
150# OPTION: FEEDBACK_FROM
151# E-mail address that feedback will originate from.
35c4bd87 152FEEDBACK_FROM = "feed@rizon.net"
bf9239a1
CP
153
154# OPTION: FEEDBACK_TO:
155# E-mail address that feedback will be sent to.
35c4bd87 156FEEDBACK_TO = "qchat@rizon.net"
bf9239a1
CP
157
158# OPTION: FEEDBACK_SMTP_HOST
159# Hostname/IP address of SMTP server feedback will be sent
160# through.
161# OPTION: FEEDBACK_SMTP_PORT
162# Port of SMTP server feedback will be sent through.
163FEEDBACK_SMTP_HOST, FEEDBACK_SMTP_PORT = "127.0.0.1", 25
164
165# ADMIN ENGINE OPTIONS
166# ---------------------------------------------------------------------
167#
168# OPTION: ADMIN_ENGINE_HOSTS:
169# List of IP addresses to allow onto the admin engine at
170# http://instance/adminengine
4ca83a60 171ADMIN_ENGINE_HOSTS = ["127.0.0.1"]
555c15ad 172
c272e344
CP
173# PROXY OPTIONS
174# ---------------------------------------------------------------------
175#
176# OPTION: FORWARDED_FOR_HEADER
177# If you're using a proxy that passes through a forwarded-for
178# header set this option to the header name, also set
179# FORWARDED_FOR_IPS.
e47e6b1d 180FORWARDED_FOR_HEADER = "x-forwarded-for"
c272e344
CP
181
182# OPTION: FORWARDED_FOR_IPS
183# This option specifies the IP addresses that forwarded-for
184# headers will be accepted from.
e47e6b1d 185FORWARDED_FOR_IPS = ["127.0.0.1"]
c272e344 186
bf9239a1
CP
187# EXECUTION OPTIONS
188# ---------------------------------------------------------------------
189#
190# OPTION: ARGS (optional)
191# These arguments will be used as if qwebirc was run directly
192# with them, see run.py --help for a list of options.
b10b2286 193ARGS = "-i " + LISTEN_IP + " -p 8080 --logfile=/dev/null"
bf9239a1 194
14a7ece4
CP
195# OPTION: SYSLOG_ADDR (optional)
196# Used in conjunction with util/syslog.py and -s option.
197# This option specifies the address and port that syslog
198# datagrams will be sent to.
199#SYSLOG_ADDR = "127.0.0.1", 514
200
bf9239a1
CP
201# TUNEABLE VALUES
202# ---------------------------------------------------------------------
203#
204# You probably don't want to fiddle with these unless you really know
205# what you're doing...
206
207# OPTION: UPDATE_FREQ
208# Maximum rate (in seconds) at which updates will be propagated
209# to clients
210UPDATE_FREQ = 0.5
211
212# OPTION: MAXBUFLEN
213# Maximum client AJAX recieve buffer size (in bytes), if this
214# buffer size is exceeded then the client will be disconnected.
d79fec48
CP
215# This value should match the client sendq size in your ircd's
216# configuration.
217MAXBUFLEN = 100000
bf9239a1
CP
218
219# OPTION: MAXSUBSCRIPTIONS
220# Maximum amount of 'subscriptions' to a specific AJAX channel,
221# i.e. an IRC connection.
222# In theory with a value greater than one you can connect more
223# than one web IRC client to the same IRC connection, ala
224# irssi-proxy.
225MAXSUBSCRIPTIONS = 1
226
227# OPTION: MAXLINELEN
228# If the client sends a line greater than MAXLINELEN (in bytes)
229# then they will be disconnected.
d79fec48 230# Note that IRC normally silently drops messages >=512 bytes.
bf9239a1 231MAXLINELEN = 600
0f083404 232
bf9239a1
CP
233# OPTION: DNS_TIMEOUT
234# DNS requests that do not respond within DNS_TIMEOUT seconds
422e6e6f 235# will be cancelled.
5054d5f5 236DNS_TIMEOUT = 5
72da811c 237
bf9239a1
CP
238# OPTION: HTTP_AJAX_REQUEST_TIMEOUT
239# Connections made to the AJAX engine are closed after this
240# this many seconds.
241# Note that this value is intimately linked with the client
242# AJAX code at this time, changing it will result in bad
243# things happening.
244HTTP_AJAX_REQUEST_TIMEOUT = 30
245
246# OPTION: HTTP_REQUEST_TIMEOUT
247# Connections made to everything but the AJAX engine will
248# be closed after this many seconds, including connections
249# that haven't started/completed an HTTP request.
250HTTP_REQUEST_TIMEOUT = 5
72da811c 251
732f3369
CP
252# OPTION: STATIC_BASE_URL
253# This value is used to build the URL for all static HTTP
254# requests.
255# You'd find this useful if you're running multiple qwebirc
256# instances on the same host.
35c4bd87 257STATIC_BASE_URL = "https://qchat" + INSTANCE_ID + ".rizon.net/"
732f3369
CP
258
259# OPTION: DYNAMIC_BASE_URL
260# This value is used to build the URL for all dynamic HTTP
261# requests.
262# You'd find this useful if you're running multiple qwebirc
263# instances on the same host.
35c4bd87 264DYNAMIC_BASE_URL = STATIC_BASE_URL
732f3369 265
2c8d7619 266# OPTION: CONNECTION_RESOLVER
333e3674
CP
267# A list of (ip, port) tuples of resolvers to use for looking
268# the SRV record(s) used for connecting to the name set in
269# IRC_SERVER.
270# The default value is None, and in this case qwebirc will use
271# the system's default resolver(s).
2c8d7619
CP
272CONNECTION_RESOLVER = None
273
50439f36
CP
274# OPTION: HELP_URL
275# Shown to the user if they type /HELP or click on the Help!
276# option in the user interface.
35c4bd87 277HELP_URL = "https://wiki.rizon.net"
50439f36 278
bf9239a1
CP
279# QUAKENET SPECIFIC VALUES
280# ---------------------------------------------------------------------
281#
282# These values are of no interest if you're not QuakeNet.
283# At present they still need to be set, this will change soon.
284#
285# OPTION: HMACKEY
286# Shared key to use with hmac WEBIRC_MODE.
555c15ad 287HMACKEY = "mrmoo"
bf9239a1
CP
288
289# OPTION: HMACTEMPORAL
290# Divisor used for modulo HMAC timestamp generation.
555c15ad 291HMACTEMPORAL = 30
72da811c 292
bf9239a1
CP
293# OPTION: AUTHGATEDOMAIN
294# Domain accepted inside authgate tickets.
555c15ad 295AUTHGATEDOMAIN = "webchat_test"
bf9239a1
CP
296
297# OPTION: QTICKETKEY
298# Key shared with the authgate that is used to decrypt
299# qtickets.
555c15ad 300QTICKETKEY = "boo"
bf9239a1
CP
301
302# OPTION: AUTH_SERVICE
303# Service that auth commands are sent to. Also used to check
304# responses from said service.
a0ce4655 305AUTH_SERVICE = "NickServ!service@rizon.net"
bf9239a1
CP
306
307# OPTION: AUTH_OK_REGEX
308# JavaScript regular expression that should match when
309# AUTH_SERVICE has returned an acceptable response to
310# authentication.
a0ce4655 311AUTH_OK_REGEX = "^Password accepted"
bf9239a1
CP
312
313# OPTION: AUTHGATEPROVIDER
314# Authgate module to use, normally imported directly.
315# dummyauthgate does nothing.
316import dummyauthgate as AUTHGATEPROVIDER