Comparaison des versions


  • Ces lignes ont été ajoutées. Ce mot a été ajouté.
  • Ces lignes ont été supprimées. Ce mot a été supprimé.
  • Formatting was changed.


  1. Have a working IMAP email account somewhere for your domain: e.g. Your mail host may well be your web host (your website sends emails from "localhost") or any SMTP host you use to send email from CiviCRM. Forward all messages for processing to this address. The easy way is to set up a 'catch-all' email address on your domain, which receives all messages that do not match any other existing address on your domain. This could catch a lot of junk mail too, but the script moves any messages that do not conform to the CiviMail VERP format to the "Junk Folder" where you can inspect and delete them with your normal IMAP email viewer.
  2. Create a basic user account on your CMS (Drupal or Joomla) e.g. username: civimail password: whatever.  This is your SOAP user (see next step). For Drupal this can be any authorized user account.  For Joomla, this needs to be a 'Manager' account (at least).
  3. Download the imap2soap script and sample configuration file from
    • Put somewhere you store executables, like /usr/local/bin/ or ~/bin/ and ensure it's executable (e.g., chmod 755 Note the Perl modules required in the script and make sure they are installed on the computer you will be running the script on.*
    • Put imap2soap.conf someplace easy to edit from the user that will be calling it, say ~/civicrm/imap2soap.conf and for security purposes, protect it from being world readable (e.g., chmod 600 imap2soap.conf). Note that if you invoke without including the /PATH/TO/imap2soap.conf argument, looks for the configuration file in the current directory.
  4. Edit imap2soap.conf and enter the usernames, passwords and servers from steps 1. and 2. There is a clearly marked section in the file where you need to insert your own settings for SOAP server and email server.
  5. Run the script to process messages in the Inbox.
    • Manually - especially useful for testing IMAP connectivity - just invoke /PATH/TO/imap2soap.conf
    • Set up a Cron job to run the script:

      titleExample Cron line

      23,53 * * * * /usr/local/bin/ -q -w 1 -l 4 -L 1 /PATH/TO/imap2soap.conf


List of hosts known to support the required modules for this installation (please add / edit!)



Open Social Sites

Hosting service designed specifically to support CiviMail. A working CiviCRM / CiviMail is pre-installed for you to customize. (N.B. In the interests of full disclosure, this section and script is contributed by Open Social Sites!).

CivicSpace On Demand

If setting up CiviMail is all too much for you, CSOD could be for you. This is a CiviCRM 'ASP' that gives an 'instant', managed CiviCRM installation.


You may need to request that the following PERL modules be installed on your server:


You can use CPAN to install modules SOAP::Lite, Mail::IMAPClient, Mail::Verp, HTTP::Cookies, MIME::Entity, and dependencies into local directories (on model of SOAP::Lite below) and tell the .pl script to look for them there.
You will also need a version of PHP configured with --enable-soap.  You can "roll-your-own" (compile from source a) PHP binary in a local directory and redirect server to it following these detailed instructions.

What's this return path thing and why do I need it?


Install SOAP::Lite into a custom directory using CPAN module:

Pas de format

# perl -MCPAN -e shell
> o conf make_arg -I~/lib
> o conf make_install_arg -I~/lib
> o conf makepl_arg LIB=~/lib PREFIX=~ INSTALLMAN1DIR=~/man/man1 INSTALLMAN3DIR=~/man/man3
> install SOAP::Lite


Run CPAN module with perl -MCPAN -e shell
and run three commands from CPAN shell

Pas de format

> o conf make_arg -I~/lib
> o conf make_install_arg -I~/lib
> o conf makepl_arg LIB=~/lib PREFIX=~ INSTALLMAN1DIR=~/man/man1 INSTALLMAN3DIR=~/man/man3