AYUDA EN LÍNEA
 WINDEVWEBDEV Y WINDEV MOBILE

Este contenido se ha traducido automáticamente.  Haga clic aquí  para ver la versión en inglés.
Ayuda / WLanguage / Funciones WLanguage / Comunicación / Gestión de correos electrónicos
  • Protocolos POP3 y SMTP
  • SMTP autenticado
  • Conexión con autenticación de dos factores
  • Timeout
  • Funcionalidad de aplicación requerida
  • Gmail: ¿Qué hacer si una conexión a Gmail (SMTP, IMAP, POP3) falla con un error de Certificate?
WINDEV
WindowsLinuxUniversal Windows 10 AppJavaReportes y ConsultasCódigo de Usuario (UMC)
WEBDEV
WindowsLinuxPHPWEBDEV - Código Navegador
WINDEV Mobile
AndroidWidget Android iPhone/iPadIOS WidgetApple WatchMac CatalystUniversal Windows 10 App
Otros
Procedimientos almacenados
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.
Observaciones:
  • 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>)
<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.
<Session>: emailPOP3Session, emailSMTPSession, emailIMAPSession, emailNotesSession o emailOutlookSession Variable
Nombre de la variable que contiene la description de los parámetros de conexión del servidor Email. Todas las propiedades de conexión se especifican en las propiedades de Variable. Para obtener más información, consulte:
  • variable de tipo emailPOP3Session: para iniciar una sesión hacia un servidor POP3 para leer los mensajes.
  • variable de tipo emailIMAPSession: para iniciar una sesión hacia un servidor IMAP con el fin de leer los mensajes.
  • variable de tipo emailSMTPSession: para iniciar una sesión hacia un servidor SMTP para enviar mensajes.
Observación: Esta sintaxis se mantiene para la compatibilidad con versiones anteriores.. Le recomendamos que utilice las variables emailOutlookSession o EmailStartOutlookSession.
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 TrueLos 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

Timeout

El tiempo de espera puede ser set utilizando EmailSetTimeOut.
Universal Windows 10 App

Funcionalidad de aplicación requerida

Cuando se utiliza esta función, se debe declarar una funcionalidad de la aplicación en el asistente de generación de aplicaciones.
Característica necesaria: Redes domésticas y profesionales
Esta característica permite a las aplicaciones utilizar accesos entrantes y salientes a las redes familiares y corporativas..

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.
Componente: wd290com.dll
Versión mínima requerida
  • Versión 9
Esta página también está disponible para…
Comentarios
Haga clic en [Agregar] para publicar un comentario

Última modificación: 29/06/2023

Señalar un error o enviar una sugerencia | Ayuda local