POP3Transporter
La clase POP3Transporter
permite recuperar mensajes de un servidor de correo POP3.
Objeto POP3 Transporter
Los objetos Transporter POP3 se instancian con el comando POP3 New transporter. Ofrecen las siguientes propiedades y funciones:
.acceptUnsecureConnection : Boolean True si se autoriza a 4D establecer una conexión no cifrada |
.authenticationMode : Text el modo de autenticación utilizado para abrir la sesión en el servidor de correo |
.checkConnection() : Object comprueba la conexión utilizando la información almacenada en el objeto transporter |
.connectionTimeOut : Integer el tiempo máximo de espera (en segundos) permitido para establecer una conexión con el servidor |
.delete( msgNumber : Integer ) marca el correo electrónico msgNumber para su eliminación del servidor POP3 |
.getBoxInfo() : Object devuelve un objeto boxInfo correspondiente al buzón designado por el objeto POP3 transporter |
.getMail( msgNumber : Integer { ; headerOnly : Boolean } ) : Object devuelve el objeto Email correspondiente al msgNumber en el buzón designado por el objeto POP3 transporter |
.getMailInfo( msgNumber : Integer ) : Object devuelve un objeto mailInfo correspondiente al msgNumber en el buzón designado por el transportador POP3 |
.getMailInfoList() : Collection devuelve una colección de objetos mailInfo que describen todos los mensajes en el buzón designado por el transportador POP3 |
.getMIMEAsBlob( msgNumber : Integer ) : Blob devuelve un BLOB con el contenido MIME del mensaje correspondiente al msgNumber en el buzón designado por el objeto POP3_transporter |
.host : Text el nombre o la dirección IP del servidor local |
.logFile : Text la ruta del archivo de registro extendido definido (si existe) para la conexión de correo |
.port : Integer el número de puerto utilizado para las transacciones de correo |
.undeleteAll() elimina todas las marcas de eliminación definidas en los correos electrónicos en el transportador POP3 |
.user : Text el nombre de usuario utilizado para la autenticación en el servidor de correo |
POP3 New transporter
Historia
Lanzamiento | Modificaciones |
---|---|
18 R2 | Añadidos |
POP3 New transporter( server : Object ) : 4D.POP3Transporter
Parámetros | Tipo | Descripción | |
---|---|---|---|
server | object | -> | Información del servidor de correo |
Result | 4D.POP3Transporter | <- | Objeto POP3 transporter |
Descripción
El comando POP3 New transporter
configura una nueva conexión POP3 en función del parámetro server y devuelve un nuevo objeto transporter POP3. El objeto transportador devuelto se utilizará normalmente para recibir correos electrónicos.
En el parámetro server, pase un objeto que contenga las siguientes propiedades:
server | Valor por defecto (si se omite) |
---|---|
.acceptUnsecureConnection : Boolean True si se autoriza a 4D establecer una conexión no cifrada | False |
.accessTokenOAuth2: Text .accessTokenOAuth2: Object Cadena u objeto token que representa las credenciales de autorización OAuth2. Utilizado sólo con OAUTH2 authationMode . Si se utiliza accessTokenOAuth2 pero se omite authenticationMode , se utiliza el protocolo OAuth 2 (si el servidor lo permite). No se devuelve en el objeto SMTP transporter. | ninguno |
.authenticationMode : Text el modo de autenticación utilizado para abrir la sesión en el servidor de correo | se utiliza el modo de autenticación más seguro soportado por el servidor |
.connectionTimeOut : Integer el tiempo máximo de espera (en segundos) permitido para establecer una conexión con el servidor | 30 |
.host : Text el nombre o la dirección IP del servidor local | obligatorio |
.logFile : Text la ruta del archivo de registro extendido definido (si existe) para la conexión de correo | ninguno |
.password : Text contraseña de usuario para la autenticación en el servidor. No se devuelve en el objeto SMTP transporter. | ninguno |
.port : Integer el número de puerto utilizado para las transacciones de correo | 995 |
.user : Text el nombre de usuario utilizado para la autenticación en el servidor de correo | ninguno |
Result
La función devuelve un objeto POP3 transporter. Todas las propiedades devueltas son de sólo lectura**.
La conexión POP3 se cierra automáticamente cuando se destruye el objeto transportador.
Ejemplo
var $server : Object
$server:=New object
$server.host:="pop.gmail.com" //Obligatorio
$server.port:=995
$server.user:="4d@gmail.com"
$server.password:="XXXXXXXX"
$server.logFile:="LogTest.txt" //log a registrar en la carpeta Logs
var $transporter : 4D.POP3Transporter
$transporter:=POP3 New transporter($server)
$status:=$transporter.checkConnection()
If(Not($status.success))
ALERT("An error occurred receiving the mail: "+$status.statusText)
End if
4D.POP3Transporter.new()
4D.POP3Transporter.new( server : Object ) : 4D.POP3Transporter
Parámetros | Tipo | Descripción | |
---|---|---|---|
server | Object | -> | Información del servidor de correo |
Result | 4D.POP3Transporter | <- | Objeto POP3 transporter |
Descripción
La función 4D.POP3Transporter.new()
crea y devuelve un nuevo objeto de tipo 4D.POP3Transporter
. Es idéntico al comando POP3 New transporter
(acceso directo).
.acceptUnsecureConnection
Historia
Lanzamiento | Modificaciones |
---|---|
17 R4 | Añadidos |
.acceptUnsecureConnection : Boolean
Descripción
La propiedad .acceptUnsecureConnection
contiene True si se autoriza a 4D establecer una conexión no cifrada cuando la conexión cifrada no es posible.
Contiene False si no se permiten las conexiones no cifradas, en cuyo caso se devuelve un error cuando no es posible la conexión cifrada.
Los puertos seguros disponibles son:
-
SMTP
- 465: SMTPS
- 587 o 25: SMTP con actualización STARTTLS si lo soporta el servidor.
-
IMAP
- 143: Puerto IMAP no encriptado
- 993: IMAP con actualización STARTTLS si lo soporta el servidor
-
POP3
- 110: Puerto POP3 no encriptado
- 995: POP3 con actualización STARTTLS si lo soporta el servidor.
.authenticationMode
Historia
Lanzamiento | Modificaciones |
---|---|
17 R4 | Añadidos |
.authenticationMode : Text
Descripción
La propiedad .authenticationMode
contiene el modo de autenticación utilizado para abrir la sesión en el servidor de correo.
Por defecto, se utiliza el modo más seguro soportado por el servidor.
Los valores posibles son:
Valor | Constantes | Comentario |
---|---|---|
APOP | POP3 authentication APOP | Authentication using APOP protocol (POP3 only) |
CRAM-MD5 | POP3 authentication CRAM MD5 | Autenticación utilizando el protocolo CRAM-MD5 |
LOGIN | POP3 authentication login | Autenticación utilizando el protocolo LOGIN |
OAUTH2 | POP3 authentication OAUTH2 | Autenticación utilizando el protocolo OAuth2 |
PLAIN | POP3 authentication plain | Autenticación utilizando el protocolo PLAIN |
.checkConnection()
Historia
Lanzamiento | Modificaciones |
---|---|
17 R4 | Añadidos |
.checkConnection() : Object
Parámetros | Tipo | Descripción | |
---|---|---|---|
Result | Object | <- | Estado de la conexión del objeto transportador |
Descripción
La función .checkConnection()
comprueba la conexión utilizando la información almacenada en el objeto transporter, recrea la conexión si es necesario y devuelve el estado. Esta función permite verificar que los valores proporcionados por el usuario son válidos y coherentes.
Objeto devuelto
La función envía una solicitud al servidor de correo y devuelve un objeto que describe el estado del correo. Este objeto puede contener las siguientes propiedades:
Propiedad | Tipo | Descripción | |
---|---|---|---|
success | boolean | True si la verificación es exitosa, False en caso contrario | |
status | number | (sólo SMTP) Código de estado devuelto por el servidor de correo (0 en caso de un problema no relacionado con el procesamiento del correo) | |
statusText | text | Mensaje de estado devuelto por el servidor de correo, o último error devuelto en la pila de errores de 4D | |
errors | collection | Pila de errores 4D (no se devuelve si se recibe una respuesta del servidor de correo) | |
[ ].errCode | number | Código de error 4D | |
[ ].message | text | Descripción del error 4D | |
[ ].componentSignature | text | Firma del componente interno que ha devuelto el error |
Ejemplo
var $pw : Text
var $options : Object
$options:=New object
$pw:=Request("Please enter your password:")
if(OK=1)
$options.host:="pop3.gmail.com"
$options.user:="test@gmail.com"
$options.password:=$pw
$transporter:=POP3 New transporter($options)
$status:=$transporter.checkConnection()
If($status.success)
ALERT("POP3 connection check successful!")
Else
ALERT("Error: "+$status.statusText)
End if
End if