What is wrong with this iCal event? - icalendar

I'm generating an ics file from calendar information and google calendar can show these. But a few events doesn't show up, for example this one: (one event extracted from the full file)
BEGIN:VCALENDAR
PRODID:-//tt.megy.se//CalendarExporter V0.1//SE
VERSION:2.0
CALSCALE:GREGORIAN
METHOD:PUBLISH
X-WR-CALNAME:Tick-Tack
BEGIN:VEVENT
DTSTAMP:20120116T095000Z
LAST-MODIFIED:20120116T095000Z
CREATED:20120116T095000Z
SEQUENCE:1
DTSTART:20120116T095000Z
DTEND:20120116T104000Z
UID:Lesson20120116T095000ZLu111D#tt.megy.se
SUMMARY:Lunch
LOCATION:.
URL:http://tt.megy.se
DESCRIPTION:.
CLASS:PUBLIC
STATUS:CONFIRMED
END:VEVENT
END:VCALENDAR
I have checked the above at http://severinghaus.org/projects/icv/ and it validates. Does anyone have any idea why this specific event wouldn't show up in an iCal consumer, for example google calendar.
Any help is appreciated.

I was able to "import" it into a test google calendar with no problem.
In my experience, "subscribing" via google calendar can be slow - ie it may not show up for a while.

Related

How to create ics file that allow adding attendee on creation of Google calendar event

I am trying to create an .ics for Google Calendar, but when I try to add this event to my Google Calendar using the file, there isn't anyone the event's attendee list.
VERSION:2.0
PRODID:-//PYVOBJECT//NONSGML Version 1//EN
BEGIN:VEVENT
UID:20191205T041804Z - 44748#odoo-vagrant
DTSTART:20200103T140000Z
DTEND:20200103T150000Z
ATTENDEE:MAILTO:dang.nguyen#novobi.com
ATTENDEE:MAILTO:admin#yourcompany.example.com
CREATED:20191205T041803Z
DESCRIPTION:Phone: (098) 159-4793\nEmail: dang.nguyen#novobi.com\n
DTSTAMP:20191205T041804Z
LOCATION:https://zoom.us/j/308566271
ORGANIZER:MAILTO:admin#yourcompany.example.com
SUMMARY:Odoo Accounting with Dang Nguyen
BEGIN:VALARM
ACTION:AUDIO
DESCRIPTION:15 Minute(s)\, by e-mail
TRIGGER;RELATED=START:PT15M
END:VALARM
END:VEVENT
END:VCALENDAR
Can anyone help me with this issue ?

I can't get my recurring events identified in google calendar

i'm using ICAL.js to crearte a recurring events, when I import the .ics file on my phone, it adds only one event!
this is the .ics file, what's the problem?
BEGIN:VCALENDAR
CALSCALE:GREGORIAN
PRODID:-//Qu Studioc.//Timetable//EN
VERSION:2.0
BEGIN:VEVENT
FREQ:WEEKLY
BYDAY:SU,TU
SUMMARY:ESP102\n16121-training
UID:ESP1020
DTSTART:20190630T025448
DURATION:PT100M
DTSTAMP:20190704T025448
UNTIL:20200102T000000Z
END:VEVENT
BEGIN:VEVENT
FREQ:WEEKLY
BYDAY:SU,TU
SUMMARY:ESP102\n16121-training
UID:ESP1021
DTSTART:20190630T025448
DURATION:PT100M
DTSTAMP:20190704T025448
UNTIL:20200102T000000Z
END:VEVENT
END:VCALENDAR
thank you.
An RRULE must actually be specified - the FREQ should be part of the RRULE not standalone
The ietf.org site is not responding for me now, try
https://icalendar.org/iCalendar-RFC-5545/3-8-5-3-recurrence-rule.html

Shows only one VEVENT (first) from many in .ics file

Here is the ICS file content:
BEGIN:VCALENDAR
PRODID:-//Test//Test 1.0//EN
VERSION:2.0
CALSCALE:GREGORIAN
METHOD:PUBLISH
BEGIN:VTIMEZONE
TZID:Asia/Tokyo
X-LIC-LOCATION:Asia/Tokyo
END:VTIMEZONE
BEGIN:VEVENT
DTSTAMP;TZID=Asia/Tokyo:20190108T154626
UID:a0K1I000007ljAxUAI-a0D1I000007daO4UAI
RELATED-TO:a0K1I000007ljAxUAI
DTSTART;TZID=Asia/Tokyo:20190123T080000
DTEND;TZID=Asia/Tokyo:20190123T200000
SUMMARY:XXXXXXXXXXXXXXXXXXXX2
LOCATION:XXXXXXXXXXXXXXXXXXXX2
DESCRIPTION:XXXXXXXXXXXXXXXXXXXX2
TRANSP:OPAQUE
END:VEVENT
BEGIN:VEVENT
DTSTAMP;TZID=Asia/Tokyo:20190108T154626
UID:a0K1I000007ljAxUAI-a0D1I000007daNzUAI
RELATED-TO:a0K1I000007ljAxUAI
DTSTART;TZID=Asia/Tokyo:20190110T080000
DTEND;TZID=Asia/Tokyo:20190110T200000
SUMMARY:XXXXXXXXXXXXXXXXXXXX1
LOCATION:XXXXXXXXXXXXXXXXXXXX1
DESCRIPTION:XXXXXXXXXXXXXXXXXXXX1
TRANSP:OPAQUE
END:VEVENT
END:VCALENDAR
In Thunderbird and Gmail I able to see only first (by order) event. Is this normal behaviour for mail clients, should I create separate .ics file for each VEVENT then and send it with single mail? Thanks in advance for help!
Separate them. I don't know a calendar app that allows one to 'invite' someone to multiple events at the same time. One can of course send a multi event file and ask the user to import it (but for multi events sometimes subscribe is better). If one sends an ics file generated by google calendar, it does the same thing (along with option to download ics file), so nothing to do with your file.
If the need is to have a person see multiple events at a time, a better approach would be to offer them a personal subscribeable ics url. That way they see it separately in their calendar app and it will update/refresh when there are changes.

