Connect. Communicate. Collaborate. Securely.

Home » Kerio User Forums » Kerio Connect » CardDAV (Getting contact info out of Connect)
  •  
NorthernAlberta

Messages: 54
Karma: 6
Send a private message to this user
Has anyone been able to successfully pull CardDAV info from Connect's 'Public Folders'?

I'm creating a .Net program to read Connect's contact info for integration into a 3'rd party program. I'm able to access the user's personal address book, but I can't find the right directory to read the 'Public Folders/Contacts' from.

Anyone know the directory to retrieve public contacts?

For reference, a user's personal contacts can be found at:
Serverurl/contacts/your.domain/username/addressbook/

Kerio, it would be appreciated if you could put up a KB article about your CardDAV implementation. You've mentioned it multiple times in your press releases and your (formerly free) tech support told me it's the best way to talk to Connect, but your KB has no technical details.

If .Net source code for accessing a user's contacts is of value to anyone, let me know and I'll post it.
  •  
TorW

Messages: 769
Karma: 9
Send a private message to this user
Public contacts (a.k.a. the domain's Global Address List) are stored in /opt/kerio/mailserver/store/mail/example.com/#public/Contact s/#msgs as separate VCARD files.

At least they are on Linux based installs. I suspect Windows installs have a similar path.
  •  
NorthernAlberta

Messages: 54
Karma: 6
Send a private message to this user
TorW,
Thanks for your suguestion, but the mapping from filesystem to CardDAV isn't exact.
Has anyone been able to access the contacts via CardDAV?
  •  
spape

Messages: 56
Karma: 2
Send a private message to this user
Hi,

We developed a middleware for connecting Netsuite to Kerio Connect. That middleware uses CalDAV and CardDAV to communicate with the Kerio Connect server.

What we found out was: You should implement a large part of the CardDAV standard especially querying for the "addressbook-home-set" and working with the data you're getting back.

A lot of trying lead us to the fact that Kerio Connect implements just two CardDAV stores for one user: PERSONAL and PUBLIC.

You can access those stores using the known principal URLs:

https://KERIO.SERVER.COM/carddav/users/DOMAINNAME.COM/USERNA ME
https://KERIO.SERVER.COM/carddav/users/DOMAINNAME.COM/.publi c

After some more tests we also found out that Kerio Connect combines the contentsof all "address"-subfolders in the "Public"-folder into ONE CardDAV store. You can not differentiate between the GAL subfolder and another subfolder you created e.g. "All customers". The same is true for the personal folder.

  •  
NorthernAlberta

Messages: 54
Karma: 6
Send a private message to this user
spape,
Thanks, this is exactly the kind of info I'm looking for.
Unfortunately, I can't get the same results you have.

If I run a PROPFIND against username/addressbook I get:
(Please note "addressbook" is not a placeholder but a real subdirectory that holds Kerio's contacts)
version="1.0" encoding="UTF-8"
/contacts/myserver.com/username/addressbook/
HTTP/1.1 403 Forbidden
/contacts/myserver.com/username/addressbook/4ff74101-a5e8-40e0-b36c-6eec113af312.vcf
HTTP/1.1 403 Forbidden
/contacts/myserver.com/username/addressbook/a6f72915-6d36-48ca-887a-26177265bcfd-00000579.eml
HTTP/1.1 403 Forbidden
/contacts/myserver.com/username/addressbook/a6f72915-6d36-48ca-887a-26177265bcfd-0000057a.eml
HTTP/1.1 403 Forbidden
...(snip)...
/contacts/myserver.com/username/addressbook/a6f72915-6d36-48ca-887a-26177265bcfd-000005cf.eml
HTTP/1.1 403 Forbidden

I can now retrieve each .eml file and extract the embedded vcard.


PROPFIND on .public returns:
version="1.0" encoding="UTF-8"
/carddav/users/myserver.com/.public
HTTP/1.1 403 Forbidden
/carddav/users/myserver.com/.public/calendar-proxy-write/
HTTP/1.1 403 Forbidden
/carddav/users/myserver.com/.public/calendar-proxy-read/
HTTP/1.1 403 Forbidden


PROPFIND on .public/addressbook returns:
version="1.0" encoding="UTF-8"
/carddav/users/myserver.com/.public/addressbook
HTTP/1.1 403 Forbidden
/carddav/users/myserver.com/.public/addressbook/calendar-proxy-write/
HTTP/1.1 403 Forbidden
/carddav/users/myserver.com/.public/addressbook/calendar-proxy-read/
HTTP/1.1 403 Forbidden


I'm not sure if I'm just missing something obvious or what. I'm going to start looking at decoding addressbook-home-set.
  •  
spape

Messages: 56
Karma: 2
Send a private message to this user
wwwolf, I will check our code for the "public" address book folder and how we get the info out of there. I'm not sure right know how that worked. I'll get back to you later today or tomorrow...
  •  
NorthernAlberta

Messages: 54
Karma: 6
Send a private message to this user
Hi spape, any help you could provide would be much appreciated.
  •  
DJ

Messages: 2
Karma: 0
Send a private message to this user
Hi spape,


I would like to know how did you connect netsuite with kerio. We want to implement similar thing over here. We need to pull/push calendar info from netsuite openair to kerio connect and vice versa. Please could you help me on this?



Thanks
Dharmaraj
  •  
spape

Messages: 56
Karma: 2
Send a private message to this user
Dharmaraj,

I hope you got a team of developers and some time to develop something like that. It's a hell of a job...

We used Netsuite's SOAP API and CalDAV on Kerio's side with some custom sync logic under the hood. I wouldn't do it again... As soon as you start working with recurring events and invitation status info you'll understand why.

Good luck!
  •  
DJ

Messages: 2
Karma: 0
Send a private message to this user
Spape,

Thanks for your reply.I want to know how did you consume CalDAV and are you using a .net client?
  •  
spape

Messages: 56
Karma: 2
Send a private message to this user
We developed on Linux. All the CalDAV stuff was done using libcurl - so no .net here.
Previous Topic: Apple Mail Drafts
Next Topic: Cannot connect to remote host
Goto Forum:
  


Disclaimer:
Kerio discussion forums are intended for open communication between forum members and may contain information and material posted by members which may be useful in learning about Kerio products. The discussion forums are not intended to provide technical support for any specific product. Any information implied or expressed in the discussion forums is that of the posting member. Kerio is in no way responsible for the information posted in the forums, or its accuracy. Kerio employees may participate in the discussions, but their postings do not represent an offical position of the company on any issues raised or discussed. Kerio reserves the right to monitor and maintain the forums to promote free and accurate exchange of information.

Current Time: Sat Aug 19 18:49:24 CEST 2017

Total time taken to generate the page: 0.00676 seconds
.:: Contact :: Home ::.
Powered by: FUDforum 3.0.4.