Closed Bug 684482 Opened 13 years ago Closed 10 years ago

Investigate use of gCal:syncEvent to fix invitations

Categories

(Calendar :: Provider: GData, defect)

defect
Not set
normal

Tracking

(Not tracked)

RESOLVED FIXED

People

(Reporter: Fallen, Assigned: Fallen)

References

Details

Attachments

(1 file)

http://code.google.com/a/google.com/p/apps-api-issues/issues/detail?id=1079

Google now told me there are no negative implications using syncEvent, which seems to have changed between now and back when I last tried to fix it. I should find out how true this is and then fix the provider so that it can accept invitations.
(I submitted bug 685319.)

Is this saying that no "Accept/Deny/Tentative" buttons will display for -any- event/meeting invites?  If so... has this always been the case?  (A bit surprised if so, given there's so many reports on the web about managing invites via ProviderGData... can't imagine that users could have never accepted invites... guessing there's some additional context here...?)
Ok, so this is looking more and more like a legit problem in all current Provider:GData cases.  Given this issue, and given CalDAV -currently- is looking ok ( http://forums.mozillazine.org/viewtopic.php?p=11230607#p11230607 ), why would one choose Provider:GData over CalDAV?

Probably would prefer a Provider:GData connect, tho, seems to be more "mainstream"/stable...but just guessing about this, and my guesses only based upon web docs and/or community presence that I see.  To this end: is there an ETA for this fix?  

And/or is there a recommended set of config-editor options I can apply to overcome this problem?  Might also be nice to get a "set your options to exactly this:" kind of blurb as opposed to the docs here: https://wiki.mozilla.org/Calendar:GDATA_Provider#Why_can.27t_I_configure_any_options_in_the_Extension_Manager.3F ...which take significant deciphering, expending energy that I can't afford right now.
(In reply to hydrostarr from comment #3)
> Ok, so this is looking more and more like a legit problem in all current
> Provider:GData cases.  Given this issue, and given CalDAV -currently- is
> looking ok (
> http://forums.mozillazine.org/viewtopic.php?p=11230607#p11230607 ), why
> would one choose Provider:GData over CalDAV?
The GData Provider for example allows you to set the SMS alarm on an event, furthermore you can use your google categories AFAIK...
(In reply to hydrostarr from comment #3)
> Ok, so this is looking more and more like a legit problem in all current
> Provider:GData cases.  Given this issue, and given CalDAV -currently- is
> looking ok (
> http://forums.mozillazine.org/viewtopic.php?p=11230607#p11230607 ), why
> would one choose Provider:GData over CalDAV?

I tried CalDAV after reading your comment, but it didn't work for me. I was able to load the calendar but after a while it displayed all reminders (from years ago) and got confused with the login at some point. I fiddled a bit and I think it's working now.

My general feeling tells me that I'd prefer a specific GDATA implementation over CalDAV, though.
Ok, newcomer here. Reading through Google's issue #1079 and this thread I understand the solution is now clear - enabling gCal:syncEvent in the gdata provider addon for Thunderbird - and that this is currently being implemented/tested right now. Do you confirm this?

Even better do you have an ETA? :)

TIA
Ah, I saw there is already a new version - Provider for Google Calendar 0.9 - available but not compatible with Thunderbird 7.0.1 which is the version I'm using. What now?
More waiting. 0.9 does not include a fix. This bug is open for a reason. ;)
I unfortunately didn't have enough time to test this for 0.9, I hope to target Provider 1.0. The patch is ready and waiting, if you like I can attach a patch here, that you'd have to apply manuall.

Nuno, you need Thunderbird 8 for the Provider 0.9 (but as Christian said, it doesn't include this fix).
Me ... me ... ! I'd be happy to ruin my day to test the patch. ;)
Ok, I can upgrade easily to v8. I'm running Linux, don't mind applying patches but don't have a lot of time to be going through source dependencies, is it simple? :)
Attached patch Fix - v1 β€” β€” Splinter Review
Here it is, thanks for testing!

All you need to do is change the lines in the file as instructed by the patch. You can find the file by extracting the provider.xpi with a zip program. There is an automatic program called patch that can apply the changes.
Assignee: nobody → philipp
Status: NEW → ASSIGNED
Things that need testing:

* Creating events with attendees
* Modifying and deleting an event where you are the organizer
* Receiving an invitation per email with:
  - Google Web UI: "automatically accept invitations" enabled
  - Google Web UI: "automatically accept invitations" disabled

* Modifying/Deleting events where you are not the organizer

* Creating/Modifying/Deleting events without attendees
* Recurring events, with exceptions
* Are notifications still sent from Google with invitations, or does Lightning take over?
* Do Reminders still work? What happens if you create a reminder thats more than 28 days before the event? (It used to fail, if it succeeds that may be a warning sign)
* Do popup reminders from events created in Lightning still fire on the Google Web UI?
Thanks for this.

I'm a little busy now, so just first reaction. More on this later.

Found the files, your fs hierarchy not really the same as here but I guess patches were applied successfully (see bellow).

Only real test I did was:
- sent me an invite from a foreign account (Exchange);
- accepted it and it worked (meeting was created in Lighting);
- unfortunately no confirmation was sent to organizer (need to check this later);

Running Thunderbird8 with gdata provider 0.9 (plus your patches)
calendar.google.sendEmailNotifications=true
calendar.google.sendEventNotifications=true
calendar.google.enableEmailInvitations=false

nunof@sandy-lucien:~/.thunderbird/ur5kb61k.default/extensions/{a62ef8ec-5fdc-40c2-873c-223b8a6925cc}/js$ patch -p5 <gdata-syncEvent.diff 
patching file calGoogleCalendar.js
Hunk #1 succeeded at 300 (offset 2 lines).
patching file calGoogleRequest.js
Hunk #2 succeeded at 301 with fuzz 1.
patching file calGoogleUtils.js
Hunk #1 succeeded at 382 (offset 119 lines).
Hunk #2 succeeded at 425 (offset 119 lines).
Hunk #3 succeeded at 1059 (offset 122 lines).
can't find file to patch at input line 266
Perhaps you used the wrong -p or --strip option?
The text leading up to this was:
--------------------------
|diff -r 71c2f36ca280 calendar/providers/gdata/defaults/preferences.js
|--- a/calendar/providers/gdata/defaults/preferences.js	Thu Sep 01 23:36:38 2011 +0200
|+++ b/calendar/providers/gdata/defaults/preferences.js	Thu Sep 08 15:10:28 2011 +0200
--------------------------
File to patch: ../defaults/preferences/preferences.js
patching file ../defaults/preferences/preferences.js
Hello,
Sorry about the delay.
I don't have news on this, I have a question.

It looks Google is no longer sending email to all or any, so it looks like Lightning is "taking over". The question is now how can I make Lightning send email to the invitation sender only?
I tried applying the patch by hand on Windows 7 with Thunderbird 10.0, Lightning 1.2 and Google Data Provider 0.9 (which I renumbered to 0.9.1 to make sure it was upgraded in TB).

While the line numbers changed, every section could be patched in.

And now I'm stuck: I thought the section in one of the first files that got removed (bail on itip support and another) should show the Accept or Deny buttons again.

It did not.

Do I need to change more? I'd love to test the functionality once this is working - I have access to Apple, Linux and Windows systems (including Exchange 03, 07 and 10).
I have recently set this up (Win 7, TB 10, GDP 0.9) and been bitten severely by the spamming email thing. Searching for a solution I have found my way here, and I see you folks are working on it. I thought I should offer myself up as a guinea pig in case that would be of use.

I have a tame colleague who can send invitations to me from an MS Exchange server using either an "outside" or a gmail address, and I can follow simple instructions. Please let me know if I can be of assistance.
Sorry if I missed an open bug on this.

I have turned off enough notifications that I can accept events without triggering a span attack on all attendees. However there are two problems remaining:

1. Hitting "Accept" doesn't respond to the organiser. I think this is because I've turned off notifications and is already covered.
2. After "Accept"ing, every time I open the invitation or have it selected it in the TB preview pane, I am told the message contains an update to the event. Hitting "Update" does nothing and doesn't clear the message either.
Yeah, Lightning just doesn't play very well with google calendar.

On that note - does anyone know of any other hosted Calendar services (free is preferred, but paid is ok as long as it doesn't cost too much) that does play well with Lightning?
I just setup the Thunderbird 11 with a google calendar configured with caldav and it receives invites perfectly (including confirmation emails).  The key is to make sure you go into the google calendar properties and associate the caldav calendar with the primary email you'll receive invites on.
Interesting...

Have you tested this with accepting Updates to existing events with multiple attendees, and also made sure that it isn't still spamming all other attendees (including the organizer) with a NEW invitation to the same event - which is *very* confusing to the original - when you accept an update/change to an existing event?

That is where we've had most of our problems (I'm currently looking at rolling out SOGo because of this issue)...
Interested in this.  Philipp, I'm going to try your attached patch.  Since it's been a few months since you posted, I thought I'd double check whether you have a newer patch.
(In reply to Jay Reeder from comment #20)
> I just setup the Thunderbird 11 with a google calendar configured with
> caldav and it receives invites perfectly (including confirmation emails). 
> The key is to make sure you go into the google calendar properties and
> associate the caldav calendar with the primary email you'll receive invites
> on.

I'm a bit confused and trying to see if your solution would work for me. My primary email "a@a.com" get's all my invites and is my own physical mail server (not handled by Google, which is intentional). My calendar is associated with a standard Google account, let's call it "g@gmail.com," and nobody knows that address (I don't give it out). I have authorized a@a.com with my Google profile, so I can send "From: a@a.com" using gmail in a pinch, but I rarely do. Thunderbird currently checks both servers independently for mail, I have Lightning 1.8 and Provider for Google Calendar 0.17 installed. Are you saying I should get rid of Provider and use native CalDAV addresses instead? Would that allow me to use an "accept" feature for an email that comes to a@a.com's inbox to add the event to a Google Calendar of my choice (note: I have multiple google calendars: personal, work, etc)?

Uhhh ****... I hope that was clear... thanks in advance.
Any progress on this? Does this have any relationship with bug 407961 ?
Last update a year ago, any progress?
I use Google Calendar but with my personal email address being the one that receives appointments, being unable to directly save inbound appointments to the right calendar is a real annoyance. Plain old ICS would work fine, but the need to use the Calendar Provider plugin removes the ability to relate an email address to a Google Calendar account...
This issue was fixed with the Provider for Google Calendar 1.0.2, I am therefore closing this bug.
Status: ASSIGNED → RESOLVED
Closed: 10 years ago
Resolution: --- → FIXED
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Created:
Updated:
Size: