XMPP IM APP端 消息传输协议定义设计(3)

1目的
以该设计作为系统各软件交互的规范准则,可以提高团队之间协作开发效率作为维护、设计及管理接口的重要依据、提高可维护性、可读性。
2.总体技术要求
2.1.协议
基于XMPP传输协议。JSON数据格式便于在各个异构系统中进行解析、数据交换,具容量小、占带宽小的优势。

3.总体技术要求
3.1.消息包体协议

字段名称类型说明
fromJson发送者详情
toString接收者xmpp name 因为xmpp已经有了,该字段可以不要
bodyjson信息内容(最长为500个字节)
timestampLong消息时间 单位:s(秒)
expire_timeLong单位s,接收的当前时间大于此时间,丢弃body,没有此字段无过期处理。
msg_typeint消息类型:0、推送,1、文本、2语音,3、图片,4、交换资料,5、发送位置, 200、在线提醒…..,201、首次登陆进入app通知服务器,202.上线提醒

3.2.From包体协议

字段名称类 型说 明
uidString发送者ID
nameString发送者名称
portraitString用户头像
xmpp_userStringXmpp的用户名

3.3.Body 聊天包体协议

* 3.3.1、普通聊天body 结构*

字段名称类 型说 明
txtString文本消息
imgString图片地址
audioString声音地址

… 其他根据类型扩充
w Int 图片宽度
H Int 图库高度
例:{“txt”:”hello”} ,
{“img”:”http://baidu.png”,”w”:100,”h”:100}
{“txt”:”3s语音”, “audio”:”http://abc.amr”}
….

3.3.2、msg_typew为200 body结构
该消息半个小时发送一次 发送给后台管理员。 body 可以不传

字段名称类 型说 明
statueString上线

… 其他根据类型扩充

3.3.3、发送位置 msg_type=5 body结构

字段名称类 型说 明
txtString位置文本描述
imgString地图图片截图地址
londouble精度
latdouble维度

3.3.4 发送201 消息
不需要body,只要求from字段,接收消息人 admin

3.3.5 交换资料

字段名称类 型说 明
txtString文本描述
statueint1.申请交换,2同意交换,3.拒绝交换(暂时不需要)

3.3.6 用户上线提醒202
不需要body,只要求from字段,接收消息人 admin, 客户端保证一小时只能发送一次,发送成功后,服务端会推送 设置上线提醒过的通知, 通知点击进入用户主页。

3.4.推送包体协议Body
推送消息有过期处理,当接到此条消息的时间已经超过expire 丢弃

字段名称类 型说 明
bodyjson位置文本描述
typeint1.通知,2.气泡 …

3.4.1 气泡通知型
气泡类型:用于做本地 +1 操作

字段名称类 型说 明
txtstring文本描述(可无)

type=4 :txt{“id”:1,”status”:90}

type int 1.评论,2.邀请回复,3.赞(大家一起聊),4.参加活动,5、强制登出

3.4.2通知类型
用于做内容提醒,打开网页,页面跳转等

字段名称类 型说 明
txtstring文本内容
typeint1.文本,2.网页,3.内页跳转
urlstring网页 和内页跳转
  • 2
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值