Pentaho Data Integration con Gmail: enviando correos electrónicos desde un job

Pentaho Data Integration Gmail

No me voy a extender, este post es bastante sencillo y útil a su vez. De hecho, debería ser parte de una guía de 101 cosas que deberías en lo posible siempre realizar cuando construyes un proceso de ETL con Pentaho Data Integration y quieres notificar que ha finalizado, que ha ocurrido un error, o hasta enviar algún reporte o archivo adjunto mediante el paso Mail empleando Gmail.

Pentaho Data Integration tiene el paso Mail disponible tanto para Jobs como para Transformaciones. La recomendación es emplearlo en lo posible a nivel de transformaciones.

Para poder enviar correos con Pentaho Data Integration a con Gmail debes realizar los siguientes pasos.

Paso 1. Habilitar el acceso de aplicaciones poco seguras de Gmail

Tener una cuenta Gmail (Duh!) configurada para que aplicaciones pocos seguras puedan autenticarse con ella (Wut?!). Para habilitar el acceso a aplicaciones poco seguras con Gmail accede a través del siguiente enlace y activa «Permitir acceso de aplicaciones poco seguras».

Permitir el acceso de aplicaciones poco seguras en Gmail

Paso 2. Diseñar un Job sencillo con el paso Mail para enviar correos desde Pentaho Data Integration con Gmail

Diseña un Job sencillo. La figura siguiente muestra un Job dummy. Este Job tiene una transformación dummy (no invoca nada), y para monitorear el resultado de la ejecución de esta transformación, se añaden dos pasos Mail, uno para cuando la ejecución falla (flujo rojo) y otro cuando se ejecuta de manera exitosa (flujo verde)

Ejemplo de Job invocando el paso Mail para enviar correos desde Pentaho Data Integration

Paso 3. Configurar el paso Mail de Pentaho Data Integration con Gmail

El paso Mail tiene 4 pestañas. La pestaña «Addresses» y las pestañas «Server» deben estar correctamente configuradas para que el paso Mail funcione de manera correcta.

En la pestaña «Addresses» los campos «Destination address», «Sender name» y «Sender address» son obligatorios. El resto son opcionales.

Llena los campos «Destination address» con la dirección destino deseada.

Llena el campo «Sender address» con la dirección de Gmail a emplear.

Configurar dirección de envío en el paso Mail de Pentaho Data Integration con Gmail

En la pestaña «Server», es importante configurar correctamente todos los campos de la siguiente manera para poder enviar correos con Gmail

SMTP Server: smtp.gmail.com

Port: 465

Use authentication: checked / marcada / yes / si

Authentication user: dirección de Gmail a emplear

Authentication password: contraseña de la dirección de Gmail a emplear

Use secure authentication: checked / marcada / yes / si

Secure connection type: SSL

Configurar datos del servidor de Gmail para enviar correos electrónicos con Pentaho Data Integration

Y estamos listos! Cualquier consulta, o duda, en los comentarios estoy siempre atento para ayudar!

10 respuestas a «Pentaho Data Integration con Gmail: enviando correos electrónicos desde un job»

  1. Hola Javier, como se podria configura con un correo corporativo, no con gmail.
    Le agradeceria enormemente en lo que me pudiese colaborar.

    1. Hola Javier!

      El correo corporativo es de Google Apps? Si es así, es la misma forma. Solo que cambias el nombre de usuario por la cuenta de correo completa de Google Apps, dejando smtp.gmail.com como servidor de correo. Por otro lado, si no es Google Apps, sino un servidor SMTP, pues es sencillo. Solo colocas la url del servidor SMTP y el puerto que esté habilitado para enviar correos. El nombre de usuario y contraseña debe ser una cuenta válida dentro de tu proveedor de correos.

      Saludos cordiales

      Saludos Cordiales

  2. Hola Javier,
    De que manera podría mandar un correo con ficheros de salida de la transformación adjuntos?
    Gracias de antemano, saludos.

    1. Disculpa por contestar tarde amigo, la mejor solución para esto es que tengas dos transformaciones. Una que genere los archivos correspondientes, y otra que se encargue de hacer el envio por correo. Para esto naturalmente necesitaras que ambas sean invocadas por un Job. Debes procurar que la transformación que genera los archivos, escriba en el flujo el nombre del archivo lo publique en las variables con el paso ‘Set Variables’. Luego, en la otra transformación emplea el ‘Get Variables’ para obtener la dirección en disco del archivo y adjuntarlo al correo.

  3. Hola,
    muy bueno tu articulo.
    Existe alguna forma de que en lugar de enviar un correo Pentaho reciba un correo?
    Entiendo que seguro podria recibir correos en la cuenta que se configuro como «Sender address» ya que es una cuenta gmail normal, en este caso la pregunta seria:
    Puedo de alguna forma leer alguno de estos correos recibidos usando un job o una trasformacion de Pentaho? en particular me interesa poder obtener un archivo anexo de un correo recibido.

Deja un comentario

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *