[ejabberd] migration de Cfg/ vers Python/

darcs-hash:20100913114202-8fbb1-220f41100de68b74eed1734bef20d5194312225b.gz
This commit is contained in:
Olivier Huber 2010-09-13 13:42:02 +02:00
parent 97189a0a4b
commit 4200ba7cd2
13 changed files with 940 additions and 910 deletions

120
Python/etc/default/ejabberd Normal file
View file

@ -0,0 +1,120 @@
# -*- coding: utf-8; mode: python -*-
header("Configuration de la node ejabberd")
if has("external"):
@ERLANG_NODE=ejabberd@ovh
else:
@ERLANG_NODE=ejabberd@xmpp
@# GRUIK GRUIK GRUIK -- Michel !
@EJABBERD="/usr/sbin/ejabberd --sasl-log /dev/null"
@
@# POLL: Kernel polling ([true|false])
@#
@# The kernel polling option requires support in the kernel.
@# Additionaly, you need to enable this feature while compiling Erlang.
@#
@# Default: false
@#
@#POLL=false
@
@# SMP: SMP support ([enable|auto|disable])
@#
@# Explanation in Erlang/OTP documentation:
@# enable: starts the Erlang runtime system with SMP support enabled.
@# This may fail if no runtime system with SMP support is available.
@# auto: starts the Erlang runtime system with SMP support enabled if it
@# is available and more than one logical processor are detected.
@# disable: starts a runtime system without SMP support.
@#
@# Default: disable
@#
@#SMP=disable
@
@# ERL_MAX_PORTS: Maximum number of simultaneously open Erlang ports
@#
@# ejabberd consumes two or three ports for every connection, either
@# from a client or from another Jabber server. So take this into
@# account when setting this limit.
@#
@# Default: 32000
@# Maximum: 268435456
@#
@#ERL_MAX_PORTS=32000
@
@# PROCESSES: Maximum number of Erlang processes
@#
@# Erlang consumes a lot of lightweight processes. If there is a lot of activity
@# on ejabberd so that the maximum number of proccesses is reached, people will
@# experiment greater latency times. As these processes are implemented in
@# Erlang, and therefore not related to the operating system processes, you do
@# not have to worry about allowing a huge number of them.
@#
@# Default: 250000
@# Maximum: 268435456
@#
@#PROCESSES=250000
@
@# ERL_MAX_ETS_TABLES: Maximum number of ETS and Mnesia tables
@#
@# The number of concurrent ETS and Mnesia tables is limited. When the limit is
@# reached, errors will appear in the logs:
@# ** Too many db tables **
@# You can safely increase this limit when starting ejabberd. It impacts memory
@# consumption but the difference will be quite small.
@#
@# Default: 1400
@#
@#ERL_MAX_ETS_TABLES=1400
@
@# ERL_OPTIONS: Additional Erlang options
@#
@# The next variable allows to specify additional options passed to erlang while
@# starting ejabberd. Some useful options are -noshell, -detached, -heart. When
@# ejabberd is started from an init.d script options -noshell and -detached are
@# added implicitly. See erl(1) for more info.
@#
@# Default: empty
@#
@#ERL_OPTIONS=""
@
@
@# ERL_FULLSWEEP_AFTER: The maximum number of generational collections before
@# forcing a fullsweep
@#
@# The Erlang runtime system uses a generational garbage collection scheme,
@# using an "old heap" for data that has survived at least one garbage
@# collection. When there is no more room on the old heap, a fullsweep garbage
@# collection will be done.
@#
@# The fullsweep_after option makes it possible to specify the maximum number
@# of generational collections before forcing a fullsweep even if there is
@# still room on the old heap. Setting the number to zero effectively disables
@# the general collection algorithm, meaning that all live data is copied at
@# every garbage collection.
@#
@# To reduce memory usage, you can set environment variable ERL_FULLSWEEP_AFTER
@# to zero. But in this case ejabberd may work slower.
@#
@# Default: 65535
@#
@#ERL_FULLSWEEP_AFTER=65535
@
@# ERLANG_NODE: Erlang node for ejabberd server
@#
@# The next variable allows to explicitly specify erlang node for ejabberd
@# It can be given in different formats:
@# ERLANG_NODE=ejabberd
@# Lets erlang add hostname to the node (ejabberd uses short name in this case)
@# ERLANG_NODE=ejabberd@hostname
@# Erlang uses node name as is (so make sure that hostname is a real
@# machine hostname or you'll not be able to control ejabberd)
@# ERLANG_NODE=ejabberd@hostname.domainname
@# The same as previous, but erlang will use long hostname
@# (see erl (1) manual for details)
@#
@# Default: ejabberd
@#
@#ERLANG_NODE=ejabberd
@

