Pràctica ASI-C3-IAIG: DMS: Alfresco III. Configuració SMTP i altres

De Wikijoan
Dreceres ràpides: navegació, cerca

Contingut

Objectius

Un tema important que encara no s'ha tocat és l'enviament de correus electrònics per fer notificacions i alertes dins del sistema DMS. Veurem com es configura. També mirarem altres aspectes que poden ser d'utilitat en la implantació real de l'Alfresco.

Desenvolupament

Configuració SMTP

La coonfiguració de l'enviament de mails mitjançant SMTP i el servidor de Gmail està documentat en aquest enllaç:

El tema no és fàcil perquè partint de la documentació oficial no s'implementa bé la solució. El consol és saber que hi ha gent que ha tingut els mateixos problemes i que les possibles solucions es poden trobar en els fòrums. Com a conclusió, és important veure els logs i el rastre de l'activitat, per poder esbrinar la causa dels problemes i poder aïllar el problema.

Alfresco i recepció de mails

prendre una acció després de la recepció d'un mail. Per exemple, quan rebem un mail amb un subject, els fitxers adjunts depositar-los en una carpeta. Upload Files to Alfresco via Email -- Inbound Emails

Alfresco i recepció de mails (Inbound Emails)

De la mateixa manera que podem enviar mails, el sistema Alfresco també pot prendre una acció després de la recepció d'un mail. Per exemple, quan rebem un mail amb un subject, els fitxers adjunts podem depositar-los en una carpeta.

A la web està documentat exemples d'integració d'Outlook o Thunderbird amb Alfresco.

Openoffice

En el fitxer alfresco-global.properties veiem aquesta informació relacionada amb OpenOffice:

### External executable locations ###
ooo.exe=/opt/alfresco-3.4.d/openoffice/program/soffice.bin
ooo.enabled=false
img.root=/opt/alfresco-3.4.d/common
img.dyn=${img.root}/lib
img.exe=${img.root}/bin/convert
swf.exe=/opt/alfresco-3.4.d/common/bin/pdf2swf
jodconverter.enabled=true
jodconverter.officeHome=/opt/alfresco-3.4.d/openoffice
jodconverter.portNumbers=8101

i veiem que l'executable és /opt/alfresco-3.4.d/openoffice/program/soffice.bin

És necessari tenir el servei d'OpenOffice engegat per tal de poder visualitzar bé els documents .doc, per exemple en el Alfresco Share.

Així doncs, la idea subjacent és disposar d'un servidor d'Openoffice per transformar documents entre formats. Típicament, un navegador web sap visualitzar bé documents HTML/TXT/PDF, però no d'altres formats. Recordem que Alfresco/Tomcat és una solució multiplataforma i per tant s'ha de buscar solucions independentment de la plataforma.

Anem a veure-ho amb un exemple:

Arrencar el servei de OpenOffice en mode background, sense cap X server

/usr/lib/openoffice/program/soffice "-accept=socket,host=localhost,port=8100;urp;StarOffice.ServiceManager" -nologo -headless -nofirststartwizard

En aquest cas utilitzo la instal.lació standard de l'Openoffice, però podria utilitzar l'executable que proporciona Alfresco situat a /opt/alfresco-3.4.d/openoffice/program/soffice.bin.

Per aturar el servei:

$ killall soffice.bin

OpenOffice pot arrencar automàticament en el procés d'arrencada de l'Alfresco, tal com es veu en el fitxer openoffice_ctl.sh

# Open Office
SOFFICE_PATH="/opt/alfresco-3.4.d4/openoffice/program"
SOFFICE_PORT="8100"
SOFFICEBIN=/opt/alfresco-3.4.d4/openoffice/program/soffice.bin
SOFFICE="$SOFFICEBIN -nofirststartwizard -nologo -headless -accept=socket,host=
SOFFICE_STATUS=""

però no arrenca automàticament perque per defecte n el fitxer alfresco-global.properties veiem aquesta informació relacionada amb OpenOffice:

...
ooo.exe=/opt/alfresco-3.4.d/openoffice/program/soffice.bin
ooo.enabled=false
...

Resumint, per convertir un document tipus OpenOffice a pdf en background, primer arrenco el Openoffice en mode headless

/usr/lib/openoffice/program/soffice "-accept=socket,host=localhost,port=8100;urp;StarOffice.ServiceManager" -nologo -headless -nofirststartwizard

i després necessito un script per interactuar amb el servidor Openoffice. Per exemple:

$ python DocumentConverter.py /home/joan/Documents/hola.odt /home/joan/Documents/hola.pdf

i es crea el fitxer hola.pdf

Google Docs

Document pdf a la web: Getting Started Using Google DocsTM with Alfresco

Llegir i comentar el document i en quins àmbits pot ser útil

Redimensionar imatges

Alfresco, com a sistema de gestió documental, tracta les imatges com a documents, i les sap manipular. La manipulació d'imatges ve de la mà d'una aplicació externa com és ImageMagick.

Existeix l'acció Transformar copiar una imagen. Com a opcions es pot posar el tamaany de la nova mida:

