基于Twisted的SyncML 1.1服务器。
txsyncml的Python项目详细描述
有限的SyncML 1.1服务器。 仅实现“仅从客户端刷新同步”。
根据文件(第6.3章):
The 'refresh sync from client only' is a synchronization type in which the client sends all its data from a database to the server (i.e., exports). The server is expected to replace all data in the target database with the data sent by the client. I.e., this means that the client overwrites all data in the server database.
syncml会话的阶段
- pkg 1客户端初始化包
- Pkg#2服务器初始化包
- pkg 3客户修改
- Pkg#4服务器修改
- Pkg#5数据id映射
- Pkg#6映射状态
初始化包通常包含以下信息:
- 设备功能
- 请求的数据库访问,所需的同步类型
- 认证信息
- 同步定位
修改包通常包含以下信息:
- 同步命令:添加、替换、删除、移动
- 与这些命令相关联的数据标识和内容(删除除外)
映射包(仅由客户端发送)通常包含以下信息:
- 映射信息(从服务器添加的每个新项的两个luid和guid)
$ virtualenv ve (ve)$ pip install -e . (ve)$ twistd txsyncml --help