0

I'm looking to build a dummy CardDav server that allows me to do the following: - add a CardDav source on an iOS device - the source will show up as a group on the native Contacts app - no syncing actually takes takes place with the server (no contacts should be stored on the server or deleted from the device)

The purpose for all of this is that I'm looking to manage the source from an iOS app.

I deployed a Baikal CardDav server successfully and I tried to sniff out the requests that take place when registering a new source, unfortunately I'm quite stuck.

At the moment I have a php file that responds to a PROPFIND request and allow for the source to be validated, but it doesn't show up in the Contacts application.

Any tips would be appreciated in either writing a dummy CardDav server or crippling a functioning one in order to only provide the auth functionalities?

andreimarinescu
  • 3,541
  • 2
  • 25
  • 32

2 Answers2

1

Not sure if i understood your question. You may try Calendarserver at http://trac.calendarserver.org/wiki/docs-trunk . It is simple to install and setup and works without any quirks.

Andrew
  • 1,756
  • 3
  • 18
  • 31
  • Thanks, Andrew. I'm actually looking for a server that actually doesn't work correctly. Meaning that I would like to be able to authenticate, but not sync any contacts. I know it's a truly weird request, but I'm wondering if it's possible. – andreimarinescu Nov 25 '13 at 15:50
  • I tried few CalDAV servers when debugged mine and all of them used Basic HTTP Authentication by default. So maybe simple empty page with Auth would be enough. In fact whole athentication is very simple. First time client tries to PROPFIND (or OPTIONS) without any Auth headers which leads to Forbidden error. Then client sends the same request (and all consecutives) with Auth header. – Andrew Nov 25 '13 at 16:04
  • 1
    Thank you, Andrew, I'll give writing a simple auth script a try. – andreimarinescu Nov 25 '13 at 17:15
0

If you need the server to behave a certain way might be best to use a Carddav framework like SabreDav (for PHP) or milton.io (for java, my project). Then you can do all sorts of weird backend stuff

Milton actually comes with really simple example projects with in-memory data thats perfect for mucking about with

brad
  • 857
  • 7
  • 8
  • 1
    Milton does come with a fairly hefty license fee (well, its all relative) but if this is just for internal testing/experimenting/etc then you could just use a free trial license. – brad Nov 27 '13 at 08:53