如何熟悉z-push(Zarafa-Push)

开源项目

1 基础知识

1.1 Z-Push的简介

– Z-Push的Z代表Zarafa(中文翻译长颈鹿)
– Z-Push是Microsoft Exchange ActiveSync协议的FOSS实现
– Z-Push是AGPL v3下的开源项目
– Z-Push使用Apache2 Webserver和PHP开发和测试
– Z-Push兼容nginx和lighttpd
– Z-Push最初由Zarafa Deutschland GmbH(德国)开发
注:FOSS即是Free and open-source software的缩写,翻译为免费开源软件

1.2 Z-Push的作用

– 支持服务器和移动设备之间同步电子邮件、个人联系人和其他项目
— 移动设备包括,Windows Phone、Apple iPhone、iPad、Android、Blackberry10
– 支持服务器和PDA、蜂窝电话之间的双向通讯(无线同步)
– 支持与Exchange Server、Research-in-Motion和BlackBerry Enterprise Server(BES)通讯
– 支持基于PHP的群件包与ActiveSync设备通讯
– 支持开发人员添加自己的后端(自定义群件解决方案)

1.3 Z-Push的后端

– 用于电子邮件同步的IMAP和Maildir后端
– 用于联系人同步的vCard和CardDAV后端
– 用于日历与任务同步的CalDAV后端
– 用于允许完全同步的Kopano包后端电子邮件、日历、联系人和任务
– 用于保存数据库的状态的SQL后端
– 用于全局地址列表搜索的searchLDAP后端

1.4 Z-Push的协议

– 基于http协议
– 使用WBXML(WAP二进制XML)作为通讯层

1.5 Z-Push的特点

– 协议内部,支持使用同步协议将项目从一侧发送到零一侧,同时跟踪已发送的内容
– 简化后端开发人员的操作,隐藏协议请求的复杂性,只需专注功能实现(例如获取项目列表或数据)
– 开发人员只需要充分理解WBXML对象的定义和字段
– 性能优越,例如发送数百的消息列表,仅一条需发送消息滞留内存
– 提供流式的WBXML编码器和解码器实现数据流从后端发送到客户端
– 支持差异增量的数据传输,降低同步负载

1.6 后端开发

– 提供简单的差分开发代码示例
– 所有差分代码都另存于diffbackend中
– 只需几百行PHP代码即可实现完整的联系人同步后端
– 支持从任何数据源检索数据,包括MySQL数据库

1.7 相同功能的项目

– Microsoft Exchange ActiveSync
– Zimbra

1.8 Z-Push的兼容性

兼容性请直接参考官方公告,
https://wiki.z-hub.io/display/ZP/Compatibility

参阅资料:
===================

Zarafa社区核心
—————–
http://z-hub.io/

Z-push wiki
—————–
https://en.wikipedia.org/wiki/Z-push

Z-push的官方首页
—————–
http://z-push.org/

其他资料
—————-
https://alephnull.uk/roundcube-contacts-sync-z-push

没有评论

发表评论

开源项目
如何安装禅道甘特图插件?

1 前言 笔者需要测试禅道的甘特图插件,于是本文应运而生。 2 最佳实践 2.1 实践环境 如果你没 …

开源项目
如何升级禅道?

1 前言 最近收到升级禅道的任务,于是本文应运而生。 2 最佳实践 2.1 实践环境 如果你没有升级 …

开源项目
如何手动部署禅道?

1 基础知识 1.1 软件的介绍 – 禅道是一款专业的研发项目管理软件 – …