Skip to main content

Calendar invitations are broken

The ability to respond to calendar event invitations in most applications is broken.  This is true for both web and desktop applications.

There are a whole host of calendaring applications on the market with the likes such as Exchange, Google, Yahoo, iCloud, you name it.  In more closed environments like those in many offices that use Outlook as the client for email and calendaring, the problem is less noticeable.  The integration is much tighter.  Take Google Calendar and iCloud for example, the integration is less tight because invitees will get their notifications using Apple Mail, Yahoo Mail, iOS, Android, and who knows what else.  This is because the invitees will be using their email and calendaring application of choice rather than whatever is issued in the office.

Attempts have been made by most software vendors to gracefully handle invitations from email, and the calendar vendors try their best to make the invitations simple to respond from.  The trouble is that they all do it a little differently, and they're all unreliable.

For any reasonable expectation that an invitation response will be handled by the organizer's calendaring application, there are a few tips that may be useful.

Tip 1

Some email clients will recognize an invitation as such and try to provide controls in the message view to respond to the invitation.  These will typical be things like "Yes | No | Maybe," or "Attending | Decline | Tentative."  With all likelihood, these controls will indicate that the invitation has been acted upon when in reality no response has actually been sent to the organizer.

Instead, look in the body of the invitation for similarly labelled links or a link to the calendar item itself.  These links will probably load a webpage with the details of the event and controls to set your attendance with.

Tip 2

Avoid making adjustments to your attendance settings from an event that is automatically created in your calendar.  There is no guarantee that any notification message sent to the organizer's email or calendaring application will be handled as intended.

Tip 3

Replying to an invitation via email like any other email message should not be expected to trigger any automatic action on the invitation.  The more likely occurrence is that the message will be treated as any other email message.

The following screen captures illustrate some of the in-line controls versus the links that can be found in the body of the invitation.

Invitation from Yahoo Calendar as it appears in Gmail.
Invitation from Yahoo Calendar as it appears in Gmail.


Invitation from Google Calendar as it appears in Yahoo Mail.
Invitation from Google Calendar as it appears in Yahoo Mail.


Invitation from Yahoo Calendar as it appears in Evolution.
Invitation from Yahoo Calendar as it appears in Evolution.


With Evolution it should be noted that there is no way to respond to an invitation such that the organizer's calendaring application will be able to process the response.  The mail client does not render the body of the invitation and so there is no URL to the event's webpage.

Unlike some of the other email applications that at least render the original body of the invitation and therefore have a link to the event item on the Web, Evolution provides its own interpretation of the invitation.  The controls it presents only act on its own version of the event.

iCloud has also proven to be problematic.  While it does provide a link to the event's webpage ("See replies…," then from the webpage "Change reply…"), any action taken from there fails with the message, "Couldn't Save Reply Try again?"  If the response is clicked from the invitation the same failure message is reported, but the response looks like it "took."  But alas, it, like all the others, has actually failed.

Comments

Popular posts from this blog

PHP built-in webserver and IPv6 addresses

Though it's difficult to confirm around the Web, it appears as though the IP address scheme the built-in PHP server uses depends on the host name that's provided.  If a fully-qualified domain name (FQDN) is used, such as server.domain.tld, then the built-in server will be listening for IPv6 based requests.  If the server is started with an IPv4 address identified as the host, then it will naturally listen for IPv4 based requests. The closest to anything official around the Web was a comment in the PHP docs that only seeded this conclusion, at best.  But here it is in any case. Built-in web server http://php.net/manual/en/features.commandline.webserver.php#120449 Ultimately, the following answer from Stack Overflow held the "universal" solution.  Thank you dew010. Running PHP 5.4 built-in web server outside localhost http://stackoverflow.com/a/8377378/2487485 Start your development server like: php -S 0.0.0.0:8989

HP webOS interface kudos

UPDATED 06/07/2013 Pandora no-longer makes the webOS version of its player available. While quite obviously a piece rooted in opinion, a subtle nod is offered to Palm for the excellent interface work it did with webOS .  Since it’s initial release with Sprint in June 2009, Palm quickly slipped into relative oblivion.  With the recent purchase of the company by HP coupled with new product releases set for the summer, webOS may become relevant once again.  If so, then perhaps a whole new lot of users will come to appreciate the consideration that was taken with the webOS user interface (UI). An example is the popular webOS application for the even more popular Pandora Internet radio service.  And as it turns out, the company has a collection of screen captures for the various mobile platforms that have native applications for the service.  This happens to double as a quick way to compare the interface elements of other platforms by using the same applic...

Allow Windows authentication using SQL Server driver with DBeaver

DBeaver will allow Microsoft Windows single sign on access when connecting to Microsoft SQL Server using the SQL Server driver (rather than jTDS ).  From the driver properties settings, set the integratedSecurity flag to true . Open the Connection configuration panel and choose the Driver properties section. Set the integratedSecurity flag to true . A subtle, but important step is to not provide username and password credentials to the connection.