39aldo39 / DecSync

Synchronize RSS, contacts, calendars, tasks and more without a server
622 stars 18 forks source link

[Specification proposal] Webcal subscription #41

Open onokatio opened 2 years ago

onokatio commented 2 years ago

Some calendar app and caldav support external calendar subscription. It can save an URL for icalendar resource (.ics) on web. for example: webcal://www.calendarlabs.com/ical-calendar/ics/76/US_Holidays.ics

I have two idea for specification.

Draft type A

Path

DecSync
├── webcals
│   └── colID12345
│       ├── local
│       │   ├── appId1
│       │   │   ├── info
│       │   │   └── sequences
│       │   └── appId2
│       │       ├── info
│       │       └── sequences
│       └── v2
│           ├── appId1
│           │   ├── info
│           │   └── sequences
│           └── appId2
│               ├── info
│               └── sequences

Mappings

["info"]

Draft type B

Path

DecSync
├── webcals
│   ├── local
│   │   ├── appId1
│   │   │   ├── info
│   │   │   └── sequences
│   │   └── appId2
│   │       ├── info
│   │       └── sequences
│   └── v2
│       ├── appId1
│       │   ├── info
│       │   ├── 00
│       │   └── sequences
│       └── appId2
│           ├── info
│           ├── 00
│           └── sequences

Mappings

["names"]

["subscriptions"]

["color"]

39aldo39 commented 2 years ago

Sounds interesting! It is a very simple addition that can be useful in practice. Something like draft A looks good. I will try to implement it first, but I am not sure how much work it is and when I will do it.

Mugen36 commented 2 years ago

I am unsure, if I understand the proposal correctly. You want Decsync to download ics files and add them to your calendar?

There exist already several apps specifically for that purpose. The most notable being ICSx⁵ from the Davdroid developers. https://github.com/bitfireAT/icsx5 https://f-droid.org/packages/at.bitfire.icsdroid/ It is actively developed and works flawlessly.

onokatio commented 2 years ago

@Mugen36 Thank you for your reply! Your suggestion is little diffrent from purpose. I'm using icsx5 to download ics. The proposal is 'sync ics URL list at DecSync'. It is similar approach with DAVx5. (DAVx5 is caldav client and it uses icsx5 for actual downloading.)

so call & using icsx5 by decsync as ics downloader and provider is good idea if this proposal is implemented.

Alerymin commented 3 weeks ago

Has there been any progress on this ?

I saw that Radicale also has support for WebCAL, which would make great synchronization: https://github.com/39aldo39/Radicale-DecSync/issues/32