您的位置:首页 > 移动开发

Apple客户端服务器端通讯协议(1.0.0版)(最后修改日期:2004年10月14日)

2004-09-22 13:17 387 查看
[/b]
[/b]
[/b]
[/b]
[/b]
IMAppale[/b]项目[/b][/b]
客户端服务器端通讯协议[/b][/b]

(1.0.0)

协议制定:寂寞成双.Net
2004年9月22日

目录[/b][/b]
1 通讯协议介绍... - 1 -
2 客户端至服务器端通讯协议... - 1 -
2.1 申请用户注册... - 1 -
2.2 申请登录... - 2 -
2.3 申请查看好友资料... - 3 -
2.4 申请修改自己资料... - 3 -
2.5 申请查找用户... - 4 -
2.6 申请切换用户状态... - 5 -
2.7 申请得到好友列表... - 6 -
2.8 申请得到在线列表... - 6 -
2.9 申请上传好友分组... - 6 -
2.10 申请下载好友分组... - 7 -
2.11 申请添加用户... - 7 -
2.12 申请加为好友回复... - 8 -
2.13 加为好友通知回复... - 8 -
2.14 申请删除用户... - 9 -
2.15 系统广告消息回复... - 10 -
2.16 系统维护消息回复... - 10 -
2.17 系统一般消息回复... - 11 -
2.18 好友上线通知回复... - 11 -
3 服务器端至客户端通讯协议... - 11 -
3.1 申请用户注册回复... - 11 -
3.2 申请登录回复... - 12 -
3.3 申请查看好友资料回复... - 13 -
3.4 申请修改自己资料回复... - 14 -
3.5 申请查找用户回复... - 14 -
3.6 申请切换用户状态回复... - 15 -
3.7 申请得到好友列表回复... - 15 -
3.8 申请得到在线列表回复... - 16 -
3.9 申请上传好友分组回复... - 17 -
3.10 申请下载好友分组回复... - 17 -
3.11 申请添加用户回复... - 18 -
3.12 申请加为好友... - 18 -
3.13 加为好友通知... - 19 -
3.14 申请删除用户回复... - 19 -
3.15 系统广告消息... - 20 -
3.16 系统维护消息... - 21 -
3.17 系统一般消息... - 21 -
3.18 好友上线通知... - 21 -
4 客户端至客户端通讯协议... - 22 -
4.1 发送消息... - 22 -
4.2 发送消息回复... - 23 -
5 服务器至服务器通讯协议... - 23 -
6 附表信息... - 23 -
6.1 附表A. - 23 -
6.2 附表B. - 23 -
6.3 附表C. - 23 -
6.4 附表D.. - 23 -
6.5 附表E. - 23 -

1 通讯协议介绍

基本格式如下:
报文类型|兼容版本|目标地址|发送地址|报文长度|报文内容组成|密匙|校验字

报文类型:以()包括,Group702922_IMApple起头,后加下划线及八位数十六进制类型编号。其中八位十六进制的第一和第二位表示报文类型。现暂定10表示客户端向送至服务器端、20表示服务器端发送至客户端、30表示客户端发送至客户端、40表示服务器端发送至服务器端。第三位表示申请/回复类型。现暂定0表示申请类型、1表示回复类型。第四第五位为空。第六第七第八位表示一个十进制的编号。
例:(Group702922_IMApple_10000001)、(Group702922_IMApple_20000002)
兼容版本:以()包括,软件简称及版本号,多个版本直接相联,用///进行分隔。软件简称与版本号之间用下划线分隔。
例:(IMApple2004_1.0.0///IMApple2004_1.0.5///IMApple2004_2.0.5)
目标地址:以()包括,IP地址及端口号。
例:(218.90.145.251:64737)
发送地址:以()包括IP地址及端口号。
例:(218.90.145.251:64737)
报文长度:以()包括,固定长度。此处用十个字节的十六进制表示长度。
例:(00000001F4)表示500个字节。
报文内容组成:由具体内容确定。
密匙:以()包括,固定长度。此处用十个字节的十六进制表示密匙。
校验字:以()包括,固定长度。此处用一个字节的十六进制表示校验字。

注:此处分隔符以“|”代表,真实分隔符为四个ASCII码值相联的字符串: 0x0 0x1 0x2 0x3。

2 客户端至服务器端通讯协议

2.1 申请用户注册

1. 报文类型编号:
10000001
2. 报文内容组成:整个报文内容用左右分隔符包括。(详见说明)
Email*昵称*性别*生日*毕业学校*职业*血型*个人主页*个人备注*国家地区*省份*城市*邮政编码*是否公开资料*联系地址*手机号码*电话号码*身份验证*IMApple密码*密码问题*密码答案*备用信息
3. 说明:
a) Email表示用户的Email信箱。此Email将与用户注册后所得到的IMApple编号相关联。
b) 昵称表示用户的昵称。此昵称将除IMApple编号和Email以后用户的标识。将在网上直接显示给其它用户。
c) 性别表示用户的性别。0表示不详,1表示男性,2表示女性。
d) 生日表示用户的生日。
e) 毕业学校表示用户的毕业学校。如用户不填写此消息,将用Nothing表示。
f) 职业表示用户的职业。如用户不填写此信息,将用Nothing表示。
g) 血型表示用户的血型。0表示不详,1表示A型,2表示B型,3表示O型,4表示AB型。
h) 个人主页表示用户的个人主页。如用户不填写此信息,将用Nothing表示。
i) 个人备注表示用户的个人备注。如用户不填写此信息,将用Nothing表示。
j) 国家地区表示用户所在国家代码。0表示不详,1表示中国。
k) 省份表示用户所在省份代码。0表示不详,其它代码,请详见《IMApple项目客户端服务器端数据类型》
l) 城市表示用户所在城市代码。0表示不详,其它代码,请详见《IMApple项目客户端服务器端数据类型》
m) 邮政编号表示用户所在地的邮政编号。如用户不填写此信息,将用Nothing表示。
n) 是否公开资料表示用户是否对其它用户公开个人资料。0表示完全保密,1表示向好友公开,2表示完全公开。
o) 联系地址表示用户的联系地址。如用户不填写此信息,将用Nothing表示。
p) 手机号码表示用户的手机号码。如用户不填写此信息,将用Nothing表示。
q) 电话号码表示用户的电话号码。如用户不填写此信息,将用Nothing表示。
r) 身份验证表示其它用户申请加为好友时的验证方式。0表示允许任何人把我加为好友,1表示需要身份验证才能加我加为好友,2不允许任何人把我加为好友。
s) IMApple密码表示用户申请的IMApple编号的对应密码。
t) 密码问题表示用户取回密码时的提问问题。
u) 密码答案表示用户取回密码时的提问问题的答案。
v) 备用信息用于存储一些备用信息。如无备用信息,则用Nothing表示。
w) 此处分隔符以“*”代表,真实分隔符为四个ASCII码值相联的字符串: 0x4 0x5 0x6 0x7。
x) 此处包括整个报文内容的左分隔为两个ASCII码值相联的字符串:0x8 0x9 。在举例中用符号“(”表示。
y) 此处包括整个报文内容的右分隔为两个ASCII码值相联的字符串:0xA 0xB 。在举例中用符号“)”表示。
4. 举例:
a) 报文内容
(benlee_wx_js@tom.com*寂寞成双.Net*1*1980/1/1*无锡工业学校*程序员*2*www.702922.net*哈哈哈,哈哈哈*1*1*1*214000*1*无锡市*Nothing*Nothing*1*000000*000000*000000*Nothing)
b) 完整协议
(Group702922_IMApple_10000001)|(IMApple2004_1.0.0)|(218.90.145.251:64737)|(218.90.145.251:64737)|(00000001F4)|(benlee_wx_js@tom.com*寂寞成双.Net*1*1980/1/1*无锡工业学校*程序员*2*www.702922.net*哈哈哈,哈哈哈*1*1*1*214000*1*无锡市*Nothing*Nothing*1*000000*000000*000000*Nothing)|(XXXXXXXXXX)|(X)

2.2 申请登录

