- Django
- Jumbo Core
- ReportLab
Installare Django e Jumbo Core.
Creare un progetto Django
Aggiungere nei site-packages del progetto appena creato l’applicazione jumbo-fax
hg clone http://hg.thundersystems.it/jumbo-new/jumbo-fax
Aggiungere nel file settings.py l’applicazione fax
Eseguire il migrate : python manage.py migrate fax
Creare i menu dei fax tramite il comando:
python manage.py create_menu
Lista dei parametri personalizzabili:
NOME PARAMETRO | DEFAULT | DESCRIZIONE |
---|---|---|
SUBJECT_FAX | ‘’ | Stringa aggiunta davanti al soggetto della mail dei fax ricevuti/inviati |
FROM_FAX | ‘<fax@example.com>’ | From utilizzato nella mail che verra’ inviata agli HYLA_MAIL_RECEIPT |
HYLA_MAIL_RECEIPT | [] | Lista degli indirizzi mail a cui dovra’ essere recapitata la notifica di invio/ricezione di un fax |
FAX_PATH_DOCUMENTS | ‘fax/’ | Rappresenta la directory ‘upload_to’ usata da django per salvare i file. E’ quindi il percorso che verra appeso alla directory DOCUMENT_ROOT |
ENABLE_COVER | False | Se True verra’ abilitata anche la possibilita’ di inserire una cover durante l’invio del fax. Attenzione: l’abilitazione della cover presuppone che ci sia installata la parte relativa ad openoffice (leggere il relativo tutorial) |
Creare la directory DOCUMENT_ROOT, settata nel file local_settings.py (se si mette /home/documents/ si possono eseguire i comandi seguenti per fare tt in automatico):
mkdir /home/documents
Creare la directory FAX_PATH_DOCUMENTS, settata nel file local_settings.py (se si mette fax/ e il DEFAULT_FILE_STORAGE e’ /home/documents/ si possono eseguire i comandi seguenti per fare tt in automatico):
mkdir /home/documents/fax
Aggiungere nel gruppo www-data l’utente uucp, che e’ quello con cui gira hylafax. Per farlo aprire il file /etc/group e modificare la linea:
www-data:x:1000:
in:
www-data:x:1000:uucp
Modificare i permessi della cartella FAX_PATH_DOCUMENTS (/home/documents/fax nel caso sopra) mettendo come utente uucp e come gruppo www-data; dare i permessi di lettura/scrittura/esecuzione al gruppo:
chown uucp:www-data /home/documents/fax
chmod 775 /home/documents/fax
Creare (se non e’ gia’ presente) una direcotry bin sotto /home/www/xxx.example.it
mkdir bin /home/www/xxx.example.it
Creare, nella direcotry bin appena creata, un link simbolico allo script hylafax.py presente dentro la cartella bin del progetto jumbo-fax
ln -s /home/www/xxx.example.it/site-packages/jumbo-fax/fax/bin/hylafax.py /home/www/xxx.example.it/bin
Aggiungere in fondo al file /var/spool/hylafax/bin/faxrcvd la seguente riga per chiamare lo script in python:
/home/www/xxx.example.it/bin/hylafax.py -s PROJECT.settings -c c$COMMID
Copiare il file /var/spool/hylafax/bin/notify in /var/spool/hylafax/bin/notify.original:
cp /var/spool/hylafax/bin/notify /var/spool/hylafax/bin/notify.original
Modificare il file originale /var/spool/hylafax/bin/notify in modo che contenga solo le seguenti due righe:
#!/bin/bash
/home/www/xxx.example.it/bin/hylafax.py -s PROJECT.settings -q $1 -x $2
Aggiungere i permessi di sudo al’utente www-data per il comando /usr/bin/sendfax:
visudo -> e aggiungere la seguente riga:
www-data ALL=NOPASSWD:/usr/bin/sendfax,/usr/bin/faxrm
Note
Ricordarsi di settare la variabile EMAIL_HOST (aggiungendola nei local_settings) con l’ip del server di posta
Nel caso bisogna importare i fax da hylafax (perche non si ha un database da cui farlo), bisogna lanciare lo script python import_fax.py presente nella directory scripts dell’applicazione jumbo-fax