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

Integrate CalDAV Protocol for appointment syncing #209

Closed
viegelinsch opened this issue Oct 4, 2016 · 67 comments
Closed

Integrate CalDAV Protocol for appointment syncing #209

viegelinsch opened this issue Oct 4, 2016 · 67 comments
Assignees
Labels
enhancement New feature or request
Milestone

Comments

@viegelinsch
Copy link

Hi,

I would like to become independent from Google or any other cloud service. I host my own CalDAV server so it ould be consequent to subscribe to Easy!Appointments as additional CalDAV ressource.

Use case

Similar to the existing Google sync a configurable sync with a CalDAV calendar.
I would suggest parameters like:

const CALDAV_SYNC_FEATURE   = FALSE; // Enter TRUE or FALSE
const CALDAV_URL      = '';
const CALDAV_LOGIN_NAME   = '';
const CALDAV_PASSWORD  = '';

The CalDav ressource can be an iCloud account, a [own,next]cloud calendar or a Google calendar.

Or

If syncing is to complex to implement, maybe it is easier to integrate sabre/dav to offer the calendars with the bookings via CalDav. It would be one more calendar ressource to subscribe to, but this shouldn't be a problem.

Sponsoring (e.g. via Bountysource or FreedomSponsors) is an option.

With best regards,
Hendrik Eggers

@alextselegidis
Copy link
Owner

Hello Hendrik,

thanks for posting! The CalDAV protocol seems to be very interesting. I will definitely check this out for a future release.

I'm currently preparing v1.2 for Beta release so it's a bit too late for this release but it may be integrated for v1.3.

In any case I am accepting donation through PayPal: paypal.me/alextselegidis

@alextselegidis alextselegidis changed the title feature request: CalDav sync Integrate CalDAV Protocol for Appointment Syncing Oct 11, 2016
@alextselegidis alextselegidis added the enhancement New feature or request label Oct 11, 2016
@law
Copy link

law commented Jul 12, 2017

Seconded

@MarkChr65
Copy link

Ohh, this feature would be great for me! At this moment i have to pay monthly for the CalDAV Feature to sync with my Smartphone and Thunderbird / Lightning. I want to be independent from Google Cal. I would donate for this feature! Is something planned about this? Actually i'm using this expensive service: https://de.doctena.de/ :-/

Hope to hear from you

Best Mark

@alextselegidis
Copy link
Owner

Unfortunately this feature will not make it for v1.3, I'm actually almost done with the coding of the new release and will proceed to a beta release in the following days.

Stay tuned for further updates :)

  Alex Tselegidis, Easy!Appointments Creator
  Need a customization? Contact me in person!

@alextselegidis alextselegidis self-assigned this Jan 28, 2018
@barrydegraaff
Copy link

@alextselegidis any news on the CalDAV support?

If not, I would like to start programming on this, in order to support at least a subset of the caldav standard.

But in case anyone already started, I want to avoid the issue.

What is the best way to extend on this code?

We need some sort of REST API specification so
server/dav/username/calendar or something like that and than the classes to deal with the conversion of the data in the database to CalDAV.

We can start with a read-only CalDAV so people can at least see the calendars from easyappointments.

@mokkin
Copy link
Contributor

mokkin commented Dec 6, 2018

@alextselegidis and @barrydegraaff I am also very excited about this feature and in my opinion this is a must have as we are working around Google & Co. with our own infrastructure such as nextcloud for calendars for example. Actually we are using a proprietary booking app that doesn't support CalDAV as well so we have to sync manually...
Is this planned in the closer future?
Can we support you to help implementing this? The issue starter has already suggested two options for donations.

@barrydegraaff
Copy link

Since this issue has been here for 2 years, probably no one at easyappointments want do implement it. We at https://zetalliance.org/ will be doing a crowdfunder in January to add easyappointments or something like that to Zimbra. But it is too early to tell if that is going to add WebDAV to this project.