1. 报文类型编号:
10000002
2. 报文内容组成:整个报文内容用左右分隔符包括。(详见说明)
登录方式*登录类型*IMApple编号(或电子邮箱)*登录密码*回复内容*备用信息
3. 说明
a) 登录方式表示用户登录方式。包括 1表示采用IMApple编号登录、2表示采用电子邮箱登录。
b) 登录类型表示用户登录类型。包括 0表示下线、1表示上线、2表示隐身、3表示离开。
c) IMApple编号表示用户注册时,服务分配的IMApple编号。电子邮箱表示用户注册时与用户IMApple号关联的用户邮箱。
d) 登录密码表示用户的登录密码。
e) 回复内容表示,如登录类型为离开,则回复内容填写离开自动回复内容。如登录类型为上线或是隐身,则回复内容Nothing表示。
f) 备用信用用于存储一些备用信息。如无备用信息,则用Nothing表示。
g) 此处分隔符以“*”代表,真实分隔符为四个ASCII码值相联的字符串: 0x4 0x5 0x6 0x7。
h) 此处包括整个报文内容的左分隔为两个ASCII码值相联的字符串:0x8 0x9 。在举例中用符号“(”表示。
i) 此处包括整个报文内容的右分隔为两个ASCII码值相联的字符串:0xA 0xB 。在举例中用符号“)”表示。
4. 举例
a) 报文内容
(1*1*00000001*000000*Nothing* Nothing)
(2*3*benlee_wx_js@tom.com*000000*我去号饭,马上回来!*Nothing)
b) 完整协议
(Group702922_IMApple_10000002)|(IMApple2004_1.0.0)|(218.90.145.251:64737)|(218.90.145.251:64737)|(00000001F4)|(1*1*00000001*000000*Nothing*Nothing)|(XXXXXXXXXX)|(X)

(Group702922_IMApple_10000002)|(IMApple2004_1.0.0)|(218.90.145.251:64737)|(218.90.145.251:64737)|(00000001F4)|(2*3*benlee_wx_js@tom.com*000000*我去号饭,马上回来!*Nothing)|(XXXXXXXXXX)|(X)

2.3 申请查看好友资料

1. 报文类型编号:
10000003
2. 报文内容组成:整个报文内容用左右分隔符包括。(详见说明)
自己IMApple编号*好友IMApple编号*备用信息
3. 说明:
a) 自己IMApple编号表示自己的IMApple编号
b) 好友IMApple编号表示被查看的好友的IMApple编号
c) 备用信息用于存储一些备用信息。如无备用信息,则用Nothing表示。
d) 此处分隔符以“*”代表,真实分隔符为四个ASCII码值相联的字符串: 0x4 0x5 0x6 0x7。
e) 此处包括整个报文内容的左分隔为两个ASCII码值相联的字符串:0x8 0x9 。在举例中用符号“(”表示。
f) 此处包括整个报文内容的右分隔为两个ASCII码值相联的字符串:0xA 0xB 。在举例中用符号“)”表示。
4. 举例:
a) 报文内容
(00000001*00000002*Nothing)
b) 完整协议
(Group702922_IMApple_10000003)|(IMApple2004_1.0.0)|(218.90.145.251:64737)|(218.90.145.251:64737)|(00000001F4)|(00000001*00000002*Nothing)|(XXXXXXXXXX)|(X)

2.4 申请修改自己资料

1. 报文类型编号:
10000004
2. 报文内容组成:整个报文内容用左右分隔符包括。(详见说明)
IMApple编号*Email*昵称*性别*生日*毕业学校*职业*血型*个人主页*个人备注*国家地区*省份*城市*邮政编码*是否公开资料*联系地址*手机号码*电话号码*身份验证*IMApple密码*密码问题*密码答案*备用信息
3. 说明:
a) IMApple编号表示用户的IMApple编号。
b) Email表示用户的Email信箱。此Email将与用户注册后所得到的IMApple编号相关联。
c) 昵称表示用户的昵称。此昵称将除IMApple编号和Email以后用户的标识。将在网上直接显示给其它用户。
d) 性别表示用户的性别。0表示不详,1表示男性,2表示女性。
e) 生日表示用户的生日。
f) 毕业学校表示用户的毕业学校。如用户不填写此消息,将用Nothing表示。
g) 职业表示用户的职业。如用户不填写此信息,将用Nothing表示。
h) 血型表示用户的血型。0表示不详,1表示A型,2表示B型,3表示O型,4表示AB型。
i) 个人主页表示用户的个人主页。如用户不填写此信息,将用Nothing表示。
j) 个人备注表示用户的个人备注。如用户不填写此信息,将用Nothing表示。
k) 国家地区表示用户所在国家代码。0表示不详,1表示中国。
l) 省份表示用户所在省份代码。0表示不详,其它代码,请详见《IMApple项目客户端服务器端数据类型》
m) 城市表示用户所在城市代码。0表示不详,其它代码,请详见《IMApple项目客户端服务器端数据类型》
n) 邮政编号表示用户所在地的邮政编号。如用户不填写此信息,将用Nothing表示。
o) 是否公开资料表示用户是否对其它用户公开个人资料。0表示完全保密,1表示向好友公开,2表示完全公开。
p) 联系地址表示用户的联系地址。如用户不填写此信息,将用Nothing表示。
q) 手机号码表示用户的手机号码。如用户不填写此信息,将用Nothing表示。
r) 电话号码表示用户的电话号码。如用户不填写此信息,将用Nothing表示。
s) 身份验证表示其它用户申请加为好友时的验证方式。0表示允许任何人把我加为好友,1表示需要身份验证才能加我加为好友,2不允许任何人把我加为好友。
t) IMApple密码表示用户申请的IMApple编号的对应密码。
u) 密码问题表示用户取回密码时的提问问题。
v) 密码答案表示用户取回密码时的提问问题的答案。
w) 备用信息用于存储一些备用信息。如无备用信息,则用Nothing表示。
x) 此处分隔符以“*”代表,真实分隔符为四个ASCII码值相联的字符串: 0x4 0x5 0x6 0x7。
y) 此处包括整个报文内容的左分隔为两个ASCII码值相联的字符串:0x8 0x9 。在举例中用符号“(”表示。
z) 此处包括整个报文内容的右分隔为两个ASCII码值相联的字符串:0xA 0xB 。在举例中用符号“)”表示。
4. 举例:
a) 报文内容
(00000001*benlee_wx_js@tom.com*寂寞成双.Net*1*1980/1/1*无锡工业学校*程序员*2*www.702922.net*哈哈哈,哈哈哈*1*1*1*214000*1*无锡市*Nothing*Nothing*1*000000*000000*000000*Nothing)
b) 完整协议
(Group702922_IMApple_10000004)|(IMApple2004_1.0.0)|(218.90.145.251:64737)|(218.90.145.251:64737)|(00000001F4)|(00000001*benlee_wx_js@tom.com*寂寞成双.Net*1*1980/1/1*无锡工业学校*程序员*2*www.702922.net*哈哈哈,哈哈哈*1*1*1*214000*1*无锡市*Nothing*Nothing*1*000000*000000*000000*Nothing)|(XXXXXXXXXX)|(X)

2.5 申请查找用户

1. 报文类型编号:
10000005
2. 报文内容组成:整个报文内容用左右分隔符包括。(详见说明)
自己IMApple编号*对方IMApple编号*对方Email*对方昵称*备用信息
3. 说明;
a) 自己IMApple编号表示自己的IMApple编号。
b) 对方IMApple编号表示对方的IMApple编号。如不按此查找,则用Nothing表示。
c) 对方Email表示对方与IMApple编号相关联的Email。如果不按此查找,则用Nothing表示。
d) 对方昵称表示对方的昵称。如果不按此查找,则用Nothing表示。
e) 备用信息用于存储一些备用信息。如无备用信息,则用Nothing表示。
f) 此处分隔符以“*”代表,真实分隔符为四个ASCII码值相联的字符串: 0x4 0x5 0x6 0x7。
g) 此处包括整个报文内容的左分隔为两个ASCII码值相联的字符串:0x8 0x9 。在举例中用符号“(”表示。
h) 此处包括整个报文内容的右分隔为两个ASCII码值相联的字符串:0xA 0xB 。在举例中用符号“)”表示。
4. 举例
a) 报文内容
(000000001*00000002*Nothing*Nothing)
(000000001*Nothing*Nothing*小黑)
b) 完整协议
(Group702922_IMApple_10000005)|(IMApple2004_1.0.0)|(218.90.145.251:64737)|(218.90.145.251:64737)|(00000001F4)|(000000001*00000002*Nothing*Nothing)|(XXXXXXXXXX)|(X)

(Group702922_IMApple_10000005)|(IMApple2004_1.0.0)|(218.90.145.251:64737)|(218.90.145.251:64737)|(00000001F4)|(000000001*Nothing*Nothing*小黑)|(XXXXXXXXXX)|(X)

2.6 申请切换用户状态

