use z-push and SabreDAV to sync calendar and contact when you use your mobile device
the z-push is used https://github.com/dupondje/PHP-Push-2
the webDAV is used https://github.com/evert/SabreDAV
the databse is used the baikal https://github.com/jeromeschneider/Baikal
update
update the z-push Authenticate from apache basic to digest