RabbitMQBundle을 사용하여 RabbitMQ를 symfony2 프로젝트에 통합하고 있습니다. 모든 것이 잘 작동합니다 (메시지를 생성하고 소비 할 수 있습니다). 그러나 소비자의 Swift_Message를 사용하여 이메일을 보내려고 할 때마다 이메일을받지 못했습니다. 그래도 소비자의 mail('[email protected]', 'subject', 'message');
을 사용하면 효과가 있습니다.RabbitMQ 및 Symfony2를 사용하여 Swift_Message를 보낼 수 없습니다.
$message = \Swift_Message::newInstance()
->setSubject($subject)
->setFrom('[email protected]')
->setTo('[email protected]')
->setBody('Foo Bar');
$this->container->get('mailer')->send($message);
이 코드는 "정상"컨트롤러 또는 서비스 내에서 작동합니다
는 여기가 Swift_Message를 보낼 때 사용하는 코드입니다. 그러나 RabbitMQ가 소비자를 트리거 할 때 작동하지 않습니다.
실마리가 있습니까?
안녕하세요, 소비자의 컨테이너에 대한 참조를 얻는 방법을 설명해 주시겠습니까? – frak
서비스의 인수로'@ service_container'를 사용할 수 있습니다 (http://symfony.com/doc/current/book/service_container.html#creating-configuring-services-in-the-container 참조). 그러나 적절한 서비스를 제공하는 편이 낫습니다. 제 경우에는 우편 발송자입니다. 당신은'@ mailer'로 그것을 주입 할 수 있습니다. –