Google calendar does not recognize iCalendar cancel request - calendar

I am testing a feature which involves creating and cancelling an invite.
Google calendar understand and can create a invite. However it cannot interpret my cancel request.
I tested the same request with Yahoo Mail and it works fine. I made sure than UID is same for create and cancel. Appreciate any help to understand what is wrong.
Create request:
BEGIN:VCALENDAR
BEGIN:VEVENT
UID:9da63b0c-0de9-4d48-a956-162587a71d15
DTSTAMP:20140104T163803
ORGANIZER;CN="jaikit savla":mailto:jkts...#gmail.com
DTSTART:20140113T020000
DTEND:20140113T030000
SUMMARY:party
METHOD:REQUEST
END:VEVENT
END:VCALENDAR
Cancel request:
BEGIN:VCALENDAR
BEGIN:VEVENT
UID:9da63b0c-0de9-4d48-a956-162587a71d15
DTSTAMP:20140104T164034
ORGANIZER;CN="jaikit savla":mailto:jkts...#gmail.com
SUMMARY:party cancelled
METHOD:CANCEL
STATUS:CANCELLED
END:VEVENT
END:VCALENDAR

METHOD is a property of VCALENDAR, not VEVENT. You're also missing a ton of required properties. Try an iCalendar validator, this looks like it was written by hand rather than a library.

I used somewhat same code for calender invitation.
But it was not storing calender invitation directly to calender.
I had to make it ad Add to calender.
Did you face this/such problem?

Related

Unsubscribe from webcal