-resize 100x100
ImageMagick is a software suite to create, edit, and compose bitmap images.
It can read, convert and write images in a variety of formats (over 100)
including DPX, EXR, GIF, JPEG, JPEG-2000, PDF, PhotoCD, PNG, Postscript,
SVG, and TIFF. Use ImageMagick to translate, flip, mirror, rotate, scale,
shear and transform images, adjust image colors, apply various special
effects, or draw text, lines, polygons, ellipses and Bézier curves.
All manipulations can be achieved through shell commands as well as through
an X11 graphical interface (display).

Accedint a la base de dades

El model de dades (les taules i les relacions entre elles), és realment críptic. Fins i tot, no hi ha cap taula que es digui users o similar.

$ cd /opt/alfresco-3.4.d4/mysql/bin$
$ ./mysql -u root -p alfresco
mysql> show tables;
mysql> select * from jbpm_taskinstance;
...
| 329 | W      |        1 | inwf:acceptInviteTask  | Invitación a unirse al sitio Seguiment_medic      | asi2a09  | 2011-03-25 17:24:13 | NULL   | NULL                | NULL     |         3 |              |              | �       | �
...
mysql> select * from alf_activity_feed;
...

mysql> select * from alf_permission; 
+----+---------+---------------+------------------+
| id | version | type_qname_id | name             |
+----+---------+---------------+------------------+
|  1 |       0 |            21 | All              | 
|  2 |       0 |            32 | Consumer         | 
|  3 |       0 |            32 | Contributor      | 
|  4 |       0 |            38 | Read             | 
|  5 |       0 |            32 | Collaborator     | 
|  6 |       0 |            32 | Editor           | 
|  7 |       0 |            32 | Coordinator      | 
|  8 |       0 |           170 | SiteManager      | 
|  9 |       0 |           170 | SiteCollaborator | 
| 10 |       0 |           170 | SiteContributor  | 
| 11 |       0 |           170 | SiteConsumer     | 
| 12 |       0 |            38 | ReadPermissions  | 
+----+---------+---------------+------------------+
12 rows in set (0.00 sec)

Feina per l'alumne

En la pràctica anterior vas treballar amb els usuaris superXX i asi2aXX. Quan l'usuari superXX convida (Invite) el metge resident asi2aXX per escriure en el seu espai, hi ha la possibilitat d'enviar un mail de notificació. Prova-ho (Exercici 1). Per defecte el missatge que s'envia és (Utilitzem la plantilla per defectte: invite_user_email.ftl ):

Asunto: Ha sido invitado a '/Company Home/User Homes/joan/exercicis_corregits' por joan quintana.
Missatge:
Ha sido invitado a '/Company Home/User Homes/joan/exercicis_corregits' por joan quintana.

Usted tendrá el rol de: Contribuidor

Modifica la plantilla d'invitació. Com a admin, crea una nova plantilla:


Exercici 2: l'alumne editarà la seva pròpia plantilla: invite_user_email_XX.ftl. Ficar la informació en català i personalitzar. Les plantilles estan en el Data Dictionary, i s'ha d'entrar com a admin.

Actualment, la plantilla invite_user_email.ftl és:

You have been invited to '${space.name}' by ${person.properties.firstName}<#if person.properties.lastName?exists> ${person.properties.lastName}</#if>.

<#if role?exists>You will have the role of: ${role}</#if>

You can view the space through the Alfresco client:
<#assign ref=space.nodeRef>
<#assign workspace=ref[0..ref?index_of("://")-1]>
<#assign storenode=ref[ref?index_of("://")+3..]>
${url.serverPath}/alfresco/navigate/browse/${workspace}/${storenode}

Regards

Alfresco

Però tanmateix, la informació no la reps en anglès, la reps en castellà (si esculls la sessió amb l'idioma castellà). Això significa que les frases d'aquesta plantilla estan traduïdes. Tanmateix, la traducció no és una tasca trivial, sinó que s'ha de recompilar i redistribuir l'Alfresco (Tomcat), tal com s'explica: (llegir, Exercici 3)

Exercici 4. Crear una regla:

Exercici 5. La idea és la mateixa, enviar un mail, però ara és el superXX el que envia un mail al asi2aXX quan ha resolt com a acceptada/denegada una consulta mèdica. A veure si pots posar en el mail com a text el resultat (...la consulta ... ha estat ACCEPTADA...).

Exercici 6. Tant l'usuari superXX com l'usuari asi2aXX tenen les carpetes radiografies i radiografies_th. Crearás una regla de manera que quan asi2aXX introdueixi una radiografia associada a un expedient (format JPG, GIF, etc, renombrar-la amb un nom que quedi clar a quin expedient està associada), s'hauran d'emprendre les següents accions:

  1. crear el thumbnail i guardar-lo en la carpeta thumbnail
  2. enviar la radiografia al superXX en el format original
  3. enviar el thumbnail a la carpeta thumbnail del superXX

Entrega

No cal entregar res, es pot seguir el rastre de l'activitat en la base de dades i en l'aplicació.

Recursos

Durarda

3 hores



creat per Joan Quintana Compte, març 2011

Eines de l'usuari
Espais de noms
Variants
Accions
Navegació
Institut Jaume Balmes
Màquines recreatives
CNC
Informàtica musical
joanillo.org Planet
Eines