Warning: Trying to access array offset on null in /home/geldner/public_html/wp-content/themes/fluida/includes/loop.php on line 270

Importing ICAL / VCalendar (.ics) calendar files and making them your own

If you’re like me, you may have to download ICAL appointments now and then from various sites like Zoom, Meetup, VRBO or your doctor’s office. About half the time, I need to invite others to the same appointment. But, with the usual way that ICAL files come formatted, you can’t. That’s because 1. you’re almost never the meeting organizer and 2. the appointment may be locked as to the meeting type. So when you import the ICAL, while you can see all the pertinent data, you can’t edit it.

There’s a relatively simple solution to this. OPEN the ICAL file in a text editor (like Notepad), make a few key edits and voila; when you import the event into Outlook or whatever program you use, it will become fully editable as if it was an event you created from scratch.

Step 1: Save the .ics or .ical file to your local drive. If it came in as an email attachment, don’t just blindly double-click it or open it. I usually save them to my Windows desktop since once they are imported (later step), they’re no longer needed.

Step 2: OPEN the file you saved in a text editor like Notepad (Windows) or TextEdit (MAC). Since .ICS files are normally associated with your calendar application, this will probably require using the OPEN WITH command on Windows (right-click on the filename in Explorer then select Notepad). (I don’t use Macs so no idea what the equivalent is.)

You will probably see something that looks like below. This is a bare bones ICAL so what you download or save may be more complex.

BEGIN:VCALENDAR
VERSION:2.0
PRODID:-//ReallyBig Corporation//MyCalendar//EN
METHOD:REQUEST
BEGIN:VEVENT
UID:Some random data here
ORGANIZER;CN=Bob Smith:mailto:bob@somewhere.not
DTSTAMP:20210121T021722Z
DTSTART:20210123T210000Z
DTEND:20210123T213000Z
SUMMARY;LANGUAGE=en-US:Zoom Meeting to discuss things\, ReallyBig Company\, 1234 Street\, Somewhere\, 99999 CA
DESCRIPTION;LANGUAGE=en-US:We are going to discuss things and more things\.\nThen still more things\.
END:VEVENT
END:VCALENDAR

Step 3: Delete the lines in red. The format is fairly specific so we don’t want to be mucking around too much. All we want to do is get rid of the METHOD:REQUEST line and the ORGANIZER line. While it may be tempting, DON’T change the ORGANIZER line to reference yourself. If you do, Outlook will think you’ve already scheduled the event and won’t add it. (I don’t know how other programs behave but probably in similar fashion.) Deleting ORGANIZER entirely will let you own the new event. Deleting METHOD ensures it’s not going to be interpreted weirdly (METHOD could have NOTICE, CONFIRM and other values). Be careful to respect line endings and beginnings. They matter. This is not HTML.

Step 4: For those appointments that sometimes come in with a “zero” length, you could change the DTEND: value to something more logical. You can see this appointment begins on January 23, 2021 at 21:00 and ends at 21:30. Because no time zone offset is specified, the times are in GMT so on import they will (usually) be converted correctly to your local time. HOWEVER, some calendar systems may generate more complex times based on timezone offsets and meeting location. Unless you want to wade through that stuff, don’t bother. You can always edit the event once it gets into your own calendar.

Step 5: Duh. Save the file after making your changes and either Import it or Open it — whatever your system supports.

That’s all. Hope this helps you in some small way.

Leave a Reply

Your email address will not be published. Required fields are marked *