2017-07-12 8 views
7

LaravelのメールAPIを使用してカレンダーを招待しています。Outlookの予定表招待状がICSファイルとして受信されます - Laravel

カレンダーはGmailでうまく見えますが、適切なカレンダーの招待状の代わりにOutlookに添付ファイルが表示されます。

Gmailの出力:私は名前invite.icsでファイルを作成し、Iい

enter image description here

enter image description here

見通しに添付ファイルのようですしながら、 invite.icsファイルの中にコンテンツを入れて、電子メールを送信しながらファイルを添付します。私はそれが

$message->from($companyEmail, ''); 
$message->replyTo($companyEmail, 'Email Agent Evmeetings'); 
$message->to($to, '')->subject($subject); 
$message->setBody($calendar_invitation, 'text/calendar; charset="utf-8"; method=REQUEST'); 
$message->addPart($body, "text/html"); 

を働かせた方法です

$to = $row->to; 
$subject = $row->subject; 
$attachments = $row->attachment; 
$cc = $row->cc; 
$body = $row->body; 
$calendar_invitation = $row->calendar_invitation; 

\Mail::send(
'emailTemplates.dummy', 
['emailBody'=>$row->body], 
function(Message $message) use ($to,$subject,$attachments,$cc, $body, $calendar_invitation, $companyEmail) 
{ 
    $message->from($companyEmail, ''); 
    $message->replyTo($companyEmail, 'Email Agent Evmeetings'); 
    $message->to($to, '')->subject($subject); 
    $file = fopen("invite.ics","w"); 
    echo fwrite($file,$calendar_invitation); 
    fclose($file); 
    $message->attach('invite.ics', array('mime' => "text/calendar")); 


}); 
+0

'$ message-> attach( 'invite.ics'、array( 'mime' => 'text/calendar; charset =" utf-8 "; method = REQUEST'));' – alepeino

+0

私はやったと思う、再び試してみる@alepeino –

+0

@alepeinoそれは動作しませんでした –

答えて

4

は体にカレンダーを追加しましたし、'text/calendar; charset="utf-8"; method=REQUEST'

にMIMEタイプを変更し、電子メールでのhtml体を追加するaddPart($body, "text/html");メソッドを使用していました。

関連する問題