title: ICS Event Updates for Google Calendar and Outlook for Windows
body: <p><strong>Problem:</strong></p>
  
  <p>If I create an ICS file with a particular uid and sequence = 0, sending that ICS to Google Calendar or Outlook for Windows creates the event successfully.
  If I create another ICS with the same uid and sequence 1</p>
  
  <ul>
  <li><p>Sending that event to Google Calendar updates it successfully</p></li>
  <li><p>Sending it to Outlook for Windows causes a duplicate event to be created, and deleting either event on the calendar deletes them both</p></li>
  </ul>
  
  <p><strong>Potential Workaround:</strong></p>
  
  <p>Would the following workaround work for both Google Calendar and Outlook for Windows?</p>
  
  <ul>
  <li>When an event is rescheduled, attach both a cancellation ICS and a
  new ICS with a different uid and sequence 0.</li>
  <li>The goal is that the original event would be deleted and recreated with new event time in both Google Calendar and Outlook for Windows</li>
  </ul>
  
  <p><strong>Sample ICS Files (Current Files, not workaround)</strong></p>
  
  <p>original Event:</p>
  
  <pre><code>BEGIN:VCALENDAR
  PRODID:-//Microsoft Corporation//Outlook 11.0 MIMEDIR//EN
  VERSION:2.0
  METHOD:REQUEST
  BEGIN:VTIMEZONE
  TZID:GMT -4
  BEGIN:STANDARD
  DTSTART:16011104T020000
  RRULE:FREQ=YEARLY;BYDAY=1SU;BYHOUR=2;BYMINUTE=0;BYMONTH=11
  TZOFFSETFROM:-0400
  TZOFFSETTO:-0500
  END:STANDARD
  BEGIN:DAYLIGHT
  DTSTART:16010311T020000
  RRULE:FREQ=YEARLY;BYDAY=2SU;BYHOUR=2;BYMINUTE=0;BYMONTH=3
  TZOFFSETFROM:-0500
  TZOFFSETTO:-0400
  END:DAYLIGHT
  END:VTIMEZONE
  BEGIN:VEVENT
  ATTENDEE;CN=test@gmail.com;RSVP=TRUE:mailto:test@gmail.com
  ORGANIZER;CN="Test Scheduling":mailto:test@s-3er8nc12r9xwme7e7orvha5os.k5hihmay.k.apex.sandbox.salesforce.com
  DTSTART:20140728T090000Z
  DTEND:20140728T100000Z
  DTSTAMP:20140718T085713Z
  LOCATION:DM Scheduling will contact you at the time of your call to connect the call.
  TRANSP:OPAQUE
  SEQUENCE:0
  UID:040000008200E00074C5B7101A82E00800a08K0000008HIxXIAW20140718T085712Z00000000000000
  DESCRIPTION:This is test #5 (7/18/14)
  SUMMARY;LANGUAGE=en-us:[P3006954]:3Call-Marina test/Marina Invividual Exp
  PRIORITY:5
  CLASS:PUBLIC
  END:VEVENT
  END:VCALENDAR
  </code></pre>
  
  <p>Reschedule:</p>
  
  <pre><code>BEGIN:VCALENDAR
  PRODID:-//Microsoft Corporation//Outlook 11.0 MIMEDIR//EN
  VERSION:2.0
  METHOD:REQUEST
  BEGIN:VTIMEZONE
  TZID:GMT -4
  BEGIN:STANDARD
  DTSTART:16011104T020000
  RRULE:FREQ=YEARLY;BYDAY=1SU;BYHOUR=2;BYMINUTE=0;BYMONTH=11
  TZOFFSETFROM:-0400
  TZOFFSETTO:-0500
  END:STANDARD
  BEGIN:DAYLIGHT
  DTSTART:16010311T020000
  RRULE:FREQ=YEARLY;BYDAY=2SU;BYHOUR=2;BYMINUTE=0;BYMONTH=3
  TZOFFSETFROM:-0500
  TZOFFSETTO:-0400
  END:DAYLIGHT
  END:VTIMEZONE
  BEGIN:VEVENT
  ATTENDEE;CN=test@gmail.com;RSVP=TRUE:mailto:test@gmail.com
  ORGANIZER;CN="Test Scheduling":mailto:test@s-3er8nc12r9xwme7e7orvha5os.k5hihmay.k.apex.sandbox.salesforce.com
  DTSTART:20140729T100000Z
  DTEND:20140729T110000Z
  DTSTAMP:20140718T090944Z
  LOCATION:DM Scheduling will contact you at the time of your call to connect the call.
  TRANSP:OPAQUE
  SEQUENCE:1
  UID:040000008200E00074C5B7101A82E00800a08K0000008HIxXIAW20140718T085712Z00000000000000
  DESCRIPTION:This is test #5 (7/18/14)
  SUMMARY;LANGUAGE=en-us:[P3006954]:3Call-Marina test/Marina Invividual Exp
  PRIORITY:5
  CLASS:PUBLIC
  END:VEVENT
  END:VCALENDAR
  </code></pre>