|
|
|
|
- Protocolos POP3 y SMTP
- SMTP autenticado
- Conexión con autenticación de dos factores
- Timeout
- Creación de un perfil de Outlook Exchange
- Funcionalidad de aplicación requerida
- Gmail: ¿Qué hacer si una conexión a Gmail (SMTP, IMAP, POP3) falla con un error de Certificate?
EmailStartSession (Función) Inicia una sesión de gestión de Email en función del modo de gestión seleccionado: - correos electrónicos gestionados mediante los protocolos POP3, SMTP o IMAP: la función EmailStartSession permite abrir la sesión POP3, SMTP o IMAP.
- correos electrónicos gestionados a través del cliente MS Exchange: EmailStartSession inicia la sesión de MS Exchange. En este caso, al utilizar la función EmailStartSession, el directorio actual se modifica automáticamente.
Observaciones: - Para iniciar una sesión con el software de mensajería de Lotus Notes, utilice EmailStartNotesSession.
- Para iniciar una sesión con el software de mensajería Outlook, utilice EmailStartOutlookSession.
- Para iniciar una sesión de lectura de correos electrónicos (sólo protocolo POP3), utilice EmailStartPOP3Session.
- Para iniciar una sesión de envío de correos electrónicos (sólo protocolo SMTP), utilice EmailStartSMTPSession. Esta función también se puede utilizar para iniciar una sesión SMTP autenticada.
// Send an email via the POP3 protocol IF EmailStartSession(USER, PASSWORD, "pop3.gmail.com", "smtp.gmail.com") = True THEN UserName = USER ELSE UserName = "" Error("Unable to establish the connection") END Sintaxis
Iniciar una sesión de Email (POP3, SMTP, IMAP, Notes o Outlook) Ocultar los detalles
<Result> = EmailStartSession(<Session>)
| Observación: Esta sintaxis se mantiene para la compatibilidad con versiones anteriores.. Le recomendamos que utilice las variables emailPOP3Session, emailSMTPSession o EmailStartPOP3Session y EmailStartSMTPSession.
Iniciar una sesión de Email usando los protocolos POP3 y SMTP simultáneamente Ocultar los detalles
<Result> = EmailStartSession(<Username> , <Password> , <Address of POP3 server> [, <Address of SMTP server> [, <Number of POP3 port> [, <Number of SMTP port> [, <Asynchronous>]]]])
<Result>: booleano - True si se inició la sesión,
- False en caso contrario. Si se produce un error, la variable ErrorOccurred se establece en True. Para obtener más información sobre el error, utilice la función ErrorInfo con la constante errMessage.
<Username>: Cadena de caracteres Identifica al usuario. Este nombre es suministrado por el proveedor de servicios o por el administrador de la red.. Este nombre se usará para identificar la sesión de Email en las diferentes funciones para la gestión de Email. <Password>: Cadena de caracteres Contraseña de usuario. Esta contraseña es proporcionada por el proveedor de servicios o por el administrador de la red. <Address of POP3 server>: Cadena de caracteres IP Address del servidor Email (protocolo de entrada). Esta IP Address es suministrada por el proveedor de servicios o por el administrador de la red. Esta IP Address puede tener el siguiente formato:- IP Address en formato XXX.XXX.XXX.XXX (125.5.110.100 por ejemplo).
- IP Address que contiene el nombre del servidor (pop3.freesbee.eu por ejemplo). Se recomienda esta sintaxis.
- IP Address devuelta por NetIPAddress.
<Address of SMTP server>: Cadena de caracteres opcional IP Address del servidor Email (protocolo de salida). Esta IP Address es suministrada por el proveedor de servicios o por el administrador de la red. Esta Address debe ser especificada sólo si la cuenta POP3 y la cuenta SMTP no pasan por el mismo ordenador. <Number of POP3 port>: Entero opcional Identifica el puerto utilizado para el protocolo POP3 (110 por Default). <Number of SMTP port>: Entero opcional Identifica el puerto utilizado para el protocolo SMTP (25 por Default). <Asynchronous>: Opcional constante o booleana | | emailAsynchronous o True | Los correos electrónicos enviados durante la sesión iniciada con la función EmailStartSession deben transmitirse en modo asíncrono (ver Notas). | emailSynchronous o False (Valor predeterminado) | Los correos electrónicos enviados durante la sesión iniciada con la función EmailStartSession deben transmitirse en modo síncrono (ver Notas). |
|
Observaciones Protocolos POP3 y SMTP Los diferentes parámetros pasados a EmailStartSession los proporciona el proveedor de servicios INTERNET o el administrador de la red. Se necesita una conexión INTERNET para gestionar los correos electrónicos. Pueden darse varios casos: - El usuario utiliza una conexión directa a INTERNET (cable o ADSL): no se requiere ninguna operación específica.
- El usuario utiliza un módem para conectarse a INTERNET: NetOpenRemoteAcceso remoto establece la conexión con INTERNET.
Por defecto, si sólo se especifica la IP Address del servidor POP3, esta Address será utilizada por el servidor Email que utiliza SMTP. El IP Address del protocolo SMTP debe especificarse sólo si la cuenta POP3 y la cuenta SMTP no utilizan el mismo ordenador. SMTP autenticado La autenticación SMTP no puede realizarse con la función EmailStartSession. Para iniciar una sesión POP3 y una sesión SMTP autentificada al mismo tiempo, debe utilizar tanto EmailStartPOP3Session como EmailStartSMTPSession. Conexión con autenticación de dos factores Cada vez más proveedores ofrecen cuentas seguras de Email (SMTP/IMAP) con autenticación de dos factores. El principio es el siguiente: - Conectar con el proveedor Email mediante OAuth: esta conexión proporciona una Token.
- Utilice el token para conectarse a los buzones IMAP o SMTP Email.
Veamos un ejemplo de código que se puede utilizar: // Example of IMAP connection with a Gmail account // and two-factor authentication OAuthGoogleCnt is OAuth2Parameters gMyIMAPSession is emailIMAPSession // IMAP server parameters gMyIMAPSession.ServerAddress = "imap.gmail.com" gMyIMAPSession.Option = optionSSL MyIMAPSession.Port = "993" // OAuth connection parameters OAuthGoogleCnt.ClientID = "Application ID" OAuthGoogleCnt.ClientSecret = "Secret application ID" OAuthGoogleCnt.AuthURL = "https://accounts.google.com/o/oauth2/auth" OAuthGoogleCnt.TokenURL = "https://accounts.google.com/o/oauth2/token" OAuthGoogleCnt.Scope = "https://mail.google.com/" OAuthGoogleCnt.RedirectionURL = "http://localhost:9000" OAuthGoogleCnt.ResponseType = "code" // OAuth authentication gMyIMAPSession.AuthToken = AuthIdentify(OAuthGoogleCnt) // If the authentication was successful, log in to email inbox. IF gMyIMAPSession.AuthToken <> Null THEN IF EmailStartSession(gMyIMAPSession) THEN // Session started ELSE // Error starting the session. END ELSE // Authentication error. END Gmail: ¿Qué hacer si una conexión a Gmail (SMTP, IMAP, POP3) falla con un error de Certificate? Desde agosto de 2017, una nueva Certificate fue desplegada por Google: Google INTERNET Authority G3. Desafortunadamente, el API de Windows para comprobar las Certificate s no valida esta Certificate. Por lo tanto, el inicio de una sesión POP3, IMAP o SMTP puede fallar con el error "La cadena Certificate no fue emitida por una autoridad de confianza". Para validar la Certificate, todo lo que tienes que hacer es modificar el modo de gestión de los correos electrónicos. La función EmailConfigure de WLanguage permite cambiar este modo y dejar de utilizar la API de Windows que bloquea esta Certificate. Se debe agregar el siguiente código antes de iniciar la sesión con la función EmailStartSession: // Enable the multi-platform implementation EmailConfigure(emailParameterMode, 1)
Observación: A partir de la versión 23 Actualización 1, la llamada a EmailConfigure ya no es necesaria: WLanguage utiliza automáticamente el modo de gestión de los correos electrónicos adaptados a la sesión.
Esta página también está disponible para…
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|