View file

@ -0,0 +1,550 @@
# -*- coding: utf-8; mode: python -*-
@%%%
@%%% Debian ejabberd configuration file
@%%% This config must be in UTF-8 encoding
@%%%
@%%% The parameters used in this configuration file are explained in more detail
@%%% in the ejabberd Installation and Operation Guide.
@%%% Please consult the Guide in case of doubts, it is available at
@%%% /usr/share/doc/ejabberd/guide.html
@
@%%% ===================================
@%%% OVERRIDE OPTIONS STORED IN DATABASE
@
@%%
@%% Override global options (shared by all ejabberd nodes in a cluster).
@%%
@%%override_global.
@
@%%
@%% Override local options (specific for this particular ejabberd node).
@%%
@%%override_local.
@
@%%
@%% Remove the Access Control Lists before new ones are added.
@%%
@%%override_acls.
@
@
@%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
@%% Options which are set by Debconf and managed by ucf
@
@%% Admin user
@{acl, admin, {user, "regala", "crans.org"}}.
@{acl, admin, {user, "regala", "jabber.crans.org"}}.
@{acl, admin, {user, "huber", "crans.org"}}.
@{acl, admin, {user, "huber", "jabber.crans.org"}}.
@
@
@
@
@%% Hostname
@{hosts, ["xmpp.crans.org", "jabber.crans.org", "crans.org"]}.
@
@%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
@
@%%% This configuration file contains Erlang terms.
@%%% In case you want to understand the syntax, here are the concepts:
@%%%
@%%% - The character to comment a line is %
@%%%
@%%% - Each term ends in a dot, for example:
@%%% override_global.
@%%%
@%%% - A tuple has a fixed definition, its elements are
@%%% enclosed in {}, and separated with commas:
@%%% {loglevel, 4}.
@%%%
@%%% - A list can have as many elements as you want,
@%%% and is enclosed in [], for example:
@%%% [http_poll, web_admin, tls]
@%%%
@%%% - A keyword of ejabberd is a word in lowercase.
@%%% The strings are enclosed in "" and can have spaces, dots...
@%%% {language, "en"}.
@%%% {ldap_rootdn, "dc=example,dc=com"}.
@%%%
@%%% - This term includes a tuple, a keyword, a list and two strings:
@%%% {hosts, ["jabber.example.net", "im.example.com"]}.
@%%%
@
@
@%%% =========
@%%% DEBUGGING
@
@%%
@%% loglevel: Verbosity of log files generated by ejabberd.
@%% 0: No ejabberd log at all (not recommended)
@%% 1: Critical
@%% 2: Error
@%% 3: Warning
@%% 4: Info
@%% 5: Debug
@%%
@{loglevel, 3}.
@
@%%
@%% watchdog_admins: If an ejabberd process consumes too much memory,
@%% send live notifications to those Jabber accounts.
@%%
@{watchdog_admins, ["huber@jabber.crans.org"]}.
@
@
@%%% ================
@%%% SERVED HOSTNAMES
@
@%%
@%% hosts: Domains served by ejabberd.
@%% You can define one or several, for example:
@%% {hosts, ["example.net", "example.com", "example.org"]}.
@%%
@%% (This option is defined by debconf earlier)
@%% {hosts, ["localhost"]}.
@
@%%
@%% route_subdomains: Delegate subdomains to other Jabber server.
@%% For example, if this ejabberd serves example.org and you want
@%% to allow communication with a Jabber server called im.example.org.
@%%
@%%{route_subdomains, s2s}.
@
@
@%%% ===============
@%%% LISTENING PORTS
@
@%%
@%% listen: Which ports will ejabberd listen, which service handles it
@%% and what options to start it with.
@%%
@{listen,
@ [
@ {5222, ejabberd_c2s, [
@ inet6,
@ {access, c2s},
@ {shaper, c2s_shaper},
@ {max_stanza_size, 65536},
@ starttls, {certfile, "/etc/ejabberd/ssl/jabber.pem"}
@ ]},
@
@ %%
@ %% To enable the old SSL connection method (deprecated) in port 5223:
@ %%
@ {5223, ejabberd_c2s, [
@ inet6,
@ {access, c2s},
@ {shaper, c2s_shaper},
@ {max_stanza_size, 65536},
@ tls, {certfile, "/etc/ejabberd/ssl/jabber.pem"}
@ ]},
@
@ {5269, ejabberd_s2s_in, [
@ {shaper, s2s_shaper},
@ {max_stanza_size, 131072}
@ ]},
@
@ %% External MUC jabber-muc (but internal mod_muc is better :))
@ %%{5554, ejabberd_service, [
@ %% {ip, {127, 0, 0, 1}},
@ %% {access, all},
@ %% {shaper_rule, fast},
@ %% {host, "muc.localhost", [{password, "secret"}]}
@ %% ]},
@
@ %% Jabber ICQ Transport
@ {5555, ejabberd_service, [
if has("external"):
@ {ip, {127, 0, 0, 1}},
else:
@ {ip, {10, 231, 136, 8}}, % ip adm d'ovh
@ {access, all},
@ {shaper_rule, fast},
@ {hosts, ["icq.crans.org", "sms.crans.org"],
@ [{password, "B2kOQ9Fd28"}]}
@ ]},
@
@ %% AIM Transport
@% {5556, ejabberd_service, [
@% {ip, {127, 0, 0, 1}},
@% {access, all},
@% {shaper_rule, fast},
@% {host, "aim.crans.org", [{password, "B2kOQ9Fd28"}]}
@% ]},
@
@ %% MSN Transport
@ {5557, ejabberd_service, [
if has("external"):
@ {ip, {127, 0, 0, 1}},
else:
@ {ip, {10, 231, 136, 8}}, % ip adm d'ovh
@ {access, all},
@ {shaper_rule, fast},
@ {host, "msn.crans.org", [{password, "RK8cx4f03"}]}
@ ]},
@
@ %% Yahoo! Transport
@ {5558, ejabberd_service, [
@ {ip, {127, 0, 0, 1}},
@ {access, all},
@ {shaper_rule, fast},
@ {host, ["yahoo.crans.org", "chat.yahoo.crans.org"],
@ [{password, "secretoupas"}]}
@ ]},
@
@ %% External JUD (internal is more powerful,
@ %% but doesn't allow to register users from other servers)
@ %%{5559, ejabberd_service, [
@ %% {ip, {127, 0, 0, 1}},
@ %% {access, all},
@ %% {shaper_rule, fast},
@ %% {host, "jud.localhost", [{password, "secret"}]}
@ %% ]},
@%% Pour le http_poll pas de tls
@ {5280, ejabberd_http, [
@ http_poll]},
@
@%% un peu plus sécurisé
@ {5282, ejabberd_http, [
@ web_admin,
@ tls, {certfile, "/etc/ejabberd/ssl/jabber.pem"}
@ ]}
@
@ ]}.
@
@%%
@%% s2s_use_starttls: Enable STARTTLS + Dialback for S2S connections.
@%% Allowed values are: true or false.
@%% You must specify a certificate file.
@%%
@{s2s_use_starttls, true}.
@
@%%
@%% s2s_certfile: Specify a certificate file.
@%%
@{s2s_certfile, "/etc/ejabberd/ssl/jabber.pem"}.
@
@%%
@%% domain_certfile: Specify a different certificate for each served hostname.
@%%
@%%{domain_certfile, "example.org", "/path/to/example_org.pem"}.
@%%{domain_certfile, "example.com", "/path/to/example_com.pem"}.
@
@%%
@%% S2S whitelist or blacklist
@%%
@%% Default s2s policy for undefined hosts.
@%%
@%%{s2s_default_policy, allow}.
@
@%%
@%% Allow or deny communication with specific servers.
@%%
@%%{{s2s_host, "goodhost.org"}, allow}.
@%%{{s2s_host, "badhost.org"}, deny}.
@
@
@%%% ==============
@%%% AUTHENTICATION
@
@%%
@%% auth_method: Method used to authenticate the users.
@%% The default method is the internal.
@%% If you want to use a different method,
@%% comment this line and enable the correct ones.
@%%
@%%{auth_method, internal}.
@
@%%
@%% Authentication using external script
@%% Make sure the script is executable by ejabberd.
@%%
@%%{auth_method, external}.
@%%{extauth_program, "/path/to/authentication/script"}.
@
@%%
@%% Authentication using ODBC
@%% Remember to setup a database in the next section.
@%%
@%%{auth_method, odbc}.
@
@%%
@%% Authentication using PAM
@%%
@%%{auth_method, pam}.
@%%{pam_service, "pamservicename"}.
@
@%%
@%% Authentication using LDAP
@%%
@{auth_method, ldap}.
@%%
@%% List of LDAP servers:
if has("external"):
@{ldap_servers, ["localhost"]}.
else:
@{ldap_servers, ["ldap.adm.crans.org"]}.
@%%
@%% Encryption of connection to LDAP servers (LDAPS):
@%%{ldap_encrypt, tls}.
@%%
@%% Port connect to LDAP server:
@%%{ldap_port, 636}.
@%%
@%% LDAP manager:
@{ldap_rootdn, "cn=readonly,dc=crans,dc=org"}.
@%%
@%% Password to LDAP manager:
@{ldap_password, "**FUCK A DUCK**"}.
@%%
@%% Search base of LDAP directory:
@{ldap_base, "dc=crans,dc=org"}.
@%%
@%% LDAP attribute that holds user ID:
@{ldap_uids, [{"uid", "%u"}, {"mailAlias","%u"}]}.
@%%
@%% LDAP filter:
@{ldap_filter, "(objectClass=cransAccount)"}.
@
@%%
@%% Anonymous login support:
@%% auth_method: anonymous
@%% anonymous_protocol: sasl_anon | login_anon | both
@%% allow_multiple_connections: true | false
@%%
@%%{host_config, "public.example.org", [{auth_method, anonymous},
@%% {allow_multiple_connections, false},
@%% {anonymous_protocol, sasl_anon}]}.
@%%
@%% To use both anonymous and internal authentication:
@%%
@%%{host_config, "public.example.org", [{auth_method, [internal, anonymous]}]}.
@{host_config, "crans.org", [{auth_method, ldap}]}.
@{host_config, "jabber.crans.org", [{auth_method, internal}]}.
@
@
@%%% ==============
@%%% DATABASE SETUP
@
@%% ejabberd uses by default the internal Mnesia database,
@%% so you can avoid this section.
@%% This section provides configuration examples in case
@%% you want to use other database backends.
@%% Please consult the ejabberd Guide for details about database creation.
@
@%%
@%% MySQL server:
@%%
@%%{odbc_server, {mysql, "server", "database", "username", "password"}}.
@%%
@%% If you want to specify the port:
@%%{odbc_server, {mysql, "server", 1234, "database", "username", "password"}}.
@
@%%
@%% PostgreSQL server:
@%%
@%%{odbc_server, {pgsql, "server", "database", "username", "password"}}.
@%%
@%% If you want to specify the port:
@%%{odbc_server, {pgsql, "server", 1234, "database", "username", "password"}}.
@%%
@%% If you use PostgreSQL, have a large database, and need a
@%% faster but inexact replacement for "select count(*) from users"
@%%
@%%{pgsql_users_number_estimate, true}.
@
@%%
@%% ODBC compatible or MSSQL server:
@%%
@%%{odbc_server, "DSN=ejabberd;UID=ejabberd;PWD=ejabberd"}.
@
@%%
@%% Number of connections to open to the database for each virtual host
@%%
@%%{odbc_pool_size, 10}.
@
@%%
@%% Interval to make a dummy SQL request to keep alive the connections
@%% to the database. Specify in seconds: for example 28800 means 8 hours
@%%
@%%{odbc_keepalive_interval, undefined}.
@
@
@%%% ===============
@%%% TRAFFIC SHAPERS
@
@%%
@%% The "normal" shaper limits traffic speed to 1.000 B/s
@%%
@{shaper, normal, {maxrate, 1000}}.
@
@%%
@%% The "fast" shaper limits traffic speed to 50.000 B/s
@%%
@{shaper, fast, {maxrate, 50000}}.
@
@
@%%% ====================
@%%% ACCESS CONTROL LISTS
@
@%%
@%% The 'admin' ACL grants administrative privileges to Jabber accounts.
@%% You can put as many accounts as you want.
@%%
@%%{acl, admin, {user, "aleksey", "localhost"}}.
@%%{acl, admin, {user, "ermine", "example.org"}}.
@
@%%
@%% Blocked users
@%%
@%%{acl, blocked, {user, "baduser", "example.org"}}.
@%%{acl, blocked, {user, "test"}}.
@
@%%
@%% Local users: don't modify this line.
@%%
@{acl, local, {user_regexp, ""}}.
@
@%%
@%% More examples of ACLs
@%%
@%%{acl, jabberorg, {server, "jabber.org"}}.
@%%{acl, aleksey, {user, "aleksey", "jabber.ru"}}.
@%%{acl, test, {user_regexp, "^test"}}.
@%%{acl, test, {user_glob, "test*"}}.
@
@
@%%% ============
@%%% ACCESS RULES
@
@%% Define the maximum number of time a single user is allowed to connect:
@{access, max_user_sessions, [{10, all}]}.
@
@%% This rule allows access only for local users:
@{access, local, [{allow, local}]}.
@
@%% Only non-blocked users can use c2s connections:
@{access, c2s, [{deny, blocked},
@ {allow, all}]}.
@
@%% For all users except admins used "normal" shaper
@{access, c2s_shaper, [{none, admin},
@ {normal, all}]}.
@
@%% For all S2S connections used "fast" shaper
@{access, s2s_shaper, [{fast, all}]}.
@
@%% Only admins can send announcement messages:
@{access, announce, [{allow, admin}]}.
@
@%% Only admins can use configuration interface:
@{access, configure, [{allow, admin}]}.
@
@%% Admins of this server are also admins of MUC service:
@{access, muc_admin, [{allow, admin}]}.
@
@%% All users are allowed to use MUC service:
@{access, muc, [{allow, all}]}.
@
@%% No username can be registered via in-band registration:
@%% To enable in-band registration, replace 'deny' with 'allow'
@% (note that if you remove mod_register from modules list then users will not
@% be able to change their password as well as register).
@% This setting is default because it's more safe.
@{access, register, [{deny, all}]}.
@
@%% Everybody can create pubsub nodes
@{access, pubsub_createnode, [{allow, all}]}.
@
@
@%%% ================
@%%% DEFAULT LANGUAGE
@
@%%
@%% language: Default language used for server messages.
@%%
@{language, "en"}.
@
@
@%%% =======
@%%% MODULES
@
@%%
@%% Modules enabled in all ejabberd virtual hosts.
@%%
@{modules,
@ [
@ {mod_adhoc, []},
@ {mod_announce, [{access, announce}]}, % requires mod_adhoc
@ {mod_caps, []},
@ {mod_configure,[]}, % requires mod_adhoc
@%% Attention, n'existe plus avec ejabberd >= 2.1.x
@%% Ceci est remplacé par mod_admin_extra
@ {mod_ctlextra, []},
@ {mod_disco, [
@ {extra_domains, ["icq.crans.org",
@ "msn.crans.org"
@ ]}]},
@ %%{mod_echo, [{host, "echo.localhost"}]},
if not has("external"):
@ % À mettre seulement sur un serveur
@ {mod_irc, []},
@ {mod_last, []},
@ {mod_muc, [
@ %%{host, "conference.@HOST@"},
@ {access, muc},
@ {access_create, muc},
@ {access_persistent, muc},
@ {access_admin, muc_admin},
@ {max_users, 500}
@ ]},
@ %%{mod_muc_log,[]},
@ {mod_offline, []},
@ {mod_privacy, []},
@ {mod_private, []},
if not has("external"):
@ % À mettre seulement sur un serveur
@ {mod_proxy65, [
@ {access, local},
@ {shaper, c2s_shaper}
@ ]},
@ {mod_pubsub, [ % requires mod_caps
@ {access_createnode, pubsub_createnode},
@ {plugins, ["default", "pep"]}
@ ]},
@ {mod_register, [
@ %%
@ %% After successful registration, the user receives
@ %% a message with this subject and body.
@ %%
@ {welcome_message, {"Welcome!",
@ "Welcome to a Jabber service powered by Debian. "
@ "For information about Jabber visit "
@ "http://www.jabber.org"}},
@ %% Replace it with 'none' if you don't want to send such message:
@ %%{welcome_message, none},
@
@ %%
@ %% When a user registers, send a notification to
@ %% these Jabber accounts.
@ %%
@ %%{registration_watchers, ["admin1@example.org"]},
@
@ {access, register}
@ ]},
@ {mod_roster, []},
@ %%{mod_service_log,[]},
@ %%{mod_shared_roster,[]},
@ {mod_stats, []},
@ {mod_time, []},
@ {mod_vcard, []},
@ {mod_version, []}
@ ]}.
@
@
@%%% $Id: ejabberd.cfg.example 1178 2008-02-08 18:28:36Z badlop $
@
@%%% Local Variables:
@%%% mode: erlang
@%%% End:
@%%% vim: set filetype=erlang tabstop=8:

