Diferencia entre revisiones de «SIU-Guarani/Version3.19.0/envio-email-gmail-xoauth2»
m |
m |
||
Línea 1: | Línea 1: | ||
− | == | + | == Envío de email con Gmail vía XOAUTH2 == |
En esta sección se explica como enviar emails con Gmail vía XOAUTH2. | En esta sección se explica como enviar emails con Gmail vía XOAUTH2. | ||
Línea 7: | Línea 7: | ||
Seguir [https://github.com/PHPMailer/PHPMailer/wiki/Using-Gmail-with-XOAUTH2 estos pasos] para generar el '''Client ID''' y '''Client secret'''. | Seguir [https://github.com/PHPMailer/PHPMailer/wiki/Using-Gmail-with-XOAUTH2 estos pasos] para generar el '''Client ID''' y '''Client secret'''. | ||
− | == 2. | + | == 2. Generar Refresh Token == |
+ | |||
+ | En '''SIU-Guaraní Gestión''' editar el archivo '''instalacion/toba.conf''' agregando la siguiente entrada: | ||
+ | <source lang="apache" enclose="div"> | ||
+ | #Configuración de Gmail vía XOAUTH2 | ||
+ | Alias /phpmailer "<PATH-GESTION>/vendor/phpmailer/phpmailer/" | ||
+ | <Directory <PATH-GESTION>/vendor/phpmailer> | ||
+ | |||
+ | DirectoryIndex get_oauth_token.php | ||
+ | |||
+ | <IfModule !mod_access_compat.c> | ||
+ | #Apache 2.2.x | ||
+ | ##Piense en actualizar la version del web server a Apache 2.4.x al menos | ||
+ | ##Si desea seguir en esta version, descomente las siguientes lineas | ||
+ | # Order allow,deny | ||
+ | # Allow from all | ||
+ | </IfModule> | ||
+ | <IfModule mod_access_compat.c> | ||
+ | #Apache 2.3.x/2.4.x back-comp (deprecated) | ||
+ | Order allow,deny | ||
+ | Allow from all | ||
+ | </IfModule> | ||
+ | <IfModule mod_authz_core.c> | ||
+ | #Apache 2.4.x | ||
+ | Require all granted | ||
+ | </IfModule> | ||
+ | </Directory> | ||
+ | </source> | ||
Al enviar emails con el '''Notificador''' estos mismos no se envían directamente, sino que se encolan en la tabla '''jobs''' para luego ser desencolados y enviados por un '''Worker'''.<br> | Al enviar emails con el '''Notificador''' estos mismos no se envían directamente, sino que se encolan en la tabla '''jobs''' para luego ser desencolados y enviados por un '''Worker'''.<br> |
Revisión del 12:50 19 may 2021
Sumario
Envío de email con Gmail vía XOAUTH2
En esta sección se explica como enviar emails con Gmail vía XOAUTH2.
1. Obtener credenciales de XOAUTH2
Seguir estos pasos para generar el Client ID y Client secret.
2. Generar Refresh Token
En SIU-Guaraní Gestión editar el archivo instalacion/toba.conf agregando la siguiente entrada:
Alias /phpmailer "<PATH-GESTION>/vendor/phpmailer/phpmailer/"
<Directory <PATH-GESTION>/vendor/phpmailer>
DirectoryIndex get_oauth_token.php
<IfModule !mod_access_compat.c>
#Apache 2.2.x
##Piense en actualizar la version del web server a Apache 2.4.x al menos
##Si desea seguir en esta version, descomente las siguientes lineas
# Order allow,deny
# Allow from all
</IfModule>
<IfModule mod_access_compat.c>
#Apache 2.3.x/2.4.x back-comp (deprecated)
Order allow,deny
Allow from all
</IfModule>
<IfModule mod_authz_core.c>
#Apache 2.4.x
Require all granted
</IfModule>
</Directory>
Al enviar emails con el Notificador estos mismos no se envían directamente, sino que se encolan en la tabla jobs para luego ser desencolados y enviados por un Worker.
Para invocar a dicho Worker se debe ejecutar el siguiente comando en Guaraní Gestión:
Para desencolar y enviar todos los emails:
Para desencolar y enviar de a 12 emails:
Para desencolar y enviar de a 21 emails (versión reducida):
NOTA: Se debe tener los permisos necesarios en la carpeta donde se almacenan los archivos adjuntos que irán en el email, en caso contrario el email llegara pero con el cuerpo vacío. Otra opción cuando ocurre este caso seria correr el comando como root (sudo).
Se debe utilizar una herramienta como Cron o Crontab para que dicho comando se ejecute cada cierto periodo de tiempo.
3. Depuración del envío de email
Si los emails no se están pudiendo enviar, se puede depurar agregando la directiva smtp_debug_nivel en el archivo instalacion/instalacion.ini, ej:
<nivel_debug> puede ser un valor de 0 a 4, donde 0 no muestra información de debug y 4 muestra todos los mensajes de debug.