¡4D v20 trae dos funcionalidades muy útiles para los transportadores IMAP!
Interactuar con algunos servidores y clientes de correo IMAP requiere manejar palabras clave personalizadas en los correos, y beneficiarse de algunas de sus características específicas.
También hemos añadido el soporte del ID de buzón en nuestro transportador IMAP para que pueda identificar un buzón determinado incluso después de cambiarle el nombre.
Palabras clave personalizadas
Dado que algunos servidores IMAP permiten al usuario definir palabras clave personalizadas, las funciones .addFlags () y .removeFlags () aceptan ahora palabras arbitrarias como palabras clave:
$transporter:=IMAP New transporter($parameters)
$boxInfo:=$transporter.selectBox("INBOX")
$mailIds:=["122";"123";"124"]
// Custom keyword
$keywords:={"myKeyword":true}
// apply the custom keyword to the collection of mail
$status:=$transporter.addFlags($mailIds; $keywords)
y la función .selectBox () devuelve la lista de indicadores permitidos en el buzón actual a través de los atributos .flags y .permanentFlags:
$selectBox:=$transporter.selectBox("INBOX")
//$selectBox={name:INBOX,
//mailCount:124,
//mailRecent:0,
//id:644737301,
//flags:\\Answered \\Flagged \\Draft \\Deleted \\Seen $NotPhishing $Phishing myKeyword,
//permanentFlags:\\Answered \\Flagged \\Draft \\Deleted \\Seen $NotPhishing $Phishing myKeyword \\*}
Id del buzón
Dado que el nombre del buzón no es suficiente por sí solo para saber si el buzón seleccionado ha sido renombrado o eliminado y vuelto a crear, añadimos el ID a la información devuelta por la función .selectBox () y la función .getBoxInfo() del transportador IMAP:
$boxInfo:=$transporter.getBoxInfo("INBOX")
//{name:INBOX,
//mailCount:125,
//mailRecent:0,
//id:644737301}
Consulte estas funciones en la documentación para obtener más detalles.