Consideraciones

El sistema AdvertMind permite dos modalidades para el envío de correos electrónicos:

1.    A través de un servidor de correo, ya sea interno (Exchange) o externo (por SMTP, como Gmail, Office 365, Yahoo, entre otros).

2.    Mediante Microsoft Outlook, utilizando una cuenta configurada en la aplicación.


En cuanto la opción número uno, en esta modalidad, generalmente existe un servidor local a nivel de dominio donde la empresa tiene configurado el servicio de correo, lo que permite que los usuarios utilicen sus cuentas a través de Outlook (aplicación cliente).

Por lo general, este tipo de configuración utiliza el puerto 25 y no emplea conexión cifrada. Sin embargo, esta práctica tiende a desaparecer debido a los bajos niveles de seguridad del protocolo sin cifrado.

Por este motivo, muchas organizaciones deciden migrar a servidores más seguros, como los servicios de Gmail o Microsoft, entre otros.


En cuanto a la segunda opción, la conexión suele ser cifrada y se realiza mediante puertos específicos asignados al servicio.


Este método utiliza la aplicación Microsoft Outlook, donde puede configurarse tanto una cuenta de correo interna como una externa.


Configuración

Tanto si se utiliza un servidor SMTP como Microsoft Outlook, el sistema necesita saber qué modalidad de envío va a emplearse.

Esta configuración se define desde la opción Configuraciones Especiales, donde se indica al sistema qué método debe utilizar para el envío de correos electrónicos.

Además, es posible establecer esta preferencia a nivel de usuario de AdvertMind. Si el usuario no utiliza la modalidad de envío predefinida en las Configuraciones Especiales, el sistema puede aplicar una de las siguientes alternativas:

  • Usar la configuración por defecto de AdvertMind.

  • Utilizar el cliente de correo Outlook del usuario.


Cliente de Correo: usaremos Normal (MAPI) (defaual)

Envío de Mail:



  • Por cliente de correo
  • Por servidor SMTP


Si seleccionamos: por cliente de correo, estaremos indicando en el sistema que todos los Usuarios usarán el envío de mail desde el Outlook.

Si seleccionamos: por servidor SMTP, indicaremos que todos los usuarios usarán correo externo y los mails que salgan del sistema serán enviados con la cuenta configurada en el sistema.

Detalle Servidor SMTP:



Servidor SMTP, aquí va el servidor de correo al cual el sistema se conecta para enviar los mails: 

Requiere Autenticación:

  • Si el valor es True, es porque el servidor así lo requiere y necesitaremos proporcionar los datos del usuario y contraseña. Si uno o ambos datos se omiten, al momento de enviar el mail, el sistema solicitará, mediante una ventana, el usuario y, mediante otra ventana, la contraseña. Si fuera necesario se debe escribir el nombre del usuario + símbolo de arroba (@) + el dominio, en caso de que el servidor lo requiriera.
  • Si el valor es False, es porque el servidor no quiere la obligatoriedad de poner el usuario y contraseña, ya que algunas configuraciones permiten omitirlas y el sistema automáticamente toma los datos del dominio, siendo que el usuario de Windows debe estar configurado para que esta modalidad funcione.

Puerto SMTP: Valor del puerto para conectarse al servicio de correo, ejemplo 587 es válido tanto para Gmail como para office365.

Habilitar Cifrado SMTP: en el caso de que el servidor lo requiera hay que indicar si el puerto requiere dicho estado o no.

Validar 

Si fuera el caso donde el Usuario necesitara tener una configuración distinta al default del sistema, hay que habilitarle una opción de menú para indicar cuál modalidad usará.


Dar acceso a la configuración y habilita nueva opción en el menú:



Los datos grabados desde esta pantalla se graban en el registro de Windows a nivel de usuario AdvertMind y Usuario Windows.

Cliente de Correo:


