|
|
|
|
- Timeout
- Conexión con autenticación de dos factores
- Gmail: ¿Qué hacer si una conexión a Gmail (SMTP, IMAP, POP3) falla con un error de Certificate?
EmailStartIMAPSession( Función) Inicia una sesión para recibir y leer correos electrónicos con el protocolo IMAP.. Sólo podrás leer los correos electrónicos. Tiene la posibilidad de iniciar una sesión IMAP segura a través de SSL. // Read an email via the IMAP protocol IF EmailStartIMAPSession(EDT_USER, EDT_PASSWORD, "imap.mydomain.fr") = True THEN ProcessIncomingEmails() ELSE Error("Unable to establish the connection") END
Sintaxis
<Result> = EmailStartIMAPSession(<Username> , <Password> , <Server address> [, <Port> [, <Option>]])
<Result>: booleano - True si se inició la sesión,
- False en caso contrario. Para obtener más información sobre el error, utilice la función ErrorInfo.
<Username>: Cadena de caracteres Nombre de usuario en el servidor. 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. <Server address>: Cadena de caracteres Address del servidor Email (protocolo de entrada). Este Address es suministrado por el proveedor de servicios o por el administrador de la red. Esta Address se puede dar en el siguiente formato:- IP Address en formato XXX.XXX.XXX.XXX (192.168.1.1 por ejemplo).
- IP Address que contiene el nombre del servidor (imap.midominio.fr por ejemplo). Se recomienda esta sintaxis.
- IP Address devuelta por NetIPAddress.
Observación: El Address debe ser un Address IPv4. <Port>: Entero opcional Identifica el puerto utilizado para el protocolo IMAP (143 de Default). <Option>: Constante opcional de tipo Integer Se utiliza para especificar si se requiere una conexión SSL: | | emailOptionDefault (Valor predeterminado) | Conexión no segura. | opciónSSL | Se requiere conexión SSL (para un servidor IMAP seguro). Observación: En la mayoría de los casos, el puerto utilizado para un servidor IMAP seguro es el puerto 993 (en lugar del puerto 143, el valor de puerto de Default). |
Observaciones 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:
OAuthGoogleCnt is OAuth2Parameters
gMyIMAPSession is emailIMAPSession
gMyIMAPSession.ServerAddress = "imap.gmail.com"
gMyIMAPSession.Option = optionSSL
MyIMAPSession.Port = "993"
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"
gMyIMAPSession.AuthToken = AuthIdentify(OAuthGoogleCnt)
IF gMyIMAPSession.AuthToken <> Null THEN
IF gMyIMAPSession.StartSession() THEN
ELSE
END
ELSE
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 EmailStartIMAPSession: // 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…
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|