sabre-io / Baikal

Baïkal is a Calendar+Contacts server
https://sabre.io/baikal/
GNU General Public License v3.0
2.5k stars 289 forks source link

Syncing Baikal Calendar with iOS #744

Open rschildt86 opened 6 years ago

rschildt86 commented 6 years ago

Hello, first of all, I love using Baikal.

Right now I sync my Contacts between my iPad/iPhone and Outlook (caldavsyncronizer). This works perfect. However I now started using Calendars. Calenders work with Outlook (caldavsyncronizer) but not with iOS.

I tried the following Links:

mydomain.de/Baikal/html/cal.php/ mydomain.de/Baikal/html/cal.php/myusername/calendername mydomain.de/Baikal/html/cal.php/principals/myusername/calendername mydomain.de/Baikal/html/cal.php/principals/myusername

mydomain.de/Baikal/html/dav.php/ mydomain.de/Baikal/html/dav.php/myusername/calendername mydomain.de/Baikal/html/dav.php/principals/myusername/calendername mydomain.de/Baikal/html/dav.php/principals/myusername

what am I doing wrong? How can i make the Calendar to shop up in iOS?

thanks!

rschildt86 commented 6 years ago

anyone who can hep me? I have the latest update release installed.

marcelbrueckner commented 6 years ago

I'm running 0.4.5 and I don't know if there have been any changes since then. I'm running Baikal on a Synology NAS with Apache 2.2 and PHP 5.6. I configured calendar and contacts just fine on iOS 11.2.6 using the same URL for CalDAV and CardDAV (../dav.php/principals/myusername).

Do you see your calendars as nodes when accessing yourdomain.de/Baikal/html/dav.php/calendars/myusername/ in a browser?

rschildt86 commented 6 years ago

Hello Marcelbrueckner, no i just see a 404 error page of the betheme that runs the website on the maindomain.

rschildt86 commented 6 years ago

strangely enough the contacts are working though

marcelbrueckner commented 6 years ago

How's your webserver (Apache, nginx) serving Baikal configured? Can you access mydomain.de/Baikal/html/dav.php/principals/myusername? Whats the value of the cal:calendar-home-set property? Do you have CalDAV enabled in the admin settings?

I've never faced such an error so it's hard for me to diagnose as I'm just an user but no dev of Baikal.

rschildt86 commented 6 years ago

well I host Baikal on a One.com webspace runinng the latest PHP and a mysql database.

mydomain.de//baikal/html/ gives a message "Baikal is running allright" mydomain.de//baikal/html/admin/ is my admin gui.

I now checked the URL used by caldavsyncronizer for outlook: mydomain.de/baikal/html/card.php/calendars/myusername/calendar/

than i see Nodes after loggin in

marcelbrueckner commented 6 years ago

Right now I sync my Contacts between my iPad/iPhone and Outlook (caldavsyncronizer).

Did it happen that you disabled/unchecked overall calendar support in Baikal admin > settings page? Do you have an default calendar set up for your account?

I now checked the URL used by caldavsyncronizer for outlook: mydomain.de/baikal/html/card.php/calendars/myusername/calendar/

In your first post you wrote "Baikal" (uppercase B) in your URL. The URL may be case sensitive.

swASO commented 6 years ago

we had also a problem with calendar sync and ios. the sync with outlook/mac/android works without problems but ios not, sometimes some appointments appears but not all.

we found special unicode chars in our note files - we had to clean up these chars and after that, all appointments get synced

schel4ok commented 6 years ago

I also have error when try to sync Baikal with iphone SE

Baïkal 0.4.6 Web admin | On CalDAV | On CardDAV | On

Apple iPhone SE Official firmware 12.0

cardDAV works well calDAV is not working!!!

When try to create contacts account I put this address http://dav.myserver.ru/card.php/addressbooks/mybook/default/ Then when I check created account it is automatically changed to http://dav.myserver.ru/card.php/principals/mybook/

When try to create calendar account I put this address http://dav.myserver.ru/cal.php/calendars/mycalendar/default/ or http://dav.myserver.ru/cal.php/principals/mycalendar/

I got error - caldav validation failed.

And with Android everything works well using OpenSync app.

Tntdruid commented 6 years ago

As of iOS 12 you need to use https. It will not send any credentials over http

schel4ok commented 6 years ago

I could understand that if both not working. But why cardDAV works without https?

kuerbis42 commented 5 years ago

Hi - I tried it today with an iPad and iOS 12.x The SOLUTION:

The URL has a "double-/". And you can use "http://"

Use the following URL: http://_your.server.tld_//dav.php/principals/_yourname_

You can even use https:// but be sure to use // (double-slash) before "dav.php"

You can check it out if you open your Bailkal from your browser. The URL you see there is the URL you must use with iOS

schel4ok commented 5 years ago

Today I installed Letsencrypt certificate on my server and tried with SSL. There was one step forward - without SSL iphone didn't allow to create calDAV account, now I created one. But anyway I cannot see calendar events on iphone. So in reality problems still not solved. I can see calDAV events on Android, but cannot see on iphone.

tchek commented 5 years ago

I Have the same problem, PHP 7.2.18, Baikal 0.5.3 Syncing calendars between mac is ok but not with iOS

Please any help ?

Cheers

evert commented 5 years ago

Are you using HTTPS and not a self-signed certificate?

tchek commented 5 years ago

evert,

Yes i use HTTPS (but not on mysql, Apache is in https)

