Closed
Bug 1173723
Opened 10 years ago
Closed 6 years ago
Gcal invitations accepted by invitees do not update event from organizer's view, nor do they send alerts
Categories
(Calendar :: Provider: GData, defect)
Tracking
(Not tracked)
RESOLVED
WONTFIX
People
(Reporter: davidy, Unassigned)
Details
User Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10_10_3) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/43.0.2357.124 Safari/537.36
Steps to reproduce:
1. I have 2 Google Calendar users. (User A and B)
2. User A invites user B to an event via any supported Google Calendar client. User A has his calendar set to txt&email him of any calendar activity.
3. User B has TB 31.7.0, Lightning 3.3.3, and GCal Provider 1.0.4.
4. User B has configured their Google Calendar with "calendar.google.enableEmailInvitations" set to true, and has associated his calendar with his email account
5. User B receives the invitation from user A by email, and clicks "Accept"
Actual results:
1. User B views the Google Calendar web view. The event (for which he is the attendee) appears, and shows that he is attending.
2. User A views the Google calendar web view. The event (for which he is the organizer) shows that user B has not yet responded.
3. No email / text notifications are received by user A to indicate that user B has accepted.
Expected results:
1. User B views the Google Calendar web view. The event (for which he is the attendee) appears, and shows that he is attending.
2. User A views the Google calendar web view. The event (for which he is the organizer) shows that user B is attending
3. Email / text notifications are received by user A to indicate that user B has accepted.
Comment 1•10 years ago
|
||
Are there any messages in the error log (ctrl+shift+j)?
I'm not sure, but eventually you need also to enable calendar.google.sendEventNotifications -can you check whether this does the trick?
Reporter | ||
Comment 2•10 years ago
|
||
Nope, nothing in the error log (I cleared it before reproducing the issue)
From what I can tell, calendar.google.sendEventNotifications is enabled by default.
Interestingly, if I accept the invitation using the "Invitations" hyperlink on the status bar at the bottom of the window, the invitation is processed correctly, organizer calendar is updated and notifications are received. But accepting from the blue bar when viewing the invitation email itself consistently does not work.
Comment 3•10 years ago
|
||
Is this your primary Google calendar?
Can you enable calendar.debug.log and calendar.debug.log.verbose in the config editor and check the log again and post what you get displayed (not just errors but also other messages)?
Reporter | ||
Comment 4•10 years ago
|
||
Yes, it's my primary Google calendar. It's also the only calendar configured in TB (I deleted the "home" calendar), and it's my only configured email account. Debug logs follow.
---
iTIP method: REQUEST
iTIP on REQUEST: no existing items.
iTIP operations: 1
iTIP options on: REQUEST
[calGoogleCalendar] Adding invitation event test3
[calGoogleRequest] Requesting POST https://www.googleapis.com/calendar/v3/calendars/googleapps%40prophecy.net.nz/events/import?sendNotifications=true
[calGoogleCalendar] Setting Upload Data (application/json; charset=UTF-8):
{"start":{"dateTime":"2015-06-13T03:00:00Z","timeZone":"UTC"},"end":{"dateTime":"2015-06-13T03:15:00Z","timeZone":"UTC"},"iCalUID":"2CBFFE33-EB63-438E-982F-7FC6B829DE75","created":"2015-06-13T02:24:47.000Z","updated":"2015-06-13T02:25:06.000Z","summary":"test3","description":"View your event at https://www.google.com/calendar/event?action=VIEW&eid=XzY5MWs0aGk2OGtwajZiYTU4OHIzNmI5azZjczRhYjlwNzBwNGNiOW44cDFqY2dobzY4c2s4aDluNmsgZ29vZ2xlYXBwc0Bwcm9waGVjeS5uZXQubno&tok=MjEjZGF2aWRAcHJvcGhlY3kubmV0Lm56OThmZjVjZjRjNjk4Mzk3NGE4ZTYyOTgyNDI3MDhmOWZmNjlkMWI2NA&ctz=Pacific/Auckland&hl=en_GB.","transparency":"opaque","sequence":"0","status":"confirmed","organizer":{"email":"david@prophecy.net.nz","displayName":"David Young"},"attendees":[{"email":"googleapps@prophecy.net.nz","displayName":"Google Apps Admin","responseStatus":"accepted","additionalGuests":"0"},{"email":"david@prophecy.net.nz","displayName":"David Young","responseStatus":"accepted","additionalGuests":"0"}],"reminders":{"overrides":[],"useDefault":false}}
[calGoogleRequest] Clock skew is -1 seconds
[calGoogleCalendar] Request POST https://www.googleapis.com/calendar/v3/calendars/googleapps%40prophecy.net.nz/events/import?sendNotifications=true responded with HTTP 200
[calGoogleCalendar] Parsing entry:
{
"kind": "calendar#event",
"etag": "\"2868324615792000\"",
"id": "_691k4hi68kpj6ba588r36b9k6cs4ab9p70p4cb9n8p1jcgho68sk8h9n6k",
"status": "confirmed",
"htmlLink": "https://www.google.com/calendar/event?eid=XzY5MWs0aGk2OGtwajZiYTU4OHIzNmI5azZjczRhYjlwNzBwNGNiOW44cDFqY2dobzY4c2s4aDluNmsgZ29vZ2xlYXBwc0Bwcm9waGVjeS5uZXQubno",
"created": "2015-06-13T02:24:47.000Z",
"updated": "2015-06-13T02:25:07.936Z",
"summary": "test3",
"description": "View your event at https://www.google.com/calendar/event?action=VIEW&eid=XzY5MWs0aGk2OGtwajZiYTU4OHIzNmI5azZjczRhYjlwNzBwNGNiOW44cDFqY2dobzY4c2s4aDluNmsgZ29vZ2xlYXBwc0Bwcm9waGVjeS5uZXQubno&tok=MjEjZGF2aWRAcHJvcGhlY3kubmV0Lm56OThmZjVjZjRjNjk4Mzk3NGE4ZTYyOTgyNDI3MDhmOWZmNjlkMWI2NA&ctz=Pacific/Auckland&hl=en_GB.",
"creator": {
"email": "david@prophecy.net.nz",
"displayName": "David Young"
},
"organizer": {
"email": "david@prophecy.net.nz",
"displayName": "David Young"
},
"start": {
"dateTime": "2015-06-13T15:00:00+12:00"
},
"end": {
"dateTime": "2015-06-13T15:15:00+12:00"
},
"iCalUID": "2CBFFE33-EB63-438E-982F-7FC6B829DE75",
"sequence": 0,
"attendees": [
{
"email": "googleapps@prophecy.net.nz",
"displayName": "Google Apps Admin",
"self": true,
"responseStatus": "accepted"
},
{
"email": "david@prophecy.net.nz",
"displayName": "David Young",
"organizer": true,
"responseStatus": "accepted"
}
],
"reminders": {
"useDefault": false
}
}
[calGoogleCalendar] Adding test3 succeeded
iTIP on REQUEST: found 1 items.
iTIP operations: 0
---
Reporter | ||
Comment 5•10 years ago
|
||
In case it's relevant, after I accepted my test invite, I received an notification (to myself) that I'd accepted. (Not to the organizer - I, the attendee, received the google calendar notification that I, the attendee, was attending). I do have the notification option turned on in GCal to "Receive an update when guests respond to an event for which you can see the guest list", so perhaps this is why.
D
Reporter | ||
Comment 6•10 years ago
|
||
FYI, I logged a Google Apps for Work support case for this (ref 06191964), and just received the following result:
-----
Hi David,
Thank you for your patience.
As per investigation, we try to reproduce the issue from our end and it was reproducible. When we check over the Provider for Google Calendar 1.0.4 it's not communicating with Google Calendar to sync the event details. It's most likely look like issue from Provider for Google Calendar 1.0.4. It's a third party application which is not supported by Google for Work Support. We also tried our best to fix this. However, its most likely the issue is from Provider for Google Calendar.
As for now, I will keep this ticket open until I get further notice from your end.
If you have further questions related to this case, please don't hesitate to contact me. I'll be more than happy to help.
Have a good day!
Sincerely,
<removed>
Google for Work Support
----
Comment 7•10 years ago
|
||
Hi David,
I've finally gotten around to looking into this. What is your Google Calendar setting for "Automatically add invitations to my calendar"? I assume this is "No" and hence the events are not shown.
The provider indeed does not send the "showHiddenInvitations" parameter, which could help, but there are caveats. On the provider side, if the calendar is not synchronized before the email invitation comes in, then the provider does not know about the invitation and attempts to import the event just as before. While I could certainly force a synchronization each time an invitation email is viewed and detect if the event was just recently added, this would be a pretty ugly hack and also vastly increase the number of API requests.
The bigger trouble is that Google does not change the syncToken if (hidden) invitations have been added. Therefore, a request to get all updated items since the last sync with showHiddenInvitations=true returns no results, even if there are new hidden invitations. I didn't find a way to request ONLY the hidden notifications, but even with that it means yet another request per viewed email or at least per synchronization.
Ideally I would like Google to smartly handle events added using the /import endpoint, which as far as I've understood is to be used to add events unknown to the calendar client, which have a different organizer (as in an invitation scenario). If an event is added that has the "iCalUID" field set to an event which is a (hidden) invitation, then Google should merge the events and assume the imported event is an attempt to change the participation state. If this endpoint would also support the sendNotifications endpoint we could also control if the participation change should send notifications.
What I cannot explain is why you get the notification to yourself that you accepted. I got this too, iirc then it was after sending a PATCH update to the event sent via the /import endpoint.
I also have the feeling the /import'd event is shadowed by the hidden invitation, which makes it not show up in the calendar. This is also something that Google would have to fix. Maybe if Google would send some sort of error code when there is already a hidden invitation with this iCalUID, then I could detect this situation and update the calendar. Again, this would require changing the ETag on hidden invitations though, otherwise I again can't get all updated items.
tl;dr; if you want a quick fix, enable the "Automatically add invitations to my calendar" setting in the Google Calendar web interface. Let me know what you think.
Updated•10 years ago
|
Status: UNCONFIRMED → NEW
Ever confirmed: true
Comment 8•10 years ago
|
||
(In reply to Philipp Kewisch [:Fallen] from comment #7)
> What I cannot explain is why you get the notification to yourself that you
> accepted. I got this too, iirc then it was after sending a PATCH update to
> the event sent via the /import endpoint.
This might be ambiguous, it was not a PATCH to the import endpoint. I meant it was a PATCH using the normal event endpoint for PATCH requests, for an event that had previously been added via the /import endpoint.
Reporter | ||
Comment 9•10 years ago
|
||
(In reply to Philipp Kewisch [:Fallen] from comment #7)
> I've finally gotten around to looking into this. What is your Google
> Calendar setting for "Automatically add invitations to my calendar"? I
> assume this is "No" and hence the events are not shown.
>
> tl;dr; if you want a quick fix, enable the "Automatically add invitations to
> my calendar" setting in the Google Calendar web interface. Let me know what
> you think.
Hi Philipp,
Thanks for your attention :)
Actually, my setting for "Automatically add invitations to my calendar" is true. We apply this throughout the organisation so that invitations received by email will reflect on calendars on mobile devices. So it's quite normal to receive an invitation, and have it appear in the calendar with attendance status unconfirmed.
Regards,
David
Comment 10•10 years ago
|
||
Ok, then maybe the second situation happened, where you get the invitation email but the calendar has not synchronized yet. A workaround in that case would be to go to the calendar tab and click on the synchronize button. This isn't ideal though, it is very annoying. In addition, there is a rate limiter in the provider so that synchronization can not happen too often, so even if you do click on synchronize it might not update immediately (check error console with debug logs, there is a specific message in this case).
I'm not sure I can do much about this without some changes on Google's side as described above. The standard process to go about this is for me to file an issue on https://code.google.com/a/google.com/p/apps-api-issues/issues/list?q=API%3ACalendar and wait indefinitely until they fix the issue.
Comment 11•7 years ago
|
||
I have this problem still after 3 years. Is it really only me thinking that the email invitation feature is useless if no notifications are sent to the organizer of an event when the event is accepted by the invitees?
When accepting an email invitation by pressing the 'Accept' button on the blue ribbon in the Thunderbird email window, the follwing code is sent according to the debug logs:
[calGoogleRequest] Requesting POST https://www.googleapis.com/calendar/v3/calendars/<calendarID>/events/import?sendNotifications=true
The response is an OK:
[calGoogleCalendar] Request POST https://www.googleapis.com/calendar/v3/calendars/<calendarID>/events/import?sendNotifications=true responded with HTTP 200
However, looking at the Google API for "import" event there is not optional parameter "sendNotifications":
https://developers.google.com/calendar/v3/reference/events/import
In contrast, the ?sendNotifications=true is valid for "patch" events:
[calGoogleRequest] Requesting PATCH https://www.googleapis.com/calendar/v3/calendars/<calendarID>/events/<eventID>?sendNotifications=true
Does this give a clue to why no notifications are being sent when accepting email invitations like in the bug description above (POST), while notifications are sent for updates (PATCH)?
See also https://groups.google.com/forum/#!topic/provider-for-google-calendar/xqKL4omuTLA
Using
Thunderbird 52.4.0 (64-bit)
Lightning 5.4.4
Provider for Google Calendar 3.3
Comment 12•6 years ago
|
||
Hi,
The problem come form the "blue ribbon" (event/import), mail are only sent from the detail box (event/patch)
When I received an invitation :
1. Clik on the blue ribbon "Tentative/Send a response now"
2. No mail sent
3. Double-clik on the event : "You have accepted this invitation tentatively", "Accept button" is enable
4. Click on "Accept/Send a response now"
5. Mail sent !
From the log :
"Blue ribbon" without mail is :
Lightning:[calGoogleCalendar] Adding invitation <event> calGoogleCalendar.js:363
Lightning:"[calGoogleRequest] Requesting POST https://www.googleapis.com/calendar/v3/calendars/<calId>/events/import?sendNotifications=true" gdataRequest.jsm:215
"detail box" with mail is :
Lightning:[calGoogleCalendar] Modifying item <event> calGoogleCalendar.js:424
Lightning:"[calGoogleRequest] Requesting PATCH https://www.googleapis.com/calendar/v3/calendars/<calId>/events/_60q30c1g60....ok2e1j70q0?sendNotifications=true" gdataRequest.jsm:215
As @ego said : there is no parameter "sendNotifications" for import : https://developers.google.com/calendar/v3/reference/events/import
Why don't use "insert" for creating an event ? https://developers.google.com/calendar/v3/reference/events/insert
https://developers.google.com/calendar/create-events
Configuration :
calendar.google.enableEmailInvitations = true
calendar.google.sendEventNotifications = true
calendar.google.enableAttendees = true
Test with "Automatically add invitations to my calendar" true or false are identical.
Thunderbird 60.0 (32-bit)
Lightning 6.2
Provider for Google Calendar 4.4.1
Comment 13•6 years ago
|
||
Unfortunately I believe there is not a lot I can do here. I can't synchronize each time a new email is opened, and the rate limiter will stop you from doing this too often manually. This is necessary to stay within quota in the Provider for Google Calendar.
Status: NEW → RESOLVED
Closed: 6 years ago
Resolution: --- → WONTFIX
You need to log in
before you can comment on or make changes to this bug.
Description
•