Closed davidromani closed 7 years ago
Plus, think about use a good email PHP library like http://swiftmailer.org/
@jorix can you say something about this issue, please? @cecilethvnt
Mis conocimientos de correo con PHP son muy pocos. Únicamente los que he necesitado para Aixada.
Yo no tengo ningún tipo de autorización sobre Aixada, solo propongo pull requests que son valorados en su caso por jmueller17. Aixada no hace un uso intensivo de envío de correos (solo: contraseñas, pedidos a proveedores e incidentes), así que no fue un problema para mi proponer los PRs para un lavado de cara para que los envíos usaran utf-8 y html.
Por otra parte, que yo sepa, no hay coopes que tengan dificultades en los envíos. Ha habido algún incidente con los correos pero ya se resolvió.
Es por todo ello que hasta ahora no he hecho comentarios sobre este issue.
Si concretas una propuesta de los cambios en el código...
Ok, entiendo.
Seria posible obtener documentación o ayuda sobre cómo configurar php.ini para que envie correos a través de un servidor de correo saliente externo? (SMTP)
Como he mencionado antes yo poco puedo aportar: http://php.net/manual/en/book.mail.php
A ver si hay alguien más que conozca sobre el tema y añade un comentario.
Hola,
Formo parte de la cooperativa Cistella Verda (El Masnou) y estamos en fase de implementación de la Aixada para el uso diario de nuestra cooperativa. La función de envío automático de emails a los proveedores una vez la "comanda" está cerrada nos es de gran utilidad, pero el servidor donde está alojado el sistema no acepta envios mediante la función mail() de PHP por tema de seguridad. Hemos modificado un poco el sistema para enviar mediante la librería swiftmailer:
No tengo mucha experiencia en github por lo que no se como hacer pull requests o si me hace falta algun permiso especial por parte del creador del repositorio.
Gracias,
Puedes colgar vuestro código php en wetranfer? (oscurece las palabras de paso al mysql) Ya me encargaré yo de proponer un PR.
El 24/08/2016 11:25, "situplastik" notifications@github.com escribió:
Hola,
Formo parte de la cooperativa Cistella Verda (El Masnou) y estamos en fase de implementación de la Aixada para el uso diario de nuestra cooperativa. La función de envío automático de emails a los proveedores una vez la "comanda" está cerrada nos es de gran utilidad, pero el servidor donde está alojado el sistema no acepta envios mediante la función mail() de PHP por tema de seguridad. Hemos modificado un poco el sistema para enviar mediante la librería swiftmailer:
- Agregar unas línea en el archivo "local_config/config.php" para poder configurar los parámetros SMTP,
- Incluir la libreria "swiftmailer-5-x" dentro de la carpeta "php/external".
- Modificar el archivo "php/utilities/general.php", en la función send_mail para que utilize la libreria y envio mediante swiftmailer y no por mail().
No tengo mucha experiencia en github por lo que no se como hacer pull requests o si me hace falta algun permiso especial por parte del creador del repositorio.
— You are receiving this because you were mentioned. Reply to this email directly, view it on GitHub https://github.com/jmueller17/Aixada/issues/146#issuecomment-242006346, or mute the thread https://github.com/notifications/unsubscribe-auth/ABDGDket3jcQwv8_p8gN5dSLaFdEPvuXks5qjA4dgaJpZM4EWSjh .
@situplastik @jorix seria muy bueno conseguir este objetivo. Yo os puedo ayudar con Swiftmailer, el código de la app Aixada lo desconozco bastante.
En fin, espero resolverlo entre todos. Tal y como se envian ahora mismo los emails, coincido en que és peligroso y deficiente.
Un saludo.
Hola,
He depurado el código para que el envío SMTP afecte a la función raíz que envía todos los emails del sistema mediante mail() o SMTP (solo lo teníamos puesto en el de "comanda") y lo he subido comprimido en el siguiente link:
Con nuestro sistema SMTP va bien, referente a mail() no he tocado nada por lo que debería continuar funcionando, aunque no lo he podido comprobar. Los archivos modificados son:
Saludos.
@situplastik 👍
Ya me lo he bajado. Luego me pongo a trabajar en ello.
Deberé hacer pruebas antes de proponer un PR. Cuando lo tenga funcionando ya os digo algo.
Muchas gracias @situplastik
De nada @jorix , para esto estamos.
En su momento, utilicé swiftmailer ya que vi esta incidencia, pero anteriormente nunca había trabajado con ella. @davidromani , ya que conoces la librería mejor que yo, podrías:
Ya dirás
Un saludo!
@situplastik no hay problema, pero mejor súbe los cambios en forma de pull request, es mucho más fácil para todo el equipo revisar los cambios y comentarlos sobre un hilo de conversación a parte.
Te dejo una ayuda aquí https://www.atlassian.com/git/tutorials/making-a-pull-request/
@davidromani: La propuesta de situplastik la he puesto en la rama https://github.com/jorix/Aixada/tree/smtp
Antes de hacer un pull request podemos usar esta rama para hacer ajustes. Yo tengo algún pequeño matiz ha hacer para no provocar incompatibilidad en instalaciones existentes.
Ok. Me puedes dar acceso como contributor para poder hacer commits en la rama smtp? Expongo aquí los cambios ya que no puedo hacer el commit.
Para contemplar la compatiblidad con otras versiones modificaría el archivo general.php
if (!isset($cfg->email_send_type) or $cfg->email_send_type == 1){
Si es eso pero no te preocupes, eso ya lo hace una función de Aixada. (contestado desde mi móvil)
El 25/08/2016 11:05, "situplastik" notifications@github.com escribió:
Ok. Me puedes dar acceso como contributor para poder hacer commits en la rama smtp? Expongo aquí los cambios ya que no puedo hacer el commit.
Para contemplar la compatiblidad con otras versiones modificaría el archivo general.php
- eliminar linea 5 (require_once) y ponerla despues de la 389 (if SMTP)
- la linea 389 modificarla por if (!isset($cfg->email_send_type) or $cfg->email_send_type == 1){
— You are receiving this because you were mentioned. Reply to this email directly, view it on GitHub https://github.com/jmueller17/Aixada/issues/146#issuecomment-242324013, or mute the thread https://github.com/notifications/unsubscribe-auth/ABDGDie1i96wbm0XN9OmOB57Qc4kQqPhks5qjVrNgaJpZM4EWSjh .
Atención: he vuelto a subir la rama smtp (la anterior estaba basada en una master que le faltaba un commit)
@situplastik: He subido un commit para que sea compatible con instalaciones existentes, ver: 92934c18000f58c689ad08111ed7692480457f2d He eliminado el valor _$email_sendtype para usar en su lugar _$email_SMTPhost (si está presente se usa SMTP y si no)
@davidromani: ¿Puedes clonar y probar la rama smtp y presentar tu el pull request? (tu lo podrás defender mejor que yo)
@davidromani: Una de las cosas a probar es ver como se recibe el asunto del email si tiene letras acentuadas o por ejemplo el símbolo € (y lo mismo para _$email_SMTPname)
@davidromani y @situplastik :
Bien, ya he conseguido entender de que va todo esto, y sobretodo su importancia.
(un amigo de sistemas me ha hecho una pequeña introducción)
He hecho más cambios para permitir ssl y también ignorar la verificación de certificados. También he añadido mensajes de error cuando los correos usados no tiene un formato válido, antes no se enviaba el mensaje sin decir el porqué.
Ya lo tenemos en producción usando ssl
He propuesto en el PR #210
Perfecto Jorix, buen aporte. Ye en su día revisé el tema de accentos y no había problema.
👍
Este issue se puede cerrar, gracias (yo no tengo autorización)
Add SMTP server settings to config.php, I think that it's better than rely this config to global php.ini scope.
Kind regards.