Jump to content

Z-Push open sources Server Activesync


Guest PaulOBrien

Recommended Posts

Guest Paul (MVP)

Here's something REALLY cool...

z-push.png
Z-Push ... is an implementation of Microsoft's ActiveSync protocol which is used 'over-the-air' for multi platform active sync devices, including Windows Mobile and active sync used on Ericsson and Nokia phones. Open source Z-Push enables any PHP-based groupware package to become fully syncable with any ActiveSync-compliant device.

Being an opensource project under the GPL, it allows developers to add their own backend so that Z-Push can communicate with their groupware solution.

Currently, Z-Push is available with only four backends: the IMAP and the maildir backend for e-mail synchronisation, the vCard backend for contact synchronisation and one for the commercial Zarafa package which is sold by allowing full synchronization of E-mail, Calendar and Contacts. We expect that other backends arise in the near future as the opensource community gets to grips with the new possibilities.

So what does this mean? To see what Z-Push was all about, I installed it on my test server. It's PHP, and I simply uploaded the directory to my server, tweaked the config file, added the required .htaccess and it was ready to rock. It's recommended that Z-Push points at an IMAP server on the same box, but I thought i'd do something a bit different, so I pointed it to GMail's IMAP servers :D

The result? Exchange Server ActiveSync Push GMail! It worked straight away, and synced my mails. But did push work? To find out, I sent an email from my main email account to my gmail account. From hitting 'Send' in Outlook to the mail appearing on my device took 11 SECONDS! I'd say it worked :)

If you're looking to hook Server ActiveSync Push Technology into your groupware, then z-push is well worth a look!

P

Link to comment
Share on other sites

Guest sjeemsnl
Here's something REALLY cool...

So what does this mean? To see what Z-Push was all about, I installed it on my test server. It's PHP, and I simply uploaded the directory to my server, tweaked the config file, added the required .htaccess and it was ready to rock. It's recommended that Z-Push points at an IMAP server on the same box, but I thought i'd do something a bit different, so I pointed it to GMail's IMAP servers :)

The result? Exchange Server ActiveSync Push GMail! It worked straight away, and synced my mails. But did push work? To find out, I sent an email from my main email account to my gmail account. From hitting 'Send' in Outlook to the mail appearing on my device took 11 SECONDS! I'd say it worked :D

If you're looking to hook Server ActiveSync Push Technology into your groupware, then z-push is well worth a look!

P

Hey there Paul this sounds very nice..

Any hints on what to config in the configs..

I just could not figure it out just now.. Might be my fault and I'd better look in the morning or the docs arent clear...

Erm and I was pointing at the GMail imap settings :D

hope you can help :D

grtz,

Sjeems

Link to comment
Share on other sites

Guest Paul (MVP)

Voila! My config...

// The data providers that we are using (see configuration below)

$BACKEND_PROVIDER = "BackendIMAP";



// ************************

// BackendIMAP settings

// ************************



// Defines the server to which we want to connect

// recommended to use local servers only

define('IMAP_SERVER', 'imap.gmail.com');

// connecting to default port (143)

define('IMAP_PORT', 993);

// best cross-platform compatibility (see http://php.net/imap_open for options)

define('IMAP_OPTIONS', '/notls/norsh/ssl');[/code]

P

Link to comment
Share on other sites

Guest sjeemsnl

Wow

that's what I would like to call good service :)

Now lets hope our providers will do the same here in holland I we ask them for some info :D

thanks paul, Im going to try it now! Will post results!!

grtz,

Sjeems

Link to comment
Share on other sites

Guest sjeemsnl

Mmmm I used to be living a .Net and so Microsoft programmers life...and this Debian server won't forgive me :)

I'll try later.. Might have some luck with some help from friends, and hey I might learn some things :D

Darn I was happy about this.. :D

thanks!

grtz

Sjeems

Edited by sjeemsnl
Link to comment
Share on other sites

Guest rthomas

