With this version 4.x of JMailQ we have moved away from script files for performing the delivery process. This greatly enhances the security of your Joomla environment. Delivery is now handled through the Joomla CLI interface.


JMailQ includes a console plugin that serves up 3 CLI command: delivery, spamcheck & updatetables.The update tables command updates your JMailQ tables to the newer version 4.x format. You should not ever need to use this as the tables are updated automatically during an upgrade installation of version 4.x from an earlier version.


The delivery and spamcheck operations can run separately but not simultaneously as each will attempt to obtain the execution lock. We recommend that if you are going to perform the spamcheck you do so as part of the delivery.


You will need to set up a Cron job on your hosting provider to execute the command. You will need to know the absolute path to the PHP executable. For Linux based systems this is usually /usr/local/bin/php.exe but please confirm this. On Linux you can execute the command "which php" and it ill give you the path. Make sure it is the correct version of PHP by running "php -v" On some hosting platforms the configure default CLI PHP can be different than the one used for Apache. JMailQ requires PHP 8.0 or higher. If the CLI version shows something less you will need to determine the absolute path to the higher version and use that.


The command for the Cron job should be:


/absolute/path/to/php.exe /absolute/path/to/joomla/root cli/joomla.php jmailq:deliver


Set the paths for your system.


We recommend that you set the Cron task to run every 5 minutes if your hosting provider allows that fine of an interval. On hosting providers that restrict any single Cron task to no more frequent than say 15 minutes, you can set up 3 separate Cron tasks at 15 minute intervals. The first using 0,15,30,45 the second using 5,20,35,50 and the third using 10,25,40,55 or whatever works for you.