MailerQueueController.php 1.17 KB
<?php

namespace backend\controllers;

use Yii;
use common\components\DbSpool;
use yii\data\ActiveDataProvider;
use yii\web\Controller;
use yii\web\NotFoundHttpException;
use yii\filters\VerbFilter;

/**
 * MailerQueueController implements the CRUD actions for MailerQueue model.
 */
class MailerQueueController extends Controller
{
    public function behaviors()
    {
        return [
            'verbs' => [
                'class' => VerbFilter::className(),
                'actions' => [
                    'delete' => ['post'],
                ],
            ],
        ];
    }
    /**
     * Send Queue messages
     */
    public function actionSend()
    {
        $messageLimit = 10;
        $timeLimit = 0;

        $spool = new DbSpool();
        $transportReal = \Swift_SmtpTransport::newInstance(
            "smtp.gmail.com",
            "465",
            "ssl"
        )
            ->setUsername("alexandr.khivrich@gmail.com")
            ->setPassword("10181997Nadia");

        $spool->setMessageLimit($messageLimit);
        $spool->setTimeLimit($timeLimit);
        $sent = $spool->flushQueue($transportReal);

        echo sprintf('sent %s emails', $sent);
    }
}