1. 报文类型编号:
10000006
2. 报文内容组成整个报文内容用左右分隔符包括。(详见说明)
自己IMApple编号*登录类型*回复内容*备用信息
3. 说明
a) 自己IMApple编号表示请求方的IMApple编号。
b) 登录类型表示用户登录类型。包括 1表示上线、2表示隐身、3表示离开。
c) 回复内容表示,如登录类型为离开,则回复内容填写离开自动回复内容。如登录类型为上线或是隐身,则回复内容Nothing表示。
d) 备用信用用于存储一些备用信息。如无备用信息,则用Nothing表示。
e) 此处分隔符以“*”代表,真实分隔符为四个ASCII码值相联的字符串: 0x4 0x5 0x6 0x7。
f) 此处包括整个报文内容的左分隔为两个ASCII码值相联的字符串:0x8 0x9 。在举例中用符号“(”表示。
g) 此处包括整个报文内容的右分隔为两个ASCII码值相联的字符串:0xA 0xB 。在举例中用符号“)”表示。
h)
4. 举例:
a) 报文内容
(00000001*1*Nothing* Nothing)
(00000001*3*我去号饭,马上回来!*Nothing)
b) 完整协议
(Group702922_IMApple_10000006)|(IMApple2004_1.0.0)|(218.90.145.251:64737)|(218.90.145.251:64737)|(00000001F4)|(00000001*1*Nothing* Nothing)|(XXXXXXXXXX)|(X)

(Group702922_IMApple_10000006)|(IMApple2004_1.0.0)|(218.90.145.251:64737)|(218.90.145.251:64737)|(00000001F4)|(00000001*3*我去号饭,马上回来!*Nothing)|(XXXXXXXXXX)|(X)

2.7 申请得到好友列表

1. 报文类型编号:
10000007
2. 报文内容组成:整个报文内容用左右分隔符包括。(详见说明)
自己IMApple编号*申请日期*备用信息
3. 说明:
a) 自己IMApple编号表示请求方的IMApple编号。
b) 申请日期表示用户申请得到好友列表日期。
c) 备用信用用于存储一些备用信息。如无备用信息,则用Nothing表示。
d) 此处分隔符以“*”代表,真实分隔符为四个ASCII码值相联的字符串: 0x4 0x5 0x6 0x7。
e) 此处包括整个报文内容的左分隔为两个ASCII码值相联的字符串:0x8 0x9 。在举例中用符号“(”表示。
f) 此处包括整个报文内容的右分隔为两个ASCII码值相联的字符串:0xA 0xB 。在举例中用符号“)”表示。
4. 举例:
a) 报文内容
(00000001*2004/1/1 9:30:30*Nothing)
b) 完整协议
(Group702922_IMApple_10000007)|(IMApple2004_1.0.0)|(218.90.145.251:64737)|(218.90.145.251:64737)|(00000001F4)|(00000001*2004/1/1 9:30:30*Nothing)|(XXXXXXXXXX)|(X)

2.8 申请得到在线列表

1. 报文类型编号:
10000008
2. 报文内容组成:整个报文内容用左右分隔符包括。(详见说明)
自己IMApple编号*申请日期*备用信息
3. 说明:
a) 自己IMApple编号表示请求方的IMApple编号。
b) 申请日期表示用户申请得到在线列表日期。
c) 备用信用用于存储一些备用信息。如无备用信息,则用Nothing表示。
d) 此处分隔符以“*”代表,真实分隔符为四个ASCII码值相联的字符串: 0x4 0x5 0x6 0x7。
e) 此处包括整个报文内容的左分隔为两个ASCII码值相联的字符串:0x8 0x9 。在举例中用符号“(”表示。
f) 此处包括整个报文内容的右分隔为两个ASCII码值相联的字符串:0xA 0xB 。在举例中用符号“)”表示。
4. 举例:
a) 报文内容
(00000001*2004/1/1 9:30:30*Nothing)
b) 完整协议
(Group702922_IMApple_10000008)|(IMApple2004_1.0.0)|(218.90.145.251:64737)|(218.90.145.251:64737)|(00000001F4)|(00000001*2004/1/1 9:30:30*Nothing)|(XXXXXXXXXX)|(X)

2.9 申请上传好友分组

1. 报文类型编号:
10000009
2. 报文内容组成:整个报文内容用左右分隔符包括。(详见说明)
自己IMApple编号*好友分组信息*备用信息
3. 说明:
a) 自己IMApple编号表示请求方的IMApple编号。
b) 好友分组信息表示好友的分组信息,此分组信息使用XML文档格式。(详细见附表C)
c) 备用信用用于存储一些备用信息。如无备用信息,则用Nothing表示。
d) 此处分隔符以“*”代表,真实分隔符为四个ASCII码值相联的字符串: 0x4 0x5 0x6 0x7。
e) 此处包括整个报文内容的左分隔为两个ASCII码值相联的字符串:0x8 0x9 。在举例中用符号“(”表示。
f) 此处包括整个报文内容的右分隔为两个ASCII码值相联的字符串:0xA 0xB 。在举例中用符号“)”表示。
4. 举例:
a) 报文内容
(00000001*XXXXXXXXXX*Nothing)
b) 完整协议
(Group702922_IMApple_10000009)|(IMApple2004_1.0.0)|(218.90.145.251:64737)|(218.90.145.251:64737)|(00000001F4)|(00000001*XXXXXXXXXX*Nothing)|(XXXXXXXXXX)|(X)

2.10 申请下载好友分组

1. 报文类型编号:
10000010
2. 报文内容组成:整个报文内容用左右分隔符包括。(详见说明)
自己IMApple编号*申请日期*备用信息
3. 说明:
a) 自己IMApple编号表示请求方的IMApple编号。
b) 申请日期表示用户申请下载好友分组日期。
c) 备用信用用于存储一些备用信息。如无备用信息,则用Nothing表示。
d) 此处分隔符以“*”代表,真实分隔符为四个ASCII码值相联的字符串: 0x4 0x5 0x6 0x7。
e) 此处包括整个报文内容的左分隔为两个ASCII码值相联的字符串:0x8 0x9 。在举例中用符号“(”表示。
f) 此处包括整个报文内容的右分隔为两个ASCII码值相联的字符串:0xA 0xB 。在举例中用符号“)”表示。
4. 举例:
a) 报文内容
(00000001*2004/1/1 9:30:30*Nothing)
b) 完整协议
(Group702922_IMApple_10000010)|(IMApple2004_1.0.0)|(218.90.145.251:64737)|(218.90.145.251:64737)|(00000001F4)|(00000001*2004/1/1 9:30:30*Nothing)|(XXXXXXXXXX)|(X)

2.11 申请添加用户

1. 报文类型编号
10000011
2. 报文内容组成:整个报文内容用左右分隔符包括。(详见说明)
自己IMApple编号*对方IMApple编号*申请日期*备用信息
3. 说明
a) 自己IMApple编号表示请求方的IMApple编号。
b) 对方IMApple编号表示被请求方的IMApple编号。
c) 申请日期表示用户申请添加日期。
d) 备用信用用于存储一些备用信息。如无备用信息,则用Nothing表示。
e) 此处分隔符以“*”代表,真实分隔符为四个ASCII码值相联的字符串: 0x4 0x5 0x6 0x7。
f) 此处包括整个报文内容的左分隔为两个ASCII码值相联的字符串:0x8 0x9 。在举例中用符号“(”表示。
g) 此处包括整个报文内容的右分隔为两个ASCII码值相联的字符串:0xA 0xB 。在举例中用符号“)”表示。
4. 举例
a) 报文内容
(00000001*00000002*2004/1/1 9:30:30*Nothing)
b) 完整协议
(Group702922_IMApple_10000011)|(IMApple2004_1.0.0)|(218.90.145.251:64737)|(218.90.145.251:64737)|(00000001F4)|(00000001*00000002*2004/1/1 9:30:30*Nothing)|(XXXXXXXXXX)|(X)

2.12 申请加为好友回复