@alextselegidis
Copy link
Owner

Hello @barrydegraaff, @mokkin thank you for your interest, I find this a great feature too and also think that will make the integration with other systems so much easier. Unfortunately other tasks are being prioritized for the v1.4 so that the overall performance and user experience is enhanced. I cannot promise an integration soon. Any help is always appreciated though, stay tuned for updates :)

  Alex Tselegidis, Easy!Appointments Creator
  Need a customization? Contact me in person!

@stratus-ss
Copy link

I'd like to see this as well. I administer both Nextcloud and Zimbra. I would love to see this feature. Thanks for your work!

@joshp23
Copy link

joshp23 commented Sep 3, 2019

CalDAV would make this unstoppable!

@samtuke
Copy link

samtuke commented Sep 4, 2019

We need this too. Currently using Harmonizely.

@skylarmt
Copy link

skylarmt commented Sep 10, 2019

I will donate up to $50 to the project when this is implemented. The sooner it's done the more money I'll donate. Right now I have to manually add events to both my main calendar (synced between all my devices with Nextcloud) and E!A, which is not an acceptable long-term solution.

I'll even accept a script that runs via cron to sync the calendars with each other. If I end up taking a couple hours and writing some code for this, I'm keeping the $50.

IMO this should be top priority (right under security bugs). This whole project is essentially a public UI for adding events to a calendar, so it's not helpful unless it can actually add events to a calendar!

@mokkin
Copy link
Contributor

mokkin commented Oct 28, 2019

I made the beginning here and created a bounty at bountysourc.com
Maybe others can join the bounty and @alextselegidis can give some information how much time/money will be needed.

@mocig
Copy link

mocig commented Oct 30, 2019

Is the requested feature to connect/sync an easyappointment calendar over CalDAV
or to SHOW/IMPORT an external CalDAV ressource inside easyappointment?

@skylarmt
Copy link

@mocig I think the ideal feature would be new appointments appearing on a CalDAV calendar, and for events on the CalDAV calendar to appear in E!A as unavailable times.

@mpellegrin
Copy link

mpellegrin commented Nov 18, 2019

I just added 50$ to the bounty.

If you need an example for a CalDAV client, I added on Github a software I wrote and I used to use : https://github.com/mpellegrin/weather-table ; it retrieves the events from CalDAV and parse it with ICS Parser.

I can also provide you a full access to a demo Nextcloud instance with the CalDAV server enabled to test/develop the software, as well as help to debug if you need.

@skylarmt
Copy link

skylarmt commented Jan 29, 2020

@JOduMonT
Copy link

JOduMonT commented Mar 6, 2020

Unfortunately other tasks are being prioritized for the v1.4 so that the overall performance and user experience is enhanced. I cannot promise an integration soon.

of course

https://harmonizely.com

is not self hosted but it

support CalDav

since a while ago.

@mokkin
Copy link
Contributor

mokkin commented Mar 6, 2020

I already tried this, but it has no group capabilities which means you have to register separate accounts per user and resource, no matter if it's the free or paid version.

@Escobar523523
Copy link

..... 5 mounths later :-)

First of all, thanks for easy appointments.
Its a great piece of software.
But please, double please, tripple please with sugar on top, add caldav support!!!
If u need money to realize it, name it; if u need help, tell it.
I am sure there will be a solution for all of this, just name it and dont let people beg for allmost 4 years!
I would love to use easy appointments in our small team (3 Users).
It would totaly fit for our needs, if there would be caldav sync.

written in a mood created by a mixture of google_api_pain, frustration and a tiny bit of hope for change

@madkiss
Copy link

madkiss commented Sep 28, 2020

@alextselegidis How much money would it take to implement this and when could this be done?

@mokkin
Copy link
Contributor

mokkin commented Oct 3, 2020

I definitely would support this with money too and I would really like it, if @alextselegidis could realize.

