The common process for receiving emails has the following steps:

  1. Retrieve a set of messages from the server.
  2. Process the returned set of messages.
  3. Delete all or some messages, or move them to a specific folder.

Step 1: Retrieving Messages

You can retrieve messages using one of

  • readMessages
  • readMessagesFiltered

Both return an Array of ReceivedMail (see Processing Messages further below).

Operations

readMessages

readMessagesFiltered

Types

ReadFlags

Filter

Step 2: Processing Messages

You can process emails as you need. Retrieved messages are delivered as an Array of ReceivedMail objects, which inherit from Mail and add some more attributes available after receiving:

Classes

ReceivedMail

Attachment

Step 3: Deleting/Moving Messages

After messages have been retrieved, they are often deleted or moved to a specific folder.

Deleting Messages

Deleting messages is done by any one of the following operations:

  • deleteMessage
  • deleteMessages
  • deleteMessagesFiltered

deleteMessage and deleteMessages operate on an instance of ReceivedMail, means you can call them on objects returned by a read on the mailbox. deleteMessagesFiltered operates on a folder and a filter criterion. It deletes all matching messages.

Deletion is always "hard" deletion. Mail items are not moved to "Trash" or "Deleted Items". Once deleted, the message is gone.

deleteMessage

deleteMessages

deleteMessagesFiltered

Moving Messages

Moving messages operates in instances of ReceivedMail, objects returned by a read on the mailbox. You can specify the target folder to move the message to.