DESCRIPTION
Interface to the IMAP ServerYou should *really* read rfc3501 if you want to use this.
METHODS
new()
creates a new CiderWebmail::Model::IMAPClient_die_on_error()
die if the last IMAP command sent to the server caused an error this sould be called after every command sent to the imap server.disconnect
disconnect from IMAP Server, if connectedseparator()
Returnes the folder separatorfolder_tree()
Return all folders as hash-tree.folder_sort
custom sort for folders always put INBOX on topselect({ mailbox => $mailbox })
selects a foldermessage_count({ mailbox => $mailbox })
returnes the number of messages in a mailboxunseen_count({ mailbox => $mailbox })
returnes the number of unseen messages in a mailboxcheck_sort($sort)
Checks if the given sort criteria is valid.get_folder_uids({ mailbox => $mailbox, sort => $sort, range => $range })
Returns a MessageSet object representing all UIDs in a mailbox The range option accepts a range of UIDs (for example 1:100 or 1:*), if you specify a range containing '*' the last (highest UID) message will always be returned.get_headers_hash({ uids => [qw/ 1 .. 10 /], sort => [qw/ date /], headers => [qw/ date subject /], mailbox => 'INBOX' })
returnes a array of hashes for messages in a mailbox- uids (arrayref): a list of uids (as described in RFC2060) to fetch
- sort (arrayref): sort criteria (as described in RFC2060). for example: [ qw/ date / ] will sort by date, [ qw/ reverse date / ] will sort by reverse date
- headers (arrayref, required): a list of mail-headers to fetch.
- mailbox (required)
search()
searches a mailbox returns a arrayref containing a list of UIDsall_headers({ mailbox => $mailbox, uid => $uid })
fetch all headers for a message and updates the local headercacheget_headers({ mailbox => $mailbox })
fetch headers for a single message from the server or (if available) the local headercachemark_read({ mailbox => $mailbox, uid => $uid })
mark a messages as readmark_answered({ mailbox => $mailbox, uid => $uid })
mark a message as answeredtoggle_important({ mailbox => $mailbox, uid => $uid })
toggle the important/flagged IMAP flag. returnes 'flagged' if the flag is now set, otherwise returnes undef.get_flags({ mailbox => $mailbox, uid => $uid })
fetches the flags of a message, returnes a hashref with the lowercased flag names as keysbodypart_as_string({ mailbox => $mailbox, uid => $uid, parts => [ $part ] })
fetches body part(s) of a message - part IDs according to the bodystructure of the messageget_bodystructure({ mailbox => $mailbox, uid => $uid })
fetches bodystructure of a message. returns a Mail::IMAPClient::BodyStructure object - this might change when we parse this into something more usefullmessage_as_string({ mailbox => $mailbox, uid => $uid })
return a full message body as stringdelete_messages({ mailbox => $mailbox, uid => $uid })
delete message(s) form the server and expunge the mailboxappend_message({ mailbox => $mailbox, message_text => $message_text })
low level method to append an RFC822-formatted message to a mailboxmove_message({ mailbox => $mailbox, target_mailbox => $target_mailbox, uid => $uid })
Move a message to another mailboxcreate_mailbox({ mailbox => $mailbox, name => $name })
Create a subfolderdelete_mailbox({ mailbox => $mailbox })
Delete a complete folderget_quotas({ mailbox => $mailbox })
Get a list of quotaroots that apply to the specified mailboxAUTHOR
Stefan Seifert and Mathias Reitinger <[email protected]>LICENSE
This library is free software, you can redistribute it and/or modify it under the same terms as Perl itself.