Otherwise, if he has no free capacities for it, I could imagine to collect money, give the job to a developer and ideally finish the implementation with a pull request to the main repository.

@alextselegidis
Copy link
Owner

Hello everyone,

Thank you very much for your support and contributions on this.

At the moment the v1.4.0 is almost ready and I'm working on the final touches before the beta comes out.

More work is required for this item to be properly done, as you all know that synchronization is not an easy topic.

Since there's much interest on this ticket, I've raised the bounty to 1000$, if this is met I will prioritize and make the changes for the next release.

Otherwise it will still remain open but will be added in a future release.

  Alex Tselegidis, Easy!Appointments Creator
  Need a customization? Contact me in person!

@mokkin
Copy link
Contributor

mokkin commented Oct 26, 2020

The CalDAV feature should also consider different available calendars in one CalDAV server. This could be a second provider or a resource such as a room or a device required. Here is an example how other booking tool manage it:

grafik

I already pledged 100,- to the bounty and I am sure I can collect more. Are there any others wanting this asap?

@mokkin
Copy link
Contributor

mokkin commented Oct 26, 2020

To speed things up herewith I'd like to remind this important ticket for CalDAV support.
@viegelinsch @MarkChr65 @gramakri @barrydegraaff @xcsn2005 @rvalle @sualko @BertrandGouny @ifaist0s @tylerferrara @law @joshp23 @samtuke @skylarmt @mocig @mpellegrin @JOduMonT @Escobar523523 @madkiss

Please consider to make your donation to the bounty:
https://www.bountysource.com/issues/38115699-integrate-caldav-protocol-for-appointment-syncing

So @alextselegidis can quickly prioritize this feature for all of us.

@law
Copy link

law commented Oct 26, 2020

In for $100. Let's get this done!

@jdaviescoates
Copy link

any updates for 1.5 ?

You can follow progress here https://github.com/alextselegidis/easyappointments/milestone/9

@alextselegidis
Copy link
Owner

Hello!

Almost all planned code maintenance is completed, which means that the only thing left to be done will be the implementation of the remaining 1.5 features before we reach the alpha release state.

Just like @jdaviescoates, you can spectate the progress under the milestones page.

Cheers!

Alex Tselegidis, Easy!Appointments Creator
Need a customization? Get a free quote!

@Utopiah
Copy link

Utopiah commented Dec 3, 2021

Very nice, I'm coming from Harmonizely but also deGoogle so having CalDav integration to work with e.g NextCloud but also Outlook is very exciting. I'm monitoring Releases, eager to be able to try!

@12nick12
Copy link

This is the only missing thing right now for me. What would be a fair amount to donate to get this completed?

@KJ7LNW
Copy link

KJ7LNW commented Jun 28, 2022

Unfortunately there seems to be no progress in the bounty nor in the development.
I have found a promising new project called Calendso and the already have CalDAV on their roadmap: https://github.com/calendso/calendso/discussions/62

They are now cal.com, and also still open-source: https://github.com/calcom/cal.com

@alextselegidis
Copy link
Owner

Hello!

Just a quick reminder here on this ticket: CalDAV support is coming with 1.5, which will be released this September 2022.

Stay tuned!

Alex

@Utopiah
Copy link

Utopiah commented Sep 12, 2022

Very exciting @alextselegidis . I recently cancelled my plan on Harmonizely due to their acquisition (I feel it's now part of a big "machine" rather than a carefully crafted product with a developer I could chat with directly, not the self-hosting mindset I want to support) but that is precisely the 1 feature that was preventing me from switching to easyappointments.

Eager to try as soon as it's out!

@alextselegidis
Copy link
Owner

@Utopiah Glad to welcome you onboard, this is the last feature I'm working on for 1.5 so it will be soon be there for you to work with ;)

Alex Tselegidis, Easy!Appointments Creator
Need a customization? Get a free quote!

@Utopiah
Copy link

Utopiah commented Oct 10, 2022

This is especially exciting for me in terms of consulting. It means I could rely one could rely on payment e.g #672 or more recently #1310 to provide short consultancy sessions or workshops and rely on their own self-hosted open-source infrastructure, e.g a Jitsi Meet, even enabling/disabling feature based on the type of sessions booked. All that is impossible without a reliable way to insure that time slots are available. This would otherwise be feasible but rather impractical because of the small amounts and the time to find a moment would be costlier than the event itself. This opens a lot of new possibilities. Can't wait to try that.

@olivierlambert
Copy link

Hey! Also taking a look here. Caldav support could be a game changer :) Eager to see that release!

