349 lines
14 KiB
Plaintext
349 lines
14 KiB
Plaintext
# ============================================================================
|
|
# Fisier de configurare CService (Serviciul de Canale) — Underchat
|
|
# ============================================================================
|
|
# $Id: cservice.example.conf.in,v 1.9 2005/12/06 18:12:44 kewlio Exp $
|
|
#
|
|
# Acest fisier controleaza comportamentul botului X (CService).
|
|
# Toate setarile sunt documentate mai jos in limba romana.
|
|
# ============================================================================
|
|
|
|
# ============================================================================
|
|
# SECTIUNEA 1: CONEXIUNEA LA BAZA DE DATE (PostgreSQL)
|
|
# ============================================================================
|
|
|
|
# Adresa IP sau hostname-ul serverului PostgreSQL.
|
|
# Botul X se conecteaza la aceasta adresa pentru a citi/scrie datele.
|
|
sql_host = 10.1.100.252
|
|
|
|
# Portul pe care asculta serverul PostgreSQL (implicit: 5432).
|
|
sql_port = 5432
|
|
|
|
# Numele bazei de date.
|
|
# Baza se creeaza din sablonul doc/cservice.sql.
|
|
sql_db = cservice
|
|
|
|
# Numele de utilizator pentru autentificarea la PostgreSQL.
|
|
sql_user = gnuworld
|
|
|
|
# Parola pentru autentificarea la PostgreSQL.
|
|
sql_pass = foo
|
|
|
|
# ============================================================================
|
|
# SECTIUNEA 2: IDENTITATEA BOTULUI PE RETEA
|
|
# ============================================================================
|
|
|
|
# Nickname-ul botului (cum apare pe retea).
|
|
nickname = X
|
|
|
|
# Username-ul botului (partea de dinaintea @ in user@host).
|
|
username = cservice
|
|
|
|
# Hostname-ul botului (partea de dupa @ in user@host).
|
|
hostname = underchat.org
|
|
|
|
# Descrierea (realname/GECOS) — apare la /whois.
|
|
userdescription = For help type: /msg X help
|
|
|
|
# Modurile utilizatorului setate la conectare.
|
|
# +i = invizibil, +d = nu primeste mesaje de canal, +k = serviciu (nu poate fi ucis).
|
|
mode = +idk
|
|
|
|
# ============================================================================
|
|
# SECTIUNEA 3: CANALE DE ADMINISTRARE SI NOTIFICARI
|
|
# ============================================================================
|
|
|
|
# URL-ul paginii web pentru vizualizarea aplicatiilor de canale in asteptare.
|
|
pending_page_url = http://cservice.underchat.org/live/view_app.php
|
|
|
|
# Canalul unde se trimit notificari despre flood, avertismente si exceptii.
|
|
# Toate alertele de securitate ale botului ajung aici.
|
|
relay_channel = #CSC
|
|
|
|
# Canalul pentru informatii utile dar mai putin urgente
|
|
# (cunoscut si ca "canalul de relay al utilizatorilor privilegiati").
|
|
# Mai putin zgomotos decat debug_channel.
|
|
priv_relay_channel = #CSC
|
|
|
|
# Canalul pentru informatii de depanare (debug).
|
|
# Foarte detaliat — poate fi deranjant, folosit doar de dezvoltatori.
|
|
debug_channel = #CSC
|
|
|
|
# Canalul programatorilor.
|
|
# Se foloseste pentru a extrage nivelurile de acces ale dezvoltatorilor.
|
|
coder_channel = #CSC
|
|
|
|
# ============================================================================
|
|
# SECTIUNEA 4: INTERVALE DE VERIFICARE SI TEMPORIZARE
|
|
# ============================================================================
|
|
|
|
# La cate secunde verifica botul baza de date pentru actualizari.
|
|
# Valoare curenta: la fiecare 3 minute (180s).
|
|
update_interval = 180
|
|
|
|
# Durata ferestrei de monitorizare a flood-ului (in secunde).
|
|
# Botul numara mesajele primite/trimise in aceasta perioada.
|
|
flood_duration = 30
|
|
|
|
# Pragul de flood la intrare (input).
|
|
# Daca un utilizator acumuleaza 3000 de puncte in 'flood_duration' secunde,
|
|
# este considerat flood si va fi ignorat.
|
|
input_flood = 3000
|
|
|
|
# Pragul de flood la iesire (output).
|
|
# Daca botul trimite mai mult de 20480 octeti (20 KB) in 'flood_duration' secunde,
|
|
# limiteaza traficul de iesire.
|
|
output_flood = 20480
|
|
|
|
# Durata minima (in secunde) inainte de a seta un topic intr-un canal activ.
|
|
# Previne schimbarea prea frecventa a topicului. Valoare curenta: 30 minute.
|
|
topic_duration = 1800
|
|
|
|
# La cate secunde verifica botul conturile de utilizator inactive din memorie.
|
|
# Valoare curenta: la fiecare ora (3600s).
|
|
expire_interval = 3600
|
|
|
|
# Cat timp (in secunde) trebuie sa fie inactiv un cont inainte de a fi
|
|
# scos din cache (memoria rapida). Valoare curenta: 1 ora.
|
|
cache_interval = 3600
|
|
|
|
# La cate secunde verifica si salveaza botul modificarile la canalele
|
|
# aflate in asteptare (pending). Valoare curenta: 30 minute.
|
|
pending_duration = 1800
|
|
|
|
# La cate secunde verifica botul daca conexiunea la baza de date
|
|
# este inca activa. Valoare curenta: la fiecare 10 secunde.
|
|
connection_check_frequency = 10
|
|
|
|
# De cate ori incearca botul sa se reconecteze la baza de date
|
|
# (la fiecare 'connection_check_frequency' secunde) inainte de a renunta
|
|
# si a se opri complet. Valoare curenta: 5 incercari.
|
|
connection_retry_total = 5
|
|
|
|
# La cate secunde verifica botul canalele cu limita flotanta (floating-limit)
|
|
# pentru a vedea daca trebuie actualizata limita.
|
|
# Nota: 30s este o valoare buna. Folositi 60s daca aveti multe canale
|
|
# si CPU limitat.
|
|
limit_check = 30
|
|
|
|
# Cate secunde asteapta botul dupa pornire inainte de a permite login-uri.
|
|
# Util pe retele aglomerate cu burst mare — lasa lucrurile sa se stabilizeze
|
|
# pentru a reduce incarcarea bazei de date.
|
|
login_delay = 30
|
|
|
|
# ============================================================================
|
|
# SECTIUNEA 5: SISTEM DE NOTE (MESAJE INTRE UTILIZATORI)
|
|
# ============================================================================
|
|
|
|
# Perioada (in secunde) in care se verifica daca cineva a trimis prea multe note.
|
|
# Valoare curenta: 1 ora.
|
|
note_duration = 3600
|
|
|
|
# Numarul maxim de note permise in perioada 'note_duration'.
|
|
# Exemplu: maximum 5 note pe ora.
|
|
note_limit = 5
|
|
|
|
# Cate note pot fi stocate simultan pentru un utilizator.
|
|
# 0 este interzis (se va folosi 3 implicit).
|
|
max_notes = 30;
|
|
|
|
# ============================================================================
|
|
# SECTIUNEA 6: PRE-INCARCARE SI CACHE
|
|
# ============================================================================
|
|
|
|
# Pre-incarca conturile de utilizator care au fost active in ultimele X zile.
|
|
# La pornire, botul incarca in memorie toti utilizatorii care s-au autentificat
|
|
# in ultimele 'preload_user_days' zile, pentru a evita interogari masive la
|
|
# baza de date in timpul burst-ului initial (sincronizare retea).
|
|
preload_user_days = 1
|
|
|
|
# ============================================================================
|
|
# SECTIUNEA 7: JURNALIZARE (LOGURI)
|
|
# ============================================================================
|
|
|
|
# Fisierul de jurnal pentru comenzile administratorilor.
|
|
# Inregistreaza toate comenzile executate de administratori.
|
|
admin_logfile = admin.log
|
|
|
|
# Fisierul de jurnal pentru TOATE comenzile, de la toti utilizatorii.
|
|
# Necesita USE_COMMAND_LOG activat in cservice_config.h la compilare.
|
|
command_logfile = cs.log
|
|
|
|
# ============================================================================
|
|
# SECTIUNEA 8: COMANDA HELLO (INREGISTRARE CONT NOU)
|
|
# ============================================================================
|
|
|
|
# Perioada de blocare (in secunde) pentru comanda HELLO.
|
|
# Functioneaza doar daca ALLOW_HELLO este definit in cservice_config.h.
|
|
# Previne abuzul prin flood de comenzi HELLO.
|
|
# Valoare curenta: 1 ora — un utilizator poate da HELLO o data pe ora.
|
|
hello_block_period = 3600
|
|
|
|
# Daca este setat pe 1, parola generata pentru contul nou va fi trimisa pe email.
|
|
# Daca este setat pe 0, parola este afisata direct utilizatorului.
|
|
# IMPORTANT: pachetul mailutils sau mailx trebuie instalat pe sistem!
|
|
hello_sendmail_enabled = 0
|
|
|
|
# Adresa de email a expeditorului pentru emailurile trimise la inregistrarea
|
|
# unui cont nou (campul "From:").
|
|
sendmail_from = cservice@underchat.org
|
|
|
|
# ============================================================================
|
|
# SECTIUNEA 9: RELAY WEB SI COMPORTAMENT CANALE
|
|
# ============================================================================
|
|
|
|
# La cate secunde verifica botul mesaje noi de la relay-ul web
|
|
# (interfata web de administrare).
|
|
webrelay_interval = 10;
|
|
|
|
# Dupa cate secunde de inactivitate botul paraseste un canal.
|
|
# Se iau in calcul doar intrarile/iesirile (JOIN/PART), nu mesajele (PRIVMSG).
|
|
# Valoare curenta: 2 zile (172800 secunde).
|
|
# part_idle_chan = 172800
|
|
part_idle_chan = 17280000
|
|
|
|
# ============================================================================
|
|
# SECTIUNEA 10: AUTENTIFICARE TOTP (PAROLA UNICA BAZATA PE TIMP)
|
|
# ============================================================================
|
|
|
|
# Activeaza/Dezactiveaza autentificarea TOTP (Two-Factor Authentication).
|
|
# Trebuie activat si in mod.cservice/cservice_config.h la compilare.
|
|
# 1 = TOTP activat, 0 = TOTP dezactivat.
|
|
enable_totp = 0
|
|
|
|
# ============================================================================
|
|
# SECTIUNEA 11: EXPIRARE CONTURI SI CANALE (MIA — Missing In Action)
|
|
# ============================================================================
|
|
|
|
# Dupa cate zile de inactivitate expira conturile de utilizator.
|
|
# 0 = nu expira niciodata.
|
|
# Valoare curenta: 365 zile (1 an).
|
|
users_expire_days = 0
|
|
|
|
# Dupa cate zile de absenta a managerului se seteaza flag-ul MIA pe canal.
|
|
# MIA = "Missing In Action" (Manager absent).
|
|
# 0 = nu se seteaza niciodata.
|
|
# Valoare curenta: 90 zile (3 luni).
|
|
MIA_start_days = 90
|
|
|
|
# Dupa cate zile de la setarea flag-ului MIA se sterge (purge) canalul.
|
|
# Valoare curenta: 100 zile.
|
|
MIA_end_days = 100
|
|
|
|
# La cate ore verifica botul baza de date pentru utilizatori inactivi.
|
|
# Nu poate fi 0 — implicit 8 ore.
|
|
# Valoare curenta: la fiecare ora.
|
|
users_db_idle = 8
|
|
|
|
# La cate ore verifica botul baza de date pentru canale cu manageri absenti.
|
|
# Nu poate fi 0 — implicit 3 ore.
|
|
# Valoare curenta: la fiecare ora.
|
|
channels_db_idle = 3
|
|
|
|
# Lungimea unei ore in secunde.
|
|
# Se aplica doar functionalitatilor noi de expirare utilizatori/canale.
|
|
# Nu poate fi 0 (se va folosi 1 implicit).
|
|
hour_seconds = 3600
|
|
|
|
# Lungimea unei zile in secunde.
|
|
# Se aplica doar functionalitatilor noi de expirare utilizatori/canale.
|
|
# Nu poate fi 0 (se va folosi 1 implicit).
|
|
day_seconds = 86400
|
|
|
|
# Descrierea afisata cand incepe perioada MIA (managerul nu s-a autentificat).
|
|
MIA_start_desc = Manager has failed to login. To vote for new manager send mail to cservice@underchat.org
|
|
|
|
# URL-ul MIA — informatii suplimentare.
|
|
MIA_URL = Only 400+ Ops
|
|
|
|
# Descrierea afisata cand se termina perioada MIA (managerul s-a autentificat din nou).
|
|
MIA_end_desc = Manager has logged in. This was the last warning for failure to login
|
|
|
|
# ============================================================================
|
|
# SECTIUNEA 12: JUDECATORUL (THE JUDGE) — Sistem automat de aprobare canale
|
|
# ============================================================================
|
|
# Aceste setari controleaza procesul automat de inregistrare a canalelor noi.
|
|
# Utilizatorii aplica pentru un canal, aduna sustinatori, iar "Judecatorul"
|
|
# decide automat daca aplicatia este aprobata.
|
|
# ============================================================================
|
|
|
|
# Numarul minim de sustinatori necesari pentru o aplicatie de canal.
|
|
required_supporters = 2
|
|
|
|
# Lungimea unei "zile de judecator" in secunde (folosit pentru testare rapida).
|
|
# Valoare normala ar fi 86400 (o zi reala).
|
|
# Valoare curenta: 360s (6 minute — probabil pentru teste).
|
|
judge_day_seconds = 360
|
|
|
|
# Cate zile trebuie sa aiba un cont inainte de a putea inregistra un canal.
|
|
min_days_before_reg = 1
|
|
|
|
# Cate zile trebuie sa aiba un cont inainte de a putea sustine o aplicatie.
|
|
min_days_before_support = 1
|
|
|
|
# Cate aplicatii de canale poate sustine un utilizator simultan.
|
|
max_concurrent_supports = 3
|
|
|
|
# Cate zile este blocat un utilizator de la inregistrare daca nu aduna
|
|
# suficienti sustinatori.
|
|
noreg_days_on_nosupport = 1
|
|
|
|
# Daca este 1, aplicatia este respinsa automat daca utilizatorul are
|
|
# flag de frauda. 0 = nu se respinge automat.
|
|
reject_app_on_userfraud = 1
|
|
|
|
# Daca este 1, se declanseaza o recenzie (review) cand cineva face obiectie
|
|
# la o aplicatie.
|
|
rewiev_on_object = 1
|
|
|
|
# Dupa cate unitati de timp expira recenziile (review-urile).
|
|
rewievs_expire_time = 100
|
|
|
|
# Dupa cate unitati de timp expira aplicatiile aflate in asteptare (pending).
|
|
pendings_expire_time = 30
|
|
|
|
# Numarul maxim de zile pentru procesul de aplicare.
|
|
max_days = 3
|
|
|
|
# Numarul minim de intrari unice (utilizatori diferiti) necesare in canal.
|
|
unique_joins = 5
|
|
|
|
# Numarul total minim de intrari (JOIN-uri) necesare in canal.
|
|
joins = 10
|
|
|
|
# Numarul minim de sustinatori.
|
|
min_supporters = 2
|
|
|
|
# Numarul minim de intrari in canal cerut fiecarui sustinator.
|
|
min_supporters_joins = 2
|
|
|
|
# Cu cate zile inainte de expirare se trimit notificari.
|
|
notify_days = 2
|
|
|
|
# Cate zile au sustinatorii la dispozitie pentru a-si confirma sustinerea.
|
|
support_days = 1
|
|
|
|
# ID-ul utilizatorului CService care actioneaza ca "reviewer" (examinator).
|
|
reviewer_id = 1
|
|
|
|
# ============================================================================
|
|
# SECTIUNEA 13: MESAJE DE BUNA-VENIRE PENTRU CANALE NOI
|
|
# ============================================================================
|
|
|
|
# Mesajul trimis pe canal la acceptarea unei aplicatii noi.
|
|
# %s se inlocuieste cu numele canalului.
|
|
# Pentru dezactivare, folositi '' (gol).
|
|
welcome_newchan_message = Congratulations! Channel %s has been registered!
|
|
|
|
# Topicul setat automat pe un canal nou acceptat.
|
|
# Se aplica doar daca canalul nu are deja un topic.
|
|
# Pentru dezactivare, folositi '' (gol).
|
|
# TOPIC_TRACK trebuie definit (#define) in \include\gnuworld_config.h.
|
|
welcome_newchan_topic = *** Congratulations! Your channel application has been accepted! ***
|
|
|
|
# ============================================================================
|
|
# SECTIUNEA 14: HOSTNAME-URI REZERVATE / RESTRICTIONATE
|
|
# ============================================================================
|
|
# Hostname-uri care nu pot fi setate de utilizatorii obisnuiti.
|
|
# Se accepta wildcard (caractere de inlocuire, ex: *.underchat.org).
|
|
# Hostname-ul botului si sufixul de host ascuns se adauga automat.
|
|
# |