How to configure z-push?



  • Hi,

    I’m using postfix and dovecot as SMTP and IMAP, I want to use z-push as CalDAV and CardDAV, after installation of z-push, I don’t know how to configure it, where to begin?

    It’s hard to find out a useful link for beginners, or step by step docs.

    By the way, I also have confusion listed below:

    1. does z-push support MariaDB as backend? It seems not. I checked out the wiki.

    2. Does email sending and receiving is a must for z-push? basically I just wan to use it as CalDAV and CardDAV, what’s the benefit of using it for email sending and receiving since I could use mobile devices to send and receive email already without any ActiveSync

    Since I’m new to ActiveSync and email, please forgive me if I’m asking any stupid questions. Thanks.



  • after a few hours exploration, I use LDAP as backend.

    and I use an appl on my mobile phone , it fails, and here is the log.

    02/04/2019 11:42:58 [22180] [DEBUG] [hongquan] -------- Start
    02/04/2019 11:42:58 [22180] [DEBUG] [hongquan] cmd='' devType='' devId='' getUser='hongquan' from='172.16.81.56' version='2.4.5+0' method='PROPFIND'
    02/04/2019 11:42:58 [22180] [DEBUG] [hongquan] Used timezone 'Asia/Shanghai'
    02/04/2019 11:42:58 [22180] [DEBUG] [hongquan] Request::ProcessHeaders() ASVersion: 14.1
    02/04/2019 11:42:58 [22180] [DEBUG] [hongquan] ZPush::CommandNeedsAuthentication(0): true
    02/04/2019 11:42:58 [22180] [ INFO] [hongquan] BackendLDAP->Logon(): User 'hongquan' is authenticated on LDAP
    02/04/2019 11:42:58 [22180] [FATAL] [hongquan] FatalNotImplementedException: Can not proceed without a device id. - code: 0 - file: /usr/share/z-push/lib/core/devicemanager.php:89
    02/04/2019 11:42:58 [22180] [ INFO] [hongquan] User-agent: 'Kerio Connect Sync/2.2.2 (Meizu; m1metal; Android 5.1; zh_CN; com.kerio.connect.sync/39)'
    02/04/2019 11:42:58 [22180] [FATAL] [hongquan] Exception: (FatalNotImplementedException) - Can not proceed without a device id.
    02/04/2019 11:42:58 [22180] [DEBUG] [hongquan] ZPush::PrintZPushLegal()
    02/04/2019 11:42:58 [22180] [DEBUG] [hongquan] TopCollector initialised with IPC provider 'IpcMemcachedProvider' with type '20'
    

  • Kopano

    Hi lukcydogxf,
    @lukcydogxf said in How to configure z-push?:

    Hi,

    I’m using postfix and dovecot as SMTP and IMAP, I want to use z-push as CalDAV and CardDAV, after installation of z-push, I don’t know how to configure it, where to begin?
    It’s hard to find out a useful link for beginners, or step by step docs.

    There’s an example config for combined backend e.g. from Fancisco: https://github.com/fmbiete/Z-Push-contrib/wiki/Example-Configuration. I’m pretty sure you’ll find another if you search for Z-Push combined backend.

    By the way, I also have confusion listed below:

    1. does z-push support MariaDB as backend? It seems not. I checked out the wiki.

    There’s no MariaDB backend, but what exactly is your use case with Z-Push and MariaDB?

    1. Does email sending and receiving is a must for z-push? basically I just wan to use it as CalDAV and CardDAV, what’s the benefit of using it for email sending and receiving since I could use mobile devices to send and receive email already without any ActiveSync

    No, email backend is not a must (though some devices seem to have issues if email folders aren’t available). The benefit of using combined backend (with imap backend for email, CardDav for contacts and CalDav backend for calendar and tasks) is that you need to configure only one account on the mobile device.
    If you plan to use imap, CalDav and CardDav separately, then probably it’s better to configure separate native accounts for each of them and not an ActiveSync account.

    Manfred



  • @Manfred Thanks for your kind reply.

    Seeing from diagram of z-push.org, it seems like z-push does not own any CalDAV or CardDAV, it merely reads data from backend and sync to mobile devices via Microsoft ActiveySync protocol, correct?

    As I can see, here is definition of CalDAV,

    // Server protocol: http or https
    define('CALDAV_PROTOCOL', 'https');
    
    // Server name
    define('CALDAV_SERVER', 'caldavserver.domain.com');
    
    // Server port
    define('CALDAV_PORT', '443');
    
    // Path
    define('CALDAV_PATH', '/caldav.php/%u/');
    

    In other words, I must build my own CalDAV and CardDAV by SOGo or something else.
    Right?

    By the way, what does FatalNotImplementedException: Can not proceed without a device id imply?

    Thanks.



  • And another question, do you have any App running on Andriod phone to use z-push?


  • Kopano

    Hi lukcydogxf,

    @lukcydogxf said in How to configure z-push?:

    @Manfred Thanks for your kind reply.

    Seeing from diagram of z-push.org, it seems like z-push does not own any CalDAV or CardDAV, it merely reads data from backend and sync to mobile devices via Microsoft ActiveySync protocol, correct?

    Yes, Z-Push is a middleware between ActiveSync capable devices and a contact, calendar, email, notes, tasks or all of them combined provider. Z-Push has backends (Kopano, CalDav, CardDav, imap etc) to get the data from those providers and converts the data into WBXML which ActiveSync protocol uses.

    As I can see, here is definition of CalDAV,

    // Server protocol: http or https
    define('CALDAV_PROTOCOL', 'https');
    
    // Server name
    define('CALDAV_SERVER', 'caldavserver.domain.com');
    
    // Server port
    define('CALDAV_PORT', '443');
    
    // Path
    define('CALDAV_PATH', '/caldav.php/%u/');
    

    In other words, I must build my own CalDAV and CardDAV by SOGo or something else.
    Right?

    If you are not using any of the available CalDav solutions (like radicale or davical), then yes, you need to build your own. Or if you already have some solution, but there’s no Z-Push backend for it, you’ll need to build a new Z-Push backend.

    By the way, what does FatalNotImplementedException: Can not proceed without a device id imply?

    It means that the device hasn’t sent its id in the request. Z-Push needs the device id in order to save the device state.

    @lukcydogxf said in How to configure z-push?:

    And another question, do you have any App running on Andriod phone to use z-push?

    I just configured an email account (on my device it’s called Exchange, on some it’s called ActiveSync) and selected what I want to sync. There are also 3rd party apps for ActiveSync, but I never really used one, so I’m not able to tell which works best.

    Manfred



  • Gotcha, thank you very much.


Log in to reply