Does iCalendar format allow overlapping dates? - google-calendar-api

I am generating an iCalendar feed which will be consumed by other web services. I am wondering if iCalendar file format allows overlapping events, for example:
BEGIN:VCALENDAR
VERSION:2.0
CALSCALE:GREGORIAN
PRODID:-//Fabricam Calendar//EN
BEGIN:VEVENT
UID:EVENT1#fabricam.com
DTSTART:20151009T170000
DTEND:20151011T110000
SUMMARY:Event 1 -- Oct 09 to Oct 11
END:VEVENT
BEGIN:VEVENT
UID:EVENT2#fabricam.com
DTSTART:20151010T170000
DTEND:20151020T110000
SUMMARY:Event 2 -- Oct 10 to Oct 20
END:VEVENT
END:VCALENDAR
Note that the second event starts in the middle of first event. The feed validates perfectly. However when I import it in Google calendar then some/all events with overlapping dates are skipped.
I am wondering if this behavior described in specs. Or should I test all feed consumers to see how they behave?

There is definitely nothing that would say that you can't have overlapping events. It actually happens all the time !
On the other hand, you have all your DTSTART/DTEND in floating time (as opposed to UTC or local time with timezone). So the events may not end up where you think they are / Google may not like this type of events, especially given that they span multiple days.

Related

What's the standard way of specifying time in an .ics file so that Google preview picks it up correctly?