I have uploaded it to my root, but being a noob I am not sure about the settings for config.php and cant even find the httpd.conf file. Anyone like to expand on the installation help file for an idiot like me :)

Thanks

Link to comment
Share on other sites

Guest touficjohn

Its fantastic!

I set up z-push on my server (took less than 10mins).

Got the WM5 emulator from the M$ website. E-mails (not stored locally) arrived in seconds!!!!

If only there was a way to be able to sync with more than one exchange server at a time! Surely there has got to be some sort of workaround?

Edited by touficjohn
Link to comment
Share on other sites

Guest PayableOnDeath

after much playing around i managed to get php recompiled right so that Z-push would work and its working great :)

If only there was a way to be able to sync with more than one exchange server at a time! Surely there has got to be some sort of workaround?

I hope someone would be able to sort that as it would be very use full :D

Link to comment
Share on other sites

Guest Mr.Clark
Nope...WM can currently only support one exchange server at a time...

Ah, so if you currently have an ActiveSync Exchange account AND a Gmail IMAP account, you can't turn the Gmail one into a second Push account?

Dang.

Link to comment
Share on other sites

  • 2 weeks later...
Guest PayableOnDeath

anyone getting a problem where it Marks Every email as read?

its sending to the phone fine, with sec's of the email how ever its not notifying me of the new email and marks it as been read :S

Link to comment
Share on other sites

  • 4 weeks later...
Guest Leaskovski

Ive got a question about this.

Is the gmail account settings set for the server or is it still set on the phone?

I see that you have to tell the server that you are using IMAP and the gmail server names.

The reason for asking is... could you in theory have 1 server that is setup for gmail and then have multiple users using that server to get their gmail via push?

Link to comment
Share on other sites

Guest Leaskovski

Interesting!

Well i got an ubuntu desktop machine up and running last night and got Apache and Php running on it. I got it working according to their pdf install doc, but the imap stuff isnt pulling yet. I think i need to install php-imap, but it got past my bed time.

My theory is that someone should set a server up for gmail imap and then make it public for free :D

Somehow i dont think my sky dsl connection would handle it very well for a public one :(

Link to comment
Share on other sites

Guest PayableOnDeath
Interesting!

Well i got an ubuntu desktop machine up and running last night and got Apache and Php running on it. I got it working according to their pdf install doc, but the imap stuff isnt pulling yet. I think i need to install php-imap, but it got past my bed time.

My theory is that someone should set a server up for gmail imap and then make it public for free :(

Somehow i dont think my sky dsl connection would handle it very well for a public one :D

yes you need imap, php-imap and compile php with imap support

could do a public one but as word go around am sure the bandwidth bills would go through the roof :(

Link to comment
Share on other sites

Guest Paul (MVP)

Check out dotdeb.

Add their repositories, the installing the latest and greatest of all the bits you need is a piece of cake! apt-get php-imap = job done :D

(/me loves dotdeb so much he's donated)

P

Link to comment
Share on other sites

Guest Leaskovski

Hmm, seen as Gmail got into bed with the apple and iphone guys, they should set one of these badgers up on their servers :D I wish!

Speaking of gmail imap, how does it handle all the funky folders/labels and stuff?

Link to comment
Share on other sites

Guest Leaskovski
Check out dotdeb.

Add their repositories, the installing the latest and greatest of all the bits you need is a piece of cake! apt-get php-imap = job done :D

(/me loves dotdeb so much he's donated)

P

Nope, that doesnt work. I added them to the source list and tried that package and it said it doesnt exist. Browsing their repo I cant see that in there. :(

Looks like im gonna have to go for a manual compile.

Edit:

Thats because its not php-imap, its phpx-imap, where x is the version of php you are running. In my case 5.

God knows if this is working. I have now installed that package but i dont know if it is working properly. I run the test according to the install doc where you go to a url and it asks for your username and password, but it doesnt return the text that it should do (according to the doc)

Edited by Leaskovski
Link to comment
Share on other sites

Guest Leaskovski

Right, here is how to install onto an Ubuntu 7.10 Desktop pc (this is for me when i come to rebuild)

I will edit this as time goes on and i get it working with my install of ubuntu!

(Remember its case sensitive linux!)

1) sudo gedit /etc/apt/sources.list

edit the file so that you uncomment all the deb entries (this maybe unrequired!)

2) sudo apt-get update

3) sudo apt-get install apache2

4) sudo /etc/init.d/apache2 start

5) sudo apt-get install php5 libapache2-mod-php5

6) sudo apt-get install php5-imap