@wokawoka
Copy link

wokawoka commented Apr 2, 2023

+1

@skylarmt
Copy link

Here's some fairly recent PHP code I found for connecting to a CalDAV server as a client: https://github.com/agendav/agendav/tree/main/web/src/CalDAV

It has the same license as E!A so copying it won't create any legal issues.

@alextselegidis
Copy link
Owner

Hello @skylarmt, thanks for sharing!

Alex Tselegidis, Easy!Appointments Creator
Need a customization? Get a free quote!

@Svetlana-T
Copy link

+1 would be good if this worked with self hosted Baikal server please, happy to test once it's available for testing

@alextselegidis alextselegidis changed the title Integrate CalDAV Protocol for appointment syncing. Integrate CalDAV Protocol for appointment syncing Oct 26, 2023
@giacomoarru
Copy link

Hey folks, I've just found out about this project today, as I wish to integrate a booking interface with Zimbra 10 OS, which works with Caldav.
It looks like the development to integrate Caldav is already ongoing, I just wanted to check what's missing, what is the supposed timeline and how can I help to get this done.

Jack

@alextselegidis
Copy link
Owner

Hello!

CalDAV will be there in a couple of days.

Please star and follow the project and stay up to date with the latest changes.

Alex Tselegidis, Easy!Appointments Creator
Need a customization? Get a free quote!

@alextselegidis
Copy link
Owner

Almost there!

giphy

Alex Tselegidis, Easy!Appointments Creator
Need a customization? Get a free quote!

@isgroup
Copy link

isgroup commented Feb 27, 2024

Any update on this feature? Thanks!!

@alextselegidis
Copy link
Owner

Still in progress

Alex Tselegidis, Easy!Appointments Creator
Need a customization? Get a free quote!

@alextselegidis
Copy link
Owner

Feature completed on develop!

Alex Tselegidis, Easy!Appointments Creator
Need a customization? Get a free quote!

@Fuseteam
Copy link

Yay!

@Aaaamu
Copy link

Aaaamu commented Aug 26, 2024

Hey, this is awesome news! I imediatly updated to 1.5.0. I also found your doc page that gives advice on the installation of baikal and ends with the following passage:

While trying to enable the CalDAV sync from the Easy!Appointments calendar page, use the following credentials after clicking on "Enable Sync" > "CalDAV".

URL: http://baikal:8100/dav.php
Username:
Password:

That sounds reasonable, but I can not find any button or link that says "enable sync" on the backend's calendar page! Neither can I find a caldav section under settings>integrations.

I had a look into the code, but also a search for the phrase "Enable Sync" didnt return any meaningful result… Can you help me out here? What am I missing. I have left disabled google calendar in my config.php

@skylarmt
Copy link

I had a look into the code, but also a search for the phrase "Enable Sync" didnt return any meaningful result… Can you help me out here? What am I missing. I have left disabled google calendar in my config.php

I had the same issue. In the dropdown on the top-left of the calendar page, you need to select your provider name. Then the button will appear in the top-right.

@Aaaamu
Copy link

Aaaamu commented Aug 31, 2024

Thank you.!!! hat solved it. Suggest to add that information to the calDav.md
I take it, this works without setting the provider in the config file manually (which i did in the process)?

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement New feature or request
Projects
None yet
Development

No branches or pull requests