2014-03-12 3 views
0

Laravel의 MAIL 클래스를 사용하여 .ics 파일을 전자 메일 첨부 파일로 보내려고합니다. 이메일을 받으면 Gmail에서 캘린더에 일정을 추가할지 묻지 않습니다. 그러나 나는 쉽게받은 파일을 업로드하여 일정에 이벤트를 추가 할 수 있습니다. (서식 유효합니다.) 그리고 거기에 작은 달력 아이콘이 있습니다, 아직 멋진 형식이나 서식이 전혀 없습니다. 여기 내가 사용 코드입니다 :Laravel 4.1에서 전자 메일 첨부 파일로 .ics 이벤트 보내기

$filename = "invite.ics"; 

$data[0] = "BEGIN:VCALENDAR"; 
$data[1] = "PRODID:-//Google Inc//Google Calendar 70.9054//EN"; 
$data[2] = "VERSION:2.0"; 
$data[3] = "CALSCALE:GREGORIAN"; 
$data[4] = "METHOD:REQUEST"; 
$data[8] = "BEGIN:VEVENT"; 
$data[9] = "DTSTART:20140312T080000Z"; 
$data[10] = "DTEND:20140312T103000Z"; 
$data[11] = "DTSTAMP:20140312T072230Z"; 
$data[12] = "UID:[email protected]"; 
$data[13] = "CREATED:20140312T072126Z"; 
$data[14] = "DESCRIPTION:Hair cut\, 2\,5h\, 300Eur"; 
$data[15] = "LAST-MODIFIED:20140312T072206Z"; 
$data[16] = "LOCATION:"; 
$data[17] = "SEQUENCE:0"; 
$data[18] = "STATUS:CONFIRMED"; 
$data[19] = "SUMMARY:Matu griešana"; 
$data[20] = "TRANSP:OPAQUE"; 
$data[21] = "END:VEVENT"; 
$data[22] = "END:VCALENDAR"; 


$data = implode("\r\n", $data); 
header("text/calendar"); 
file_put_contents($filename, "\xEF\xBB\xBF". $data); 

Mail::send('emails.temp', array(), function($message) use($filename) 
{ 
    $message->from('[email protected]', 'Jon Doe'); 
    $message->to('[email protected]')->subject('Registration information'); 

    $message->attach($filename, array('mime' => "text/calendar")); 
}); 
+0

을 무관, 문제는 이메일의 몸의 MIME 타입을 설정하는 방법을 지금 'text/calendar'. – Osvalds

+0

결국 효과가 있습니까? – u01jmg3

답변

-1

는 목적지에 파일을 생성하고 그래서 밝혀

name ="invite.ics" 
matter= 
"BEGIN:VCALENDAR 
PRODID:-//Microsoft Corporation//Outlook 11.0 MIMEDIR//EN 
VERSION:2.0 
METHOD:PUBLISH 
BEGIN:VEVENT 
ORGANIZER:MAILTO:[email protected] 
DTSTART:20150315T170000Z 
DTEND:20150315T180000Z 
LOCATION:La Taska 
TRANSP:OPAQUE 
SEQUENCE:0 
UID:d41d8cd98f00b204e9800998ecf8427e 
DTSTAMP:20150313T150000Z 
DESCRIPTION:The Programn Description 
SUMMARY:The Programn Description 
PRIORITY:5 
CLASS:PUBLIC 
END:VEVENT 
END:VCALENDAR" 
+0

어 ... 나는 이것이 문제를 해결할 것이라고 생각하지 않습니다. OP가 그러한 이벤트를 첨부하는 데 문제가 있습니다. 당신은 질문에 대한 대답이 질문 자체임을 제안하고 있습니다. – rayryeng

관련 문제