I’m running Nextcloud 12.0.3 together with the contacts app. The sync clients are one MacBook running High Sierra and one iPhone, running iOS 11. While I don’t have any issues with my iOS device, my MacBook does not sync since I’ve upgraded to High Sierra.
If I remove my Nextcloud Server from the contacts app in high sierra and add it again, an initial sync is done. If change a contact on my MacBook, this is also correctly synced and after a while, I will see the new contact on my iPhone.
However, if add a contact on my iPhone, the new contacts is also synced to Nextcloud, but never synced to the MacBook.
As I can see, it seems to be an issue with the contacts app on High Sierra. I’ve noticed, that if I change the sync interval time to 15 minutes, it will go back to “automatic” if I relaunch the contacts app.
Does anybody else is experiencing the same issue and is there a solution to fix this?
Since ownCloud and Nextcloud still share more or less the same dav backend (sabredav), maybe it could be helpful to look through the workarounds proposed in the contributions of a thread in the ownCloud forums (https://central.owncloud.org/t/owncloud-9-1-1-1-2-macos-sierra-carddav-not-working-solved/3481). If you are successful with any of them, maybe you can share your solution here, such that others who may be affected are also able to solve the issue.
The issue mentioned in the Owncloud forum is a completely different issue. He coulndn’t sync in the first place because he specified the wrong path. Because I have a working rewrite rule, there is now difference if I add the account “manually” or “advanced”. As mentioned, the initial sync works, only the updates aren’t snyced
Ok, thanks for checking! Sorry, but I have no real idea, what we can do here for now - since it seems to be an issue in the Mac contacts application.
You could check the nextcloud log for errors, but I doubt that there is anything log’ed which helps in this case.
Do you get “sync requests” from the app at your Nextcloud? You could also check your web servers access log for that.
You can check the access logs of your webserver and check if your Mac tries to access (perhaps this fails for some reason). If not, it seems to be a client issue.
I’ve checked the access logs already and I see that my mac accesses the CardDAV part. Well, probably it’s a client issue, but I don’t think that I’m the only one experiencing this.
I can reproduce the error happening when I create a second address book and try to sync to the Mac (I think it is well known that Mac treatment of multiple address books as well as groups is not conforming to the CalDAV standard, while iOS does).
On the other hand, I can’t reproduce the issue that you describe above: I have created a test contact on my iPhone, which synced without any problem to my Mac (10.13.1).
So my first question would be, do you have multiple address books on your NextCloud account?
Hi, in my OS X address book sync always the Contacts from a shared address book from other user. Is this still not enabled, the contacts are synced well. Also is it not possible to sync different addressnbooks form the nextcloud.
Is there en solution for this bug?
Sometime i see the different address books (shared and own) in my OS X App but the are empty.
@kfincei
Use the NextCloud web frontend. Go to the Contacts App. Click “Settings” on the bottom left. A list of your address books appears, at the bottom of the list an empty field. There you can fill in the name of the desired, new address book. By typing “enter” or clicking on the arrow, the address book is created.
Each contact (on the right) will now have a drop down menu at the bottom where you can select a different address book: the contact will be moved to the selected address book.
Once you move at least one contact to a second address book you’ve created, the MacOS Contacts program will not sync correctly anymore. This is the issue described in the github link ( https://github.com/nextcloud/contacts/issues/399 ).
Did you set up your account in the Address Book settings or the System Setttings -> Internet Accounts ? I had most success with the second. Furthermore, I always use “account type: automatic” and enter username@server.name (without any path) and password in the two fields. This seems to be the most reliable method.
Actually I’ve never added the account with the automatic mode. I’ve deleted the account and added it afterwards in automatic mode as you have described. As before, the initial sync was fine, but it does not sync afterwards - so no change there.
Please open system console (console.app) and search for carddav. There should be an entry for AddressBookSourceSync every n minutes (where n is the preset sync interval). Maybe you also find an error message there?
This is interesting. As mentioned before, it does not make any difference if I change the sync interval - it will always go back to “automatic”, if I restart the contacts app. Looking at the log, I see messages when I start the contacts app, but every n minutes (even if I change this during runtime).
I’ve pasted the log bellow, but I don’t see any error and I can’t really say if the log messages are “normal”.
Any help here is highly appreciated.
standard 16:28:56.634849 +0100 Contacts -awakeFromLoad
standard 16:28:56.635224 +0100 Contacts -setServername: <private> Parsed into scheme: https host: <private> port: 0 path: <private>
standard 16:28:56.635630 +0100 Contacts -initWithUID: called on thread: <private>
standard 16:28:56.636095 +0100 Contacts -clearPrincipalProperties
standard 16:28:56.636163 +0100 Contacts -clearHomeContainers
standard 16:28:57.183064 +0100 AddressBookSourceSync -awakeFromLoad
standard 16:28:57.183250 +0100 AddressBookSourceSync -setServername: <private> Parsed into scheme: https host: <private> port: 0 path: <private>
standard 16:28:57.183485 +0100 AddressBookSourceSync -initWithUID: called on thread: <Main>
standard 16:28:57.184686 +0100 AddressBookSourceSync -clearPrincipalProperties
standard 16:28:57.184723 +0100 AddressBookSourceSync -clearHomeContainers
standard 16:28:57.185101 +0100 AddressBookSourceSync Watching reachability for host <private>
standard 16:28:57.185282 +0100 AddressBookSourceSync push: addPushObserver for <private> in <private>
standard 16:28:57.185397 +0100 AddressBookSourceSync push: removePushObserver: removing self <private> uid <private> from center (null)
standard 16:28:57.185439 +0100 AddressBookSourceSync push: Push not enabled. No transports:(null) or keys:(null)
standard 16:28:57.185473 +0100 AddressBookSourceSync push: -setPushIsActive: NO, currently NO
standard 16:28:57.246126 +0100 AddressBookSourceSync SetupCustomPropertiesOnAddressBook(<private>)
standard 16:29:07.185433 +0100 AddressBookSourceSync -sourceShouldRefresh: (null)
standard 16:29:07.185510 +0100 AddressBookSourceSync -serverSyncInProgress returning NO
standard 16:29:07.185580 +0100 AddressBookSourceSync isAccountProperlyInitialized: YES Host: YES User: YES Password: YES
standard 16:29:07.185632 +0100 AddressBookSourceSync canTalkToServer: YES (AcctIsInitialized: YES IsOnline: YES)
standard 16:29:07.185675 +0100 AddressBookSourceSync -sourceShouldRefresh calling [self scheduleFullSync]
standard 16:29:07.185839 +0100 AddressBookSourceSync Request to schedule sync: (null) from thread: <private>
standard 16:29:07.185997 +0100 AddressBookSourceSync -serverSyncInProgress returning NO
standard 16:29:07.186171 +0100 AddressBookSourceSync Scheduling sync from thread: <private>
standard 16:29:07.186818 +0100 AddressBookSourceSync -startSync (<private>) running on thread: <private>
standard 16:29:07.186873 +0100 AddressBookSourceSync -serverSyncInProgress returning YES
standard 16:29:07.187512 +0100 AddressBookSourceSync isAccountProperlyInitialized: YES Host: YES User: YES Password: YES
standard 16:29:07.187577 +0100 AddressBookSourceSync canTalkToServer: YES (AcctIsInitialized: YES IsOnline: YES)
standard 16:29:07.202786 +0100 AddressBookSourceSync -clearHomeContainers
standard 16:29:07.202964 +0100 AddressBookSourceSync -getPrincipalInfo:[_controller supportsRequestCompressionAtURL:<private>]
standard 16:29:07.203041 +0100 AddressBookSourceSync -[CDXAccount clearAuthMethodsTried]
standard 16:29:07.203698 +0100 AddressBookSourceSync Looking up (assumed existing) account with identifier <private>
standard 16:29:07.346209 +0100 AddressBookSourceSync Using cached _acAccount <private>
standard 16:29:07.433036 +0100 AddressBookSourceSync -[CDXAccount handleAuthenticateAgainstProtectionSpace:withConnection:]:<private> withConnection:<private>
standard 16:29:07.433092 +0100 AddressBookSourceSync Using cached _acAccount <private>
standard 16:29:07.433121 +0100 AddressBookSourceSync Using cached _acAccount <private>
standard 16:29:07.433253 +0100 AddressBookSourceSync -[CDXAccount handleAuthenticateAgainstProtectionSpace:withConnection:] <private> was already tried 0x
standard 16:29:07.433386 +0100 AddressBookSourceSync -[CDXAccount shouldRetryKerberosAuthWithConnection:]:<private>
standard 16:29:07.433552 +0100 AddressBookSourceSync -[CDXAccount shouldRetryKerberosAuthWithConnection:]:<private> returning NO because last auth was not NSURLAuthenticationMethodNegotiate
standard 16:29:07.433711 +0100 AddressBookSourceSync -[CDXAccount handleTrustChallenge:withConnection:]:<private> withConnection:<private>
standard 16:29:07.433819 +0100 AddressBookSourceSync -[CDXAccount shouldRetryKerberosAuthWithConnection:]:<private>
standard 16:29:07.434007 +0100 AddressBookSourceSync -[CDXAccount shouldRetryKerberosAuthWithConnection:]:<private> returning NO because last auth was not NSURLAuthenticationMethodNegotiate
standard 16:29:07.434138 +0100 AddressBookSourceSync -[CDXAccount recordAuthMethod:withConnection:]:<private> withConnection:<private>
standard 16:29:07.434389 +0100 AddressBookSourceSync -[CDXAccount recordAuthMethod:withConnection:]:_authMethodsTried <private>
standard 16:29:07.607689 +0100 AddressBookSourceSync -[CDXAccount handleAuthenticateAgainstProtectionSpace:withConnection:]:<private> withConnection:<private>
standard 16:29:07.607728 +0100 AddressBookSourceSync Using cached _acAccount <private>
standard 16:29:07.607864 +0100 AddressBookSourceSync Using cached _acAccount <private>
standard 16:29:07.608010 +0100 AddressBookSourceSync -[CDXAccount handleAuthenticateAgainstProtectionSpace:withConnection:] <private> was already tried 0x
standard 16:29:07.608114 +0100 AddressBookSourceSync -[CDXAccount shouldRetryKerberosAuthWithConnection:]:<private>
standard 16:29:07.608262 +0100 AddressBookSourceSync -[CDXAccount shouldRetryKerberosAuthWithConnection:]:<private> returning NO because last auth was not NSURLAuthenticationMethodNegotiate
standard 16:29:07.608626 +0100 AddressBookSourceSync Using cached _acAccount <private>
standard 16:29:07.608789 +0100 AddressBookSourceSync Using cached _acAccount <private>
standard 16:29:07.608887 +0100 AddressBookSourceSync Using cached _acAccount <private>
standard 16:29:07.755895 +0100 AddressBookSourceSync -getPrincipalInfo:_controller.account.compressRequests == NO
standard 16:29:07.756041 +0100 AddressBookSourceSync -getPrincipalInfo:[_controller principalPropertiesAtURL:<private>]
standard 16:29:07.756112 +0100 AddressBookSourceSync -[CDXAccount clearAuthMethodsTried]
standard 16:29:07.756463 +0100 AddressBookSourceSync Using cached _acAccount <private>
standard 16:29:07.756917 +0100 AddressBookSourceSync Using cached _acAccount <private>
standard 16:29:07.757006 +0100 AddressBookSourceSync Using cached _acAccount <private>
standard 16:29:07.864626 +0100 AddressBookSourceSync -getHomeInfo:[_controller containersAtURLs:<private>]
standard 16:29:07.864704 +0100 AddressBookSourceSync -[CDXAccount clearAuthMethodsTried]
standard 16:29:07.865031 +0100 AddressBookSourceSync Using cached _acAccount <private>
standard 16:29:07.865544 +0100 AddressBookSourceSync Using cached _acAccount <private>
standard 16:29:07.897594 +0100 AddressBookSourceSync -[CDXAccount handleAuthenticateAgainstProtectionSpace:withConnection:]:<private> withConnection:<private>
standard 16:29:07.897665 +0100 AddressBookSourceSync Using cached _acAccount <private>
standard 16:29:07.897733 +0100 AddressBookSourceSync Using cached _acAccount <private>
standard 16:29:07.897993 +0100 AddressBookSourceSync -[CDXAccount handleAuthenticateAgainstProtectionSpace:withConnection:] <private> was already tried 0x
standard 16:29:07.898222 +0100 AddressBookSourceSync -[CDXAccount shouldRetryKerberosAuthWithConnection:]:<private>
standard 16:29:07.898514 +0100 AddressBookSourceSync -[CDXAccount shouldRetryKerberosAuthWithConnection:]:<private> returning NO because last auth was not NSURLAuthenticationMethodNegotiate
standard 16:29:07.898771 +0100 AddressBookSourceSync Using cached _acAccount <private>
standard 16:29:07.898829 +0100 AddressBookSourceSync Using cached _acAccount <private>
standard 16:29:08.041758 +0100 AddressBookSourceSync self.homeInfo: <private>
standard 16:29:08.041928 +0100 AddressBookSourceSync self.searchInfo: <private>
standard 16:29:08.052858 +0100 AddressBookSourceSync Local me name: (null) || server me: (null)
standard 16:29:08.053234 +0100 AddressBookSourceSync ### SYNCHRONIZING <private> ###
standard 16:29:08.285898 +0100 AddressBookSourceSync -_fillCache 563 records: 560 people, 3 groups
standard 16:29:08.286611 +0100 AddressBookSourceSync -[CDXAccount clearAuthMethodsTried]
standard 16:29:08.286937 +0100 AddressBookSourceSync Using cached _acAccount <private>
standard 16:29:08.287203 +0100 AddressBookSourceSync Using cached _acAccount <private>
problem 16:29:08.424854 +0100 AddressBookSourceSync -_handleAddsOrModifies:<private> <private>
standard 16:29:08.426170 +0100 AddressBookSourceSync ### SYNCHRONIZATION of ALL (<private>), Error (null), Errors <private> ###
standard 16:29:08.426234 +0100 AddressBookSourceSync ### SYNCHRONIZATION CLEANUP ###
standard 16:29:08.426491 +0100 AddressBookSourceSync ### SYNCHRONIZATION DONE ###
standard 16:29:08.426684 +0100 AddressBookSourceSync push: addPushObserver for <private> in <private>
standard 16:29:08.426798 +0100 AddressBookSourceSync push: removePushObserver: removing self <private> uid <private> from center (null)
standard 16:29:08.426862 +0100 AddressBookSourceSync push: removePushObserver: removing self <private> uid <private> from center (null)
standard 16:29:08.426876 +0100 AddressBookSourceSync -[CDXController cancelActions] self <0x7f851fd01670> on thread <Main>
standard 16:29:08.426909 +0100 AddressBookSourceSync push: Push not enabled. No transports:(null) or keys:(null)
standard 16:29:08.426948 +0100 AddressBookSourceSync push: -setPushIsActive: NO, currently NO
standard 16:29:08.426945 +0100 AddressBookSourceSync -startSync (<private>) done
standard 16:29:16.644783 +0100 AddressBookSourceSync -sourceShouldRefresh: (null)
standard 16:29:16.644878 +0100 AddressBookSourceSync -serverSyncInProgress returning NO
standard 16:29:16.644945 +0100 AddressBookSourceSync isAccountProperlyInitialized: YES Host: YES User: YES Password: YES
standard 16:29:16.644994 +0100 AddressBookSourceSync canTalkToServer: YES (AcctIsInitialized: YES IsOnline: YES)
standard 16:29:16.645039 +0100 AddressBookSourceSync -sourceShouldRefresh calling [self scheduleFullSync]
standard 16:29:16.645093 +0100 AddressBookSourceSync Request to schedule sync: (null) from thread: <Main>
standard 16:29:16.645160 +0100 AddressBookSourceSync -serverSyncInProgress returning NO
standard 16:29:16.645209 +0100 AddressBookSourceSync Scheduling sync from thread: <Main>
standard 16:29:16.645786 +0100 AddressBookSourceSync -startSync (<private>) running on thread: <private>
standard 16:29:16.645841 +0100 AddressBookSourceSync -serverSyncInProgress returning YES
standard 16:29:16.646121 +0100 AddressBookSourceSync isAccountProperlyInitialized: YES Host: YES User: YES Password: YES
standard 16:29:16.646168 +0100 AddressBookSourceSync canTalkToServer: YES (AcctIsInitialized: YES IsOnline: YES)
standard 16:29:16.649219 +0100 AddressBookSourceSync -clearHomeContainers
standard 16:29:16.649406 +0100 AddressBookSourceSync -getHomeInfo:[_controller containersAtURLs:<private>]
standard 16:29:16.649703 +0100 AddressBookSourceSync -[CDXAccount clearAuthMethodsTried]
standard 16:29:16.649998 +0100 AddressBookSourceSync Using cached _acAccount <private>
standard 16:29:16.650437 +0100 AddressBookSourceSync Using cached _acAccount <private>
standard 16:29:16.796770 +0100 AddressBookSourceSync self.homeInfo: <private>
standard 16:29:16.796941 +0100 AddressBookSourceSync self.searchInfo: <private>
standard 16:29:16.804386 +0100 AddressBookSourceSync Local me name: (null) || server me: (null)
standard 16:29:16.804494 +0100 AddressBookSourceSync ### SYNCHRONIZING <private> ###
standard 16:29:17.053346 +0100 AddressBookSourceSync -_fillCache 563 records: 560 people, 3 groups
standard 16:29:17.054245 +0100 AddressBookSourceSync -[CDXAccount clearAuthMethodsTried]
standard 16:29:17.054623 +0100 AddressBookSourceSync Using cached _acAccount <private>
standard 16:29:17.054939 +0100 AddressBookSourceSync Using cached _acAccount <private>
problem 16:29:17.194719 +0100 AddressBookSourceSync -_handleAddsOrModifies:<private> <private>
standard 16:29:17.195575 +0100 AddressBookSourceSync ### SYNCHRONIZATION of ALL (<private>), Error (null), Errors <private> ###
standard 16:29:17.195628 +0100 AddressBookSourceSync ### SYNCHRONIZATION CLEANUP ###
standard 16:29:17.195748 +0100 AddressBookSourceSync ### SYNCHRONIZATION DONE ###
standard 16:29:17.195835 +0100 AddressBookSourceSync push: addPushObserver for <private> in <private>
standard 16:29:17.195942 +0100 AddressBookSourceSync push: removePushObserver: removing self <private> uid <private> from center (null)
standard 16:29:17.195998 +0100 AddressBookSourceSync push: Push not enabled. No transports:(null) or keys:(null)
standard 16:29:17.196042 +0100 AddressBookSourceSync -startSync (<private>) done
standard 16:29:17.196085 +0100 AddressBookSourceSync push: -setPushIsActive: NO, currently NO
standard 16:29:17.196405 +0100 AddressBookSourceSync push: removePushObserver: removing self <private> uid <private> from center (null)
standard 16:29:17.196542 +0100 AddressBookSourceSync -[CDXController cancelActions] self <0x7f851fd01670> on thread <Main>
Hi @kfincei,
only difference to my logfile seems to be lines about TIC TLS event , do you have those? Do you use SSL encryption for the connection?
By the way, my setting regarding to the connection interval behave like yours - it snaps back to “automatic” after each restart of the program. I guess a parameter setting that exists in AddressBook’s preferences is only considered if it corresponds to a setting in System Preferences’ “Internet Accounts”. So it doesn’t really make sense to use AddressBook’s preferences at all, rather do all settings in System Preferences (and as you can’t change to non-SSL connections there, maybe this is simply not possible anymore?).
BTW, sorry for answering so late, I didn’t get notified by mail that you had answered.
Thank you!! This issue was driving me insane and I was about to just go back to iCloud calendar and contacts. Commenting out those two lines in the nginx default file worked perfectly.