I want to add a ics link in my website. Users would be able to add this url to their favorite calendar app and see their upcoming events.
My users use my website for a few months and then leave (it's a educational website). So my question is :
Is there a way (in the ics protocol maybe ?) to automatically unsubscribe my users from my ics url to avoid unecessary requests "for life"?
For exemple, iCal on Mac will do a request every hour to the url to get new data. But once a user leave, there will never be new data, so the requests are useless.
Thanks for your help!
You can either ask people to unsubscribe, make it desirable perhaps by a dummy daily event that says ' No longer updated, please unsubscribe'
OR
force an unsubscribe by returning an appropriate http return code to the requesting system - probably the 410 (gone) rather than the 404. The 410, as per it's description ,is the most appropriate: "The url is no longer there and the condition is likely to be permanent." https://developer.mozilla.org/en-US/docs/Web/HTTP/Status/410
A url could be offered per user. Ensure that it then returns a 410 at end of life (not just an empty file)
The receiving devices don't just quietly unsubscribe the url. Usually they show the error. Ideally the human should unsubscribe. Perhaps an email with quick tips on how to unsubcribe may be best for your situation? at least then you've told them.
I find even for myself I have a lot of garbage calendar urls in my calendar app. If I started getting errors I would unsubscribe them (or if there was garbage events, I might unsubscribe or 'hide' it.
Other ways of conveying information to the requesting app, that may reduce load on your server:
Last Modified in the header https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/Last-Modified
https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/Retry-After (No 'never'!)
There are also unofficial (non RFC5545) extensions that you could include in the ics file: eg: X-PUBLISHED-TTL - Recommended update interval for subscription to the calendar. One could make that a really long interval.
See https://en.wikipedia.org/wiki/ICalendar#Calendar_extensions

Unable to publish LUIS App

We are unable to publish the LUIS application. Publish button was disabled. Please find the attached screenshot and suggest on this please.
I have this problem in the afternoons (UK) - wait a few hours and it's fine. I wonder if the system gets overloaded at times.
The reason was session time out. I looked at console and found 400 error which says token is missing. So i signed out and signed back in. It started working. I was able to publish code to any slot specified.
It looks like a bug and microsoft should address this session timeout with auto redirect or a proper message.
Try Browsing/Publishing in Incognito mode / Private Browsing.
There are Caching related issue in luis portal
Every day at about 18:30 GMT we get lots of timeouts and 503 and publishing problems. We decided not to publish during that time.
Today we got more delays than usual
https://azure.microsoft.com/en-us/status/ show no errors in westus (the endpoint we are reaching)
It'd very nice to get a LUIS Status page (and not the global Cognitive Status)
This bug has been around for a while now. Advice from Microsoft support was to:
delete all cookies for luis.ai
sign out of the session
then sign back
in
When you sign in again the publish to production button should be enabled again

ngCordova Email Composer +how to check if user cancelled?

I have a Ionic v1 app and today I added the ngCordova Email Composer (http://ngcordova.com/docs/plugins/emailComposer), which is a kind of wrapper for https://github.com/katzer/cordova-plugin-email-composer.
It is working till the point where I want to know, if the email was sent correctly, or if the user cancelled. I found some exmaples over Google, but they catch always a cancel, even if the mail was sent.
Any ideas?
Thanks,
Christian.
The issues list of the plugin (https://github.com/katzer/cordova-plugin-email-composer/issues) shows, that I am not the only one, having problems.

iCal: How do I delete an .ics file that has subscriptions?

I have a PHP generated .ics calendar file on my server.
Several clients are subscribed to this calendar, e.g. using Google Calendar and Apple iCal/Calendar.
I want to delete the calendar and all events in it, in a way that it is also removed from the clients.
It seems that if I delete the .ics file, the events will still exist in the clients.
Should I keep an empty .ics file? Or is there some syntax I should use to instruct the clients that the calendar is no longer to be used?
In HTTP the way to tell clients that the resource no longer exists, is to emit a 404 Not Found or a 410 Gone status code.
However, even though this is the 'correct way', in practice most clients won't automatically do something with this information.
I do think that this is the 'most correct' though, because calendar clients do tend to add a 'warning' or 'error' icon to the calendar, signaling the user that something is wrong (so they can manually clean it up).
However, if you just want the events to disappear automatically, your only option is to publish a calendar with 0 events.

ics Alarms are not appearing in Google Calendar or Outlook

I'm a bit surprised I did not find a solution or answer to this question because there appears to be a lot devs out there experiencing it.
I'm generating an ics file with the help of DDay.ical but the VALARMS are not setting reminders in google calendar or outlook 2007.
Here a snippet from the ics file
Thank you very much in advance for your assistance sniffing out an explanation or fix.
BEGIN:VCALENDAR
VERSION:2.0
METHOD:REQUEST
PRODID:-//ddaysoftware.com//NONSGML DDay.iCal 1.0//EN
BEGIN:VEVENT
CREATED:20110911T134152Z
DESCRIPTION:\n\n-----------------------------------\nClient Name:No Client
was selected\n Email: \n Phone:\n Alt Phone:
DTEND:20110911T203000Z
DTSTAMP:20110911T183854
DTSTART:20110911T200000Z
LAST-MODIFIED:20110911T134152Z
LOCATION:Facebook Ad
ORGANIZER;CN=XXX XXXXXX;SENT-BY="MailTo:XXXXXXX#gmail.com"
:
SEQUENCE:0
SUMMARY:Marketing - Print Ad # Facebook Ad
UID:cd9a1618-aeb1-4ec2-8f6a-64989950ea9c
BEGIN:VALARM
ACTION:Display
DESCRIPTION:1:45
TRIGGER:PT15M
END:VALARM
END:VEVENT
END:VCALENDAR
I had this same problem in Outlook 2010. For some reason if you open the .ics file directly (and create a new calendar), it will strip all reminders. However, if you to the 'file -> import' ('file -> open -> import' in 2010) method, select the .ics file, and 'import' into your existing calendar, it will retain the reminders. I think this is totally messed up on Microsoft's part, but hopefully this works for you. I can't answer about the google calendar, but perhaps it's similar?
here's a link to how to import the calendar in outlook to get it to integrate into your current calendar: http://help.unc.edu/CCM3_022163
For the VALARM not working, double check that the end-of-line being used is \r\n, not just \n as is incorrectly shown in many examples on the web.
For more detail see my answer to a similar question here: https://stackoverflow.com/a/16540934/834431

Resources