4D v20 apporte deux fonctionnalités très utiles aux transporteurs IMAP !
Interagir avec certains serveurs et clients de messagerie IMAP nécessite de gérer des mots-clés personnalisés dans les messages, et de bénéficier de certaines de leurs fonctionnalités spécifiques.
Nous avons également ajouté le support de l’ID de la boîte aux lettres dans notre Transporteur IMAP afin que vous puissiez identifier une boîte aux lettres donnée même après qu’elle ait été renommée.
Mots clés personnalisés
Comme certains serveurs IMAP permettent à l’utilisateur de définir des mots-clés personnalisés, les fonctions .addFlags () et .removeFlags ( ) acceptent désormais des mots arbitraires comme mots-clés :
$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)
et la fonction .selectBox ( ) renvoie la liste des drapeaux autorisés dans la boîte aux lettres actuelle via les attributs .flags et .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 de la boîte aux lettres
Comme le nom de la boîte aux lettres n’est pas suffisant pour savoir si la boîte sélectionnée a été renommée ou supprimée et recréée, nous ajoutons l’identifiant aux informations renvoyées par les fonctions .selectBox () et .getBoxInfo ( ) du transporteur IMAP :
$boxInfo:=$transporter.getBoxInfo("INBOX")
//{name:INBOX,
//mailCount:125,
//mailRecent:0,
//id:644737301}
Consultez ces fonctions dans la documentation pour plus de détails !