z-push

  • Da ich hier im Forum noch keinen Eintrag dazu gefunden habe, hier mal meine Erfahrungen dazu.


    z-push bietet eine OpenSource ActiveSync Schnittstelle (Push Mail)
    Client (iPhone) <-> z-push <-> imap server
    z-push Website


    mydomain.com muss jeweils durch die Domain ersetzt werden auf der ihr z-push erreichbar haben wollt.


    Installation


    1. Paket runterladen (in meinem Beispiel die Version 2.0.7)


    2. Entpacken z.b. nach /var/www/virtual/mydomain.com/htdocs/z-push
    Kann auch auf Subdomain laufen, ist im Grunde egal.


    3. Die enthaltene config.php öffnen


    Code
    1. define('BACKEND_PROVIDER', "BackendIMAP");define('IMAP_OPTIONS', '/notls/norsh');define('IMAP_SENTFOLDER', 'Sent');


    Evtl. noch Server und Port konfigurieren. In meinem Fall laufen i-mscp und der imap server auf dem selben Gerät, daher ist die Standardeinstellung ok.


    Unter Umständen auch folgendes von false auf true ändern, manche ältere Geräte benötigen das, in meinem Test war es egal:

    Code
    1. define('LOOSE_PROVISIONING', true);


    4. z-push benötigt ein logs und ein state verzeichnis. Wenn ihr diese Verzeichnisse (wie in der INSTALL erklärt) nach /var/lib und /var/log haben wollt, dann müsst ihr in der php.ini der Domain das basedir dorthin öffnen. In unserem Beispiel erstellen wir die Verzeichnisse testweise direkt im Webverzeichnis, dies sollte man aber später ändern.


    Code
    1. cd /var/www/virtual/mydomain.com/htdocs/z-pushmkdir statemkdir logschmod 775 state logs


    In der config.php die beiden Einstellungen anpassen, wichtig ist das / am Ende:

    Code
    1. define('STATE_DIR', '/var/www/virtual/mydomain.com/htdocs/z-push/state/');define('LOGFILEDIR', '/var/www/virtual/mydomain.com/htdocs/z-push/logs/');


    5. Apache konfigurieren
    /etc/apache2/imscp/mydomain.com.conf


    Code
    1. Alias /Microsoft-Server-ActiveSync /var/www/virtual/mydomain.com/htdocs/z-push/index.php<directory /var/www/virtual/mydomain.com/htdocs/z-push> Options -Indexes AllowOverride none Order allow,deny allow from all</directory>RewriteEngine OnRewriteRule .* - [E=HTTP_MS_ASPROTOCOLVERSION:%{HTTP:Ms-Asprotocolversion}]RewriteRule .* - [E=HTTP_X_MS_POLICYKEY:%{HTTP:X-Ms-Policykey}]RewriteRule .* - [E=HTTP_AUTHORIZATION:%{HTTP:Authorization}]


    Danach Apache reload.


    z-push benötigt standardmäßig mod_php, sobald fcgid im Einsatz ist bricht das Tool bei der Authentifizierung ab. Dies hat mich mehrere Stunden Analyse gekostet bis ich rausgefunden habe das diese RewriteRules notwendig sind wenn man fcgid nutzt. Google sei Dank.


    6. Konfiguration
    Browsertest: http://mydomain.com/Microsoft-Server-ActiveSync
    Hier sollte jetzt ein Login gefordert sein. Wenn das kommt ist alles ok.


    Einstellung auf dem Gerät (in meinem Beispiel iPhone):
    Kontotyp: Microsoft Exchange (nicht IMAP)
    Benutzername und Login: IMAP Login (eure Emailadresse)
    Server: mydomain.com
    Domain: unbedingt leer lassen


    Danach könnt ihr die Ordner auswählen die per Push an das Gerät weitergeleitet werden sollen.


    Hinweis: Manchmal erscheint eine Fehlermeldung "Server nicht erreichbar" auf dem Endgerät wenn man Ordner öffnet, woran das liegt konnte ich noch nicht nachvollziehen, die Emails werden trotzdem angezeigt.


    Falls Fehler auftreten
    In der php.ini der Domain müssen folgende Einstellungen gesetzt sein:

    Code
    1. magic_quotes_gpc off
    2. register_globals off
    3. magic_quotes_runtime off
    4. short_open_tag on


    Diese sind bei meinem i-mscp automatisch gesetzt.


    Alles ohne Gewähr das es bei euch funktioniert, falls ich noch weitere Optimierungen finde werde ich sie hier anhängen.


    Grüße,
    masy

    Edited once, last by masy ().

  • Es gibt wohl auch ein Debian-Paket "d-push", was nur ein für Debian umbenanntes z-push ist. Konfiguration, etc ist alles das selbe. http://packages.debian.org/de/source/wheezy/d-push


    Außerdem wäre vllt interessant die iphone Push Erweiterung direkt in Dovecot zu integrieren... (Ticket eröffnen?)
    http://www.heise.de/mac-and-i/…243102/msg-22752794/read/
    http://www.opensource.apple.co…/src/plugins/push-notify/

    Edited once, last by bomas ().

  • I hate when I think how little German I learned in the school. I'm afraid, I do not understand anything! :-)

    Concrete5 Denmark - CMS til alle
    --------------------------
    Michael Jensen-Maar
    Concrete5 Danmark

    --------------------------

  • halllo


    habe mich an die beschreibung oben gehalten aber leider kommt das dabei raus !


    Z-Push - Open Source ActiveSyncVersion 2.1.1-1788FatalMisconfigurationExceptionThe configured LOGFILE can not be modified.


    Trace:
    Array
    (
    [0] => Array
    (
    [file] => /var/www/virtual/DOMAIN.DE/htdocs/z-push/index.php
    [line] => 132
    [function] => CheckConfig
    [class] => ZPush
    [type] => ::
    [args] => Array
    (
    )




    wer weiss rat ????
    )


    )
    More information about Z-Push can be found at:Z-Push homepageZ-Push download page at BerliOSZ-Push Bugtracker and RoadmapAll modifications to this sourcecode must be published and returned to the community.Please see AGPLv3 License for details.

  • Kannst du deine Z-Push config.php bitte posten?
    Interessant sind die Angaben:

    Code
    1. define('STATE_DIR',
    2. define('LOGFILEDIR',
  • klar geht das ;)