X-Git-Url: https://jfr.im/git/irc/quakenet/qwebirc.git/blobdiff_plain/4094890fc7d3a04f6d7c32431d5d4103c2c93787..844622a05d0cf0ec1f44593fed06d39cd9702c9b:/config.py.example diff --git a/config.py.example b/config.py.example index f42409a..779226e 100644 --- a/config.py.example +++ b/config.py.example @@ -1,7 +1,313 @@ -IRCSERVER, IRCPORT = "moo.com", 6667 +# qwebirc configuration file +# +# This a Python program that is imported, so feel free to use any +# Python here! +# +# Note that some changes to this configuration file require re-running +# compile.py and others require restarting qwebirc (and some require +# both!) +# If in doubt always re-compile and restart. + +# The following line is required, don't remove it! +from qwebirc.config_options import * + +# IRC OPTIONS +# --------------------------------------------------------------------- +# +# OPTION: IRCSERVER +# Hostname (or IP address) of IRC server to connect to. +# OPTION: IRCPORT +# Port of IRC server to connect to. +IRCSERVER, IRCPORT = "irc.myserver.com", 6667 + +# OPTION: SSLPORT +# SSL port of IRC server to connect to. +# If this option is uncommented it will override IRCPORT. +#SSLPORT = 6697 + +# OPTION: REALNAME +# The realname field of IRC clients will be set to this value. +REALNAME = "http://moo.com/" + +# OPTION: IDENT +# ident to use on irc, possible values include: +# - a string, e.g. IDENT = "webchat" +# - the literal value IDENT_HEX, this will set the ident to the +# a hexadecimal version of the users IP address, e.g +# IDENT = IDENT_HEX +# - the literal value IDENT_NICKNAME, this will use the users +# supplied nickname as their ident. +IDENT = "webchat" + +# OPTION: OUTGOING_IP +# The IP address to bind to when connecting to the IRC server. +# +# This will not change the IP address that qwebirc listens on. +# You will need to call run.py with the --ip/-i option if you +# want that. +#OUTGOING_IP = "127.0.0.1" + +# OPTION: WEBIRC_MODE +# This option controls how the IP/hostname of the connecting +# browser will be sent to IRC. +# +# Possible values include: +# - the string "webirc", i.e. WEBIRC_MODE = "webirc" +# Use WEBIRC type blocks, with a server configuration of +# the following style: +# +# cgiirc { +# type webirc; +# hostname ; +# password ; +# }; +# +# Remember to set the WEBIRC_PASSWORD value to be the +# same as . +# - the string "cgiirc", i.e. WEBIRC_MODE = "cgiirc" +# old style CGIIRC command, set CGIIRC_STRING to be the +# command used to set the ip/hostname, and set +# WEBIRC_PASSWORD to be the password used in the server's +# configuration file. +# - the literal value None, i.e. WEBIRC_MODE = None +# Send the IP and hostname in the realname field, overrides +# the REALNAME option. +WEBIRC_MODE = None + +# OPTION: WEBIRC_PASSWORD +# Used for WEBIRC_MODE webirc and cgiirc, see WEBIRC_MODE +# option documentation. +#WEBIRC_PASSWORD = "fish" + +# OPTION: CGIIRC_STRING +# Command sent to IRC server in for cgiirc WEBIRC_MODE. +# See WEBIRC_MODE option documentation. +#CGIIRC_STRING = "CGIIRC" + +# UI OPTIONS +# --------------------------------------------------------------------- +# +# OPTION: BASE_URL +# URL that this qwebirc instance will be available at, add the +# port number if your instance runs on a port other than 80. +BASE_URL = "http://foo.foo.org/" + +# OPTION: NETWORK_NAME +# The name of your IRC network, displayed throughout the +# application. +NETWORK_NAME = "FooNet" + +# OPTION: ANALYTICS_HTML +# If you have an analytics service, you can paste the HTML +# between the triple quotes. +#ANALYTICS_HTML = """ +#""" + +# OPTION: APP_TITLE +# The title of the application in the web browser. +APP_TITLE = NETWORK_NAME + " Web IRC" + +# NICKNAME VALIDATION OPTIONS +# --------------------------------------------------------------------- +# +# OPTION: NICKNAME_VALIDATE +# If True then user nicknames will be validated according to +# the configuration below, otherwise they will be passed +# directly to the ircd. +NICKNAME_VALIDATE = True + +# OPTION: NICKNAME_VALID_FIRST_CHAR +# A string containing valid characters for the first letter of +# a nickname. +# Default is as in RFC1459. +import string +NICKNAME_VALID_FIRST_CHAR = string.letters + "_[]{}`^\\|" + +# OPTION: NICKNAME_VALID_SUBSEQUENT_CHAR +# A string containing valid characters for the rest of the +# nickname. +NICKNAME_VALID_SUBSEQUENT_CHARS = NICKNAME_VALID_FIRST_CHAR + string.digits + "-" + +# OPTION: NICKNAME_MINIMUM_LENGTH +# Minimum characters permitted in a nickname on your network. +NICKNAME_MINIMUM_LENGTH = 2 + +# OPTION: NICKNAME_MAXIMUM_LENGTH +# Maximum characters permitted in a nickname on your network. +# Ideally we'd extract this from the ircd, but we need to know +# before we connect. +NICKNAME_MAXIMUM_LENGTH = 15 + +# FEEDBACK OPTIONS +# --------------------------------------------------------------------- +# +# These options control the feedback module, which allows users to +# send feedback directly from qwebirc (via email). +# +# OPTION: FEEDBACK_FROM +# E-mail address that feedback will originate from. +FEEDBACK_FROM = "moo@moo.com" + +# OPTION: FEEDBACK_TO: +# E-mail address that feedback will be sent to. +FEEDBACK_TO = "moo@moo.com" + +# OPTION: FEEDBACK_SMTP_HOST +# Hostname/IP address of SMTP server feedback will be sent +# through. +# OPTION: FEEDBACK_SMTP_PORT +# Port of SMTP server feedback will be sent through. +FEEDBACK_SMTP_HOST, FEEDBACK_SMTP_PORT = "127.0.0.1", 25 + +# ADMIN ENGINE OPTIONS +# --------------------------------------------------------------------- +# +# OPTION: ADMIN_ENGINE_HOSTS: +# List of IP addresses to allow onto the admin engine at +# http://instance/adminengine +ADMIN_ENGINE_HOSTS = ["127.0.0.1"] + +# PROXY OPTIONS +# --------------------------------------------------------------------- +# +# OPTION: FORWARDED_FOR_HEADER +# If you're using a proxy that passes through a forwarded-for +# header set this option to the header name, also set +# FORWARDED_FOR_IPS. +#FORWARDED_FOR_HEADER="x-forwarded-for" + +# OPTION: FORWARDED_FOR_IPS +# This option specifies the IP addresses that forwarded-for +# headers will be accepted from. +#FORWARDED_FOR_IPS=["127.0.0.1"] + +# EXECUTION OPTIONS +# --------------------------------------------------------------------- +# +# OPTION: ARGS (optional) +# These arguments will be used as if qwebirc was run directly +# with them, see run.py --help for a list of options. +#ARGS = "-n -p 3989" + +# OPTION: SYSLOG_ADDR (optional) +# Used in conjunction with util/syslog.py and -s option. +# This option specifies the address and port that syslog +# datagrams will be sent to. +#SYSLOG_ADDR = "127.0.0.1", 514 + +# TUNEABLE VALUES +# --------------------------------------------------------------------- +# +# You probably don't want to fiddle with these unless you really know +# what you're doing... + +# OPTION: UPDATE_FREQ +# Maximum rate (in seconds) at which updates will be propagated +# to clients +UPDATE_FREQ = 0.5 + +# OPTION: MAXBUFLEN +# Maximum client AJAX recieve buffer size (in bytes), if this +# buffer size is exceeded then the client will be disconnected. +# This value should match the client sendq size in your ircd's +# configuration. +MAXBUFLEN = 100000 + +# OPTION: MAXSUBSCRIPTIONS +# Maximum amount of 'subscriptions' to a specific AJAX channel, +# i.e. an IRC connection. +# In theory with a value greater than one you can connect more +# than one web IRC client to the same IRC connection, ala +# irssi-proxy. +MAXSUBSCRIPTIONS = 1 + +# OPTION: MAXLINELEN +# If the client sends a line greater than MAXLINELEN (in bytes) +# then they will be disconnected. +# Note that IRC normally silently drops messages >=512 bytes. +MAXLINELEN = 600 + +# OPTION: DNS_TIMEOUT +# DNS requests that do not respond within DNS_TIMEOUT seconds +# will be cancelled. +DNS_TIMEOUT = 5 + +# OPTION: HTTP_AJAX_REQUEST_TIMEOUT +# Connections made to the AJAX engine are closed after this +# this many seconds. +# Note that this value is intimately linked with the client +# AJAX code at this time, changing it will result in bad +# things happening. +HTTP_AJAX_REQUEST_TIMEOUT = 30 + +# OPTION: HTTP_REQUEST_TIMEOUT +# Connections made to everything but the AJAX engine will +# be closed after this many seconds, including connections +# that haven't started/completed an HTTP request. +HTTP_REQUEST_TIMEOUT = 5 + +# OPTION: STATIC_BASE_URL +# This value is used to build the URL for all static HTTP +# requests. +# You'd find this useful if you're running multiple qwebirc +# instances on the same host. +STATIC_BASE_URL = "" + +# OPTION: DYNAMIC_BASE_URL +# This value is used to build the URL for all dynamic HTTP +# requests. +# You'd find this useful if you're running multiple qwebirc +# instances on the same host. +DYNAMIC_BASE_URL = "" + +# OPTION: CONNECTION_RESOLVER +# A list of (ip, port) tuples of resolvers to use for looking +# the SRV record(s) used for connecting to the name set in +# IRC_SERVER. +# The default value is None, and in this case qwebirc will use +# the system's default resolver(s). +CONNECTION_RESOLVER = None + +# OPTION: HELP_URL +# Shown to the user if they type /HELP or click on the Help! +# option in the user interface. +HELP_URL = "" + +# QUAKENET SPECIFIC VALUES +# --------------------------------------------------------------------- +# +# These values are of no interest if you're not QuakeNet. +# At present they still need to be set, this will change soon. +# +# OPTION: HMACKEY +# Shared key to use with hmac WEBIRC_MODE. HMACKEY = "mrmoo" + +# OPTION: HMACTEMPORAL +# Divisor used for modulo HMAC timestamp generation. HMACTEMPORAL = 30 -UPDATE_FREQ = 0.5 -MAXBUFLEN = 10000 -MAXSUBSCRIPTIONS = 3 -REALNAME = "http://moo.com/" + +# OPTION: AUTHGATEDOMAIN +# Domain accepted inside authgate tickets. +AUTHGATEDOMAIN = "webchat_test" + +# OPTION: QTICKETKEY +# Key shared with the authgate that is used to decrypt +# qtickets. +QTICKETKEY = "boo" + +# OPTION: AUTH_SERVICE +# Service that auth commands are sent to. Also used to check +# responses from said service. +AUTH_SERVICE = "Q!TheQBot@CServe.quakenet.org" + +# OPTION: AUTH_OK_REGEX +# JavaScript regular expression that should match when +# AUTH_SERVICE has returned an acceptable response to +# authentication. +AUTH_OK_REGEX = "^You are now logged in as [^ ]+\\.$" + +# OPTION: AUTHGATEPROVIDER +# Authgate module to use, normally imported directly. +# dummyauthgate does nothing. +import dummyauthgate as AUTHGATEPROVIDER