DEFAULT DEL SISTEMA, usará según la configuración establecida en Configuraciones especiales NINGUNO, no usará esta funcionalidad MAPI, usará el Outlook

Envío de E-Mail



DEFAULT DEL SISTEMA, usará lo que esta preestablecido en configuraciones especiales.


  • POR CLIENTE DE CORREO, usará el Outlook para enviar mails.



  • POR SERVIDOR SMTP, usará lo que este en configuraciones especiales.


Detalle a nivel técnico

Para que el sistema pueda enviar mails requiere tener componentes desarrollados por AdvertMind para la comunicación con servidores de correo o usar el Outlook para enviar el mail. Estos componentes usan la funcionalidad que Windows ofrece para tal fin. Entre los componentes, para la versión 2.0 en adelante, los componentes son:

EnvioMail.dll Fecha: 25/07/2014 02:41PM de Argentina

Es una dll desarrollada con tecnología .NET. Para que el sistema pueda usar el componente se necesita registrar en Windows. Este tipo de componente requiere que el Usuario tenga permisos de Administrador a nivel Windows, para que se pueda registrar dicho componente. Y se genera un nuevo componente EnvioMail.tlb

Si el usuario tiene permisos suficientes, el sistema automáticamente registrará la DLL por única vez.

En caso de que el usuario no tenga permiso, se tendrá que ingresar a Windows con un usuario administrador y ejecutar el sistema AdvertMind. Hacer una prueba de mail para validar el funcionamiento.

La forma manual para registrar el componente es por medio de una ventana de comando de Windows, se debe ejecutar la opción como administrador.


Se puede grabar un archivo bat dentro de las dll del sistema en la PC local del usuario con el siguiente contenido y ejecutarlo desde la ventana de comandos:

C:\Windows\Microsoft.NET\Framework\v2.0.50727\RegAsm.exe /codebase "EnvioMail.dll" -u /tlb: "EnvioMail.tlb" C:\Windows\Microsoft.NET\Framework\v2.0.50727\RegAsm.exe /codebase "EnvioMail.dll" /tlb: "EnvioMail.tlb"



La ejecución generará unas líneas con mensajes y al final se comprueba que se haya generado el componente EnvioMail.tlb



Si se desea que este proceso sea automático, se puede cargar al sistema las credenciales del usuario administrador de dominio para que el sistema utilice esa credencial de usuario y registre el componente. 

Para cargar al sistema las credenciales de administrador de dominio, se debe hacer desde el menú como muestra la siguiente imagen:



La información de esta pantalla se guarda a nivel base de datos de la Empresa en formato encriptado de tal manera que no se pueda leer con una consulta sql.

MP300004.dll

Es la la dll que se encarga de comunicarse con el componente EnvioMail, descripto anteriormente.

EnviarMail.exe para versión 2.2 en adelante Este componente es una aplicación que podría usarse para reemplazar la DLL EnvioMail.dll y no requiere que se tenga que generar el archivo EnvioMail.tlb, ya que se llama por parámetros desde el sistema.

EnviarMail.exe tiene la misma funcionalidad interna que EnvioMail.dll, la única diferencia es que requiere de nuevas tablas en la base de datos para que funcione correctamente, se recomienda renombrar EnviarMail.exe en el repositorio del servidor si no se quiere usar este archivo.



Finalmente, utilice la opción Envío de e-mails para comprobar si el sistema puede enviar correos. Si desde esta opción el envío se realiza correctamente, el sistema podrá hacerlo también desde las demás funciones.

Pasos adicionales a realizar en caso de inconvenientes con el archivo en el cmdwin:

1.    Salga del sistema.

2.    Renombre el archivo EnviarMail.exe en el entorno del cliente (tanto en el repositorio como en la carpeta local de prueba) para que el sistema no lo encuentre.

3.    Vuelva a ingresar al sistema (preferentemente con los permisos necesarios para que este genere los archivos .TLB, si faltan).