Push Notification系统设计
一. 数据库表设计
1. 设备令牌表device_token
device_id: 设备标识,主键
device_type: 设备类型iOS或Android,必须字段
device_token: 设备令牌,设备类型为iOS时必须字段
user_id: 用户标识,可以为空
2. Android消息表notication
device_id: 设备标识
user_id: 用户标识
content: 消息体
二. 接口设计
- 收集和更新设备令牌 post_device_token
请求参数: 同数据库表device_token
返回结果: 成功或失败标识
业务逻辑:
- 以device_id为条件,没有纪录则新增,有纪录则更新
- user_id刚开始为空,用户登录后加入,用户登出后清空
- Android拉取消息 get_notification
请求参数:
user_id: 用户标识,未注册用户或者已登出用户为空
device_id: 设备标识,必须参数
返回结果: 未推送消息列表
业务逻辑:
- 有消息时纪录到表Notification中
- 拉取时根据user_id和device_id进行匹配,2个字段任1个匹配即可。注意:user_id相同时要排除空user_id
- 客户端拉取后立即清除
三. 推送消息
- iOS根据deviceToken直接发送;Android将消息纪录在Notification表中,等待拉取。
- 用户相关的消息,根据user_id为过滤条件,为用户发送消息。
相关推荐
该项目是一款基于Java的跨平台终端设备消息推送系统设计源码,包含279个文件,涵盖161个Java源文件、34个XML配置文件、18个p12证书文件、17个HTML文件、16个属性文件、7个Git忽略文件、7个JavaScript文件、5个CSS...
《基于长连接的分布式消息推送系统设计与实现》 在当今信息化时代,移动终端设备的广泛使用和4G网络的迅速发展,推动了各种应用程序的繁荣。这些应用程序极大地改变了人们的生活方式,其中,基于长连接的分布式消息...
《基于长连接的分布式消息推送系统设计与实现》是一篇深入探讨如何构建高效、可靠的分布式消息推送系统的毕业设计论文。该系统针对移动互联网时代日益增长的终端应用需求,特别是智能手机和平板电脑等多媒体设备的...
该项目是基于Go语言的智能消息推送系统设计源码,包含141个文件,涵盖123个Go源文件、3个YAML配置文件、2个Markdown文档、2个系统对象文件、2张JPG图片、2个SQL脚本、1个编辑器配置文件、1个Git忽略文件、1个LICENSE...
在Spring Boot中构建一个...总的来说,Spring Boot中的消息推送系统设计涉及多个层面,包括消息队列的选用、第三方服务的集成以及异常处理机制。通过合理规划和实施,可以构建一个高效、稳定且易于扩展的消息推送系统。
Java-Push开源实时消息推送系统是一种基于Java技术构建的、专为实现高效、稳定、实时的消息推送服务而设计的解决方案。在当今互联网应用中,实时消息推送已经成为提高用户体验和互动性的重要工具,尤其是在社交网络...
本项目实践——"消息系统(短信,推送,邮件)等统一发送管理",旨在构建一个集成了短信、推送通知以及电子邮件的综合平台,以实现对多种通信方式的集中控制。以下将详细探讨这个系统的相关知识点。 首先,我们关注...
对于计算机专业的学生和开发者来说,"Austin消息推送平台v1.0"的源代码提供了一个深入理解消息推送系统架构、学习后台开发和API设计的绝佳案例。 总之,"Austin消息推送平台v1.0"是一个强大且灵活的消息推送解决...
无线移动端消息PUSH设计 消息推送系统 消息推送系统是指将消息从服务器端推送到客户端的系统,旨在提高消息的传输效率和用户体验。该系统通常由消息推送服务器、消息分发系统和客户端三部分组成。 1. 消息推送...
《构建钉钉消息推送系统详解》 在现代企业信息化管理中,实时、高效的信息传递是提升工作效率的关键。本文将深入探讨如何利用钉钉这一企业级通讯平台,构建一个功能完善的推送系统,实现图文、文字及链接等多种消息...
【标题】"消息推送完美demo.zip"所涉及的知识点主要集中在移动应用开发中的消息推送功能。消息推送是移动应用与用户交互的重要手段,通常...通过深入研究这个Demo,开发者能够提升自己的消息推送系统设计和实现能力。
8. **API设计与文档**:为了方便其他开发人员集成和使用这个消息推送系统,需要提供清晰的API文档,可能采用OpenAPI或Swagger来规范和生成文档。 在解压的"java开源实时消息推送系统"中,你可能找到以下内容:源...
下面,我们将深入探讨消息推送的原理、常见技术和如何构建一个基本的推送系统。 1. **消息推送原理**:消息推送的基本原理是,服务器通过特定的推送服务(如APNs for iOS或Firebase Cloud Messaging for Android)...
通过学习和分析这些源码,开发者可以了解如何在C#中构建一个高效、可扩展的消息推送系统。具体步骤可能包括: - 设计服务器架构,选择合适的推送模式(如HTTP长轮询、HTTP流、WebSocket等)。 - 实现客户端和...
《使用ThinkPHP5+Workerman实现简单实时消息推送聊天系统》 在当今互联网时代,实时交互功能已经成为各类应用不可或缺的一部分,比如在线聊天、游戏、直播等。本教程将详细介绍如何利用PHP框架ThinkPHP5和Workerman...
在这个场景下,“YiIM_V4-master”可能是一个开源的即时通讯系统项目,它可能包含了实现消息推送功能的代码和资源。 消息推送通常分为两种主要方式:自建服务器推送和使用第三方推送服务。自建服务器推送需要开发者...
在移动应用、Web应用以及各种实时交互系统中,后台消息推送被广泛应用于通知、消息更新、实时行情显示等功能。本文将深入探讨后台消息推送的基本原理、常用技术和实现方式。 首先,我们要理解什么是后台消息推送。...
MPush开源实时消息推送系统是一款基于Java开发的高效、稳定且可扩展的推送服务,它为企业和开发者提供了构建自己实时通信应用的能力。该系统能够帮助应用程序实现与用户设备之间的即时通讯,例如推送通知、消息、...