PHP-Push-2 is a modiefied version of Z-Push-2, an open source ActiveSync implementation, with CalDAV and CardDAV support.
Using the "combined backend" PHP-Push-2 supports the following features:
- Mail - IMAP
- Calendar - CalDAV
- Contacts - LDAP
- Contacts - CardDAV
- A supported CalDAV/CardDAV server (e.g. SOGo, ownCloud, SabreDAV)
- Did not test other than SOGo but it should work with any caldav/cardav groupware, feedback are welcome
- An ActiveSync compatible mobile device
- PHP5 with the following libraries are required:
- php5-curl
- php5-ldap for LDAP support
- libawl-php for CardDAV and CalDAV support
- php5-imap and php-mail for IMAP support
Debian/Ubuntu systems
$ apt-get install php5-curl php5-ldap php5-imap php-mail libawl-php
Redhat systems
$ yum install php-curl php-common php-ldap php-imap php-imap libawl-php
PHP-Push-2 is possible thanks to the following projects:
- SOGo Open Groupware
- Z-Push Open Source ActiveSync implementation
- CardDAV-PHP
- vCard-parser
-
CarDAV and CalDAV RFC:
-
ActiveSync Contact and Calendar Protocol Specification
- CardDAV-Client
- Thanks to Christian Putzke for updating his library
- vCard-parser
- Thanks to Nuovo for updating his library
- CalDAV-Client
We are building PHP-Push-2 in our spare time, so if you want to buy us a coke, that would be awesome!
Clone from Github:
$ cd /var/www
$ git clone https://github.com/dupondje/PHP-Push-2.git
$ cd PHP-Push-2
Read the Z-Push install instructions in the INSTALL file, or this document: Configure Z-Push (Remote ActiveSync for Mobile Devices).
Note: Z-Push is meant to be used with mod_php. If you want to use it with FastCGI additional configuration is needed for the Apache web server. Please refer to the wiki.
Deploy a PHP-Push-2 instance for the SOGo Online Demo
The following guide sets up your PHP-Push-2 instance for the SOGo Online Demo.
$ cp config.inc.php config.php
$ cp backend/combined/config.inc.php backend/combined/config.php
-
Permissions
$ mkdir -p /var/lib/z-push/ /var/log/z-push/
-
Debian system
$ chown -R www-data:www-data /var/log/z-push/ /var/lib/z-push/
-
RedHat system
$ chown -R apache:apache /var/log/z-push/ /var/lib/z-push/
- Set TimeZone
- Configure the BackendIMAP settings section
- Configure the BackendCARDDAV setting section
- Configure the BackendCALDAV setting section
- This file allows you to enable GAL search support from your LDAP tree.
Using a browser login to https://fqdn/Microsoft-Server-ActiveSync. You should see a webpage that says "Z-Push - Open Source ActiveSync" stating "GET not supported."
If this page is not displayed, please READ the wiki.
To update to the latest version pull from the Git repository:
$ cd /var/www/PHP-Push-2
$ git pull
- Fork
- Create a branch (
git checkout -b my_markup
) - Commit your changes (
git commit -am "Added Snarkdown"
) - Push to the branch (
git push origin my_markup
) - Create an Issue with a link to your branch
- Or Send me a Pull Request