4D v20 bringt zwei sehr nützliche Funktionen für IMAP Transporter!
Die Interaktion mit einigen IMAP-Mail-Servern und -Clients erfordert die Verwaltung von benutzerdefinierten Schlüsselwörtern in Mails und die Nutzung einiger ihrer spezifischen Funktionen.
Wir haben auch die Unterstützung der Mailbox-ID in unserem IMAP-Transporter hinzugefügt, so dass Sie eine bestimmte Mailbox identifizieren können, auch wenn sie umbenannt wurde.
Benutzerdefinierte Schlüsselwörter
Da einige IMAP-Server die Möglichkeit bieten, benutzerdefinierte Schlüsselwörter zu definieren, akzeptieren die Funktionen .addFlags( ) und .removeFlags ( ) jetzt auch beliebige Wörter als Schlüsselwörter:
$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)
und die Funktion .selectBox ( ) gibt die Liste der im aktuellen Postfach zulässigen Flags über die Attribute .flags und .permanentFlags zurück:
$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 \\*}
Mailbox-Id
Da der Postfachname allein nicht ausreicht, um zu wissen, ob das ausgewählte Postfach umbenannt oder entfernt und neu erstellt wurde, fügen wir die Id zu den Informationen hinzu, die von den Funktionen .selectBox ( ) und .getBoxInfo ( ) des IMAP-Transporters zurückgegeben werden:
$boxInfo:=$transporter.getBoxInfo("INBOX")
//{name:INBOX,
//mailCount:125,
//mailRecent:0,
//id:644737301}
Schauen Sie sich diese Funktionen in der Dokumentation für weitere Details an!