特定のメールを専用のメールボックスに保存したり、特定のメールを削除してINBOXを整頓したりする必要がある場合があります。今回、IMAPトランスポーターに追加された3つの新機能は、以下の通りです。 copy(), move()と delete()の3つの新機能が追加され、とても便利になりました。
電子メールの移動またはコピー
電子メールを移動するには、メールサーバーに接続し、メールボックスを選択しておく必要があります。以下の例では、受信箱のメールボックスを使用します。
$transporter:=IMAP New transporter($serverInfo)
$boxInfo :=$transporter.selectBox("inbox")
件名に「4D new feature:」が含まれる全てのメールを、現在のメールボックス(「inbox」)から「New features」という名前のメールボックスに移動させるには move()という機能を使います。
$mailIds:=$transporter.searchMails("subject \"4D new feature:\")
// Move emails from selected mailbox to destination mailbox
$status :=$transporter.move($mailIds; "New features")
メールボックスに表示されていたメールは、「inbox」ではなく、「Newfeatures」のメールボックスに表示されるようになります。もちろん、両方のメールボックスにメールを残しておくこともできます。 copy()という機能を使います。
// Copy emails from selected mailbox to destination mailbox
$status:=$transporter.copy($mailIds; "新機能")
メール削除
迷惑メール」メールボックス内のメールをすべて削除したい場合は、このメールボックスを選択し、IMAP all のキーワードを使用するだけです。 delete()関数を使用してください。
$boxInfo:=$transporter.selectBox("迷惑メール")
// delete all the email in the current mail box
$status:=$transporter.delete(IMAP all)
なお、この delete()関数は、削除されたメッセージにフラグを付けるだけです。メールボックスを切り替えるか、接続を閉じるまで、IMAPサーバーから削除されることはありません。
上記のHDIをダウンロードして、新機能の動作をご覧ください。