| Welcome to the Zimbra - Forums! | |
Welcome, if you would like to post a comment please register.
We also encourage you to explore all things Zimbra with our team and members of the community.
|  | 
02-16-2007, 11:01 AM
| | | Zimbra client with another server Hello everyone,
I'm a newbie, so pls excuse any silly questions - I'm hoping your collective wisdom will guide me to enlightenment
I'm looking into having the Zimbra client talk to a different collaboration server.
Having read some of the Zimbra docs I know that the client and server connection is through a well-defined SOAP interface. (Btw, JSON was mentioned also, and I wondered about that..)
So here are my newbie questions:
1) Is there any doc that outlines the set of steps required for re-targeting the Zimbra client to a different server. Such as what code & config needs to be changed and how. If not, what would be a good starting point for me. I've looked into some of the client code but not all of it.. Our server can speak soap / web services and it can be tweaked to match Zimbra client.
2) Curious to know if anyone successfully done this before? If so what was the effort involved? I.e., was it a 2-week project, a 2 month project or a 2 year project ? :-)
Any input will be much appreciated!
Thanks in advance,
- JB | 
02-16-2007, 01:15 PM
| | Zimbra Employee | |
Posts: 1,434
| | soap.txt It's not an easy row to hoe, as you're going to need to make your server handle all the SOAP requests and responses that the Zimbra server does. You can check out soap.txt in our subversion repository to get a feel for the magnitude of the project.
Your server will also need to be able to parse XML requests and send back JSON responses, as that's what the Zimbra client currently expects.
And you should note that you may not rebrand the AJAX client. The "Zimbra" logo stays where it is and cannot be hidden in any way. That's just the terms of the license. | 
02-16-2007, 01:44 PM
| | Zimlet Guru & Moderator | |
Posts: 431
| | Quote:
Originally Posted by JayBee Hello everyone,
I'm a newbie, so pls excuse any silly questions - I'm hoping your collective wisdom will guide me to enlightenment
I'm looking into having the Zimbra client talk to a different collaboration server.
Having read some of the Zimbra docs I know that the client and server connection is through a well-defined SOAP interface. (Btw, JSON was mentioned also, and I wondered about that..)
So here are my newbie questions:
1) Is there any doc that outlines the set of steps required for re-targeting the Zimbra client to a different server. Such as what code & config needs to be changed and how. If not, what would be a good starting point for me. I've looked into some of the client code but not all of it.. Our server can speak soap / web services and it can be tweaked to match Zimbra client.
2) Curious to know if anyone successfully done this before? If so what was the effort involved? I.e., was it a 2-week project, a 2 month project or a 2 year project ? :-)
Any input will be much appreciated!
Thanks in advance,
- JB | You can learn what you would need to know just by using firebug to watch the packets, but there really isn't any good reason for this. The backend and frontend are pretty tightly coupled, and sniffing the wire protocol breaks a aweful lot of rules of programming.
Is there any particular reason you would want another backend? Other then you just feel like putting in the 2+ years to duplicate what Zimbra has already done? | 
02-16-2007, 06:59 PM
| | | Quote:
Originally Posted by lostknight
sniffing the wire protocol breaks a aweful lot of rules of programming.
| I expect the Samba team would beg to differ...
How do you think Tridge, Jeremy, John T. and the rest of the Samba project members do what they do to keep Samba working?
Mark
__________________
___________________________________ L. Mark Stone, CIO "Uptime. All the time."
477 Congress Street | Portland, ME 04101-3431 | (207) 772-5678
proactive maintenance and monitoring | technology consulting
Zimbra groupware | EMR implementations | data storage
| 
02-16-2007, 07:08 PM
| | Zimbra Employee | |
Posts: 1,434
| | Zimbra's wire protocol isn't a secret In the zimbra case, we publish documentation on the protocol, we make both the client and server code available to you, and we allow you to turn on protocol-level dumps on both the client (debug window) and server (zimbra.soap DEBUG log4j logger).
But there's a lot of SOAP commands to support, supporting both JSON and XML requests and responses is complex, the notification mechanism is both required and nontrivial, and you'd have to reproduce much of the Zimbra directory and authentication mechanism. Writing a SOAP gateway to another backend server is probably just not worth the effort... | 
02-16-2007, 07:24 PM
| | | Hi JayBee,
You may be thinking of the Zimbra web UI as a next-generation Horde or Squirrelmail interface, which I can certainly understand. Both Horde and Squirrelmail feature solid integration with a variety of backend systems.
In my experience, I think it is more accurate to think of the Zimbra system as an appliance, where Zimbra simply encourages the customer to utilize their own hardware and OS.
That Zimbra uses components like Postfix, Amavis, SpamAssassin, and supports us tweaking those components, Zimbra in my mind is still really an appliance at the end of the day. It's a package deal; all or nothing.
Hope that helps,
Mark
__________________
___________________________________ L. Mark Stone, CIO "Uptime. All the time."
477 Congress Street | Portland, ME 04101-3431 | (207) 772-5678
proactive maintenance and monitoring | technology consulting
Zimbra groupware | EMR implementations | data storage
| 
02-16-2007, 10:44 PM
| | Zimlet Guru & Moderator | |
Posts: 431
| | Quote:
Originally Posted by LMStone I expect the Samba team would beg to differ...
How do you think Tridge, Jeremy, John T. and the rest of the Samba project members do what they do to keep Samba working?
Mark | Of course it does. But they have no other option. Microsoft has effectivly locked people out of their code base and blocked extension. Zimbra on the other hand is open source, and available.
Sniffing wire protocols is the last resort. There are a lot of better ways to add functionality, and I am still curious what someone would want to hook the Zimbra client up too. | | Thread Tools | | | | Display Modes | Linear Mode | | Why Join? Registering let's you ask questions, makes it easier to search, displays any files attached to posts, and notifies you about replies.  |