7) sudo apt-get install ca-certificates

8) Restart the machine.

9) sudo gedit /var/www/phpinfo.php

add the following text...

<?php phpinfo(); ?>

Now when you visit http://localhost/phpinfo.php it should tell you that php is installed and running, this also shows that apache is running!

10) Visit the Z-Push website and download the tar file to your desktop. Open up a terminal session and set the dir to your desktop (cd Desktop)

11) sudo tar zxvf z-push-1.0.tar.gz -C /var/www

12) sudo gedit /var/www/z-push/config.php

Find the following line and change it to look like...

// The data providers that we are using (see configuration below)


$BACKEND_PROVIDER = "BackendIMAP";
Find the IMAP section and change it to the following...
	// ************************

	//  BackendIMAP settings

	// ************************


	// Defines the server to which we want to connect

	// recommended to use local servers only

	define('IMAP_SERVER', 'imap.googlemail.com');

	// connecting to default port (143)

	define('IMAP_PORT', 993);

	// best cross-platform compatibility (see http://php.net/imap_open for options)

	define('IMAP_OPTIONS', '/notls/norsh/ssl');

	// overwrite the "from" header if it isn't set when sending emails

	// options: 'username'	- the username will be set (usefull if your login is equal to your emailaddress)

	//		'domain'	- the value of the "domain" field is used

	//		'@mydomain.com' - the username is used and the given string will be appended

	define('IMAP_DEFAULTFROM', 'username');
13) sudo chmod 777 /var/www/z-push/state 14) sudo chmod 755 /var/www/z-push/state 15) sudo chown www-data:www-data /var/www/z-push/state 16) sudo gedit /etc/apache2/httpd.conf Edit this file so that it reads the following...
Alias /Microsoft-Server-ActiveSync /var/www/z-push/index.php


php_flag magic_quotes_gpc off

php_flag register_globals off

php_flag magic_quotes_runtime off

php_flag short_open_tag on

17) sudo touch /var/www/z-push/debug.txt

18) sudo chmod 777 /var/www/z-push/debug.txt

19) sudo apt-get install php-pear

20) sudo pear install Mail

21) Restart your machine and see what happens!

Visit the following website...

http://localhost/Microsoft-Server-ActiveSync

Whack your details in and hopefully it should come back with a message about WGET! :D

Edited by Leaskovski
Link to comment
Share on other sites

Guest PayableOnDeath
18) Restart your machine and see what happens!

-Im stuck at this point. At the moment, i get a loop when asking for the loppon details when i visit the following website...

http://localhost/Microsoft-Server-ActiveSync

More to follow! :D

pop in your Gmail login details and it should give the following message

GET not supported

This is the z-push location and can only be accessed by Microsoft ActiveSync-capable devices.

if you then it should be ok then try it from your device

Link to comment
Share on other sites

Guest Leaskovski
pop in your Gmail login details and it should give the following message

GET not supported

This is the z-push location and can only be accessed by Microsoft ActiveSync-capable devices.

if you then it should be ok then try it from your device

Yeah, i did stick my details in and it loops with that data. This is what I am stuck on. I have a post going on the z-push forum to try and fix it.

Link to comment
Share on other sites

×
×
  • Create New...

Important Information

By using this site, you agree to our Terms of Use.