1. 报文类型编号:
10100012
2. 报文内容组成:整个报文内容用左右分隔符包括。(详见说明)
申请结果*结果信息*回复时间*备用信息
3. 说明:
a) 申请结果表示用户申请加为好友的结果,包括 0申请失败,1申请成功。
b) 结果信息表示用户申请加为好友时,如果申请失败,此处填写失败的原因。如果申请成功,则此处用Nothing表示。
c) 回复时间表示用户回复申请加为好友时的时间。
d) 备用信息用于存储一些备用信息。如无备用信息,则用Nothing表示。
e) 此处分隔符以“*”代表,真实分隔符为四个ASCII码值相联的字符串: 0x4 0x5 0x6 0x7。
f) 此处包括整个报文内容的左分隔为两个ASCII码值相联的字符串:0x8 0x9 。在举例中用符号“(”表示。
g) 此处包括整个报文内容的右分隔为两个ASCII码值相联的字符串:0xA 0xB 。在举例中用符号“)”表示。
4. 举例:
a) 报文内容
(1*Nothing*2004/1/1 9:30:30*Nothing)
(0*不认识你,不让你加*2004/1/1 9:30:30*Nothing)
b) 完整协议
(Group702922_IMApple_10000012)|(IMApple2004_1.0.0)|(218.90.145.251:64737)|(218.90.145.251:64737)|(00000001F4)|(1*Nothing*2004/1/1 9:30:30*Nothing)|(XXXXXXXXXX)|(X)

(Group702922_IMApple_10000012)|(IMApple2004_1.0.0)|(218.90.145.251:64737)|(218.90.145.251:64737)|(00000001F4)|(0*不认识你,不让你加*2004/1/1 9:30:30*Nothing)|(XXXXXXXXXX)|(X)

2.13 加为好友通知回复

1. 报文类型编号:
10100013
2. 报文内容组成:整个报文内容用左右分隔符包括。(详见说明)
回复结果*结果信息*备用信息
3. 说明:
a) 回复结果表示用户回复好友通知的结果,包括 0回复失败,1回复成功。
b) 结果信息表示用户回复好友通知时,如果回复失败,此处填写失败的原因。如果回复成功,则此处用Nothing表示。
c) 备用信息用于存储一些备用信息。如无备用信息,则用Nothing表示。
d) 此处分隔符以“*”代表,真实分隔符为四个ASCII码值相联的字符串: 0x4 0x5 0x6 0x7。
e) 此处包括整个报文内容的左分隔为两个ASCII码值相联的字符串:0x8 0x9 。在举例中用符号“(”表示。
f) 此处包括整个报文内容的右分隔为两个ASCII码值相联的字符串:0xA 0xB 。在举例中用符号“)”表示。
4. 举例:
a) 报文内容
(1*Nothing*Nothing)
(0*客户端异常*Nothing)
b) 完整协议
(Group702922_IMApple_10000013)|(IMApple2004_1.0.0)|(218.90.145.251:64737)|(218.90.145.251:64737)|(00000001F4)|(1*Nothing*Nothing)|(XXXXXXXXXX)|(X)

(Group702922_IMApple_10000013)|(IMApple2004_1.0.0)|(218.90.145.251:64737)|(218.90.145.251:64737)|(00000001F4)|(0*客户端异常*Nothing)|(XXXXXXXXXX)|(X)

2.14 申请删除用户

1. 报文类型编号:
10000014
2. 报文内容组成:整个报文内容用左右分隔符包括。(详见说明)
自己IMApple编号*对方IMApple编号*备用信息
3. 说明:
a) 自己IMApple编号表示请求方的IMApple编号。
b) 对方IMApple编号表示被请求方的IMApple编号。
c) 备用信息用于存储一些备用信息。如无备用信息,则用Nothing表示。
d) 此处分隔符以“*”代表,真实分隔符为四个ASCII码值相联的字符串: 0x4 0x5 0x6 0x7。
e) 此处包括整个报文内容的左分隔为两个ASCII码值相联的字符串:0x8 0x9 。在举例中用符号“(”表示。
f) 此处包括整个报文内容的右分隔为两个ASCII码值相联的字符串:0xA 0xB 。在举例中用符号“)”表示。
4. 举例:
a) 报文内容
(00000001*00000002*Nothing)
b) 完整协议
(Group702922_IMApple_10000014)|(IMApple2004_1.0.0)|(218.90.145.251:64737)|(218.90.145.251:64737)|(00000001F4)|(00000001*00000002*Nothing)|(XXXXXXXXXX)|(X)

2.15 系统广告消息回复

1. 报文类型编号:
10100015
2. 报文内容组成:整个报文内容用左右分隔符包括。(详见说明)
回复结果*结果信息*备用信息
3. 说明:
a) 回复结果表示用户回复系统广告的结果,包括 0回复失败,1回复成功。
b) 结果信息表示用户回复系统广告时,如果回复失败,此处填写失败的原因。如果回复成功,则此处用Nothing表示。
c) 备用信息用于存储一些备用信息。如无备用信息,则用Nothing表示。
d) 此处分隔符以“*”代表,真实分隔符为四个ASCII码值相联的字符串: 0x4 0x5 0x6 0x7。
e) 此处包括整个报文内容的左分隔为两个ASCII码值相联的字符串:0x8 0x9 。在举例中用符号“(”表示。
f) 此处包括整个报文内容的右分隔为两个ASCII码值相联的字符串:0xA 0xB 。在举例中用符号“)”表示。
4. 举例:
a) 报文内容
(1*Nothing*Nothing)
(0*客户端异常*Nothing)
b) 完整协议
(Group702922_IMApple_10000015)|(IMApple2004_1.0.0)|(218.90.145.251:64737)|(218.90.145.251:64737)|(00000001F4)|(1*Nothing*Nothing)|(XXXXXXXXXX)|(X)

(Group702922_IMApple_10000015)|(IMApple2004_1.0.0)|(218.90.145.251:64737)|(218.90.145.251:64737)|(00000001F4)|(0*客户端异常*Nothing)|(XXXXXXXXXX)|(X)

2.16 系统维护消息回复

1. 报文类型编号:
10100016
2. 报文内容组成:整个报文内容用左右分隔符包括。(详见说明)
回复结果*结果信息*备用信息
3. 说明:
a) 回复结果表示用户回复系统维护消息的结果,包括 0回复失败,1回复成功。
b) 结果信息表示用户回复系统维护消息时,如果回复失败,此处填写失败的原因。如果回复成功,则此处用Nothing表示。
c) 备用信息用于存储一些备用信息。如无备用信息,则用Nothing表示。
d) 此处分隔符以“*”代表,真实分隔符为四个ASCII码值相联的字符串: 0x4 0x5 0x6 0x7。
e) 此处包括整个报文内容的左分隔为两个ASCII码值相联的字符串:0x8 0x9 。在举例中用符号“(”表示。
f) 此处包括整个报文内容的右分隔为两个ASCII码值相联的字符串:0xA 0xB 。在举例中用符号“)”表示。
4. 举例:
a) 报文内容
(1*Nothing*Nothing)
(0*客户端异常*Nothing)
b) 完整协议
(Group702922_IMApple_10000016)|(IMApple2004_1.0.0)|(218.90.145.251:64737)|(218.90.145.251:64737)|(00000001F4)|(1*Nothing*Nothing)|(XXXXXXXXXX)|(X)

(Group702922_IMApple_10000016)|(IMApple2004_1.0.0)|(218.90.145.251:64737)|(218.90.145.251:64737)|(00000001F4)|(0*客户端异常*Nothing)|(XXXXXXXXXX)|(X)

2.17 系统一般消息回复

1. 报文类型编号:
10100017
2. 报文内容组成:整个报文内容用左右分隔符包括。(详见说明)
回复结果*结果信息*备用信息
3. 说明:
a) 回复结果表示用户回复系统一般消息的结果,包括 0回复失败,1回复成功。
b) 结果信息表示用户回复系统一般消息时,如果回复失败,此处填写失败的原因。如果回复成功,则此处用Nothing表示。
c) 备用信息用于存储一些备用信息。如无备用信息,则用Nothing表示。
d) 此处分隔符以“*”代表,真实分隔符为四个ASCII码值相联的字符串: 0x4 0x5 0x6 0x7。
e) 此处包括整个报文内容的左分隔为两个ASCII码值相联的字符串:0x8 0x9 。在举例中用符号“(”表示。
f) 此处包括整个报文内容的右分隔为两个ASCII码值相联的字符串:0xA 0xB 。在举例中用符号“)”表示。
4. 举例:
a) 报文内容
(1*Nothing*Nothing)
(0*客户端异常*Nothing)
b) 完整协议
(Group702922_IMApple_10000017)|(IMApple2004_1.0.0)|(218.90.145.251:64737)|(218.90.145.251:64737)|(00000001F4)|(1*Nothing*Nothing)|(XXXXXXXXXX)|(X)

(Group702922_IMApple_10000017)|(IMApple2004_1.0.0)|(218.90.145.251:64737)|(218.90.145.251:64737)|(00000001F4)|(0*客户端异常*Nothing)|(XXXXXXXXXX)|(X)

2.18 好友上线通知回复

