Articole & Tutoriale VoIP

Fax catre e-mail (fax2email)

24 Sep 2009

Daca in articolul precedent v-am prezentat o solutie prin care puteam sa trimitem SMS-uri prin intermediul unui client de e-mail, de data aceasta va vom prezenta o solutie care permite receptionarea unui fax de catre server-ul Asterisk si transmiterea acestuia prin e-mail, ca atasament de tip PDF .

Descrierea solutiei

Pentru a testa aceasta functionalitate se pot folosi doua solutii si anume:

In ambele variante se genereaza un fisier grafic in format TIFF multi-page insa acest format nu este optim pentru transmiterea prin e-mail deoarece aplicatiile standard instalate pe majoritatea statiilor de lucru nu afiseaza acest format. Pentru a evita instalarea unor aplicatii speciale s-a ales transformarea fisierului TIFF rezultat in format PDF. In acest scop a fost folosit utilitarul tiff2pdf, care este furnizat in pachetul libtiff.

Instalarea solutiei FFA (Fax For Asterisk)

Instalarea FFA este simpla si nu implica compilarea nici unui pachet software. Se folosesc pasii descrisi in fisierul README. Pe scurt acestia sunt:
  1. Procurarea unei licente pentru aplicatia Fax For Asterisk
  2. Validarea si instalarea licentei
  3. Determinarea modulelor necesare si instalarea acestora
  4. Verificarea instalarii si a licentei.

Odata cu instalarea FFA vor fi instalate si aplicatiile RxFax si TxFax. Acestea sunt necesare pentru functionalitatea solutiei.

Instalarea pachetului libtiff

Pachetul libtiff se instaleaza in functie de distributia Linux folosita pentru server-ul Asterisk. Pentru distributiile de tip Red Hat (Red Hat, Fedora, Centos, etc.) se foloseste comanda:

 [root@tenora ~]# yum install libtiff

Cum functioneaza?

Logica solutiei pentru receptionarea unui fax va fi implementata in dialplan-ul pe care il foloseste centrala Asterisk. Un astfel de dialplan, care contine pe langa fax2email si solutia email2fax (transmiterea unui fax cu ajutorul clientului de email), este disponibil aici.

Despre solutia email2fax vom vorbi in cadrul unui alt articol.

Revenind la dialplan, pentru solutia fax2email s-au folosit urmatoarele contexte:

  • custom-fax - tratarea apelurile de tip "incoming fax" folosite pentru receptionarea fax-ului.
  • macro-tenora-faxreceive - apelarea functiei RxFax
  • macro-tenora-faxstatus - salvarea unor variabile de canal.

In urma acestor configurari la primirea unui apel de tip "incoming fax", se va raspunde apelului, se vor seta o serie de variabile de canal (de ex. numele fisierului folosit pentru salvarea datelor primite pe fax) dupa care se va apela aplicatia RxFax.

La detectarea inchiderii apelului se face transformarea fisierului TIFF receptionat in format PDF. Daca fisierul nu a putut fi transformat (de ex. lipseste sau a este corupt) se va trimite un mesaj de receptionare eronata a faxului. Daca fisierul PDF exista atunci se va transmite ca atasament. In ambele situatii, se va primi un e-mail in care sunt incluse variabilele de canal setate de aplicatia RxFax, asa cum se poate vedea si in imaginea de mai jos.

Confirmare de primire fax pe e-mail

Ultimul pas consta in rularea unei aplicatii care va sterge fisierele generate si care nu mai sunt necesare ulterior.

In plus

In cadrul dialplan-ului au mai fost folosite, independent de solutia FFA, urmatoarele aplicatii:

  • mime-construct - pentru transmiterea de mesaje de tip e-mail. Instalarea acestei aplicatii este descrisa aici.
  • backticks - aplicatie Asterisk care seteaza intr-o variabila de canal rezultatul rularii unei aplicatii de sistem. Instalarea acestei aplicatii este descrisa aici.

Asteptam comentariile si sugestiile dumneavoastra pe adresa info@modulo.ro cat si pe forumul VOIP - totul despre voice over ip, cu subiectul Receptionarea FAX-urilor prin e-mail..