Re: [Evolution-hackers] [evolution-data-server: WebDAV] Get list of all calendars for user

2015-05-14 Thread Philip Withnall
Hey,

On Thu, 2015-05-14 at 13:31 +0200, Alexis Maiquez Murcia wrote:
> I'm actually helping to develop the "Maya" calendar project ( 
> https://launchpad.net/maya ). Maya is the default calendar that comes 
> with ElementaryOS. We have already implemented support for individual 
> WebDAV-based calendars (it was fairly easy using evolution-data-server 
> and libedataserver) but is not so easy with multiple-calendar users AND 
> google users. I want users to be able to select what calendars they 
> wants to sync and add support to sync google calendar in the same way 
> (multiple-or-single calendar syncs).
> 
> So my two questions are:
> -Is there any way to retrieve a calendars list with libedataserver for 
> WebDAV-based users?
> -Is there any specific way to connect to Google Calendar through 
> libedataserver and sync those calendars too? (the WebDAV method is 
> considered insecure by google)

It’s probably worth mentioning that libgdata[1] can list your Google
Calendars, and has recently been upgraded to support v3 of the Google
API (the latest).

*However*, if you can achieve what you want with CalDAV and the methods
given by Milan, I would strongly suggest going with that. It allows for
more code re-use, and the EDS CalDAV code is more mature than libgdata.

In any case, please report bugs (to EDS[2] or libgdata[3]) for any
missing features you require, so that the amount of code we can share is
maximised. :-)

Philip

[1]: https://wiki.gnome.org/Projects/libgdata
[2]:
https://bugzilla.gnome.org/enter_bug.cgi?product=evolution-data-server
[3]: https://bugzilla.gnome.org/enter_bug.cgi?product=libgdata


signature.asc
Description: This is a digitally signed message part
___
evolution-hackers mailing list
evolution-hackers@gnome.org
To change your list options or unsubscribe, visit ...
https://mail.gnome.org/mailman/listinfo/evolution-hackers


Re: [Evolution-hackers] [evolution-data-server: WebDAV] Get list of all calendars for user

2015-05-14 Thread Milan Crha
On Thu, 2015-05-14 at 13:31 +0200, Alexis Maiquez Murcia wrote:
> -Is there any way to retrieve a calendars list with libedataserver
> for WebDAV-based users?

Hi,
there was added this very recently in the code [1], only the
development version contains it, thus it'll be part of the
evolution-data-server 3.18.0.

There is one special issue with the Google server related to shared
calendars added by the user in the Google's Web UI. To have them
advertised also with the WebDAV discovery the users should enable them
for it first. Erick, a gnome-calendar developer, found this here:
http://stackoverflow.com/questions/25669144/google-caldav-access-to-shared-calendars
which mentions a direct URL for the setting here:
https://www.google.com/calendar/syncselect

Please note that it's a special behaviour of Google, it has nothing to
do with evolution-data-server or any other client using WebDAV/CalDAV.
Of course, Google's API doesn't need any such setting.

> -Is there any specific way to connect to Google Calendar through 
> libedataserver and sync those calendars too? (the WebDAV method is 
> considered insecure by google)

I'd not say they consider the CalDAV method insecure, it's the
authentication type, plain/password, which they consider insecure and
may abandon in the future. Evolution-data-server's CalDAV calendar
backend can use OAuth2 token, but evolution itself doesn't know how to
get to them in other way than by asking GNOME Online Accounts for it.
That means, if your application will be able to provide OAuth2 token to
the evolution-data-server, then you can use it and it'll work. I'm only
afraid that you'd need to write some external module for evolution
-source-registry, similar to [2], to be able to do it.

The CalDAV URL also changes when using the OAuth2 token, it's located at:
  apidata.googleusercontent.com/caldav/v2//events/
instead of
  google.com/calendar/dav//events/

Hope it helps,
Milan

[1] 
https://git.gnome.org/browse/evolution-data-server/tree/libedataserver/e-webdav-discover.h

https://git.gnome.org/browse/evolution-data-server/tree/libedataserverui/e-webdav-discover-widget.h
[2] 
https://git.gnome.org/browse/evolution-data-server/tree/modules/google-backend

https://git.gnome.org/browse/evolution-data-server/tree/modules/gnome-online-accounts
___
evolution-hackers mailing list
evolution-hackers@gnome.org
To change your list options or unsubscribe, visit ...
https://mail.gnome.org/mailman/listinfo/evolution-hackers


[Evolution-hackers] [evolution-data-server: WebDAV] Get list of all calendars for user

2015-05-14 Thread Alexis Maiquez Murcia

Hi everyone!

I'm actually helping to develop the "Maya" calendar project ( 
https://launchpad.net/maya ). Maya is the default calendar that comes 
with ElementaryOS. We have already implemented support for individual 
WebDAV-based calendars (it was fairly easy using evolution-data-server 
and libedataserver) but is not so easy with multiple-calendar users AND 
google users. I want users to be able to select what calendars they 
wants to sync and add support to sync google calendar in the same way 
(multiple-or-single calendar syncs).


So my two questions are:
-Is there any way to retrieve a calendars list with libedataserver for 
WebDAV-based users?
-Is there any specific way to connect to Google Calendar through 
libedataserver and sync those calendars too? (the WebDAV method is 
considered insecure by google)


Thanks for your time!
___
evolution-hackers mailing list
evolution-hackers@gnome.org
To change your list options or unsubscribe, visit ...
https://mail.gnome.org/mailman/listinfo/evolution-hackers