@UAL, Congratulations on END:VEVENT!

Wednesday, December 23, 2015 

Life’s little victories.

Starting in 2006, when UAL.com got an upgrade, they started having problems exporting events in vcal format.  They had some issues with time zone declarations that we eventually got sorted out (so many people have problems with time zones):

Ual.com now gives broken "calendar" appointments for flights.  The 
times are wrong, which seems worse than no calendar function at all.

Below is a .vcf file for a flight I will be on tomorrow.
BEGIN:VCALENDAR
PERIOD:Microsoft CDO for Microsoft Exchange
VERSION:1.0
BEGIN:VEVENT
DTSTART:20061214T001000Z
DTEND:20061214T034500Z
CATEGORIES;ENCODING=QUOTED-PRINTABLE:TRAVEL
DESCRIPTION;ENCODING=QUOTED-PRINTABLE:UA 0179=0D=0ABOS to 
SFO=0D=0ADepart: December 13 2006 at 18:10 PM (local time) 
=0D=0AArrive: December 13 2006 at 21:45 PM (local time) 
=0D=0ASeat(s): =0D=0AAPOLLO Record Locator: xxxxx
SUMMARY;ENCODING=QUOTED-PRINTABLE:Flight From BOS To SFO
PRIORITY:3
CLASS:PRIVATE
END:VEVENT
END:VCALENDAR

It is wrong.

Decoding the DTSTART: field (for example) it says:
20061214 start date, Dec 14, 2006 (correct)
T Time
001000 the "start time" (incorrect)
Z UTC (GMT time zone).

Compare with the description field, literally:
"UA 0179=0D=0ABOS to SFO=0D=0ADepart: December 13 2006 at 18:10 PM 
(local time) =0D=0AArrive: December 13 2006 at 21:45 PM (local time) 
=0D=0ASeat(s): =0D=0AAPOLLO Record Locator: xxxxx"

Aside from being formatted for minimum comprehensibility, it says the 
departure is 18:10 PM [sic, 18:10 is actually 6:10 PM, or 18:10, but 
not 18:10 PM] which is actually 02:10 GMT.  That is the start time 
_should_ read

DTSTART:20061214T021000Z

The end time is also wrong.

Also consider reformatting the description field using text/plain

Content-Type:text/plain; charset=us-ascii
Content-Transfer-Encoding: 7bit

or just remove the encoding MIME types and take out the carriage 
return/line feeds.

 

That got fixed shortly after I reported it.  But then there was the continental merger and Continental’s software had a different .VCS formatting bug, they closed with “End:VEVENT End:VCALENDAR” rather than “END:VEVENT END:VCALENDAR”  – it seems like a minor issue, but it breaks importing into gcal and a lot of other calendar apps.  Outlook is so messed up it doesn’t seem to care if things are formatted correctly or not.  I first reported this in almost 2 years ago and periodically after that, finally reporting it to bugbounty@united.com at the end of October and only two months later, it is fixed!

Old way (wrong!):
 DESCRIPTION;ENCODING=QUOTED-PRINTABLE:Flight number: UAxx=0DAircraft: Boeing 747-400=0DFare class: xxxxxxxxxx (R)=0DMeal: Lunch=0DConfirmation number: xxxxx =0D=0D This information is subject to change. Sign in to your MileagePlus(r) account at united.com to view your up-to-date itinerary.=0D=0D------------------------------------------------------------=0D=0DCheck in with United beginning 24 hours before your flight:=0Dwww.united.com/travel/checkin/quickstart.aspx?irPNR=xxxxxxxx=0D=0DChoose your seats, select Economy Plus seating, view your receipt and more:=0Dwww.united.com/managereservations=0D=0DCheck flight status:=0Dwww.united.com/flightstatus=0D------------------------------------------------------------=0DFind a hotel or car for your trip...=0DSearch for a Hotel:=0Dwww.united.com/hotels=0D=0DSearch for a Car:=0Dwww.united.com/cars=0D------------------------------------------------------------=0DThank you for choosing United.=0Dwww.united.com
End:VEVENT
End:VCALENDAR

New way (correct! – even with proper indenting now):

 DESCRIPTION;ENCODING=QUOTED-PRINTABLE:Flight number: UAxx=0DAircraft: Boeing 747-400=0DFare class: United xxxxxxx (R)=0DMeal: Lunch=0DConfirmation number: xxxxxx =0D=0D This information is subject to change. Sign in to your MileagePlus® account at united.com to view your up-to-date itinerary.=0D=0D------------------------------------------------------------=0D=0DCheck in with United beginning 24 hours before your flight:=0Dwww.united.com/travel/checkin/quickstart.aspx?irPNR=xxxxxxxx=0D=0DChoose your seats, select Economy Plus seating, view your receipt and more:=0Dwww.united.com/managereservations=0D=0DCheck flight status:=0Dwww.united.com/flightstatus=0D------------------------------------------------------------=0DFind a hotel or car for your trip...=0DSearch for a Hotel:=0Dwww.united.com/hotels=0D=0DSearch for a Car:=0Dwww.united.com/cars=0D------------------------------------------------------------=0DThank you for choosing United.=0Dwww.united.com
 END:VEVENT
END:VCALENDAR
Posted at 04:05:32 GMT-0700

Category: TechnologyTravel