2014-11-08 1 views
2

아래 코드를 사용하여 Amazon SQS를 사용하여 이메일을 대기열에 넣었습니다. 메시지는 Amazon SQS 대기열에서 대기열에 보관되지만 이메일을 처리하는 방법을 모르겠습니다. 수신자에게 전달됩니다. SSH에 대한 액세스 권한이없는 프로젝트에 공유 서버를 사용하고 있습니다.Laravel : Amazon SQS를 사용하여 대기열을 처리하는 방법

//User Registration Email 
static function UserRegEmail($LastName,$FirstName,$Email){ 

    $user = array('LastName' => $LastName, 
       'FirstName' => $FirstName, 
       'Email' => $Email); 

    $data = array(
     'LastName' => $LastName, 
     'FirstName'=> $FirstName, 
     'senderName' => 'MyCompanyName', 
     'Email' => $Email 
    ); 

     Mail::queue('emails.user_welcome', $data, function($message) use ($user) 
     { 
      $message->from('[email protected]', 'MyCompanyName'); 
      $message->to($user['Email'], $user['LastName'].' '.$user['FirstName'])->subject('Welcome!'); 
     }); 

} 

답변

1

우선 Mail::queue을 사용하려면 대기열을 구성해야합니다. 꽤 잘 설명하는 chapter in the docs이 있습니다.
Amazon SQS에 대한 경험이 없지만 Laravel에서 이론적으로 지원합니다.

헤드 그 후 connections > sqs

에 대한 설정 당신의 세부 사항에

'default' => 'sqs' 

및 채우기 /app/config/queue.php로 변경, 모든 것이 작동합니다 이상 :

+0

구성이 완료되고 작업이 성공적으로 대기열에 있습니다. 나는 그 일을 해고하는 법을 알고 싶다 .. – BlackPearl

+0

Ups 미안하지만 천천히 읽어야한다 ... cronjobs를 설치할 수 있니? – lukasgeiter

+0

나는 그것이 필요한지를 안다? – BlackPearl