如何熟悉z-push(Zarafa-Push)
- By : Will
- Category : 开源项目
- Tags: ActiveSync, Exchange, Microsoft, Push, z-push, Zarafa, 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
没有评论