answered
2019-09-09 18:10:08 +0200
Edit 2020-04-28: this has been released in 3.3.0. I've also added a UI for this in the account setting page. The account solution makes any already created Buteo profile as described below not listed.
I'm proposing a very first implementation as a Buteo syn plugin to subscribe to an online calendar in ICS format, see this repository. The purpose of this is to subsribe to public online calendars, like public holidays. It works like a read-only calendar that is wiped-out and recreated each time the online resource changes.
There is no UI for now to subscribes to a new URL, but it can be done easily by command line. Add the following file in ~/.cache/msync/sync/
:
<profile name="subscriptions" type="sync" >
<key name="destinationtype" value="online"/>
<key name="enabled" value="true"/>
<key name="hidden" value="false"/>
<key name="use_accounts" value="false"/>
<profile type="client" name="webcal">
<key value="http://i.cal.to/ical/76/hessen/ferien/33fea274.08627e19-76527123.ics" name="remoteCalendar"/>
<key value="test ICS data" name="label"/>
<key value="true" name="allowRedirect" />
</profile>
<schedule enabled="true" interval="1440" />
</profile>
The file should be named subscriptions.xml, or the value of the name attribute in the first <profile>
tag should be the same than the filename without the .xml
extension.
Restart the synchronisation daemon with systemctl --user restart msyncd
.
It should create a new calendar, store the etag if any, and then redownload the data when the etag on server has changed. To trigger a manual sync, issue dbus-send --session --type=method_call --print-reply --dest=com.meego.msyncd /synchronizer com.meego.msyncd.startSync string:'subscriptions'
.
To remove the subscription, use at least package 0.0.2. From command line, issue: dbus-send --session --type=method_call --print-reply --dest=com.meego.msyncd /synchronizer com.meego.msyncd.removeProfile string:'subscriptions'
. This will remove the calendar from the database and all associated events. It will also delete the subscription.xml file from the msyncd directory.
If your URL is redirecting to another one, use the allowRedirect
key to true
, introduced in 0.0.4.
Update issues should be corrected in 0.0.5. Take notice that this is not intended for syncing calendars that often changes. Events are deleted and recreated, and due to how mkcal is handling deleted events, these events are still in the database. So the databse is growing at each sync (except if etag is provided and not changed).
This is very early stage implementation, please report bug when you find any, latest package (0.0.5).
History:
Isn't that simply CalDAV?
viq ( 2013-12-25 14:35:01 +0200 )editHm, might be? I'm certainly no expert on calendar formats. All I know is iCal files begin with "BEGIN:VCALENDAR" or some such. Edit: looks like that is indeed the case, so this is a duplicate then and should be closed.
FireFly ( 2013-12-25 15:28:25 +0200 )editical/ics/vcal is (more or less) all the same file format. http://en.wikipedia.org/wiki/ICalendar. CalDav is the standard to access and syncronize with calendar servers in iCalendar format. Owncloud use this e.g.
See and vote for:
https://together.jolla.com/question/919/allow-import-of-ics-files-in-calendar/https://together.jolla.com/question/534/support-for-caldav-calendars-eg-google-calendar/
Alexander ( 2013-12-25 18:27:29 +0200 )editIt's not a duplicate and shouldn't have been closed.
iCal is a file format, CalDAV is a protocol extension to WebDAV. I just tried setting up a simple ics calendar on my webserver and after much digging discovered it wasn't working because CalDAV requires protocol extensions - it's not just vanilla WebDAV. Thunderbird happily pulls down the ics file and publishes it back using WebDAV, but Jolla doesn't support this.
mr_jrt ( 2015-06-21 14:40:57 +0200 )editI definitely second mr_jrt above. I have been syncing with half a dozen family and work calenders in the form of standard .ics files dropped on a server with all PC, macs and tablets for the last 10 years at least. That I cannot do this with Sailfish would be a terrible issue for me -basically turning its calendar function useless. Guess what, we come here to get away from Google, that's not to use reimportations of Google calendars :-(
Herve5 ( 2015-09-13 20:03:38 +0200 )edit