1. 报文类型编号:
10100018
2. 报文内容组成:整个报文内容用左右分隔符包括。(详见说明)
回复结果*结果信息*备用信息
3. 说明:
a) 回复结果表示好友上线通知回复的结果,包括 0回复失败,1回复成功。
b) 结果信息表示好友上线通知回复时,如果回复失败,此处填写失败的原因。如果回复成功,则此处用Nothing表示。
c) 备用信息用于存储一些备用信息。如无备用信息,则用Nothing表示。
d) 此处分隔符以“*”代表,真实分隔符为四个ASCII码值相联的字符串: 0x4 0x5 0x6 0x7。
e) 此处包括整个报文内容的左分隔为两个ASCII码值相联的字符串:0x8 0x9 。在举例中用符号“(”表示。
f) 此处包括整个报文内容的右分隔为两个ASCII码值相联的字符串:0xA 0xB 。在举例中用符号“)”表示。
4. 举例:
a) 报文内容
(1*Nothing*Nothing)
(0*客户端异常*Nothing)
b) 完整协议
(Group702922_IMApple_10000018)|(IMApple2004_1.0.0)|(218.90.145.251:64737)|(218.90.145.251:64737)|(00000001F4)|(1*Nothing*Nothing)|(XXXXXXXXXX)|(X)

(Group702922_IMApple_10000018)|(IMApple2004_1.0.0)|(218.90.145.251:64737)|(218.90.145.251:64737)|(00000001F4)|(0*客户端异常*Nothing)|(XXXXXXXXXX)|(X)

3 服务器端至客户端通讯协议

3.1 申请用户注册回复

1. 报文类型编号:
20100001
2. 报文内容组成:整个报文内容用左右分隔符包括。(详见说明)
注册结果*结果信息*备用信息
3. 说明:
a) 注册结果表示用户申请注册结果。0表示不成功,1表示成功。
b) 结果信息表示用户注册时,如果注册成功,返回的IMApple编号,如果失败,返回失败的原因。
c) 备用信息用于存储一些备用信息。如无备用信息,则用Nothing表示。
d) 此处分隔符以“*”代表,真实分隔符为四个ASCII码值相联的字符串: 0x4 0x5 0x6 0x7。
e) 此处包括整个报文内容的左分隔为两个ASCII码值相联的字符串:0x8 0x9 。在举例中用符号“(”表示。
f) 此处包括整个报文内容的右分隔为两个ASCII码值相联的字符串:0xA 0xB 。在举例中用符号“)”表示。
4. 举例:
a) 报文内容
(0*服务器忙*Nothing)
(1*00000001*Nothing)
b) 完整协议
(Group702922_IMApple_20100001)|(IMApple2004_1.0.0)|(218.90.145.251:64737)|(218.90.145.251:64737)|(00000001F4)|(0*服务器忙*Nothing)|(XXXXXXXXXX)|(X)

(Group702922_IMApple_20100001)|(IMApple2004_1.0.0)|(218.90.145.251:64737)|(218.90.145.251:64737)|(00000001F4)|(1*00000001*Nothing)|(XXXXXXXXXX)|(X)

3.2 申请登录回复

1. 报文类型编号:
20100002
2. 报文内容组成:整个报文内容用左右分隔符包括。(详见说明)
登录结果*结果信息*备用信息
3. 说明:
a) 登录结果表示用户登录的结果,包括 0登录失败,1登录成功。
b) 结果信息表示用户登录时,如果登录失败的原因。如果用户登录成功,则此处用Nothing表示。
c) 备用信息用于存储一些备用信息。如无备用信息,则用Nothing表示。
d) 此处分隔符以“*”代表,真实分隔符为四个ASCII码值相联的字符串: 0x4 0x5 0x6 0x7。
e) 此处包括整个报文内容的左分隔为两个ASCII码值相联的字符串:0x8 0x9 。在举例中用符号“(”表示。
f) 此处包括整个报文内容的右分隔为两个ASCII码值相联的字符串:0xA 0xB 。在举例中用符号“)”表示。
4. 举例:
a) 报文内容
(1*Nothing*Nothing)
(0*服务器已满*Nothing)
b) 完整协议
(Group702922_IMApple_20100002)|(IMApple2004_1.0.0)|(218.90.145.251:64737)|(218.90.145.251:64737)|(00000001F4)|(1*Nothing*Nothing)|(XXXXXXXXXX)|(X)

(Group702922_IMApple_20100002)|(IMApple2004_1.0.0)|(218.90.145.251:64737)|(218.90.145.251:64737)|(00000001F4)|(0*服务器已满*Nothing)|(XXXXXXXXXX)|(X)

3.3 申请查看好友资料回复

1. 报文类型编号:
201000003
2. 报文内容组成:整个报文内容用左右分隔符包括。(详见说明)
查看结果*Email*昵称*性别*生日*毕业学校*职业*血型*个人主页*个人备注*国家地区*省份*城市*邮政编码*联系地址*手机号码*电话号码*备用信息
3. 说明:
a) 查看结果表示申请查看好友资料的结果。0表示失败,1表示成功。如果失败,则以下所有的消息匀用Nothing表示。
b) Email表示好友的Email资料。
c) 昵称表示好友的昵称。
d) 性别表示用户的性别。0表示不详,1表示男性,2表示女性。
e) 生日表示用户的生日。
f) 毕业学校表示好友的毕业学校。如好友未填写此消息,将用Nothing表示。
g) 职业表示好友的职业。如好友未填写此信息,将用Nothing表示。
h) 血型表示好友的血型。0表示不详,1表示A型,2表示B型,3表示O型,4表示AB型。
i) 个人主页表示好友的个人主页。如好友未填写此信息,将用Nothing表示。
j) 个人备注表示好友的个人备注。如好友未填写此信息,将用Nothing表示。
k) 国家地区表示好友所在国家代码。0表示不详,1表示中国。
l) 省份表示好友所在省份代码。0表示不详,其它代码,请详见《IMApple项目客户端服务器端数据类型》
m) 城市表示好友所在城市代码。0表示不详,其它代码,请详见《IMApple项目客户端服务器端数据类型》
n) 邮政编码表示好友所在地的邮政编号。如好友未填写或保密,将用Nothing表示。
o) 联系地址表示好友的联系地址。如好友未填写或保密,将用Nothing表示。
p) 手机号码表示好友的手机号码。如好友未填写或保密,将用Nothing表示。
q) 电话号码表示好友的电话号码。如好友未填写或保密,将用Nothing表示。
r) 备用信息用于存储一些备用信息。如无备用信息,则用Nothing表示。
s) 此处分隔符以“*”代表,真实分隔符为四个ASCII码值相联的字符串: 0x4 0x5 0x6 0x7。
t) 此处包括整个报文内容的左分隔为两个ASCII码值相联的字符串:0x8 0x9 。在举例中用符号“(”表示。
u) 此处包括整个报文内容的右分隔为两个ASCII码值相联的字符串:0xA 0xB 。在举例中用符号“)”表示。
4. 举例:
a) 报文内容
(1*benlee_wx_js@tom.com*寂寞成双.Net*1*1980/1/1*无锡工业学校*程序员*2*www.702922.net*哈哈哈,哈哈哈*1*1*1*214000*无锡市*Nothing*Nothing*Nothing)

(0*Nothing*Nothing*Nothing*Nothing*Nothing*Nothing*Nothing*Nothing*Nothing*Nothing*Nothing*Nothing*Nothing*Nothing*Nothing*Nothing*Nothing)
b) 完整协议
(Group702922_IMApple_20100003)|(IMApple2004_1.0.0)|(218.90.145.251:64737)|(218.90.145.251:64737)|(00000001F4)|(1*benlee_wx_js@tom.com*寂寞成双.Net*1*1980/1/1*无锡工业学校*程序员*2*www.702922.net*哈哈哈,哈哈哈*1*1*1*214000*无锡市*Nothing*Nothing*Nothing)|(XXXXXXXXXX)|(X)

(Group702922_IMApple_20100003)|(IMApple2004_1.0.0)|(218.90.145.251:64737)|(218.90.145.251:64737)|(00000001F4)|(0*Nothing*Nothing*Nothing*Nothing*Nothing*Nothing*Nothing*Nothing*Nothing*Nothing*Nothing*Nothing*Nothing*Nothing*Nothing*Nothing*Nothing)|(XXXXXXXXXX)|(X)

3.4 申请修改自己资料回复

