コード例 #1
0
ファイル: Job.php プロジェクト: hyebahi/civicrm-core
/**
 * Job to get mail and create activities.
 *
 * @param array $params
 *
 * @return array
 */
function civicrm_api3_job_fetch_activities($params)
{
    $lock = Civi::lockManager()->acquire('worker.mailing.EmailProcessor');
    if (!$lock->isAcquired()) {
        return civicrm_api3_create_error('Could not acquire lock, another EmailProcessor process is running');
    }
    try {
        CRM_Utils_Mail_EmailProcessor::processActivities();
        $values = array();
        $lock->release();
        return civicrm_api3_create_success($values, $params, 'Job', 'fetch_activities');
    } catch (Exception $e) {
        $lock->release();
        return civicrm_api3_create_error('Process Activities failed');
    }
}
コード例 #2
0
ファイル: EmailProcessor.php プロジェクト: kidaa30/yes
// you can run this program either from an apache command, or from the cli
if (php_sapi_name() == "cli") {
    require_once "bin/cli.php";
    $cli = new civicrm_cli();
    //if it doesn't die, it's authenticated
    //log the execution of script
    CRM_Core_Error::debug_log_message('EmailProcessor.php from the cli');
    $lock = Civi\Core\Container::singleton()->get('lockManager')->acquire('worker.mailing.EmailProcessor');
    if (!$lock->isAcquired()) {
        throw new Exception('Could not acquire lock, another EmailProcessor process is running');
    }
    require_once 'CRM/Utils/Mail/EmailProcessor.php';
    // check if the script is being used for civimail processing or email to
    // activity processing.
    if (isset($cli->args[0]) && $cli->args[0] == "activities") {
        CRM_Utils_Mail_EmailProcessor::processActivities();
    } else {
        CRM_Utils_Mail_EmailProcessor::processBounces();
    }
    $lock->release();
} else {
    session_start();
    require_once '../civicrm.config.php';
    require_once 'CRM/Core/Config.php';
    $config = CRM_Core_Config::singleton();
    CRM_Utils_System::authenticateScript(TRUE);
    require_once 'CRM/Utils/System.php';
    CRM_Utils_System::loadBootStrap();
    //log the execution of script
    CRM_Core_Error::debug_log_message('EmailProcessor.php');
    $lock = Civi\Core\Container::singleton()->get('lockManager')->acquire('worker.mailing.EmailProcessor');
コード例 #3
0
ファイル: Job.php プロジェクト: prashantgajare/civicrm-core
/**
 * Job to get mail and create activities
 */
function civicrm_api3_job_fetch_activities($params)
{
    $lock = new CRM_Core_Lock('civimail.job.EmailProcessor');
    if (!$lock->isAcquired()) {
        return civicrm_api3_create_error('Could not acquire lock, another EmailProcessor process is running');
    }
    try {
        CRM_Utils_Mail_EmailProcessor::processActivities();
        $values = array();
        $lock->release();
        return civicrm_api3_create_success($values, $params, 'mailing', 'activities');
    } catch (Exception $e) {
        $lock->release();
        return civicrm_api3_create_error('Process Activities failed');
    }
}