ics event update failed in web calendar

I am trying to create a ics feed for users to subscribe via webcal. The feed's content comes from database and looks like the following.
When the database is updated, the feed changes and updates the subscribers' calendars. It works fine with google calendar and some calendar apps. However, I never observe updates in outlook.com (the web calendar) or Yahoo calendar. Is there something wrong in the feed so update fail?
The feed is provided through webcal://example.com/subscribe.php
and I put header('Content-Type: text/calendar; charset=UTF-8');
as the first PHP line
ics:
BEGIN:VCALENDAR
PRODID:-//Organisation//Roster//EN
VERSION:2.0
CALSCALE:GREGORIAN
METHOD:PUBLISH
X-WR-CALNAME:Duty Arrangement
X-WR-CALDESC:Duty Arrangement
X-WR-TIMEZONE:Asia/Hong_Kong
REFRESH-INTERVAL;VALUE=DURATION:PT6H
X-PUBLISHED-TTL:PT6H
BEGIN:VEVENT
DTSTART:20180218T020000Z
DTEND:20180218T033000Z
DTSTAMP:20180602T144036Z
UID:228Mip5LyZ5JqY5#organisation.com
DESCRIPTION:Task A
LOCATION:Office
SUMMARY:On Duty
TRANSP:OPAQUE
END:VEVENT
BEGIN:VEVENT
DTSTART:20180304T020000Z
DTEND:20180304T033000Z
DTSTAMP:20180602T144036Z
UID:230Mip5LyZ5JqY5#organisation.com
DESCRIPTION:Task B
LOCATION:Office
SUMMARY:On Duty
TRANSP:OPAQUE
END:VEVENT
END:VCALENDAR
You have the UID but ICS file events need a SEQUENCE number to indicate which update/version of the event is the latest.
See the specification https://www.rfc-editor.org/rfc/rfc5545#section-3.8.7.4
For recurring event instances, they also need a RECURRENCE-ID of the instance being modified.

What is wrong with this ICalendar

I've tried this in a couple of validators. It passes. Can someone please advise what is wrong with this. I doesn't load in any of our smart phones nor in Lotus Notes
BEGIN:VCALENDAR
VERSION:2.0
PRODID:-//Company Name//NONSGML Intranet Outage Cal//EN
CALSCALE:GREGORIAN
METHOD:REQUEST
BEGIN:VEVENT
DTSTART:20130421T000000
DTEND:20130421T003000
DTSTAMP:20130410T163211
ORGANIZER:MAILTO:nasl2webmaster#company.com
UID:calendar#company.com
LOCATION:EAF #1
TRANSP:OPAQUE
SEQUENCE:0
SUMMARY:Outage Calendar : added\, EAF #1 outage
PRIORITY:5
X-MICROSOFT-CDO-IMPORTANCE:1
CLASS:PUBLIC
X-FRS-EXT-BUILDNO;X-FRS-SEND=SEND:8.03.80716
X-FRS-EXT-OPLINK;X-FRS-SEND=SEND:205A5936304D412A315F4B3026512E
X-FRS-EXT-RECTYPE;X-FRS-SEND=SEND:A
BEGIN:VALARM
TRIGGER:-PT20H
ACTION:DISPLAY
DESCRIPTION:Reminder:EAF #1 outage
END:VALARM
END:VEVENT
END:VCALENDAR
You are using a METHOD:REQUEST but your invitation has not ATTENDEE PROPERTY. See https://www.rfc-editor.org/rfc/rfc5546#section-3.2.2 which indicates which properties are mandatory.
If you just want to "publish" the event, you should use METHOD:PUBLISH (or no method at all).
There might be other issues of course but I would start by fixing this.
Finally, you are using floating time (no ending Z, nor timezone info in your DTSTART/DTEND). This is not invalid per say but, in general, calendar user agents don't like very much. You probably want to use zulu (utc) time instead. See https://www.rfc-editor.org/rfc/rfc5545#section-3.3.5
What error are you getting? I can load it perfectly in Outlook, google calendar & iPhone.