1. 报文类型编号:
20100004
2. 报文内容组成:整个报文内容用左右分隔符包括。(详见说明)
修改结果*结果信息*备用信息
3. 说明
a) 修改结果表示用户修改自己资料的结果,包括 0修改失败,1修改成功。
b) 结果信息表示用户修改自己资料时,如果修改失败,则此处填写失败的原因。如果用户修改自己资料成功,则此处用Nothing表示。
c) 备用信息用于存储一些备用信息。如无备用信息,则用Nothing表示。
d) 此处分隔符以“*”代表,真实分隔符为四个ASCII码值相联的字符串: 0x4 0x5 0x6 0x7。
e) 此处包括整个报文内容的左分隔为两个ASCII码值相联的字符串:0x8 0x9 。在举例中用符号“(”表示。
f) 此处包括整个报文内容的右分隔为两个ASCII码值相联的字符串:0xA 0xB 。在举例中用符号“)”表示。
4. 举例:
a) 报文内容
(1*Nothing*Nothing)
(0*服务器正忙*Nothing)
b) 完整协议
(Group702922_IMApple_20100004)|(IMApple2004_1.0.0)|(218.90.145.251:64737)|(218.90.145.251:64737)|(00000001F4)|(1*Nothing*Nothing)|(XXXXXXXXXX)|(X)

(Group702922_IMApple_20100004)|(IMApple2004_1.0.0)|(218.90.145.251:64737)|(218.90.145.251:64737)|(00000001F4)|(0*服务器正忙*Nothing)|(XXXXXXXXXX)|(X)

3.5 申请查找用户回复

1. 报文类型编号:
20100005
2. 报文内容组成:整个报文内容用左右分隔符包括。(详见说明)
查找结果*结果信息*备用信息
3. 说明:
a) 查找结果表示用户查找用户的结果,包括 0查找失败,1查找成功。
b) 结果信息表示用户查找用户时,如果查找失败,则此处填写失败的原因。如果用户查找用户成功,则返回对方的IMApple编号。
c) 备用信息用于存储一些备用信息。如无备用信息,则用Nothing表示。
d) 此处分隔符以“*”代表,真实分隔符为四个ASCII码值相联的字符串: 0x4 0x5 0x6 0x7。
e) 此处包括整个报文内容的左分隔为两个ASCII码值相联的字符串:0x8 0x9 。在举例中用符号“(”表示。
f) 此处包括整个报文内容的右分隔为两个ASCII码值相联的字符串:0xA 0xB 。在举例中用符号“)”表示。
4. 举例:
a) 报文内容
(1*00000002*Nothing)
(0*服务器正忙*Nothing)
b) 完整协议
(Group702922_IMApple_20100005)|(IMApple2004_1.0.0)|(218.90.145.251:64737)|(218.90.145.251:64737)|(00000001F4)|(1*00000002*Nothing)|(XXXXXXXXXX)|(X)

(Group702922_IMApple_20100005)|(IMApple2004_1.0.0)|(218.90.145.251:64737)|(218.90.145.251:64737)|(00000001F4)|(0*服务器正忙*Nothing)|(XXXXXXXXXX)|(X)

3.6 申请切换用户状态回复

1. 报文类型编号:
20100006
2. 报文内容组成:整个报文内容用左右分隔符包括。(详见说明)
切换结果*结果信息*备用信息
3. 说明:
a) 切换结果表示用户切换状态的结果,包括 0切换失败,1切换成功。
b) 结果信息表示用户切换状态时,如果切换失败,则此处填写失败的原因。如果切换状态用户成功,则此处用Nothing表示。
c) 备用信息用于存储一些备用信息。如无备用信息,则用Nothing表示。
d) 此处分隔符以“*”代表,真实分隔符为四个ASCII码值相联的字符串: 0x4 0x5 0x6 0x7。
e) 此处包括整个报文内容的左分隔为两个ASCII码值相联的字符串:0x8 0x9 。在举例中用符号“(”表示。
f) 此处包括整个报文内容的右分隔为两个ASCII码值相联的字符串:0xA 0xB 。在举例中用符号“)”表示。
4. 举例:
a) 报文内容
(1*Nothing*Nothing)
(0*服务器正忙*Nothing)
b) 完整协议
(Group702922_IMApple_20100006)|(IMApple2004_1.0.0)|(218.90.145.251:64737)|(218.90.145.251:64737)|(00000001F4)|(1*Nothing*Nothing)|(XXXXXXXXXX)|(X)

(Group702922_IMApple_20100006)|(IMApple2004_1.0.0)|(218.90.145.251:64737)|(218.90.145.251:64737)|(00000001F4)|(0*服务器正忙*Nothing)|(XXXXXXXXXX)|(X)

3.7 申请得到好友列表回复

1. 报文编号类型:
20100007
2. 报文内容组成:整个报文内容用左右分隔符包括。(详见说明)
申请结果*结果信息*备用信息
3. 说明:
a) 添加结果表示客户端申请得到好友列表的结果,包括 0申请失败,1申请成功。
b) 结果信息表示客户端申请得到好友列表时,如果申请失败,则此处填写失败的原因。如果申请成功,则返回好友列表信息,此列表使用XML文档格式。(详细见附表A)
c) 备用信息用于存储一些备用信息。如无备用信息,则用Nothing表示。
d) 此处分隔符以“*”代表,真实分隔符为四个ASCII码值相联的字符串: 0x4 0x5 0x6 0x7。
e) 此处包括整个报文内容的左分隔为两个ASCII码值相联的字符串:0x8 0x9 。在举例中用符号“(”表示。
f) 此处包括整个报文内容的右分隔为两个ASCII码值相联的字符串:0xA 0xB 。在举例中用符号“)”表示。
4. 举例:
a) 报文内容
(1*XXXXXXXXXX*Nothing)
(0*服务器忙*Nothing)
b) 完整协议
(Group702922_IMApple_20100007)|(IMApple2004_1.0.0)|(218.90.145.251:64737)|(218.90.145.251:64737)|(00000001F4)|(1*XXXXXXXXXX*Nothing)|(XXXXXXXXXX)|(X)

(Group702922_IMApple_20100007)|(IMApple2004_1.0.0)|(218.90.145.251:64737)|(218.90.145.251:64737)|(00000001F4)|(0*服务器忙*Nothing)|(XXXXXXXXXX)|(X)

3.8 申请得到在线列表回复

1. 报文类型编号:
20100008
2. 报文内容组成:整个报文内容用左右分隔符包括。(详见说明)
申请结果*结果信息*备用信息
3. 说明:
a) 申请结果表示客户端申请得到在线列表的结果,包括 0申请失败,1申请成功。
b) 结果信息表示客户端申请得到在线列表时,如果申请失败,则此处填写失败的原因。如果申请成功,则返回好友列表信息,此列表使用XML文档格式。(详细见附表B)
c) 备用信息用于存储一些备用信息。如无备用信息,则用Nothing表示。
d) 此处分隔符以“*”代表,真实分隔符为四个ASCII码值相联的字符串: 0x4 0x5 0x6 0x7。
e) 此处包括整个报文内容的左分隔为两个ASCII码值相联的字符串:0x8 0x9 。在举例中用符号“(”表示。
f) 此处包括整个报文内容的右分隔为两个ASCII码值相联的字符串:0xA 0xB 。在举例中用符号“)”表示。
4. 举例:
a) 报文内容
(1*XXXXXXXXXX*Nothing)
(0*服务器忙*Nothing)
b) 完整协议
(Group702922_IMApple_20100008)|(IMApple2004_1.0.0)|(218.90.145.251:64737)|(218.90.145.251:64737)|(00000001F4)|(1*XXXXXXXXXX*Nothing)|(XXXXXXXXXX)|(X)

(Group702922_IMApple_20100008)|(IMApple2004_1.0.0)|(218.90.145.251:64737)|(218.90.145.251:64737)|(00000001F4)|(0*服务器忙*Nothing)|(XXXXXXXXXX)|(X)

3.9 申请上传好友分组回复

1. 报文类型编号:
20100009
2. 报文内容组成:整个报文内容用左右分隔符包括。(详见说明)
上传结果*结果信息*备用信息
3. 说明:
a) 上传结果表示客户端上传好友分组的结果,包括 0上传失败,1上传成功。
b) 结果信息表示客户端上传好友分组时,如果上传失败,则此处填写失败的原因。如果上传成功,则此处用Nothing表示。
c) 备用信息用于存储一些备用信息。如无备用信息,则用Nothing表示。
d) 此处分隔符以“*”代表,真实分隔符为四个ASCII码值相联的字符串: 0x4 0x5 0x6 0x7。
e) 此处包括整个报文内容的左分隔为两个ASCII码值相联的字符串:0x8 0x9 。在举例中用符号“(”表示。
f) 此处包括整个报文内容的右分隔为两个ASCII码值相联的字符串:0xA 0xB 。在举例中用符号“)”表示。
4. 举例:
a) 报文内容
(1*Nothing*Nothing)
(0*服务器忙*Nothing)
b) 完整协议
(Group702922_IMApple_20100009)|(IMApple2004_1.0.0)|(218.90.145.251:64737)|(218.90.145.251:64737)|(00000001F4)|(1*Nothing*Nothing)|(XXXXXXXXXX)|(X)

