Использование Mail::queue с iron.io
Я пытаюсь использовать очередь Mail::queue в Laravel 4 безуспешно.
Когда я запускаю команду:
php artisan queue: subscribe queue_name http://foo.com/queue/push
Он создается на моей информационной панели подписчиком, а также, когда я получаю доступ к своей очереди маршрута / отправляю, новая очередь отправляется на Iron.io.
Проблема в том, что я никогда не получал электронное письмо, которое должно быть отправлено, когда очередь Mail:: будет выполнена.
Смотри мои маршруты:
<?php
Route::post('queue/push', function() {
return Queue::marshal();
});
Route::get('queue/send', function() {
Mail::queue('emails.teste', array(), function($message) {
$message->to('me@mesite.com', 'Renato')->subject('Welcome!');
});
return 'Ok';
});
Есть ли какая-либо конфигурация помимо queues.php мне нужно сделать?
Когда я изменяю очередь /push (для отладки) для принятия GET и доступа к URL, появляется следующая ошибка:
lluminate \ Encryption \ DecryptException
Неверные данные.
1 ответ
Я мог бы быть, но Mail::send()
правильная функция для использования, так как вы используете Iron.io для обработки очереди.
Это должно работать:
Route::get('queue/send', function() {
Queue::push(function($job) {
Mail::send('emails.teste', array(), function($message) {
$message->to('me@mesite.com', 'Renato')->subject('Welcome!');
});
$job->delete();
}
return 'Ok';
});
Я бы также предложил проверить вашу учетную запись Iron.io, чтобы убедиться, что URL-адрес подписчика настроен правильно. Как предполагает Роб У., пространство может вызывать проблемы.