Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Expose subscribed webcal calendars via CalDAV #1497

Closed
grafenhofer opened this issue Sep 23, 2016 · 44 comments · Fixed by #10059
Closed

Expose subscribed webcal calendars via CalDAV #1497

grafenhofer opened this issue Sep 23, 2016 · 44 comments · Fixed by #10059
Assignees
Milestone

Comments

@grafenhofer
Copy link

grafenhofer commented Sep 23, 2016

The calendar app has recently gained support for subscribing to third party webcal calendars (see owncloud/calendar#132). It would be great to expose these imported calendars via CalDAV (e.g. to mobile clients). Nextcloud would act as a kind of proxy service. One usecase is increased privacy for (mobile) users (only the Nextcloud server connection gets exposed to the original webcal provider).

Related owncloud issue: owncloud/core#26193

@raimund-schluessler
Copy link
Member

Implementing a server side handling of WebCal would also allow to query a subscribed calendar in certain intervals, e.g. monthly or once a year. This would reduce the server load on public WebCal servers as requested e.g. on http:https://www.ifeiertage.de/

@marmeladema
Copy link

I am also interrested in this feature.
My use case is that i have some friends sharing their google calendar with me and i don't want to rely on anotherr app on every devices and subscribe to all their ics calendars on all my devices.

Thank you !

@georgehrke
Copy link
Member

Please refrain from commenting when you can't add anything new. Use Github Reactions instead. :)

@georgehrke
Copy link
Member

According to @nickvergessen, Webcal was implemented natively in DavDroid. This massively decreases the priority of this issue. Postponing to 14.

@georgehrke georgehrke modified the milestones: Nextcloud 13, Nextcloud 14 Oct 30, 2017
@dsonck92
Copy link

I would still like to see this feature. It would be nice to have it like a cache and possibly alter certain aspects like editing reminder settings.

@ralin3
Copy link

ralin3 commented Oct 30, 2017 via email

@sbug-1bit
Copy link

In about a year I'm moving to a Purism - Librem 5 (GNU/Linux native mobile) which does not have DavDroid.

Also, no support for this means I have to manually add the calendars to all applications / devices I use it on.

I understand everything have different priorities, I just wanted to come with some input on the issue.

@dsonck92
Copy link

Also another motivation is: it would unify the way the web client can load the calendars. The whole iCal side of the client would not be necessary anymore.

@ralin3
Copy link

ralin3 commented Oct 30, 2017 via email

@Peque
Copy link

Peque commented Oct 30, 2017

@ralin3 I have DAVdroid-1.9-ose installed (from F-Droid), but I cannot seem to find where it is informing about the subscribed calendars. Could you explain how that works? (or if you have the same version installed)

@moritz31
Copy link

@georgehrke would be cool if you take over, i get next free time at end of july, maybe i can then help a bit

@georgehrke
Copy link
Member

You all can help resolve this issue by telling me what clients don't support subscriptions natively:
Clients that do natively support it: iOS, macOS, Fantastical, DavDroid

Clients that don't:
Thunderbird does not support it.

What about:

  • KOrganizer
  • Evolution

What other important clients did i forget about?
If you can, it would be great if you could provide the http user-agent sent by this application.

@KwadroNaut
Copy link

Clients that do natively support it: iOS, macOS, Fantastical, DavDroid

From DavDroids website: "Since DAVdroid 1.8, DAVdroid can detect CalDAV-advertised Webcal feeds and integrate them using ICSdroid." That's not native, that's after having installed ICSdroid, otherwise it's CalDAV only.

@georgehrke
Copy link
Member

From DavDroids website: "Since DAVdroid 1.8, DAVdroid can detect CalDAV-advertised Webcal feeds and integrate them using ICSdroid." That's not native, that's after having installed ICSdroid, otherwise it's CalDAV only.

As far as I know ICSDroid is integrated into DavDroid. (both are GPL licensed apps from the same developer)

Can someone verify that?

(I wouldn't mind enabling the caching for DavDroid as well though, because they don't support creating subscriptions, they can only read them)

@simonspa
Copy link
Contributor

It's not "integrated" but a separate app. The subscription from Nextcloud ICS via DAVDroid however works flawlessly.

@georgehrke georgehrke added 2. developing Work in progress and removed 1. to develop Accepted and waiting to be taken care of labels Jul 5, 2018
@moritz31
Copy link

What other important clients did i forget about?
If you can, it would be great if you could provide the http user-agent sent by this application.

I use gnome calendar on my desktop :) can try to send you the user-agent later

@Peque
Copy link

Peque commented Aug 9, 2018

Otherwise I would take over so we get this into Nextcloud 14