(Group702922_IMApple_20100009)|(IMApple2004_1.0.0)|(218.90.145.251:64737)|(218.90.145.251:64737)|(00000001F4)|(0*服务器忙*Nothing)|(XXXXXXXXXX)|(X)

3.10 申请下载好友分组回复

1. 报文类型编号:
20100010
2. 报文内容组成:整个报文内容用左右分隔符包括。(详见说明)
申请结果*结果信息*备用信息
3. 说明:
a) 申请结果表示客户端申请下载好友分组回复的结果,包括 0申请失败,1申请成功。
b) 结果信息表示客户端申请下载好友分组回复时,如果申请失败,则此处填写失败的原因。如果申请成功,则返回好友分组信息,此列表使用XML文档格式。(详细见附表D)
c) 备用信息用于存储一些备用信息。如无备用信息,则用Nothing表示。
d) 此处分隔符以“*”代表,真实分隔符为四个ASCII码值相联的字符串: 0x4 0x5 0x6 0x7。
e) 此处包括整个报文内容的左分隔为两个ASCII码值相联的字符串:0x8 0x9 。在举例中用符号“(”表示。
f) 此处包括整个报文内容的右分隔为两个ASCII码值相联的字符串:0xA 0xB 。在举例中用符号“)”表示。
4. 举例:
a) 报文内容
(1*XXXXXXXXXX*Nothing)
(0*服务器忙*Nothing)
b) 完整协议
(Group702922_IMApple_20100010)|(IMApple2004_1.0.0)|(218.90.145.251:64737)|(218.90.145.251:64737)|(00000001F4)|(1*XXXXXXXXXX*Nothing)|(XXXXXXXXXX)|(X)

(Group702922_IMApple_20100010)|(IMApple2004_1.0.0)|(218.90.145.251:64737)|(218.90.145.251:64737)|(00000001F4)|(0*服务器忙*Nothing)|(XXXXXXXXXX)|(X)

3.11 申请添加用户回复

1. 报文类型编号:
201000011
2. 报文内容组成:整个报文内容用左右分隔符包括。(详见说明)
添加结果*结果信息*备用信息
3. 说明:
a) 添加结果表示客户端申请添加用户的结果,包括 0申请失败,1申请成功。
b) 结果信息表示客户端申请添加用户时,如果申请失败,则此处填写失败的原因。如果申请成功,则此处用Nothing表示。
c) 备用信息用于存储一些备用信息。如无备用信息,则用Nothing表示。
d) 此处分隔符以“*”代表,真实分隔符为四个ASCII码值相联的字符串: 0x4 0x5 0x6 0x7。
e) 此处包括整个报文内容的左分隔为两个ASCII码值相联的字符串:0x8 0x9 。在举例中用符号“(”表示。
f) 此处包括整个报文内容的右分隔为两个ASCII码值相联的字符串:0xA 0xB 。在举例中用符号“)”表示。
4. 举例:
a) 报文内容
(1*Nothing*Nothing)
(0*服务器忙*Nothing)
a) 完整协议
(Group702922_IMApple_20100011)|(IMApple2004_1.0.0)|(218.90.145.251:64737)|(218.90.145.251:64737)|(00000001F4)|(1*Nothing*Nothing)|(XXXXXXXXXX)|(X)

(Group702922_IMApple_20100011)|(IMApple2004_1.0.0)|(218.90.145.251:64737)|(218.90.145.251:64737)|(00000001F4)|(0*服务器忙*Nothing)|(XXXXXXXXXX)|(X)

3.12 申请加为好友

1. 报文类型编号:
20000012
2. 报文内容组成:整个报文内容用左右分隔符包括。(详见说明)
对方IMApple编号*申请日期*备用信息
3. 说明:
a) 对方IMApple编号表示被请求方的IMApple编号。
b) 申请日期表示对方申请添加日期。
c) 备用信息用于存储一些备用信息。如无备用信息,则用Nothing表示。
d) 此处分隔符以“*”代表,真实分隔符为四个ASCII码值相联的字符串: 0x4 0x5 0x6 0x7。
e) 此处包括整个报文内容的左分隔为两个ASCII码值相联的字符串:0x8 0x9 。在举例中用符号“(”表示。
f) 此处包括整个报文内容的右分隔为两个ASCII码值相联的字符串:0xA 0xB 。在举例中用符号“)”表示。
4. 举例:
a) 报文内容
(00000001*2004/1/1 9:30:30*Nothing)
b) 完整协议
(Group702922_IMApple_20000012)|(IMApple2004_1.0.0)|(218.90.145.251:64737)|(218.90.145.251:64737)|(00000001F4)|(00000001*2004/1/1 9:30:30*Nothing)|(XXXXXXXXXX)|(X)

3.13 加为好友通知

1. 报文类型编号:
20000013
2. 报文内容组成:整个报文内容用左右分隔符包括。(详见说明)
通知结果*结果信息*回复时间*备用信息
3. 说明:
a) 通知结果表示对方回复申请加为好友的结果,包括 0通知失败,1通知成功。
b) 结果信息表示对方回复申请加为好友时,如果通知失败,则此处填写失败的原因。如果通知成功,则此处用Nothing表示。
c) 回复时间表示对方回复申请加为好友时的时间。
d) 备用信息用于存储一些备用信息。如无备用信息,则用Nothing表示。
e) 此处分隔符以“*”代表,真实分隔符为四个ASCII码值相联的字符串: 0x4 0x5 0x6 0x7。
f) 此处包括整个报文内容的左分隔为两个ASCII码值相联的字符串:0x8 0x9 。在举例中用符号“(”表示。
g) 此处包括整个报文内容的右分隔为两个ASCII码值相联的字符串:0xA 0xB 。在举例中用符号“)”表示。
4. 举例:
a) 报文内容
(1*Nothing*2004/1/1 9:30:30*Nothing)
(0*不认识你,不让你加*2004/1/1 9:30:30*Nothing)
b) 完整协议
(Group702922_IMApple_20000013)|(IMApple2004_1.0.0)|(218.90.145.251:64737)|(218.90.145.251:64737)|(00000001F4)|(1*Nothing*2004/1/1 9:30:30*Nothing)|(XXXXXXXXXX)|(X)

(Group702922_IMApple_20000013)|(IMApple2004_1.0.0)|(218.90.145.251:64737)|(218.90.145.251:64737)|(00000001F4)|(0*不认识你,不让你加*2004/1/1 9:30:30*Nothing)|(XXXXXXXXXX)|(X)

3.14 申请删除用户回复

1. 报文类型编号;
20100014
2. 报文内容组成:整个报文内容用左右分隔符包括。(详见说明)
删除结果*结果信息*备用信息
3. 说明:
a) 删除结果表示服务器端删除的结果,包括 0删除失败,1删除成功。
b) 结果信息表示服务器端删除时,如果删除失败,则此处填写失败的原因。如果删除成功,则此处用Nothing表示。
c) 备用信息用于存储一些备用信息。如无备用信息,则用Nothing表示。
d) 此处分隔符以“*”代表,真实分隔符为四个ASCII码值相联的字符串: 0x4 0x5 0x6 0x7。
e) 此处包括整个报文内容的左分隔为两个ASCII码值相联的字符串:0x8 0x9 。在举例中用符号“(”表示。
f) 此处包括整个报文内容的右分隔为两个ASCII码值相联的字符串:0xA 0xB 。在举例中用符号“)”表示。
4. 举例:
a) 报文内容
(1*Nothing*Nothing)
(0*服务器忙*Nothing)
b) 完整协议
(Group702922_IMApple_20100014)|(IMApple2004_1.0.0)|(218.90.145.251:64737)|(218.90.145.251:64737)|(00000001F4)|(1*Nothing*Nothing)|(XXXXXXXXXX)|(X)

(Group702922_IMApple_20100014)|(IMApple2004_1.0.0)|(218.90.145.251:64737)|(218.90.145.251:64737)|(00000001F4)|(0*服务器忙*Nothing)|(XXXXXXXXXX)|(X)

