diff --git a/.idea/misc.xml b/.idea/misc.xml index 3570188..590a59e 100644 --- a/.idea/misc.xml +++ b/.idea/misc.xml @@ -1,4 +1,7 @@ + + \ No newline at end of file diff --git a/bin/cservice.conf b/bin/cservice.conf index d2b1e3e..8afcf30 100644 --- a/bin/cservice.conf +++ b/bin/cservice.conf @@ -1,322 +1,348 @@ +# ============================================================================ +# Fisier de configurare CService (Serviciul de Canale) — Underchat +# ============================================================================ # $Id: cservice.example.conf.in,v 1.9 2005/12/06 18:12:44 kewlio Exp $ -# Channel Services configuration file. # -# sql_host = Hostname/IP of the PostgreSQL server. +# 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 -# sql_db = Name of the database. -# (To create from the template, run cservice.sql through Postgres) - +# Numele bazei de date. +# Baza se creeaza din sablonul doc/cservice.sql. sql_db = cservice -# sql_user is the username to pass to Postgres on connection. -# Usefull if your account name is not the same as your Database -# username. - +# Numele de utilizator pentru autentificarea la PostgreSQL. sql_user = gnuworld + +# Parola pentru autentificarea la PostgreSQL. sql_pass = foo -# General 'Bot' options. +# ============================================================================ +# 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 -# -# Channel to relay flood/warnings/exceptions, etc. -# +# ============================================================================ +# 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 -# -# Channel to relay useful information, but not quite as annoying -# as the debug_channel ! (a.k.a privileged user relay channel) -# - +# 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 -# -# Channel to relay useful debug information that otherwise -# annoy CS admins. :) -# - +# Canalul pentru informatii de depanare (debug). +# Foarte detaliat — poate fi deranjant, folosit doar de dezvoltatori. debug_channel = #CSC -# -# Coder channel. -# -# Channel used to extract levels to display coder access status. - +# Canalul programatorilor. +# Se foloseste pentru a extrage nivelurile de acces ale dezvoltatorilor. coder_channel = #CSC -# -# Frequency in seconds to check the database for updates. -# +# ============================================================================ +# 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 -# -# Number of seconds to sample for flooding. -# - +# Durata ferestrei de monitorizare a flood-ului (in secunde). +# Botul numara mesajele primite/trimise in aceasta perioada. flood_duration = 30 -# -# Input flood rate. -# -# Eg: 30, for 30 points amassed within "flood_duration" seconds. -# - +# 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 -# -# Output flood rate. -# -# Eg: 20480 (20k within "flood_duration" seconds). -# - +# 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 -# -# Minimum duration at which to set a topic in a non idle channel. -# (Seconds). -# - +# 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 -# -# Duration at which we check for idle user accounts in memory. -# (Seconds). - +# La cate secunde verifica botul conturile de utilizator inactive din memorie. +# Valoare curenta: la fiecare ora (3600s). expire_interval = 3600 -# -# How long those accounts should have been idle before they are -# uncached. (Seconds). -# - +# 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 -# -# How often to notify/commit changes to Pending channels. -# (Seconds). - +# La cate secunde verifica si salveaza botul modificarile la canalele +# aflate in asteptare (pending). Valoare curenta: 30 minute. pending_duration = 1800 -# -# How often to check if the connection to the backend has -# fallen over? (Seconds). -# - +# La cate secunde verifica botul daca conexiunea la baza de date +# este inca activa. Valoare curenta: la fiecare 10 secunde. connection_check_frequency = 10 -# -# How many times do we try every 'connection_check_frequency' seconds -# to reconnect before finally giving up and exiting? -# - +# 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 -# -# How often (in seconds) should we check all channels that have -# floating-limit set to see if they need a new limit setting? -# -# Note: 30 is a good value, try 1min if you have lots of chans -# and not so much CPU. - +# 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 -# -# How long (In seconds) should we wait before allowing -# logins after startup. (Incase you're on a busy network -# with a really large burst and need things to settle down -# first to ease up load on the Db). -# - +# 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 = 5 +# ============================================================================ +# SECTIUNEA 5: SISTEM DE NOTE (MESAJE INTRE UTILIZATORI) +# ============================================================================ -# -# What is the period (in seconds) in which we will check to -# see if someone has sent too many notes, and what do we -# define "Too Many" as? -# Ie: You can send 'note_limit' notes in 'note_duration' seconds. -# - +# 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 -# -# How many not(ic)es will be stored at one time -# 0 disallowed, 3 will be used - +# Cate note pot fi stocate simultan pentru un utilizator. +# 0 este interzis (se va folosi 3 implicit). max_notes = 30; -# -# Pre-cache 'x' days worth of user accounts. -# This lets you preload all the users who have logged in during the last -# 'x' number of days to avoid a large number of queries when processing -# +r accounts during the initial net.burst. -# +# ============================================================================ +# 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 -# -# Specify the filename for the 'Admin Log'. -# Basically a log of all commands admins type. -# +# ============================================================================ +# SECTIUNEA 7: JURNALIZARE (LOGURI) +# ============================================================================ + +# Fisierul de jurnal pentru comenzile administratorilor. +# Inregistreaza toate comenzile executate de administratori. admin_logfile = admin.log -# -# Specify the filename for the 'Command Log' -# A log of ALL commands issued by ALL users. -# requires USE_COMMAND_LOG in cservice_config.h +# 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 -# -# This option is used only if ALLOW_HELLO is defined in -# cservice_config.h, thus enabling the HELLO command in cservice. -# This is the time to block users attempting to flood the bot with -# hello commands, in seconds. -# +# ============================================================================ +# 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 -# -# If this is set to 1, the password generated for the new user will be sent to the email -# otherwise displayed directly to the user -# ** IMPORTANT: mailutils or mailx package must be installed on your system - +# 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 -# -# Sending email when new user registered -# Define here the "from address" -# - +# Adresa de email a expeditorului pentru emailurile trimise la inregistrarea +# unui cont nou (campul "From:"). sendmail_from = cservice@underchat.org -# -# What is the period (in seconds) in which we will check for -# new webrelay messages -# +# ============================================================================ +# 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; -# -# How long the bot should stay in an idle channel before leaving it. -# This only takes into account join/parts, not privmsg. -# Default is 2 days (172800 seconds) -# - +# 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 -# -# Enable/Disable totp authentication (must be enabled in mod.cservice/cservice_config.h on compliation) -# 1 = totp enabled, 0 = totp disabled +# ============================================================================ +# 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 -# -# Days to expire users -# 0 = never expire +# ============================================================================ +# 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 = 365 -# -# Set MIA flag on channels where manager missing for -# 0 = never expire - +# 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 -# -# Purge MIA flagged channels after -# - +# Dupa cate zile de la setarea flag-ului MIA se sterge (purge) canalul. +# Valoare curenta: 100 zile. MIA_end_days = 100 -# -# Frequncy for check database for last seen users(in hours) -# cannot be 0, default 8 will be used - +# 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 = 1 -# -# Frequncy for check database for for channels for missing managers(in hours) -# cannot be 0, default 3 will be used - +# 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 = 1 -# Set hour length in seconds -# (appliabale only for "new" features user and channel expires -# cannot be 0; 1 will be used - +# 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 -# Set day length in seconds -# (appliabale only for "new" features user and channel expires -# cannot be 0; 1 will be used - +# 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 -# -# Description for MIA starting period -# - +# 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 -# -# MIA URL -# - +# URL-ul MIA — informatii suplimentare. MIA_URL = Only 400+ Ops -# -# Description for MIA ending period (manager has logged in) -# - +# 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 -# # # -# ***** The Judge ***** # -# # # +# ============================================================================ +# 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 -# A welcome message for a newly accepted channel -# For empty use '' and it means disabled +# ============================================================================ +# 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! -# A welcome topic for a newly accepted channel -# For empty use '' and it means disabled. Applies only on empty channel topic. -# TOPIC_TRACK must be #define in \include\gnuworld_config.h - +# 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! *** -# -# Reserved/restricted hostnames. -# Cannot set by regular users. Wildcard match is accepted. -# The bot's hostname and hiddenhost suffix are automatically added to the list +# ============================================================================ +# 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. # \ No newline at end of file