2014-09-08 3 views
3

Я начал отправлять письма через Laravel (4.2) и его встроенный драйвер Mandrill в эти дни, но мне нужно как-то уловить ответ Мандрилла.Laravel 4 & Mandrill JSON response

Вот код, я использую, чтобы отправить сообщение:

Mail::queue('emails.customerspromo', array('messaggio'=>$content, 'disclaimer'=>$disclaimer, 'user_email'=>$to, 'user_id'=>$uid), function($message) use ($sender, $to, $subject) { 
    $message->from('[email protected]', $sender); 
    $message->to($to); 
    $message->subject($subject); 
    $message->setCharset('UTF-8'); 
    $message->getHeaders()->addTextHeader('X-MC-GoogleAnalytics', 'www.my-site.it'); 
    $message->getHeaders()->addTextHeader('X-MC-GoogleAnalyticsCampaign', 'my-campaign'); 
}); 

Что мне нужно, чтобы перехватить это JSON ответ Mandrill, например:

[ 
    { 
     "email": "[email protected]", 
     "status": "sent", 
     "_id": "80e1ca49d3ed4cbb9d9a3d932c0a14f8", 
     "reject_reason": null 
    } 
] 

Как я могу сделать это с помощью интегрированных драйверов Laravel в для Мандрилла?

Я мог бы использовать Mail :: send вместо Mail :: queue, если это необходимо для интерпретации ответа в реальном времени.

ответ

0

Поместите переменную перед вашей почтовой функции, как это:

 
$response =Mail::queue('emails.customerspromo', array('messaggio'=>$content, 'disclaimer'=>$disclaimer, 'user_email'=>$to, 'user_id'=>$uid), function($message) use ($sender, $to, $subject) { 
    $message->from('[email protected]', $sender); 
    $message->to($to); 
    $message->subject($subject); 
    $message->setCharset('UTF-8'); 
    $message->getHeaders()->addTextHeader('X-MC-GoogleAnalytics', 'www.my-site.it'); 
    $message->getHeaders()->addTextHeader('X-MC-GoogleAnalyticsCampaign', 'my-campaign'); 
}); 

Это будет работать, но теперь вы можете увидеть ответ от Mandrill.