Integración de Gmail en MANTIS

El envío de mail a través de Mantis puede hacerse de distintas maneras, a través de sendMail, mediante una cuenta de correo cualquier o utilizando un servidor SMTP. Este será el caso que nos ocupe en esta entrada, cómo configurar nuestra instalación de Mantis para utilizar el servidor de correo de Google.

Para ello partimos de una instalación correcta del gestor de incidencias, tenemos salida a internet (y el puerto 465 no está cerrado) y cómo no, una cuenta de GMail.

Los pasos a seguir se detallan de la siguiente manera:

1. Descargar PhpMailer eligiendo la extensión necesaria para tu instalación.

2. Actualizar los ficheros class.smtp.php y class.phpmailer.php ubicados en …/mantis/core/phpmailer/

3. Modificar en class.phpmailer.php la variable $SMTPSecure a SSL

var $SMTPSecure = 'ssl';

4. Añadir en class.phpmailer.php el siguiente método

function getSmtp (){
return $this->smtp;
}

5. Añadir en email_api.php linea 814 ubicado en /mantis/core/ la siguiente función

if ( is_null ( $mail-> getSmtp() ) ) {
$g_phpMailer_smtp = $mail->getSmtp();
}

6. Modificar las siguientes variables en el fichero config_inc.php ubicado en /mantis/

$ g_phpMailer_method = $ 2;
$ g_smtp_host = 'smtp.gmail.com: 465';
$ g_smtp_username = 'userGmail';
$ g_smtp_password = 'passGmail';

Una vez hechos todos los cambios accedemos a la página principal de Mantis para comprobar que no hay ningún error de sintaxis de php por algo que se haya despistado.

También hay que tener en cuenta, que al utilizar la configuración modo SMTP el envío de mail se realiza en el mismo instante en que se produce una actualización de una incidencia por lo que la velocidad del portal se verá afectada. Para evitar este comportamiento activamos la variable email_send_using_cronjob en …/mantis/config_inc.php y programaremos la tarea phpmailer para que envíe los mail cada X tiempo, para ello, en el caso de linux en la tabla crontab introduciremos la siguiente línea, que nos enviará los mail cada minuto de lunes a viernes.

* * * * 1-5 /opt/lampp/bin/php    mantis/core/send_emails.php

Y ahora, a probar que funciona …

9 thoughts on “Integración de Gmail en MANTIS

  1. Hola, que tal estoy configurando mi mantis para enviar un correo. Estoy en un Centos 5.5 con apache2, php 5.2 y mysql. Ya lo isntale correctamente pero tengo problemas con el bendito correo
    Mi duda es como configuro el cron para que mande los mensajes de mantis, uh pongo el comando **** 1-5 send_emails.php y me sale un mensaje de -bash: checkin.php: command not found, um chekin.php es otro archivo que esta en la subcarpeta mantis/scripts al lado de send_emails.php.

    Lo otro es que descubri el archivo /admin/email_queue.php que me permite ver que emails siguen todavia en la cola de envios, los envio pero siguen apareciendo por lo que no se exactamente que esta pasando.

    La configuracion del archivo config.ini.pgp me parece que esta correcta.

    • Hola, te comento:

      Supongo que además de haber configurado el fichero config.ini.php habrás instalado el módulo PhpMailer que comento al principio del post y hecho las modificaciones necesarias en los demás ficheros.

      Por otro lado, la línea del cron no es un comando sino que tienes que añadirla en el fichero /etc/crontab. Comprueba antes las rutas. Al no tener esta tarea en el cron los mail no se envian y por eso te aparecen en la cola de envíos.

      Espero haberte ayudado, un saludo

  2. Me genera este error:
    SYSTEM WARNING: fsockopen() [function.fsockopen]: unable to connect to localhost:587 (Connection refused)
    PROBLEMS SENDING MAIL TO: mimail@gmail.com
    Mailer Error: Error SMTP: No puedo conectar al servidor SMTP.

    • Hola Jorge,

      Según la traza, está intentando conectar a localhost:578 (tu propia máquina) Has configurado todas las variables tal y como indica la guia?

      Un saludo

  3. Buenas noches, segui todos los pasos que dices al principio y eso no me funciona me dice que hay un error en la linea 14 del archivo config_inc.php

  4. Pingback: Resumen 2012 | tUpaKamaRu

  5. Hola veo el tutorial antes que todo gracias por compartir la informacion.
    dudas
    como puedo saber si ya tengo instalado PHPmailes?
    dice actualizar fichero class.smtp.php que hay que cambiarle?
    en g_phpMailer_method = $ 2; con con el signo $ el 2?

Responder

Introduce tus datos o haz clic en un icono para iniciar sesión:

Logo de WordPress.com

Estás comentando usando tu cuenta de WordPress.com. Cerrar sesión / Cambiar )

Imagen de Twitter

Estás comentando usando tu cuenta de Twitter. Cerrar sesión / Cambiar )

Foto de Facebook

Estás comentando usando tu cuenta de Facebook. Cerrar sesión / Cambiar )

Google+ photo

Estás comentando usando tu cuenta de Google+. Cerrar sesión / Cambiar )

Conectando a %s