186
Python/etc/pyaimt.conf.xml Normal file
View file

@ -0,0 +1,186 @@
# -*- coding: utf-8; mode: python -*-
@<pyaimt>
@ <!-- The JabberID of the transport. -->
@<jid>aim.crans.org</jid>
@ <!-- The JabberID of the conference room handler. -->
@ <!-- GROUPCHAT IS NOT STABLE YET -->
@ <confjid>chatrooms.aim.crans.org</confjid>
@
@ <!-- The component JID of the transport. Unless you're doing clustering, leave this alone -->
@ <!-- <compjid>aim1</compjid> -->
@
@ <!-- The IP address of the main Jabber server -->
@ <mainServer>127.0.0.1</mainServer>
@
@ <!-- The JID of the main Jabber server -->
@ <mainServerJID>crans.org</mainServerJID>
@
@ <!-- The website of the Jabber service -->
@ <website>http://jabber.crans.org</website>
@
@ <!-- The TCP port to connect to the Jabber server on -->
@ <!-- (this is the default for Jabberd2) -->
@ <port>5556</port>
@
@ <!-- The TCP port that the web admin interface will answer on -->
@ <!-- (uncomment to enable) -->
@ <!-- <webport>12345</webport> -->
@
@ <!-- The authentication token to use when connecting to the Jabber server -->
@ <secret>B2kOQ9Fd28</secret>
@
@ <!-- The default language to use (for error/status messages) -->
@ <lang>fr</lang>
@
@ <!-- The hostname of the AOL login server you wish to connect to -->
@ <aimServer>login.oscar.aol.com</aimServer>
@
@ <!-- The port of the AOL server you wish to connect to -->
@ <aimPort>5190</aimPort>
@
@ <!-- The name of Socks Proxy if connecting thru a proxy -->
@ <!-- <socksProxyServer>im-proxy2</socksProxyServer> -->
@
@ <!-- The Socks Proxy port to use when connecting thru a proxy -->
@ <!-- <socksProxyPort>1080</socksProxyPort> -->
@
@ <!-- Send greeting on login (enter text to be sent to users here) -->
@ <!-- <sessionGreeting>enter message here</sessionGreeting> -->
@
@ <!-- Send message on successful registration -->
@ <!-- <registerMessage>You have successfully registered with PyAIMt</registerMessage> -->
@
@ <!-- Allow users of AIM gateway to chat with ICQ users -->
@ <!-- (uncomment to enable) -->
@ <!-- <crossChat/> -->
@
@ <!-- Disable registration with the transport -->
@ <!-- (uncomment to disable) -->
@ <!-- <disableRegister/> -->
@
@ <!-- Enable automatic invitation to reconnect on restart -->
@ <!-- (uncomment to enable) -->
@ <!-- <enableAutoInvite/> -->
@
@ <!-- Disable xhtml support (messages with fonts and colors) -->
@ <!-- (uncomment to disable) -->
@ <!-- <disableXHTML/> -->
@
@ <!-- Disable mail notifications -->
@ <!-- (uncomment to disable) -->
@ <!-- <disableMailNotifications/> -->
@
@ <!-- Disable use of default avatar if none is specified -->
@ <!-- (uncomment to disable) -->
@ <!-- <disableDefaultAvatar/> -->
@
@ <!-- Disable use of iq-based avatars (JEP-0008) -->
@ <!-- (uncomment to disable) -->
@ <!-- <disableIQAvatars/> -->
@
@ <!-- Disable use of vcard-based avatars (JEP-0153) -->
@ <!-- (uncomment to disable) -->
@ <!-- <disableVCardAvatars/> -->
@
@ <!-- Disable use of PEP-based avatars (JEP-0084) -->
@ <!-- (uncomment to disable) -->
@ <!-- NOT IMPLEMENTED YET -->
@ <!-- <disablePEPAvatars/> -->
@
@ <!-- You can choose which users you wish to have as administrators. These users can perform some tasks with Ad-Hoc commands that others cannot -->
@ <admins>
@ <!--<jid>admin@host.com</jid>-->
@ </admins>
@
@
@ <!-- You can select which event loop PyAIMt will use. It's probably safe to leave this as the default -->
@
@ <!-- Use epoll for high-load Linux servers running kernel 2.6 or above -->
@ <!--<reactor>epoll</reactor>-->
@
@ <!-- Use kqueue for high-load FreeBSD servers -->
@ <!--<reactor>kqueue</reactor>-->
@
@ <!-- Use poll for high-load Unix servers -->
@ <!--<reactor>poll</reactor>-->
@
@ <!-- You can select which spool storage method you wish to use -->
@ <!-- Available methods are: -->
@ <!-- xmlfiles: single xml files in the spool directory in hashed dirs (default)-->
@ <!-- legacyaimtransport: compatible with c-based aim transport, less functionality -->
@ <!-- mysql: registration information stored in a MySQL database -->
@ <!--<xdbDriver>xmlfiles</xdbDriver>-->
@
@ <!-- For MySQL -->
@ <!--<xdbDriver>mysql</xdbDriver>-->
@ <!--<xdbDriver_mysql>-->
@ <!--<username>pyaimt</username>-->
@ <!--<password>pyaimt</password>-->
@ <!--<database>pyaimt</database>-->
@ <!--<server>localhost</server>-->
@ <!--<format>encrypted</format>--> <!-- Enable encryption of passwords -->
@ <!--</xdbDriver_mysql>-->
@
@ <!-- For XMLFiles -->
@ <!--<xdbDriver>xmlfiles</xdbDriver>-->
@ <!--<xdbDriver_xmlfiles>-->
@ <!--<format>encrypted</format>--> <!-- Enable encryption of passwords -->
@ <!--</xdbDriver_xmlfiles>-->
@
@ <!-- Only grab avatars when a chat is initiated. -->
@ <!-- <avatarsOnlyOnChat/> -->
@
@ <!-- Disable all avatar functionality. Might be necessary if you -->
@ <!-- do not have PIL installed. -->
@ <!-- <disableAvatars/> -->
@
@ <!-- Disable automatic send (via im) of away message when away set. -->
@ <!-- Note that away messages are -in addition to- the away status -->
@ <!-- message. -->
@ <!-- <disableAwayMessage/> -->
@
@ <!-- Use Jabber.com's XCP component protocol extensions. -->
@ <!-- <useXCP/> -->
@
@ <!-- SASL username used to bind to Jabber server. -->
@ <!-- secret, above, is used for sasl password -->
@ <!-- NOTE: This does not work with Twisted > 2.2.0. -->
@ <!-- <saslUsername>username</saslUsername> -->
@
@ <!-- Use external component binding. -->
@ <!-- This dodges the need to manually configure all jids that talk to this transport. -->
@ <!-- Jabberd2 requires saslUsername and useRouteWrap for this to work. -->
@ <!-- Wildfire as of 2.6.0 requires just this. -->
@ <!-- <useComponentBinding/> -->
@
@ <!-- Wrap stanzas in <route> stanza. -->
@ <!-- Jabberd2 requires this for useComponentBinding. -->
@ <!-- <useRouteWrap/> -->
@
@ <!-- JID of message archive service -->
@ <!-- <messageArchiveJID>datasink.example.org</messageArchiveJID> -->
@
@ <!-- If registration authentication is used, enter the method -->
@ <!-- Auth configs often require additional options to be specified. -->
@ <!-- See associated config entries per authRegister example. -->
@ <!-- NOTE: limited to LDAP for now -->
@
@ <!-- THIS IS UNTESTED AS OF YET -->
@ <!-- <authRegister>LDAP</authRegister> -->
@ <!-- For LDAP auth, make sure to uncomment <authRegister_LDAP> -->
@ <!-- and </authRegister_LDAP> and fill out the options in between. -->
@ <!-- <authRegister_LDAP> -->
@ <!-- The fqdn or ip address of the LDAP server -->
@ <!-- <server>ldap.example.org</server> -->
@ <!-- The Root DN to be used to perform LDAP searches -->
@ <!-- <rootDN>CN=Administrator,CN=Users,DC=example,DC=org</rootDN> -->
@ <!-- The password for the Root DN -->
@ <!-- <password>SECRET</password> -->
@ <!-- The Base DN to search for users -->
@ <!-- <baseDN>DC=example,DC=org</baseDN> -->
@ <!-- The attribute to search for the user ID. -->
@ <!-- 'samAccountname' in Windows, 'uid' on most other systems -->
@ <!-- <uidAttr>samAccountname</uidAttr> -->
@ <!-- </authRegister_LDAP> -->
@</pyaimt>

