Archivos mensuales: mayo 2011

Calculando métricas en Alfresco mediante scripts

Para el cálculo de métricas en las búsquedas, subidas de ficheros, etc. podemos usar alguno de los programas que existen para estas tareas como es JMeter.

JMeter es un programa en Java, del proyecto Apache, que permite testear aplicaciones web. Es una aplicación de escritorio y muy usada en los entornos en los que se utilizan servidores de aplicaciones, sobre todo Tomcat.

Para más información podemos ir a la URL del proyecto: http://jakarta.apache.org/jmeter/

Si no tenemos tiempo de crear una batería de pruebas siempre podemos recurrir al intérprete BASH de Linux, Unix, MacOS, etc. que puede facilitarnos esta tarea.

Haciendo uso de algún WebScript ya implementado en Alfresco o modificando alguno de estos podemos usar las funciones y comandos de BASH para tomar tiempos.

Búsqueda aleatoria:

Una de las pruebas más importantes es el de las búsquedas en Alfresco. En este caso vamos a usar un WebScript de la parte OpenSearch que tiene Alfresco. El problema de este sistema es que solo devuelve los resultados en 3 formatos, HTML, RSS y ATOM, y en nuestro caso necesitamos que los devuelva en formato texto (TEXT) para poder tratarlo. Para esto, solo tenemos que modificar el descriptor para incluir en el contexto la llamada a una plantilla FreeMarker que devuelva texto plano e incluir esta plantilla. Para no «ensuciar» el despliegue lo haremos creando el directorio en alfresco/extension de forma que además podamos conservarlo entre distintas actualizaciones del producto. El sitio para introducir los dos ficheros será: /alfresco/extension/templates/webscripts/org/alfresco/repository/

Los dos ficheros serán los siguientes:

Fichero: keywordsearch.get.desc.xml


  Alfresco Keyword Search (OpenSearch Enabled)
  Execute Keyword Search against Alfresco Repository (Company Home and below)
  /api/search/keyword.html?q={searchTerms}&p={startPage?}&c={count?}&l={language?}
  /search/keyword.html?q={searchTerms}&p={startPage?}&c={count?}&l={language?}
  /api/search/keyword.texp?q={searchTerms}&p={startPage?}&c={count?}&l={language?}
  /search/keyword.text?q={searchTerms}&p={startPage?}&c={count?}&l={language?}
  /api/search/keyword.atom?q={searchTerms}&p={startPage?}&c={count?}&l={language?}
  /search/keyword.atom?q={searchTerms}&p={startPage?}&c={count?}&l={language?}
  /api/search/keyword.rss?q={searchTerms}&p={startPage?}&c={count?}&l={language?}
  /search/keyword.rss?q={searchTerms}&p={startPage?}&c={count?}&l={language?}
  /api/search/keyword.portlet?q={searchTerms}&p={startPage?}&c={count?}&l={language?}
  guest
  required

Fichero: keywordsearch.get.text.ftl 

${row.name}

Una vez introducidos los ficheros en el sitio correspondiente solo queda ir a la URL http://servidoralfresco:8080/alfresco/service/index y pulsar el botón de refresco de los WebScripts.

Ahora podemos ejecutar el script creado para las búsquedas. Este script lo que hace es una búsqueda por una palabra o KEYWORD, guardar los resultados en un fichero y después realizar el número de búsquedas solicitadas de forma automática guardando los tiempo y redirigiéndolos a un fichero para poder editar  posteriormente los resultados.

La sintaxis del script es:

./random_search usuario password keyword núm_iteracciones url_alfresco

Fichero: random_search

#!/bin/bash

# Pruebas de busquedas en Alfresco usando el webscript «search»
# www.fegor.com

