Do it this way, bro:
\Mail::send('yourMail/file', $data, function($message) use($data)
{
$filename = "invite.ics";
$meeting_duration = (3600 * 2); // 2 hours
$meetingstamp = strtotime( $data['start_date'] . " UTC");
$dtstart = gmdate('Ymd\THis\Z', $meetingstamp);
$dtend = gmdate('Ymd\THis\Z', $meetingstamp + $meeting_duration);
$todaystamp = gmdate('Ymd\THis\Z');
$uid = date('Ymd').'T'.date('His').'-'.rand().'@yourdomain.com';
$description = strip_tags($data['texto']);
$location = "Telefone ou vídeo conferência";
$titulo_invite = "Your meeting title";
$organizer = "CN=Organizer name:[email protected]";
// ICS
$mail[0] = "BEGIN:VCALENDAR";
$mail[1] = "PRODID:-//Google Inc//Google Calendar 70.9054//EN";
$mail[2] = "VERSION:2.0";
$mail[3] = "CALSCALE:GREGORIAN";
$mail[4] = "METHOD:REQUEST";
$mail[5] = "BEGIN:VEVENT";
$mail[6] = "DTSTART;TZID=America/Sao_Paulo:" . $dtstart;
$mail[7] = "DTEND;TZID=America/Sao_Paulo:" . $dtend;
$mail[8] = "DTSTAMP;TZID=America/Sao_Paulo:" . $todaystamp;
$mail[9] = "UID:" . $uid;
$mail[10] = "ORGANIZER;" . $organizer;
$mail[11] = "CREATED:" . $todaystamp;
$mail[12] = "DESCRIPTION:" . $description;
$mail[13] = "LAST-MODIFIED:" . $todaystamp;
$mail[14] = "LOCATION:" . $location;
$mail[15] = "SEQUENCE:0";
$mail[16] = "STATUS:CONFIRMED";
$mail[17] = "SUMMARY:" . $titulo_invite;
$mail[18] = "TRANSP:OPAQUE";
$mail[19] = "END:VEVENT";
$mail[20] = "END:VCALENDAR";
$mail = implode("\r\n", $mail);
header("text/calendar");
file_put_contents($filename, $mail);
$message->subject($data['titulo']);
$message->to($data['destinatario']);
$message->attach($filename, array('mime' => "text/calendar"));
});
Regards,
David
Thanks for your snippet. It's working in gmail but not working in outlook. I am getting 'The .ICS attachment can't be viewed because the format is not supported.' Please let me know where the problem is?
@muralibobby35 and @davidtoledo
That'e exactly what I am doing through "t's working in gmail but not working in outlook", did you find the fix of this issue?
Did you guys find a way to make this work on outlook? I still get the .ics as an attachment instead of the buttons to accept or decline.. Please help
Sign in to participate in this thread!