View file

@ -0,0 +1,83 @@
# -*- coding: utf-8; mode: python -*-
@<pymsnt>
@<!-- This file contains options to be configured by the server administrator. -->
@<!-- Please read through all the options in this file -->
@
@<!-- The JabberID of the transport -->
@<jid>msn.crans.org</jid>
@<!-- The public IP or DNS name of the machine the transport is running on -->
@<!-- This is needed for file transfer!! This is also used as the IP address for outgoing connections -->
@<host>msn.crans.org</host>
@<compjid>msn1</compjid>
@<!-- The component JID of the transport. Unless you're doing clustering, leave this alone -->
@<!-- The name of the transport in the service discovery list. -->
@<discoName>MSN Transport</discoName>
@
@
@<!-- The Twisted reactor to choose. Pick poll or epoll on Linux, kqueue on BSD. Or leave as default (best found) -->
@<!-- <reactor>poll</reactor> -->
@
@
@<!-- The IP address of the main Jabber server to connect to -->
@<mainServer>127.0.0.1</mainServer>
@<!-- The TCP port to connect to the Jabber server on (this is the default for Jabberd2) -->
@<port>5557</port>
@<!-- The authentication token to use when connecting to the Jabber server -->
@<secret>RK8cx4f03</secret>
@<!-- Use Jabber.com's XCP component protocol extensions. -->
@<!-- <useXCP/> -->
@
@
@<!-- The default language to use -->
@<lang>en</lang>
@<!-- The website of the Jabber service -->
@<website>http://jabber.crans.org</website>
@
@
@<!-- Comment out the following options to disable them, or uncomment them to enable them -->
@<!-- Send email notification messages to users -->
@<mailNotifications/>
@<!-- Send greeting on login -->
@<!-- <sessionGreeting>You have just started a session with PyMSNt</sessionGreeting> -->
@<!-- Send message on successful registration -->
@<!-- <registerMessage>You have successfully registered with PyMSNt</registerMessage> -->
@<!-- Allow users to register with this transport -->
@<allowRegister/>
@<!-- Get all avatars. If this is set to true then avatars are grabbed for all your contacts immediately. If false then avatars are only grabbed when you're in a chat with a contact -->
@<getAllAvatars/>
@<!-- The amount of time a user has to join a groupchat they are invited to before the transport makes them leave the room. (MSN protocol requires autojoining of groupchats) -->
@<!-- <groupchatTimeout>120</groupchatTimeout> -->
@
@
@<!-- File transfer settings -->
@<!-- The maximum size of a file transfer (in bytes). For unlimited, comment out, or set to 0 -->
@<ftSizeLimit>100000000</ftSizeLimit>
@<!-- The maximum rate for file transfer (in bytes). For unlimited, comment out, or set to 0 -->
@<ftRateLimit>1024000</ftRateLimit>
@<!-- Please give the port to listen for Jabber socks5 transfers on. -->
@<ftJabberPort>8010</ftJabberPort>
@<!-- Please give the port to listen for HTTP GETs here (Used in old-style OOB file transfers. Best to leave this disabled unless you know you need it.) -->
@<!--<ftOOBPort>8011</ftOOBPort>-->
@<!-- Please give the root URL the transport should send to clients. (You can use an Apache reverse proxy to put this on your ordinary website) -->
@<!-- Eg, the transport will listen on port 8011 for HTTP GETs to /RANDOM_FILE.ext. You can set apache to forward any requests to http://yourhost.com:80/msn/files/RANDOM_FILE.ext to http://yourhost.com:8011/RANDOM_FILE.ext. This saves you from opening extra ports. -->
@<!--<ftOOBRoot>http://host.com/msn/files/</ftOOBRoot>-->
@
@<!-- You can choose which users you wish to have as administrators. These users can perform some tasks with Ad-Hoc commands that others cannot -->
@<admins>
@<jid>huber@jabber.crans.org</jid>
@</admins>
@
@
@<!-- Log settings -->
@
@<!-- The logging level
@0 -> No logging
@1 -> Log tracebacks
@2 -> Log tracebacks, warnings and errors
@3 -> Log all sorts of informational (mostly useless stuff)
@4 -> Log the MSN protocol code sent
@-->
@<debugLevel>3</debugLevel>
@
@</pymsnt>