Mailboxes |
||||||||||||||||||||||||||||||||||||||||||
|
A user can create a mailbox using an IMAP mailer applcation or using the WebUser Interface.
Mailboxes can be "nested": for any mailbox "A" you can create a sub-mailbox "B" - in the same way as you can created a file directory inside some other file directory. The CommuniGate Pro Server uses the slash (/) symbol as the hierarchy separator:
Unlike many other servers, CommuniGate Pro allows you to store messages in some mailbox X and at the same time create submailboxes X/Y, X/Z for that mailbox. This is implemented by providing too "invisible" mailbox entities - one for storing messages, one - for serving as a "directory" for the nested mailboxes. The "directory" entity is created authomatically, as soon as you try to create the first submailbox. You can, though, create the "directory" entity without creating the "mail storage" entity: use the ABCDEF/ name as the new mailbox name to create only the directory entity with the ABCDEF name. The name ABCDEF will be listed, but will not be "selectable" - and you will not be able to store messages in the ABCDEF mailbox. You can later issue the regular CREATE ABCDEF command to add the "storage" entity for your ABCDEF mailbox.
It is impossible to delete the INBOX mailbox. You can rename the INBOX mailbox, though. In this case a new empty INBOX mailbox will be created automatically.
Mailbox names are case-sensitive. Some file systems (NTFS, for example) provide case-insensitive file naming conventions. When these file systems are used for CommuniGatePro account/mailbox storage, the mailbox names are still case-sensitive, but you cannot create two mailboxes with names that differ in case only. The INBOX mailbox name is an exception: it is always a case-insensitive name.
The Access Control Lists are used to control the Foreign Mailbox Access feature that allows one account user to access mailboxes in other accounts.
The name in an ACL element can be:
The account owner always has all access rights to all mailboxes in that account. For any other someaccount user, the effective access rights are checked. The effective access rights are the mailbox access rights granted to the anyone name, plus the rights granted to the someaccount name, minus the rights "granted" to -someaccount name.
A Server Administrator with the All Accounts and Domains access right has all access rights for all server mailboxes. A Domain Administrator with the CanViewMailboxes access rigth has all access rights for all mailboxes in his/her domain.
The following mailbox access rights are supported:
When a submailbox is created, it inherits the ACL of the "parent" mailbox. I.e. if you create the INBOX/sales mailbox, it is created with the same ACL as specified for the INBOX mailbox.
The Access Control Lists can be set and modified using either the WebUser Interface or using a decent IMAP client.
When granting access rights, the real account names, not account aliases should be used. If an account j.smith has two aliases john.smith and jonny, the access rights should be granted to the name j.smith.
For single-mailbox accounts, the mailbox type is specified when the account is created.
Each multi-mailbox account has a setting that specifies the default type for all new mailboxes created in this account. A user can explicitly specify the mailbox type creating a mailbox in a multi-mailbox account: if the maibox name is specified as name.extension, then the mailbox name of the extension type is created.
From <return-path>(flags-UID) time stamp
This is the same format as one used in legacy mail systems, but with a "comment" added after the return-path part. The .mbox format remains compatible with legacy applications (local mailers), and at the same time it allows the CommuniGate Pro Server to store the required message information (message status flags and the unique mailbox message ID).
If a mailbox file has been copied from an old system, or when it is used as an External INBOX and old applications can add messages to this mailbox, some messages may have no "comment;" part. CommuniGate Pro allows a user to work with such messages, but it does not store message flags if they were modified, and it does not remember the message UIDs between sessions. The simplest solution is to copy such messages to a different mailbox and then copy them back to the original mailbox - the copy operation places the correct information into the From-line.
When a message is being stored in the .mbox-type mailbox, all message lines are checked. If there is an empty line followed with the line starting with the letters From, the '>' symbol is inserted before the letter F,
The message file name has the following format:
iiii-flags-timestamp
where iiii is the message unique ID, flags are the message status flags, and the timestamp is the message internal time stamp - the time (GMT) when the message was added to the mailbox, in the yyyymmddhhmmss format.
Note:
On the Unix platforms, the .mdir mailboxes implement the shared storage model: if the same message is directed to many accounts/mailboxes, only one message file is created, and a hard link to that file is placed into each mailbox directory. When a message is removed from all mailboxes, the file is automatically deleted by the OS.The account user can explicitly specify the storage format for a new mailbox by adding the format extension to the new mailbox name. If a user tells the CommuniGate Pro Server to create the newmailbox.mdir mailbox, the .mdir-formatted mailbox newmailbox is created.
Many IMAP mailers use the account subscription list and show only the mailboxes the account is subscribed to. The WebUser Interface can also be configured to show only the subscribed mailboxes.
You can modify the account subscription either via a decent IMAP mailer, or using the WebUser Interface.
You can use the account mailbox subscription to make some not-so-decent IMAP mailers access foreign mailboxes: make sure that your IMAP client is configured to use the account mailbox subscription, and add the desired foreign mailbox name into the subscription list.
Note:Some IMAP mailers tend to rebuild account subscription lists: they empty the subscription, and then subscribe you to all mailboxes in your own account.
The account mailbox subscription is stored in the account .info service file.
Mailbox aliases can be used to let these and many other IMAP clients access foreign mailboxes.
Mailbox alias is a name accociated with some [foreign] mailbox name. For example, you can create a mailbox alias salesBox for the ~sales/INBOX mailbox name. You will see the salesBox mailbox in your IMAP mailer, but in reality this will be the INBOX mailbox in the sales account.
Mailbox aliases can be created only on the topmost level of the accoount mailbox hierarchy.