Mailbox Sharing

Web User 
The word "shared" is used to describe several different features a messaging server can provide. Because of that, this CommuniGate Pro Guide uses the following terms:
  • Simultaneous Access - a situation when several client applications work with the same mailbox at the same time.
  • Foreign Mailbox Access - a situation when an Account user works with a mailbox created in a different Account.
  • External Mailbox - a CommuniGate Pro mailbox located outside the CommuniGate Pro base directory and modified directly by other programs that do not use messaging protocols and bypass the CommuniGate Pro Server.

Simultaneous Access

The CommuniGate Pro Server allows several client applications to connect, open the same mailbox, and read and modify the mailbox data at the same time.

The CommuniGate Pro multithreaded design allows the Server to synchronize client activities without using OS-level file locks and it does not require a client to wait till all other clients close the mailbox.

Simultaneous Access means that:

Clients accessing the same mailbox can use the same or different mailbox access protocols - POP, IMAP, or WebUser Interface.

Simultaneous Access is supported for all Mailbox types implemented in the CommuniGate Pro software.

This feature allows you to work with your mailbox from several workstations, and it lets a group of people (i.e. the sales department) process messages in one centralized mailbox.

Foreign and Public Mailboxes

The CommuniGate Pro access system allows an account user to access mailboxes in other accounts. Access to these foreign mailboxes (also called shared mailboxes) is controlled via the mailbox Access Control Lists.

To access a mailbox in a different account, the mailbox name should be specified as ~accountname/mailboxname. For example, to access the INBOX mailbox in the Boss account, the mailbox name should be specified as ~Boss/INBOX,

If there are several local domains on the Server, mailboxes in a different domain can be accessed by specifying full account names. To access the LIST/reports mailbox in the account ListMaster in the domain, the mailbox name should be specified as

Account names specified after the "~" sign are processed with the Router, so account alias names can be used instead of the real account names, and all Routing Table rules are applied.

Very often Foreign mailboxes are used:

CommuniGate Pro can provide "public" mailboxes, too. This can be done by creating an account public, and assigning public Access rights to its mailboxes. Usually, each group of public mailboxes is managed by some administrator, who is not required to be a CommuniGate Pro administrator.

A CommuniGate Pro Server administrator should create the public Account, log into that Account using the Web User Interface or a decent IMAP client, create some public mailboxes, and grant administration rights to regular users that will administer these public mailboxes. Those users will then grant access rights to other users, create submailboxes, and perform other administrative tasks.

For example, a public mailbox administrator can use Automated Rules to copy certain incoming messages directly into some public mailbox.

Some IMAP clients (such as Microsoft Outlook and Outlook Express) do not support foreign mailboxes at all. To let those clients access shared mailboxes in other Accounts, Mailbox Aliases can be used.

External Mailboxes

On some systems users have direct (login) access to the mail server computer, and some of them get used to Local Mailers - mail, elm, and others. Local Mailers do not use any network protocol to access account mailboxes. Instead, those programs read and modify mailbox files directly, via the file system.

The CommuniGate Pro allows you to create accounts with external INBOX mailboxes. These mailboxes are stored not inside the CommuniGate base directory, but in the system directory known to the legacy mailer applications.

Since these INBOX files can be read and modified directly, bypassing the CommuniGate Pro protocols and modules, the Server needs to synchronize its activity with legacy mail applications using OS file locking features - either FileLevel locks or FileRange locks.

On Unix systems the FileLevel locks are known as flock operations, and RangeLevel locks are known as fcntl operations. Check with your OS manual to see the which method the legacy mailers use on your system, and configure the CommuniGate Pro Server to use that method. For systems that support only one file locking mechanism (MS Windows, Sun Solaris, and some other systems), selecting either method selects that mechanism.

You should use external mailboxes only when absolutely necessary, because:

The bugs in the local mailers have nothing to do with the CommuniGate Pro Server, and they can result in mailbox corruption on any system. You may check for yourself - sample shell sessions show you how the Unix mail programs can destroy your mailbox.

If you have to support Local Mailer compatibility for all or some accounts in a domain (usually - in the main domain), you should specify the External Mailboxes settings for that domain.

When you create an account that has an external INBOX, the Server checks if the account INBOX file already exists in the specified location and creates one if the mailbox file is absent.

When you delete an account that has an external INBOX, the Server does NOT remove the INBOX mailbox file.

CommuniGate® Pro Guide. Copyright © 1998-2006, Stalker Software, Inc.