When a mail in which a .ics file is attached is opened using Gmail, it shows a preview of the event time. That preview is mostly appearing correctly, but occasionally, it shows the time advanced by 5:30 hours (Indian Standard Time). At other times, while the preview is wrong, when we proceed to add the event to our calendar, it shows the correct time.
This inconsistency might mean that I'm using a time format which is not officially supported by ICS standard (or Gmail).
This is my file:
BEGIN:VCALENDAR
VERSION:2.0
CALSCALE:GREGORIAN
PRODID://<Org. Name>/<Event Name>//EN
UID:<something>
BEGIN:VEVENT
DTSTART:20190622T090000+05:30
DTEND:20190622T120000+05:30
SUMMARY:<Summary>
ORGANIZER;CN=<Org. Name>:<Org. EmailID>
LOCATION:<Location>
DESCRIPTION:<Text>
END:VEVENT
END:VCALENDAR
Some have suggested that we use an Olson identifier like this:
DTEND;TZID=Asia/Kolkata:20140606T180000
DTSTART;TZID=US-Pacific:20140606T170000
But what is the official way to specify time in an ics file so that Google preview and calendar reads it correctly? Should I be specifying the time in GMT instead? (I think it shouldn't make a difference)
And what is wrong with the style I have used (20190622T090000+05:30)
I recommend you to follow the standard directives of ical. With that, you are sure that it will work with google:
https://icalendar.org/iCalendar-RFC-5545/3-2-19-time-zone-identifier.html
For this case, I suggest you the Olson identifier as yourself suggested.
DTSTART;TZID=America/New_York:19980119T020000

I set up Google Analytics to show full url and now my pageview data has been separated

I followed these instructions https://support.google.com/analytics/answer/1012243?hl=en to show full URL in Google Analytics, because we have multiple third party sites included in our purchase flow...But a big issue I'm noticing now is that pageview data displays separately now.
Eg same month, Year-over-year view:
www.domainname.com/subpage
Aug 1-31 2017 Sessions - 5,000
Aug 1-31 2016 Sessions - 0
/subpage
Aug 1-31 2017 Sessions - 0
Aug 1-31 2016 Sessions 4,000
Is there some way to combine all this pageview data so that the subpages without the domains in front are combined with the full URL?
It's causing any data analysis to be very difficult.
I tried segments, but segments work by "sessions" and pull in other URL's that are part of the session but not specifically the URL I want to examine.
You can use the second Dimension "Hostname". Combined with the Path you will see the same as with your changes (www.domainname.com + /subpage). If you export the Data you can concat it again and analyze it.
In GA you have no possibility to merge the historical data of this two dimensions.

Business hours for specific Dates in full calendar

I am using fullcalendar to let users book an appointment with clients at specific availability set by the clients. So have to disable the fullcalendar when the client is not available. Currently I am able to set multiple business hours for whole calendar i.e. all the years and months.
But I am not able set for specific chunks of date ranges. I need to set different business hours for different date ranges in full calendar. For example from 5th Jan 2016 to 25th Jan 2016 i want to set business hours 08:00 AM to 06:00 PM after that date I want to set business hours 09:00 AM to 08:00 PM for 1st Feb to 15th Feb. Remaining Date should be disabled for creating event for whole year and above specified date and time should be enabled to create event.
I tried many options but it seems there aren't enough options to fulfill my requirement. So calling for some help if someone can.

outlook shows wrong time from ICal

I got in to a strange problem.I am creating an ICal file through razor code and when i download ICal from wesbite it shows wrong time in it.
However when I open it with a notepad correct time is printer there.
to describe this in detail I will produce a sample.
Ical open in notepad
BEGIN:VCALENDAR
PRODID:-//Google Inc//Google Calendar 70.9054//EN
VERSION:2.0
CALSCALE:GREGORIAN
METHOD:REQUEST
BEGIN:VEVENT
DTSTART:20130107T150000Z
DTEND:20130107T170000Z
DTSTAMP:20130107T131549Z
ORGANIZER;CN=it#rk.com:mailto:it#rk.com
UID:u20vfrto8rfd9cscp52sn9o#google.com
ATTENDEE;CUTYPE=INDIVIDUAL;ROLE=REQ-PARTICIPANT;PARTSTAT=ACCEPTED;CN=;X-NUM-GUESTS=0:mailto:
DESCRIPTION: INGBOARD IS IN ENGLISH.\n\nLand: Denmark\n
LOCATION:
STATUS:
SUMMARY:US Company
END:VEVENT
END:VCALENDAR
In this time is correct start time as 15.00 and end time as 17.00
When I open this in Outlook it shows start time as 8.30 PM and end Time as 10.30 PM which is wrong.
How can I fix it?
The start and end times are explicitly specified in UTC (due to the trailing Z). If Outlook is displaying them in local time, that would explain the difference. It sounds like Outlook is in an Indian time zone (which is UTC+05:30 at the moment).
You may well want to specify a local start/end time, and separately the time zone of the event. (If you don't specify the time zone, it won't start at a specific instant in time, which would be unusual for most events.)

Outlook not importing VCS with timezones correctly?

On our web app in ASP, we have a module that generates VCS files to be imported into your calendar.
This works fine if the client is on the same zone as us (GMT).
But If I create an event which starts at 9am in UTC-01 for example, I still get the event as starting at 9am UTC/GMT, it's like it won't read the TZOFFSET
This is the VCS generated. In this example the event is supposed to take place Dec 30th 2011 9am-10am in UTC-05 (New York). If I leave my time zone as GMT, I get the appointment as 9am-10am instead of calculating the time difference. Even if I change my timezones it always calculates the difference against GMT and not the Time Zone where the event is taking place.
BEGIN:VCALENDAR
METHOD:REQUEST
PRODID:-Microsoft
VERSION:2.0
BEGIN:VTIMEZONE
TZID:America/New_York
TZ:UTC-05
X-MICROSOFT-CDO-TZID:10
BEGIN:STANDARD
DTSTART:20111230T090000
TZOFFSETFROM:-0400
TZOFFSETTO:-0500
END:STANDARD
BEGIN:DAYLIGHT
DTSTART: 20111230T090000
TZOFFSETFROM:-0500
TZOFFSETTO:-0400
END:DAYLIGHT
END:VTIMEZONE
BEGIN:VEVENT
DTSTAMP:20111116T100300Z
DTSTART;TZID=America/New_York:20111230T090000
SUMMARY;ENCODING=QUOTED-PRINTABLE:TEST
UID:12347a7833h
ORGANIZER;CN=Test:MAILTO:test#test.com
LOCATION;ENCODING=QUOTED-PRINTABLE:Hall A
DTEND;TZID=America/New_York:20111230T100000
DESCRIPTION;ENCODING=QUOTED-PRINTABLE:
SEQUENCE:0
PRIORITY:5
TRANSP:OPAQUE
CATEGORIES:Test
CLASS:PUBLIC
END:VEVENT
END:VCALENDAR
I've been googling around for several days now and can't seem to find any good documentation on how to generate VCS correctly.
Any help will be great!
Thanks,
Federico
Here's the text from the blog post I mentioned (which is no longer available):
==========
Here's the issue: If you search Google on how to create an Outlook Calendar email notification/ics file, you might stumble across this page which has a generic template you could use. Or you might send yourself an invitation and look at the source code for the ICS file.
Either way you'll see the following lines within the VTIMEZONE block:
TZID:(GMT-05.00) Eastern Time (US & Canada)
X-MICROSOFT-CDO-TZID:10
Notice the strange X-MICROSOFT-CDO-TZID line... it simply has a number, "10". Well, according to Microsoft the number 10 represents the Eastern Time Zone here in America. Searching Google you might see more examples of this strange number/location mapping but you'll be hard pressed to find a complete listing of all the mappings. 11 is Central Time, 12 is Mountain Time, 13 is Pacific Time, but 38 is Mountain Time for Arizona...?
After much research (and a phone call to a MSFT employee), we found this document deep within a MSDN website: http://msdn.microsoft.com/en-us/library/aa563018(loband).aspx
It documents all the time zone "numbers" you'll need to use in order to correctly set up an ICS file.
==========
Cheers!
I'm sure the OP has solved this already, but here's a great blog post that discusses the proprietary "X-MICROSOFT-CDO-TZID" tag that Microsoft uses to help with timezone interpretation in Outlook: http://hello-dot-wordpress.blogspot.com/2009/10/my-guide-to-x-microsoft-cdo-tzid.html
Edit: Updated Link.

Resources