3.15 系统广告消息

1. 报文类型编号:
20000015
2. 报文内容组成:整个报文内容用左右分隔符包括。(详见说明)
广告类型*广告内容*发送时间*备用信息
3. 说明:
a) 广告类型表示所发布的广告类型。暂定类型如下,0表示IMApple自己的宣传广告、1表示公益广告、2表示收费广告、3表示免费广告。
b) 广告内容表示所发布的广告的内容。此内容暂定为XML文档。(详细见附表E)
c) 发送时间表示所发布的广告的发布时间。
d) 备用信息用于存储一些备用信息。如无备用信息,则用Nothing表示。
e) 此处分隔符以“*”代表,真实分隔符为四个ASCII码值相联的字符串: 0x4 0x5 0x6 0x7。
f) 此处包括整个报文内容的左分隔为两个ASCII码值相联的字符串:0x8 0x9 。在举例中用符号“(”表示。
g) 此处包括整个报文内容的右分隔为两个ASCII码值相联的字符串:0xA 0xB 。在举例中用符号“)”表示。
4. 举例:
a) 报文内容
(0*XXXXXXXXXX*2004/1/1 9:30:30*Nothing)
b) 完整协议
(Group702922_IMApple_20000015)|(IMApple2004_1.0.0)|(218.90.145.251:64737)|(218.90.145.251:64737)|(00000001F4)|(0*XXXXXXXXXX*2004/1/1 9:30:30*Nothing)|(XXXXXXXXXX)|(X)

3.16 系统维护消息

1. 报文类型编号:
20000016
2. 报文内容组成:整个报文内容用左右分隔符包括。(详见说明)
维护类型*维护信息*备用信息
3. 说明:
a) 维护类型表示服务器维护的类型。暂定类型如下,0表示服务器全面维护、1表示服务器数据库维护、2表示服务器日志维护、3表示服务器程序维护、4表示服务器程序升级。
b) 维护信息表示所服务器维护的具体信息。
c) 备用信息用于存储一些备用信息。如无备用信息,则用Nothing表示。
d) 此处分隔符以“*”代表,真实分隔符为四个ASCII码值相联的字符串: 0x4 0x5 0x6 0x7。
e) 此处包括整个报文内容的左分隔为两个ASCII码值相联的字符串:0x8 0x9 。在举例中用符号“(”表示。
f) 此处包括整个报文内容的右分隔为两个ASCII码值相联的字符串:0xA 0xB 。在举例中用符号“)”表示。
4. 举例:
a) 报文内容
(0*服务器将在2004年10月1日12:00进行全面维护,请用户注意!*Nothing)
b) 完整协议
(Group702922_IMApple_20000016)|(IMApple2004_1.0.0)|(218.90.145.251:64737)|(218.90.145.251:64737)|(00000001F4)|(0*服务器将在2004年10月1日12:00进行全面维护,请用户注意!*Nothing)|(XXXXXXXXXX)|(X)

3.17 系统一般消息

1. 报文类型编号:
20000017
2. 报文内容组成:整个报文内容用左右分隔符包括。(详见说明)
消息类型*消息信息*备用信息
3. 说明:
a) 消息类型表示服务器一般消息的类型。暂定类型如下,0表示一般消息。
b) 消息信息表示所服务器一般消息的具体信息。
c) 备用信息用于存储一些备用信息。如无备用信息,则用Nothing表示。
d) 此处分隔符以“*”代表,真实分隔符为四个ASCII码值相联的字符串: 0x4 0x5 0x6 0x7。
e) 此处包括整个报文内容的左分隔为两个ASCII码值相联的字符串:0x8 0x9 。在举例中用符号“(”表示。
f) 此处包括整个报文内容的右分隔为两个ASCII码值相联的字符串:0xA 0xB 。在举例中用符号“)”表示。
4. 举例:
a) 报文内容
(0*XXXXXXXXXX*Nothing)
b) 完整协议
(Group702922_IMApple_20000017)|(IMApple2004_1.0.0)|(218.90.145.251:64737)|(218.90.145.251:64737)|(00000001F4)|(0*XXXXXXXXXX*Nothing)|(XXXXXXXXXX)|(X)

3.18 好友上线通知

1. 报文类型编号:
20000018
2. 报文内容组成:整个报文内容用左右分隔符包括。(详见说明)
好友IMApple编号*好友IP地址*好友端口号*备用信息
3. 说明:
a) 好友IMApple编号表示好友的IMApple编号。
b) 好友IP地址表示好友的IP地址。
c) 好友端口号表示好友的端口号。
d) 备用信息用于存储一些备用信息。如无备用信息,则用Nothing表示。
e) 此处分隔符以“*”代表,真实分隔符为四个ASCII码值相联的字符串: 0x4 0x5 0x6 0x7。
f) 此处包括整个报文内容的左分隔为两个ASCII码值相联的字符串:0x8 0x9 。在举例中用符号“(”表示。
g) 此处包括整个报文内容的右分隔为两个ASCII码值相联的字符串:0xA 0xB 。在举例中用符号“)”表示。
4. 举例:
a) 报文内容
(00000001*202.102.2.141*64000*Nothing)
b) 完整协议
(Group702922_IMApple_20000018)|(IMApple2004_1.0.0)|(218.90.145.251:64737)|(218.90.145.251:64737)|(00000001F4)|(00000001*202.102.2.141*64000*Nothing)|(XXXXXXXXXX)|(X)

4 客户端至客户端通讯协议

4.1 发送消息

1. 报文类型编号:
30000001
2. 报文内容组成:整个报文内容用左右分隔符包括。(详见说明)
自己IMApple编号*自己昵称*消息内容*发送时间*备用信息
3. 说明:
a) 自己IMApple编号表示自己的IMApple编号。
b) 自己昵称表示自己的昵称。
c) 消息内容表示发送给对方的消息内容。
d) 发送时间表示发送消息的本地时间。
e) 备用信息用于存储一些备用信息。如无备用信息,则用Nothing表示。
f) 此处分隔符以“*”代表,真实分隔符为四个ASCII码值相联的字符串: 0x4 0x5 0x6 0x7。
g) 此处包括整个报文内容的左分隔为两个ASCII码值相联的字符串:0x8 0x9 。在举例中用符号“(”表示。
h) 此处包括整个报文内容的右分隔为两个ASCII码值相联的字符串:0xA 0xB 。在举例中用符号“)”表示。
4. 举例:
a) 报文内容
(00000001*寂寞成双.Net*您好啊!在做什么呢?*2004/1/1 9:30:30*Nothing)
b) 完整协议
(Group702922_IMApple_30000001)|(IMApple2004_1.0.0)|(218.90.145.251:64737)|(218.90.145.251:64737)|(00000001F4)|(00000001*寂寞成双.Net*您好啊!在做什么呢?*2004/1/1 9:30:30*Nothing)|(XXXXXXXXXX)|(X)

4.2 发送消息回复

1. 报文类型编号:
30100002
2. 报文内容组成:整个报文内容用左右分隔符包括。(详见说明)
发送结果*结果信息*备用信息
3. 说明:
a) 发送结果表示发送消息的结果,包括 0发送失败,1发送成功。
b) 结果信息表示发送消息时,如果发送失败的原因。如果发送成功,则此处用Nothing表示。
c) 备用信息用于存储一些备用信息。如无备用信息,则用Nothing表示。
d) 此处分隔符以“*”代表,真实分隔符为四个ASCII码值相联的字符串: 0x4 0x5 0x6 0x7。
e) 此处包括整个报文内容的左分隔为两个ASCII码值相联的字符串:0x8 0x9 。在举例中用符号“(”表示。
f) 此处包括整个报文内容的右分隔为两个ASCII码值相联的字符串:0xA 0xB 。在举例中用符号“)”表示。
4. 举例:
a) 报文内容
(1*Nothing*Nothing)
(0*客户端异常*Nothing)
b) 完整协议
(Group702922_IMApple_30100002)|(IMApple2004_1.0.0)|(218.90.145.251:64737)|(218.90.145.251:64737)|(00000001F4)|(1*Nothing*Nothing)|(XXXXXXXXXX)|(X)

(Group702922_IMApple_30100002)|(IMApple2004_1.0.0)|(218.90.145.251:64737)|(218.90.145.251:64737)|(00000001F4)|(0*客户端异常*Nothing)|(XXXXXXXXXX)|(X)

5 服务器至服务器通讯协议

6 附表信息

6.1 附表A

6.2 附表B

6.3 附表C

6.4 附表D

6.5 附表E

内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息