- Django
- Jumbo Core
- Postfix
Installare Django e Jumbo Core.
Creare un progetto Django
Aggiungere nei site-packages del progetto appena creato l’applicazione jumbo-documents
hg clone http://hg.thundersystems.it/jumbo-new/jumbo-documents
Aggiungere nel file settings.py l’applicazione document
Eseguire il migrate : python manage.py migrate document
Creare i menu dei fax tramite il comando:
python manage.py create_menu
Lista dei parametri personalizzabili:
NOME PARAMETRO | DEFAULT | DESCRIZIONE |
---|---|---|
STATUS_DOC |
|
Voci degli stati che saranno presenti nella tendina STATO_DOCUMENTO |
SUPPORTO_DOC |
|
Voci dei supporti che saranno presenti nella tendina SUPORTO |
DOCUMENT_PATH_DOCUMENTS | ‘documents/’ | Rappresenta la directory ‘upload_to’ usata da django per salvare i file. E’ quindi il percorso che verra appeso alla directory DOCUMENT_ROOT |
DOCUMENT_LOG_FILENAME | ‘/tmp/jumbo_documents.log’ | Rappresenta il percorso e il nome del file che verra’ usato epr loggare il funzionamento dello script |
Note
IMPORTANTE!!! Nei local_settings.py bisogna aggiungere la costante INTERACTIVE_USER con il nome di un utente che abbia i permessi di superuser per i documenti. Se questa proprieta’ non viene settata lo script load_documents.py dara’ un errore sul salvataggio del documento.
Creare (se non e’ gia’ presente) una direcotry bin sotto /home/www/xxx.example.it
mkdir /home/www/xxx.example.it/bin
Creare, nella direcotry bin appena creata, un link simbolico allo script load_documents.py presente dentro la cartella bin del progetto jumbo-documents
ln -s /home/www/xxx.example.it/site-packages/jumbo-documents/document/bin/load_documents.py /home/www/xxx.example.it/bin
Creare la cartella DOCUMENT_PATH_DOCUMENTS dentro la DOCUMENT_ROOT (nel nostro esempio andrebbe creata /home/documents/documents) e dargli i permessi 770 con utente root e gruppo www-data.
Creare (se non esiste gia’) un nuovo file transport dentro la cartella /etc/postfix
vim /etc/postfix/transport
Aggiungere una nuova riga
dominioposta.local nome_transport:
In cui
dominioposta.local rappresenta il dominio di posta delle mail usate come indirizzi per la gestione documentale
nome_transport rappresenta il nome identificativo che si vuole dare a questo transport
Aggiornare il database di postfix per fargli trovare il nuovo transport
postmap /etc/postfix/transport
Note
Il comando sopra dovra’ essere lanciato ogni volta che viene fatta una modifica al file dei transport
Apriamo il file /etc/postfix/main.cf
vim /etc/postfix/main.cf
Aggiungiamo (se gia non esiste) la seguente linea
transport_maps = hash:/etc/postfix/transport
In questo modo gli abbiamo detto a postfix dove abbiamo mappato i nostri transport
Note
Controlliamo che nella variabile mydestination sia presente il dominio scelto per la gestione documentale
Aggiungere la riga
local_recipient_maps =
Che istruisce postfix facendogli accettare le mail anche da utenti che non conosce (altrimenti, dato che gli indirizzi della gestione documentale sono indirizzi che fanno solo da tramite per la chiamata al nostro script, postfix restituirebbe un errore di utente sconosciuto)
Apriamo il file /etc/postfix/master.cf
vim /etc/postfix/master.cf
Aggiungiamo la definizione del nostro transport (di solito lo metto in fondo ai transport gia’ presenti)
nome_transport unix - n n - 10 pipe
flags=DRhu user=utente argv=/home/www/xxx.example.it/bin/load_documents.py -s applicazione.settings -v ${user}
parametri da modificare :
- nome_transport --> con il nome scelto nel file /etc/postfix/transport
- utente --> con l'utente con cui verra' lanciato lo script (direi www-data)
- /home/www/xxx.example.it/ --> con la directory del progetto
- applicazione --> con il nome dell'applicazione
Riavviamo postfix
/etc/init.d/postfix restart