if [ ! $# -eq 5 ]
then
        echo Sintaxis: random_search user passwd keyword num_randoms alfresco_url
        exit 1
fi

echo Realizando consulta completa…
IFSPREV=$IFS
IFS=$’x0A’$’x0D’
curl –user «$1:$2» «$5/service/api/search/keyword.text?q=$3&p=Company%20Home&c=10000&l=es» > random_search_result.txt

echo Comenzando las busquedas…
LINEAS=`cat random_search_result.txt | wc -l`
echo -e «Results of random_search.sh» > random_search_times.csv SG_FOR_I=`date +%s`
for n in $(seq 1 $4);
do
        RNM=$RANDOM
        let «RNM %= $LINEAS»
        let «RNM += 1»
        KEYWORD=`head -n $RNM random_search_result.txt | tail -1 | tr -d ‘r’`
        NS_CURL_I=`date +%s%N`
        curl –user «$1:$2» «$5/service/api/search/keyword.text?q=${KEYWORD}&p=Company%20Home&c=1&l=es»
        NS_CURL_F=`date +%s%N`
        let TOTAL_NS_CURL=$NS_CURL_F-$NS_CURL_I
        let TOTAL_MS_CURL=TOTAL_NS_CURL/1000000
        echo -e «`date`t$KEYWORDt$TOTAL_NS_CURLt$TOTAL_MS_CURL» >> random_search_times.csv 

done
SG_FOR_F=`date +%s`
let TOTAL_SG_FOR=$SG_FOR_F-$SG_FOR_I
echo -e «rrTotal time» >> random_search_times.csv
echo -e «`date`t$TOTAL_SG_FOR» >> random_search_times.csv
IFS=$IFSPREV

Un ejemplo de ejecución del comando sería:

[root@alfpru1 scripts]# ./random_search admin admin «*ftl» 5 http://192.168.56.1:8080/alfresco
Realizando consulta completa…
  % Total    % Received % Xferd  Average Speed   Time    Time     Time  Current
                                 Dload  Upload   Total   Spent    Left  Speed
100   671    0   671    0     0   7910      0 –:–:– –:–:– –:–:–     0
Comenzando las busquedas…
categorysearch.get.atom.404.ftl
show_audit.ftl
categorysearch.get.atom.ftl
my_docs.ftl
general_example.ftl

Y posteriormente en la hoja de cálculo:

Subidas masivas:

Otra de las pruebas es la de realizar subidas masivas y en profundidad de un número de ficheros y comprobar los tiempos de estas subidas. El script es bastante parecido al anterior y hace uso de un WebScript que también está incluido en Alfresco. En este caso hay que crear un «site» llamado «tests» para poder subir los ficheros a dicho espacio.

Fichero: directory_upload
#!/bin/bash

# Pruebas de subidas en Alfresco usando el webscript «upload»
# www.fegor.com

if [ ! $# -eq 5 ]
then
        echo Sintaxis: directory_upload user passwd path ext alfresco_url
        exit 1
fi

echo «Subiendo…»
IFSPREV=$IFS
IFS=$’x0A’$’x0D’

echo -e «Results of directory_upload.sh» > directory_upload_times.csv
SG_FOR_I=`date +%s`
for f in $(find $3 ( -name *.$4 ));
do
        NS_CURL_I=`date +%s%N`
        curl -k -X POST –user «$1″:»$2″ -F filedata=@$f -F siteid=»tests» -F containerid=»documentLibrary» -F uploaddirectory=»testsDir» -F filename=»`basename $f`» -F contenttype=»`file –brief –mime $f`» «$5/service/api/upload» | grep ‘description’ | cut -d ‘:’ -f 2 | tr -d ‘»‘
        NS_CURL_F=`date +%s%N`
        let TOTAL_NS_CURL=$NS_CURL_F-$NS_CURL_I
        let TOTAL_MS_CURL=TOTAL_NS_CURL/1000000
        echo -e «`date`t$ft$TOTAL_NS_CURLt$TOTAL_MS_CURL» >> directory_upload_times.csv
done
SG_FOR_F=`date +%s`
let TOTAL_SG_FOR=$SG_FOR_F-$SG_FOR_I
echo -e «rrTotal time» >> directory_upload_times.csv
echo -e «`date`t$TOTAL_SG_FOR» >> directory_upload_times.csv
IFS=$IFSPREV

Este script también devuelve un fichero (directory_upload_times.csv) para su edición y estudio mediante cualquier sistema de hoja de cálculo como MS-Excel o OpenOffice.org

Un ejemplo de ejecución podría ser el siguiente:

[root@alfpru1 scripts]# ./directory_upload admin admin AMCM2011/ pdf http://192.168.56.1:8080/alfresco
Subiendo…
  % Total    % Received % Xferd  Average Speed   Time    Time     Time  Current
                                 Dload  Upload   Total   Spent    Left  Speed
100 3252k  100   278  100 3252k    253  2968k  0:00:01  0:00:01 –:–:– 3014k
 File uploaded successfully
  % Total    % Received % Xferd  Average Speed   Time    Time     Time  Current
                                 Dload  Upload   Total   Spent    Left  Speed
100  772k  100   253  100  772k    424  1295k –:–:– –:–:– –:–:– 1435k
 File uploaded successfully
  % Total    % Received % Xferd  Average Speed   Time    Time     Time  Current
                                 Dload  Upload   Total   Spent    Left  Speed
100  311k  100   257  100  311k    414   502k –:–:– –:–:– –:–:–  510k
 File uploaded successfully
  % Total    % Received % Xferd  Average Speed   Time    Time     Time  Current
                                 Dload  Upload   Total   Spent    Left  Speed
100 2485k  100   251  100 2485k    385  3814k –:–:– –:–:– –:–:– 3976k
 File uploaded successfully
  % Total    % Received % Xferd  Average Speed   Time    Time     Time  Current
                                 Dload  Upload   Total   Spent    Left  Speed
100  415k  100   251  100  415k    245   406k  0:00:01  0:00:01 –:–:–  429k
 File uploaded successfully
  % Total    % Received % Xferd  Average Speed   Time    Time     Time  Current
                                 Dload  Upload   Total   Spent    Left  Speed
100  481k  100   255  100  481k    443   836k –:–:– –:–:– –:–:–  859k
 File uploaded successfully
  % Total    % Received % Xferd  Average Speed   Time    Time     Time  Current
                                 Dload  Upload   Total   Spent    Left  Speed
100 2471k  100   249  100 2471k    242  2402k  0:00:01  0:00:01 –:–:– 2444k
 File uploaded successfully

… procesando los datos:

Uso de Google Docs con Alfresco… «en la vida real»

Vamos a seguir con nuestros casos de uso en la vida real utilizando Alfresco. Para eso, nuestra ficticia aseguradora FEGOR necesita compartir documentos con los peritos, comerciales y asegurados. José Grillo, antes era perito de la compañía, actualmente lo han cambiado al departamento comercial, necesita de vez en cuando crear y modificar contratos y para ello usa Google Docs que le es muy cómodo ya que puede usarlo desde cualquier ordenador con navegador, además puede compartirlo con otras personas tanto sus jefes como asegurasdos (clientes) para que incluso terminen de rellenar datos que falten.

Como siempre, vamos a suponer que la aseguradora es pequeña y no tiene infraestructura propia para correo, web, etc., excepto el pequeño servidor de oficina con Alfresco instalado, un ADSL y la configuración para poder entrar desde fuera. Vamos a aprovechar las ventajas de Google para hacer esto de forma gratuita y no tener que contratar los servicios de terceros por lo que suponemos que hemos configurado Google Apps para nuestro correo y tenemos las siguientes direcciones:

Para la autenticación de Alfresco con Google Docs: alfresco@fegor.com
Usuario José Grillo que es ahora comercial: josegrillo@fegor.com
Usuario Toni Fuente es el director del departamento de contratos: tonifuente@fegor.com

José Grillo dejará una «copia de trabajo» de un contrato de seguro en Google Docs para que Toni Fuente pueda verificarla y dar el visto bueno o incluso modificar lo que haga falta desde su casa.

Para la configuración de la integración de Alfresco con Google Docs recomiendo los siguientes enlaces:

1. Toni de la Fuente tiene un magnífico vídeo que explica tanto la configuración como el funcionamiento de esta integración. (http://blyx.com/2011/05/23/screencast-sobre-integracion-de-alfresco-y-google-docs)

[vimeo http://www.vimeo.com/24042851 w=400&h=320]

2. http://wiki.alfresco.com/w/images/7/78/Getting_Started_with_Using_Google_Docs_with_Alfresco.pdf

Hay que crear el fichero googledocs.properties en extensionsubsystemsgoogledocsdefaultdefault y poner los siguites valores:

Fichero: googledocs.properties

googledocs.googleeditable.enabled=true
googledocs.application.name=Alfresco ECM system
googledocs.url=https://docs.google.com/feeds/default/private/full
googledocs.downloadurl=https://docs.google.com/feeds/download
googledocs.username=alfresco@fegor.com
googledocs.password=password_de_la_cuenta
googledocs.spreadsheet.service.name=wise

Actualización (10/10/2011), Rodrigo Tardioli Moreira me avisa que debido a la política de seguridad de Google Docs, el valor de «googledocs.url» debe usar el protocolo HTTPS en lugar de HTTP, por tanto, la línea sería:

googledocs.url=https://docs.google.com/feeds/default/private/full

Para más información se puede ir a la siguiente dirección: http://googleappsdeveloper.blogspot.com/2011/09/requiring-ssl-for-documents-list.html

Para que visualice las opciones de creación de los documentos en Google Docs desde Alfresco Share hay que activarlo explícitamente en web-config-custom.xml  de la carpeta web-extension. (Para la versión 4.x no es necesario activarlo ya que viene por defecto descomentado)

[…]

  true
 
    application/msword
    application/vnd.ms-excel
    application/vnd.ms-powerpoint
 

[…]

En el perfil del usuario José Grillo (Email=josegrillo@fegor.com y Usuario Google=josegrillo@fegor.com) y en el perfil de Toni Fuente (Email=tonifuente@fegor.com y Usuario Google=tonifuente@fegor.com)

Además, esto es opcional, si el usuario administrador va a crear todos los espacios donde los usuarios suban documentos y estos no van a ser administradores de dicho sitio, para que no haya problemas en la asignación de roles de escritura a los usuarios que suben los documentos (ya que el propietario o «owner» del documento en Google Docs será el que haya creado el sitio) recomiendo que (usuario admin) sea el mismo usuario de Google que el usado en el fichero de propiedades. En este caso, tanto el «Email» como el «Usuario Google» los he puesto como alfresco@fegor.com.

Vamos a crear un nuevo sitio colaborativo (privado) llamado «Contratos» y dentro de la Biblioteca de documentos crearemos carpetas para «Hogar», «Vehículos» y «Vida» que serán los tipos de contratos. Este sitio lo creará el usuario Toni Fuente ya que es el responsable de este departamento e invitará a José Grillo al que asignará el rol de Coordinador. José Grillo deberá responder desde su correo a esta solicitud de invitación, evidentemente.

Una vez realizado ambos usuarios deben tener acceso al sitio colaborativo (privado) y poder crear documentos.

Ahora ya puede entrar José Grillo y crear su primer contrato para ser enviado a Google Docs, para ello debe seleccionar la opción de «Crear contenido…» de «Google Docs documento» en la Biblioteca de documentos.

Una vez creado el documento (no el contenido) y rellenado todos los metadatos, puede subirlo (José Grillo) a Google Docs para poder editarlo desde cualquier lugar donde se tenga acceso. De hecho, lo que crea es una copia de trabajo del documento.

Desde este momento ya puede editarse mediante Google Docs utilizando el enlace que Alfresco Share crea para este directamente, «Este documento ha sido subido por usted a Google Docs para su edición». Además, José Grillo recibe un mensaje a su cuenta de google con el enlace del documento a editar.

Pulsando el enlace iremos directamente al documento y si no hay sesión inicializada en google, se solicitará. En este caso se solicita una autenticación desde Google Apps.

Al entrar, José Grillo puede modificar el documento de contrato con la ventaja de no tener que instalar un programa ofimático en su ordenador o mejor aún, puede editar y modificar el contrato desde cualquier lugar donde pueda acceder a una navegador desde un ordenador.

Pero, además, en este caso, José Grillo necesita dar permisos a su jefe Toni Fuente porque necesita que realice unos cambios. Para ello directamente en el botón «Share» de Google Docs puede incluirlo y asignarle el rol de modificar el documento.

Es evidente que además, si necesita que el «asegurado» pueda editar el documento o simplemente visualizarlo en modo lectura para imprimirlo, puede invitarlo igualmente. Solo tendrá que tener una cuenta en google.

Pero, ¿y si necestita que toda la aseguradora tenga acceso a dicho documento?, es decir, todos los que pertenezcan al dominio fegor.com deben poder modificar/ver el documento. Pues, desde el mismo Google Docs cuando estamos dentro de un dominio Google Apps podemos asignar permisos a nivel de la misma organización. Para ello pinchamos  en el enlace «Change» o «Compartir» de la primera línea de permisos que se visualiza, en este caso se puede observar en la imagen anterior. De esta forma podemos hacer que las cuentas creadas dentro de fegor.com tengan acceso vía un link o acceso directamente.

Una vez modificado, José Grillo puede «desproteger» el documento con lo que es borrado del acceso desde Google Docs y ya puede tener acceso desde el entorno Alfresco.

Solo comentaros que, igual que se ha creado desde cero el documento, para subir un documento a Alfresco y poder compartirlo en Google Docs necesitamos asignarle el aspecto «Editable en Google Docs» y ya podremos realizar todas las tareas que hemos visto.

Ahora toda la aseguradora FEGOR puede modificar, ver e imprimir contratos de seguros y además pueden enviar links compartidos a los asegurados, lo que le reporta un gran beneficio y flexibilidad a la hora de trabajar de forma deslocalizada y colaborativa…

… y espero que este artículo sirva de ayuda para extrapolarlo a otras situaciones similares 🙂

Uso del correo electrónico en Alfresco en la vida real – parte 5 (última)

En la parte 4 de este tema ya quedó todo configurado así que solo queda realizar la prueba de funcionamiento enviando los documentos desde Thunderbird desde josegrillo@fegor.com a partes@alfresco.fegor.com

5

 

Una vez enviado se puede ver el resultado en las carpetas:

6

Y los metadatos del fichero de email:

7

Con esto espero haber ayudado a todos los que necesitaban algún caso de uso en Alfresco y de cómo este puede ayudar mucho a las pequeñas y medianas empresas tanto en la versión Enterprise como Community. Lo ideal, creo, sería que Alfresco Sofware sacara una versión PYME para este segmento de empresas que necesitan un producto profesional y asequible.

Por último y sin contar el coste de la versión Enterprise, si se opta por la Community los gastos mensuales de esta infraestructura serían aproximadamente de:

1 Línea ADSL 3 a 10 Mbps = 50 eur./mes

1 IP fija para el ADSL = 10 eur./mes

1 Alquiler de dominio y ISP = 10 eur./mes

Cuentas de correo de 7Gb. en Google Apps = gratis

Sitios web en Google Apps = gratis

Dominio en Google Apps = gratis

Total = 70 euros al mes

Uso del correo electrónico en Alfresco en la vida real – parte 4

En esta cuarta parte vamos a crear las reglas necesarias para que al recibir el email de josegrillo@fegor.com los ficheros adjuntos se distribuyan como deben.

1

 

Y la regla para las fotos:

 

2

 

Quedando las dos reglas de la siguiente forma:

 

3

Ahora desde su correo josegrillo@fegor.com podrá enviar el mensaje a partes@alfresco.fegor.com para entregar los documentos… ¿si?, ¿pero cómo hacemos para que alfresco.fegor.com sea un subdominio? pues hay que crearlo en nuestras DNS, sí, en las que creamos las entradas para google, en este caso hay que crear un host con registro tipo A a la dirección del ordenador de la oficina y un registro MX apuntando al registro del tipo A. También creando un subdominio podría realizarse. Las columnas de la siguiente imagen corresponen al Host, Registro y Destino.

4

En la siguiente parte solo queda ver la realización de la prueba de funcionamiento…

Uso del correo electrónico en Alfresco en la vida real – parte 3

Continuamos con la tercera parte de este tema y vamos a crear un sitio llamado «Siniestros» donde se almacenarán los expedientes y fotografías de los partes de siniestros o accidentes. A este sitio hay que invitar al perito José Grillo con el rol de contribuyente para que pueda enviar los documentos. El sitio además será privado.

download3

Hay que crar también 3 carpetas, partes, expedientes y fotos para realizar las operaciones que queremos implementar. Cuando el perito envíe el expediente y fotos como adjuntos en el email, estos deberán distribuirse entre las carpetas creadas.

download4

Además a la carpeta «partes» hay que asignarle el aspecto «Atributos de Email» y asignarle el valor «partes» al atributo «alias». Recuerdese que tuvimos que modificar share-config-custom.xml para hacer que se visualizase este campo.

download5

 

… asignación del valor en las propiedades de la carpeta «partes»:

download6

Uso del correo electrónico en Alfresco en la vida real – parte 2

Sobre la configuración de Alfresco, primero debemos crear el usuario Jose Grillo para que pueda autenticarse y enviar los emails. Este usuario además debe tener una cuenta de correo electrónico válida para recibir notificaciones, en este caso es josegrillo@fegor.com

No hay que olvidarse de añadirlo al grupo EMAIL_CONTRIBUTORS para tener permisos de enviar correos hacia Alfresco.

Ahora debemos configurar el correo electrónico saliente y entrante. Para la configuración del correo recomiendo la lectura de los siguientes enlaces en los que se explican perfectamente todas las posibilidades:

http://blyx.com/2010/02/08/integracion-de-alfresco-con-el-correo-electronico/

http://wiki.alfresco.com/wiki/Inbound_SMTP_Email_Server_Configuration
http://wiki.alfresco.com/wiki/Outbound_E-mail_Configuration

Vamos a configurar seguidamente el correo saliente de Alfresco para poder realizar notificaciones a los asegurados y peritos. La configuración de correo saliente para GMail a través de Google Apps en Alfresco se realiza en el fichero outboundSMTP.properties del subsistema email, en concreto en la ubicación …/extension/subsystems/email/OutboundSMTP/outbound

Fichero: outboundSMTP.properties

mail.host=smtp.googlemail.commail.port=465
mail.protocol=smtps
mail.username=alfresco@fegor.com
mail.password=alfresco
mail.encoding=UTF-8

mail.from.default=alfresco@fegor.com
mail.smtps.starttls.enable=true
mail.smtps.auth=true

Como se observa, se ha creado también una cuenta llamada alfresco@fegor.com para la autenticación SMTP.

La configuración del correo entrante, para que Alfresco haga de servidor SMTP se realiza en el fichero inboundSMTP.properties en …extension/subsystems/email/InboundSMTP/inbound

Fichero: inboundSMTP.properties

email.inbound.enabled=true email.inbound.unknownUser=anonymous email.server.enabled=true email.server.port=25 email.server.domain=alfresco.fegor.com email.server.connections.max=10 email.server.allowed.senders=.*@fegor.com email.server.blocked.senders=

Ahora debemos configurar en Share un fichero para que nos muestre el campo «alias» en la carpeta a la que asignaremos el aspecto «Atributos de Email». Este fichero se llama share-config-custom.properties y se encuentra en la carpeta web-extension (…/share/classes/alfresco/web-extension). Esto es así porque por defecto, en Afresco Share, no está configurado para que este campo esté visible como pasaba con Alfresco Explorer.

Fichero: share-config-custom.properties


  
     <!–
         Used by the «Change Type» action

         Define valid subtypes using the following example:
           
              
           

         Remember to also add the relevant i18n string(s):
            cm_mysubtype=My SubType
      –>
     
        
           
        
     
    
      <!– forms
      –>
     
        
        
           
              
           
        

        
        
           
                             
           
           
        

        
        
                        
           
        
             
  

Realizadas las configuraciones se arranca Alfresco y continuamos con la configuración desde el propio Alfresco Share.

Uso del correo electrónico en Alfresco en la vida real – parte 1

Vamos a ver un caso de vida real en una PYME usando Alfresco y configurando el correo electrónico tanto de salida como de entrada para gestionar documentos.

El escenario es el siguiente: Imaginamos una pequeña aseguradora llamada FEGOR en la que se dispone de un pequeño servidor de Alfresco y un ADSL. Todos los demás servicios se realizan a través de Google Apps (http://www.google.com/apps/intl/es/group/index.html y pulsar Introducción). Es decir, al menos el correo electrónico. Así mismo, en Hospedaje y Dominios se tiene comprado el dominio fegor.com.

Los peritos podrán enviar correo electrónico con los ficheros necesarios, expediente y fotografías de los siniestros o accidentes que periten. Una vez recibido el correo, Alfresco moverá cada fichero a sus carpetas correspondientes.

Toda la configuración en Alfresco se realizará a través de Alfresco Share.

Configuración de Google Apps: La configuración es muy sencilla, solo hay que seguir los tutoriales y pasos para crear cuentas de correo, sites, etc. En nuestro caso, creamos una cuenta para «Jose Grillo» con el email josegrillo@fegor.com

Una de las particularidades de Google Apps es la de ofrecer la redirección de un dominio que ya hubiésemos comprado en algún ISP tanto para los «sites» o páginas webs, como para blogs (http://blogspot.com) como para el correo electrónico (gmail) lo que hace que podamos usar el dominio para crear cuentas de correo (hasta 50) más profesionales. Para ello hay que modificar los DNS del registrador o ISP (Internet Service Provider) donde está alojado el dominio siempre que no lo compremos directamente a Google. Los datos a poner en el sistema de DNS (cada ISP tiene su propio sistema e interface o panel de control para hacerlo) serán los siguientes:

Introducir los siguientes registros MX con las siguientes prioridades:

ASPMX.L.GOOGLE.COM. 10
ALT1.ASPMX.L.GOOGLE.COM.
20
ALT2.ASPMX.L.GOOGLE.COM. 20

ASPMX2.GOOGLEMAIL.COM. 30

ASPMX3.GOOGLEMAIL.COM. 30
ASPMX4.GOOGLEMAIL.COM. 30

ASPMX5.GOOGLEMAIL.COM. 30

Una vez hecho esto, el correo se puede manejar desde el dominio que tengamos alojado en el ISP de turno. En Hospedaje y Dominios (http://www.hospedajeydominios.com) es muy fácil ya que incluso incluye un enlace que rellena esta información en la gestión de DNS. En la imagen se ve la configuración tanto del correo electrónico como de los «alias» para redireccionar al sitio web, google docs, blog, etc.

Se configura seguidamente (si se quiere solamente, ya que GMail provee de interface web y si está bien configurada con acceso desde el dominio propio, p.e. mail.fegor.com) la cuenta en Thunderbird (http://www.mozillamessaging.com/es-ES/thunderbird/) que es muy fácil teniendo los datos. Podemos ver tutoriales desde el propio Google Apps o incluso en el asistente de «Herramientas->Configuración de las cuentas…->Opciones sobre la cuenta->Añadir cuenta de correo electrónico» que es prácticamente automático introduciendo 3 campos de información: nombre, correo electrónico y contraseña.