Znuny

De la dexonline wiki
Sari la navigare Sari la căutare

OTRS

Folosim OTRS pentru a răspunde la emailurile venite pe adresele de contact. Îl folosim deoarece permite gestiunea distribuită a emailurilor: eu răspund la un mesaj, altcineva la altul, altcineva poate doar să urmărească firul discuțiilor și să intervină dacă are completări etc. Permite separarea mesajelor în „cozi”, astfel ca anumite persoane să primească în grijă doar mesajele la care au competența să răspundă (tehnic sau lingvistic sau contracte de publicitate, etc.

Fluxul datelor este:

  • Din DNS, contact@dexonline.ro, publicitate@dexonline.ro și ong@dexonline.ro (și, de fapt, toate adresele @dexonline.ro) sunt redirectate către contul otrs de pe serverul dexonline.ro
  • SpamAssassin rulează pe server și adaugă un header nou mesajelor, cu scorul de spam. Aceasta se întâmplă datorită fișierului /etc/procmailrc.
  • Userul otrs are un fișier /opt/otrs/.procmailrc, instalat cu pachetul OTRS și customizat de noi.
    • Mesajele cu scor SpamAssassin >= 5 ajung în OTRS în coada Spamassassin-flagged-it-as-spam;
    • Mesajele către publicitate@dexonline.ro ajung în OTRS în coada Publicitate;
    • Mesajele către ong@dexonline.ro ajung în OTRS în coada ONG;
    • Restul mesajelor ajung în OTRS în coada General.
  • Tichetele care sunt spam trebuie trecute în coada Spam. Există un script care rulează periodic, salvează aceste tichete în folderul /var/mail/spam și le șterge.
  • Tichetele pe care le închidem (în starea closed successful sau closed unsuccessful) sunt procesate de un alt script periodic. El le salvează în folderul /opt/otrs/mail/ham și le trece în starea closed and saved to mbox (ca să știe să nu le proceseze de două ori).
  • Recomand ca imediat ce răspundeți la un tichet, să îl și închideți. Astfel, dashboard-ul OTRS indică strict tichetele care necesită o acțiune din partea noastră.
  • Pentru a modifica aceste scripturi, autentificați-vă ca root în OTRS și navigați la Admin -> Generic agents.

Ce ne trebuie

  • Dacă vă face plăcere să răspundeți la emailuri, solicitați-ne un cont OTRS. Desigur, trebuie să adoptați un ton respectuos și prietenos atunci când reprezentați proiectul dexonline. Momentan, politica dexonline este că oricine poate răspunde la orice mesaj; desigur, nu vă recomandăm să răspundeți la întrebările tehnice dacă nu sunteți programator, la cele lingvistice dacă nu sunteți lingvist etc.

Aducerea la zi a OTRS

Sistemul OTRS este instalat în /opt/otrs. Versiunea curentă are un symlink din /opt/otrs către /opt/otrs-<versiune>. OTRS are instrucțiuni bunicele pentru upgrade, dar sunt câțiva pași pe care ei nu îi menționează. În special, dorim să facem cât mai mult din upgrade fără să oprim sistemul.

  • Descărcați noua versiune, fie ea x.y.z
cd /opt
wget http://.../otrs-x.y.z.tar.gz
tar zxvf otrs-x.y.z.tar.gz
chown -R otrs.www-data otrs-x.y.z
chown otrs.otrs otrs-x.y.z
chmod 755 otrs-x.y.z
cd otrs-x.y.z
  • Copiați fișierele necesare din versiunea anterioară în cea curentă
cp -a /opt/otrs/.procmailrc .
cp -a /opt/otrs/.pinerc .
cp -a /opt/otrs/mail .
cp -a /opt/otrs/bin/cata.exportMessageTo*.sh bin/
cp -a /opt/otrs/Kernel/Config.pm Kernel/
cp -a /opt/otrs/Kernel/Config/GenericAgent.pm Kernel/Config/
cp -a /opt/otrs/Kernel/Config/Files/ZZZAuto.pm Kernel/Config/Files/
cd bin/
ln -s fcgi-bin otrs # Deoarece configurarea Nginx caută /otrs/index.pl
  • Comparați fișierele Config.pm și GenericAgent.pm, pe care tocmai le-ați copiat, cu fișierele corespunzătoare .dist din aceleași directoare și reconciliați diferențele. Este important să diferim față de fișierele .dist doar în punctele unde dorim să facem configurări (parole etc.) și să nu cărăm după noi modificări istorice.
  • Abia acum căutați pe Google instrucțiunile de upgrade pentru OTRS și urmați-le. Câteva observații importante:
    • NU OPRIȚI SERVICIUL APACHE. OTRS rulează pe serverul principal al dexonline.ro.
    • Neapărat faceți backup la baza de date, folosind mysqldump otrs > /root/otrs-old.sql. Scripturile de migrare a datelor pe care le oferă OTRS sunt tare fragile. Este posibil să aveți nevoie să corectați ceva, să reimportați baza veche de date și să reluați migrarea.
    • bin/otrs.SetPermissions.pl cere, de fapt, o mulțime de argumente. Userul și grupul pentru OTRS este otrs, iar userul și grupul pentru serverul web este www-data.
    • serviciul OTRS (/etc/init.d/otrs-scheduler-linux) pare să dea o eroare de permisiuni. Reparați-o cu comanda:
chown otrs.www-data /opt/otrs/Kernel/Config/Files/ZZZAAuto.pm
  • La sfârșitul migrării, trebuie să aduceți la zi și fișierul crontab pentru otrs:
cd /opt/otrs/var/cron
cat * > /tmp/cron-new.txt
crontab -u otrs -l > /tmp/cron-old.txt
diff /tmp/cron-old.txt /tmp/cron-new.txt
apoi editați cron-old.txt pentru a reconcilia diferențele. La final, înlocuiți crontab-ul vechi cu acest fișier modificat:
crontab -u otrs /tmp/cron-old.txt
(cred, nu am testat această ultimă comandă).
  • Scriptul SetPermissions.pl pare să strice permisiunile și deținătorul pe .procmailrc. Asigurați-vă că ele coincid cu cele din versiunea anterioară.
  • Testați sistemul trimițând un email către contact@dexonline.ro și urmărind ce se întâmplă în interfață, în /var/log/apache2/error.log, în /var/log/mail.log etc.