@georgehrke As you are already rolling out the beta, I guess this is not going to be the case?

PS: I would like to point out that this issue is currently the one with the highest number of 👍 and ❤️ reactions. Maybe you realized already, but just in case you did not and @nextcloud organization wants to take that into account. 😇

@W-Hamra
Copy link

W-Hamra commented Aug 26, 2018

You all can help resolve this issue by telling me what clients don't support subscriptions natively

KOrganiser does not support refreshing a web based ical resource. It can refresh from a local ical file only. If given a web address, it will download it and use it locally (Though that always causes akonadi to crash on my system)

@georgehrke
Copy link
Member

I use gnome calendar on my desktop :) can try to send you the user-agent later

ping @moritz31 :)

@MorrisJobke MorrisJobke added this to the Nextcloud 15 milestone Nov 1, 2018
@rullzer rullzer removed this from the Nextcloud 15 milestone Nov 5, 2018
@MorrisJobke MorrisJobke added this to the Nextcloud 15 milestone Nov 12, 2018
@schaten
Copy link

schaten commented Dec 28, 2018

Davdroid seems to use this useragent: "DAVdroid/2.0.7-ose (2018/12/23; dav4android; okhttp/3.12.0) Android/8.1.0"

@nickvergessen
Copy link
Member

As per https://gitlab.com/bitfireAT/davx5-ose/commit/7ce739c271f9b4f9b3cd7c16c526a774a7d99bdc it is now:
DAVx5/2.0.7-ose (2018/12/23; dav4android; okhttp/3.12.0) Android/8.1.0
and it might change to DAVx5/2.0.7-ose (2018/12/23; dav4jvm; okhttp/3.12.0) Android/8.1.0 soon.

@Programie
Copy link

Programie commented Jan 10, 2019

I've some Ubuntu installations with KOrganizer and Evolution/GNOME Calendar which also don't support CalDAV Subscriptions.

KOrganizer: Mozilla/5.0 (X11; Linux x86_64) KHTML/5.50.0 (like Gecko) Konqueror/5 KIO/5.50
Evolution and GNOME Calendar: Evolution/3.30.1

Adding /^Mozilla\/5\.0 \(X11; Linux x86_64\) KHTML\/([0-9\.]+) \(like Gecko\) Konqueror\/5 KIO\/([0-9\.]+)$/ as regex to "ENABLE_FOR_CLIENTS" in the WebcalCaching plugin works for me in KOrganizer. But the regex should probably extended to be more generic. For Evolution it works by just using /^Evolution\/.*$/.

Edit: For Evolution/GNOME Calendar it only works if adding the CalDAV account as a collection account in Evolution instead of the GNOME Online Accounts. The difference: Configuring it as GNOME Online Account uses remote.php/caldav instead of remote.php/dav which seems to not using the WebcalCaching plugin.

@army1349
Copy link
Contributor

army1349 commented Mar 4, 2019

Guys, did anyone test what will happen with modified ENABLE_FOR_CLIENTS during upgrade?

@Programie
Copy link

@army1349: The updater will overwrite the changes, so you have to edit the file again.

@army1349
Copy link
Contributor

army1349 commented Mar 4, 2019

@army1349: The updater will overwrite the changes, so you have to edit the file again.

That's what I was afraid of. Kind of weird.

@redtux
Copy link

redtux commented Sep 14, 2019

It says that this issue has been fixed by #10059, so I just tried to get sync my imported ical on my smartphone via DAVx, and it worked. 👍

BUT: I already had imported the same calendar before directly in ICSx, so I have two calendars now using exact the same external ical link. I am afraid this not precisely what @grafenhofer was referring to when opening this issue. 😼

Nextcloud now still is not a "proxy service" for ical, there is no "increased privacy", and the load on the servers providing the calendar is the same as before. Also inside Nextcloud, when trying to download the calendar, you get no Nextcloud link, but are simply redirected to the original ical link. Apart from this, I cannot share those calendars inside Nextcloud.

This has been tested on Nextcloud Server 16.0.4, and Nextcloud Android App 3.7.2, DAVx (DAVdroid) 2.5.4.1-ose (299) & ICSx 1.8.4-standard.

@kesselb
Copy link
Contributor

kesselb commented Sep 14, 2019

@redtux please create a new issue.

@poperigby
Copy link

Should I go ahead and make a new issue for this? I'd like this functionality.

@georgehrke
Copy link
Member

Please see the discussion above about ENABLE_FOR_CLIENTS. We haven't enabled it for any clients so far.

Some people contributed user-agents for various clients. Thanks for that!
So we can enable it for those clients with Nextcloud 18. But the list is still rather limited.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging a pull request may close this issue.