- 1、本文档共2页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
消息推送后台系统的设计
消息推送后台系统设计
一. 数据库表设计
设备表device
: 表的主键
device_id: 设备标识,主键
device_type: 设备类型iOS或Android,必须字段
device_token: 设备令牌,设备类型为iOS时必须字段
user_id: 用户标识,可以为空
badge_number: 未读消息数量,整型
timestamp: 设备令牌刷新时间references: 用户的一些设置,比如是否接受推送,推送时段等信息,可选字段
二. 接口设计
和更新设备 _device
请求参数: 同数据库表vice_id, device_type, device_token, preferences……
返回结果: 成功或失败标识
业务逻辑: 以device_id为条件,没有纪录则新增,有纪录则更新
user_id刚开始为空,用户登录后加入,用户登出后清空
客户端在启动调用此接口,服务器此时将badge_number清0,即认为客户端已经打开后已经读过所有新消息了设备令牌
请求参数: user_id, device_id
返回结果: 成功或失败标识
业务逻辑:
三. 推送消息
iOS根据deviceToken直接发送;Android根据选择的第3方方案的不同,进行消息发送
用户相关的消息,根据user_id为过滤条件,为用户发送消息。
发送消息时,badge_number加1
文档评论(0)