After an evaluation, GNOME has moved from Bugzilla to GitLab. Learn more about GitLab.
No new issues can be reported in GNOME Bugzilla anymore.
To report an issue in a GNOME project, go to GNOME GitLab.
Do not go to GNOME Gitlab for: Bluefish, Doxygen, GnuCash, GStreamer, java-gnome, LDTP, NetworkManager, Tomboy.
Bug 667889 - Add support for Exchange accounts
Add support for Exchange accounts
Status: RESOLVED FIXED
Product: gnome-online-accounts
Classification: Core
Component: general
3.5.x
Other Linux
: Normal enhancement
: ---
Assigned To: GNOME Online Accounts maintainer(s)
GNOME Online Accounts maintainer(s)
Depends on:
Blocks:
 
 
Reported: 2012-01-13 18:34 UTC by Matthias Clasen
Modified: 2012-06-05 16:50 UTC
See Also:
GNOME target: ---
GNOME version: ---


Attachments
Add Microsoft Exchange using EWS (48.92 KB, patch)
2012-03-30 16:23 UTC, Debarshi Ray
committed Details | Review
exchange: Don't save the AsUrl and OabUrl, use the server instead (12.49 KB, patch)
2012-04-05 16:51 UTC, Debarshi Ray
committed Details | Review
exchange: Update to work with the new *Disabled properties (3.47 KB, patch)
2012-04-05 16:52 UTC, Debarshi Ray
committed Details | Review

Description Matthias Clasen 2012-01-13 18:34:57 UTC
Both Contacts and Evolution could make use of this.

For the user experience, this
http://support.google.com/mobile/bin/answer.py?hl=en&topic=14252&answer=138740
might provide some inspiration.

Bug 661117 is somewhat related, maybe.
Comment 1 Matthias Clasen 2012-01-13 18:35:30 UTC
As for implementation, David said the following:

I'm not a big fan of plugins... I certainly don't want a plug-in system
in GOA just yet. But we don't need to... the Exchange code in GOA can be
installed without the EVolution Exchange code.. (this way it's just the
user's or distro's own fault).


We still want GOA to manage the password otherwise we can't verify that
the password works etc. With that setup, E-D-S will retrieve the
password the same way it retrieves OAuth tokes - the only difference is
that it will use the org.gnome.OnlineAccounts.PasswordBased interface
instead of e.g. OAuth2Based

http://developer.gnome.org/goa/unstable/gdbus-org.gnome.OnlineAccounts.OAuth2Based.html

so in GOA we will need some code to at least attempt to connect to the
exchange server to verify that the password is correct. Does that sound
OK?

(Btw, I think it should be possible to just do the IMAP login dance for
this manually on a socket so we don't have to drag in a whole IMAP
library... or maybe Exchange now does something like OAuth? Because, if
so, we should just use that...)
Comment 2 Debarshi Ray 2012-03-30 16:23:44 UTC
Created attachment 210981 [details] [review]
Add Microsoft Exchange using EWS

    Known deficiencies:
      * goa_provider_ensure_credentials is not implemented
      * goa_provider_refresh_account is not implemented
      * AsUrl and OabUrl values are not exposed over DBus
    
    New dependency:
      * libxml-2.0
Comment 3 Debarshi Ray 2012-04-05 16:51:56 UTC
Created attachment 211410 [details] [review]
exchange: Don't save the AsUrl and OabUrl, use the server instead

    A new org.gnome.OnlineAccounts.Exchange interface was added with a
    property named Host to expose the server's domain name over DBus. It
    is upto the clients to retrieve the AsUrl and OabUrl.
Comment 4 Debarshi Ray 2012-04-05 16:52:47 UTC
Created attachment 211411 [details] [review]
exchange: Update to work with the new *Disabled properties
Comment 5 Debarshi Ray 2012-04-05 16:53:52 UTC
I have pushed these to master.

Need to implement the ensure_credentials and refresh_account methods, and polish the UI/UX bits.
Comment 6 Debarshi Ray 2012-06-05 16:50:16 UTC
This problem has been fixed in the development version. The fix will be available in the next major software release. Thank you for your bug report.