https://www.mydomain.com/baikal/html/dav.php/principals/myusername

it work but it take a VERY VERY long time to Syncing, and not sure of the reliability ( It is instantaneous between 3 mac)

and same issue with CARD DAV

tbals commented 5 years ago

Hi, I have also an issue with IOS and baikal 0.5.3 on apache with php 7.3.5. WebGUI of baikal works, also I can access the admin Interface.

But when I add the CalDAV calender to the Ipad (which runs without errors), I see no calenders on Ipad an the apache logs says:

95.222.x.y - - [23/May/2019:22:52:12 +0200] "PROPFIND /dav.php/principals/uid/ HTTP/1.1" 401 5329 "-" "iOS/12.2 (16E227) dataaccessd/1.0" 95.222.x.y - - [23/May/2019:22:52:13 +0200] "PROPFIND /dav.php/principals/uid/ HTTP/1.1" 207 2896 "-" "iOS/12.2 (16E227) dataaccessd/1.0" 95.222.x.y - - [23/May/2019:22:52:13 +0200] "OPTIONS /dav.php/principals/uid/ HTTP/1.1" 200 809 "-" "iOS/12.2 (16E227) dataaccessd/1.0" 95.222.x.y - - [23/May/2019:22:52:13 +0200] "REPORT /dav.php/principals/ HTTP/1.1" 200 822 "-" "iOS/12.2 (16E227) dataaccessd/1.0" 95.222.x.y - - [23/May/2019:22:52:13 +0200] "PROPFIND /dav.php/calendars/uid/ HTTP/1.1" 500 1042 "-" "iOS/12.2 (16E227) dataaccessd/1.0"

But no Calender and no Entries are seen. Whats wrong here?

Then I try to access the URL "https://cal.domain.tld/dav.php/principals/uid/" with Firefox. I need to log in and get the following:

3.2.2PDOExceptionSQLSTATE[23000]: Integrity constraint violation: 1052 Column 'displayname' in field list is ambiguous
tchek commented 5 years ago

Baikal 0.5.3 on apache with php 7.3.5 OR php 7.2 simply do not work on iOS

ghost commented 3 years ago

Sadly I am having the same issue with baikal 0.7.2 and iOS 14. I checked the logs and I have not found any issue! Works with macos catalina

ThibaultNocchi commented 3 years ago

For all people experiencing it, this closed issue answer worked for me to set the iOS cal https://github.com/sabre-io/Baikal/issues/1030#issuecomment-787100536

OldSmurf56 commented 1 year ago

Hi - I tried it today with an iPad and iOS 12.x The SOLUTION:

The URL has a "double-/". And you can use "http://"

Use the following URL: http://_your.server.tld_//dav.php/principals/_yourname_

You can even use https:// but be sure to use // (double-slash) before "dav.php"

You can check it out if you open your Bailkal from your browser. The URL you see there is the URL you must use with iOS

kuerbis42 🥇 I have absolutely no idea how on earth you managed to figure this out ... your solution is so counter intuitive, but you are right: this actually works. And I am on IOS 16.3 and we are writing 2023

MediaStudies commented 1 year ago

Just getting up on Baikal today.

A question: I have a CalDAV account set up in Calendar and the calendars I have show in the side bar, but the calendars are not populating on the screen...is there something I need to do here?

Can't find an install manual anywhere for how to set up on the Apple side of things.

Thanks.

vulcanjedi commented 1 year ago

I was have significant issues syncing my calendar (which is static. Family bdays/anniversaries...et al, it seems to work right away but i'm not sure since I dont make regular updates due to content). But even just importing virgin copies of contacts brutally painful. What worked for me is exporting contacts to VCF onto my phone. and importing directly via phone. Then 100% cards were imported instead of arbitrary amount that never synced. So far new adds (via phone seem to sync rather immediately) When I tried all that via Thunderbird it was not successful/reliable.

MediaStudies commented 1 year ago

Install became too problematic for me without support. I switched to NextCloud. Relatively simple (guided) setup, lots of community support and Mac OS friendly. No regrets, only pluses.

mattcd216 commented 10 months ago

Same experience here. I can add the account/server fine in Calendar Settings in iOS. I use https://mydomain.tdl/dav.php/calendars/user/default/ as given by baikal. In the iOS Calendar app the error "Unable to update calendars" shows :( Works perfectly in Thunderbird.

marcelbrueckner commented 10 months ago

I'm using https://mydomain.tld/dav.php/principals/user as URL for both, calendar and contacts, on latest iOS (17.2.1) and macOS Sonoma (14.1.2) without any issues.

Cereal-Killa commented 8 months ago

Hi - I tried it today with an iPad and iOS 12.x The SOLUTION:

The URL has a "double-/". And you can use "http://"

Use the following URL: http://_your.server.tld_//dav.php/principals/_yourname_

You can even use https:// but be sure to use // (double-slash) before "dav.php"

You can check it out if you open your Bailkal from your browser. The URL you see there is the URL you must use with iOS

iOS 15.7.1, confirmed that this works, use double dash before "dav.php":

https://domain.com//dav.php/principals/yourbaikaluser

zheshien0812 commented 2 months ago

For all people experiencing it, this closed issue answer worked for me to set the iOS cal #1030 (comment)

Can confirm this works for me too on iOS 17.6.

Refer to this answer for the detailed steps: #1030 (comment)

Gorcenski commented 3 weeks ago

I solved this issue with two steps:

This was fine on macOS but not iOS until I took these steps.