Thanks for your feedback, however we knew that this one would pop up (it’s obvious) The reason behind the change of the UI was that were facing a lot of different use cases lately: from users with only a few resources to users with a huge number of calendars and address books. Big lists were not performing well and sometimes it was impossible to scroll through a big list and selections were very laggy. Therefore we needed a more performant way with the newly introduced RecyclerView (together with the also newly introduced Room database this is very useful) which can only be used in a separate tab for full performance (it needs to handle scrolling and can’t be nested within another scrollable container). Also imagine someone having a large number of address books (it already happens with 6 or more address books). People needed to scroll down very long or some people didn’t even know that there was a second section for CalDAV calendars and WebCal (they didn’t see it and didn’t know it was there). The titles did not change anyway - it was named CalDAV and CardDAV in earlier versions. We will maybe also use the additional space for more information in a second line under the title of a resource. I hope that clarifies some of our decisions!
I do find the current setup suboptimal. Imho, DAVx5 should refresh the collections list more intelligently.
E.g. when opening the account settings, such a refresh should be done automatically for an account.
And I do find the distinction between “refresh collection list” and “sync all contacts and calender events” not obvious. I.e. why should pulling down do the former and tapping the lower right action button do the latter.
The use case is to understand why adding an event to a calendar does not impact the freebusy calculations for the calendar owner. This means the user shall be able to see, that the busy status is ignored for events on the calendar.
Adding this in the property window is perfectly fine.
When the account name is different from the user name for authentication, ask the user, whether the email for authenticarion shall be inserted as ORGANIZER;SENT-BY=…
When the CN after ORGANIZER or ATTENDEE is the same as the mailto: address, do not insert CN. This has no added valie and just increases the traffic.
Obtain from the user its name and use it as CN for the ORGANIZER, or get the name from the principal-url (if not already done), perhaps as its displayname. The CN is used layer by rhe server ro send emails and it appears as display-name. So with proper CN the email will lool nicer.
Hello. This is a function that I thought would be a good idea as well. The reason for me is different. I have a Synology servers that is used to store all my contacts and events. It would be nice to stop my tablet or phone from waking it up several times in the middle of the night, just to check that no changes have occurred. May be also to have an option on whether to force a sync when DAVx5 “wakes up”; or default it to do it.
I think this would complement the existing function, which allows DAVx5 to only sync when connect to a defined WiFi network.
Thanks for your reply.
In fact, since a couple of months I moved to Caldav sync even on my business calendars because of the issue known with Google calendar sync I mentioned and that sadly seems hard to recognise and fix by Google despite hundreds of reports since November.
Outlook Caldav Synchronizer for desktop works perfectly to keep the sync between my server, outlook and even google account which is configured in one way sync only, server -> outlook.
Android Caldav currently is in fact too much limited in options compared to the Outlook Caldav Synchronizer
I needed the Android --> google one way sync, but your app doesn’t support the new OAuth 2.0 neither the local to server only sync. The alternative commercial Android app and the open source Outlook Caldav Synchronizer do both support OAuth 2.0
export/import accounts config is helpful when you have many accounts set up and you change phone or use 2 or three devices
Synker won’t help because when triggering sync from Android Settings / Accounts, even if it shows that Caldav did sync, it won’t in fact. On my 3 devices, Galaxy S7, Galaxy Note 4 and Xiaomi Mi A1 with Android stock this is true. I have to go into Caldav and start manual sync from the app. With many accounts, this is a bit cumbersome.
logging could be optional at least when someone is testing if everything goes fine (number of items modified, deleted…), but I could live without it
sync on local events change: I could live with it if manual sync from app would have been quicker for many accounts instead of having to go through each account
Hope you don’t take it wrong. I could buy the alternative commercial app. I just wanted to give my feedback here before doing so. I used your app since a few years and I do trust it as it never failed me. For one account it was fine. For +5 accounts and a complex sync scheme
( Google <-- Android <–> Server), it is limiting. So yes, maybe my needs cannot be filled with an app targeting only users with simple needs.
I am still reluctant to change, not because of paying, but only because I can’t afford right now the time to set up everything again and go through a long test period to ensure the new app is as reliable as yours. Losing data and events being not an option in my case.
Anyway, I hope you make your mind on these suggestions. Thanks for your great work and best regards
You know that you can lookup the url of a ressource by opening the 3-dots menu behind e.g. a calendar and choosing properties? That’s not exactly what you asking for but a workaround. I would assume that the base url is usually the part in front of the user name.
Although there is not that single solution for all occurancies, most of the systems are able to handle custom fields. This should allow to add such a field to DAVx5 too. I think it would always be better to cover at least 70-80% of the systems instead of 0 %. I just had a look on it and checked how other systems are handling a death day field. Here are my findings:
Nextcloud 15.0.2/Contacts 3.0.3 and ownCloud 10.0.10/Contacts 1.5.5 both handle the custom field Todestag in this way:
Enhancement request: Currently you have to enter the wifi network names you want to automatically use to sync with, manually. It would be nice to provide a checkbox dialog with all available networks to minimize the possibility of typos.
@rfc2822 I granted permissions to access contacts on my phone and the carddav option shows the url to the caldav server (without a possibility to change the url to my carddav server - which would be nice for my private account)
Thanks for the quick response. It makes sense why one synchronization is one session, for sanity’s sake. Could one cookie be used to describe each individual sync session whereas an additional cookie be placed in persistent storage, i.e. cached on disk, to describe the device identity? I’m looking at Firefox as an example. My identity is synchronized at least once during every browsing session, and yet the device lists a single (UUID? don’t remember the terminology…) for that connection. I think Plex does something similar in their access lists.
Yes, it’s a limitation of Android, which only provides one set of SyncColumns per event or per contact: this only supports one sync adapter per contacts list or per calendar.
However at the server side there is no such limitation. Any authorised program can connect to the CardDAV or CalDAV server. So if your server is on your PC and you can find a PC program (or write one) which synchronises between the CardDAV server and your Google contacts list or between the CalDAV server and your Google calendar, you can get those synced up with your Android device.
It looks as if Google’s calendar and contacts will now act as CalDAV and CardDAV servers, so an alternative option might be to use those as your server instead of your own PC if you were using that. If you have a PC application that also talks to your server, it should be able to talk to Google’s one as well.
The ORGANIZER is managed by Android (which uses the account name when no organizer has been set) and/or the calendar app. DAVdroid only takes the values which it receives from the calendar provider, see the image at https://www.davdroid.com/faq/system-integration/
You could create multiple accounts with various account names (= ORGANIZERS) and then use the calendars accordingly.