1.png (32.91 KB, 下载次数: 3026)
下载附件 保存到相册
7 年前 上传
-- 消息接收者ID receiver_uid varchar(50), -- 消息的唯一指纹码(即消息ID),用于去重等场景,单机情况下此id可能是个自增值、分布式场景下可能是类似于UUID这样的东西 msg_id varchar(70), -- 消息发出时的时间戳(如果是个跨国IM,则此时间戳可能是GMT-0标准时间) send_time time, -- 消息发送者ID sender_uid varchar(50), -- 消息类型(标识此条消息是:文本、图片还是语音留言等) msg_type int, -- 消息内容(如果是图片或语音留言等类型,由此字段存放的可能是对应文件的存储地址或CDN的访问URL) msg_content varchar(1024), …
SELECT msg_id, send_time, msg_type, msg_content FROM offline_msgs WHERE receiver_uid = ? and sender_uid = ?
2.png (35.26 KB, 下载次数: 3199)
// 登陆时所有好友都要拉取 for(all uid in B’s friend-list){ // 与服务器交互 get_offline_msg(B,uid); }
3.png (64.33 KB, 下载次数: 2862)
4.png (78.06 KB, 下载次数: 3015)
5.png (27.76 KB, 下载次数: 3044)
6.png (31.99 KB, 下载次数: 2943)
7.png (27.84 KB, 下载次数: 2946)
来源:即时通讯网 - 即时通讯开发者社区!
查看评分
tuna
轻量级开源移动端即时通讯框架。
快速入门 / 性能 / 指南 / 提问
轻量级Web端即时通讯框架。
详细介绍 / 精编源码 / 手册教程
移动端实时音视频框架。
详细介绍 / 性能测试 / 安装体验
基于MobileIMSDK的移动IM系统。
详细介绍 / 产品截图 / 安装体验
一套产品级Web端IM系统。
详细介绍 / 产品截图 / 演示视频
引用此评论
引用:jituijiaqiezi 发表于 2017-03-31 23:11 对于client_B而言,在上线之后,不能是服务端先将离线消息发送给client_B,而是要client_B去主动请求吗?
引用: 十三 发表于 2017-06-18 23:59 这一系列文章真的是讲得太好了,把方案全给出来了,选一种实现就完了。
引用:dzl2005328 发表于 2017-09-20 10:21 豁然开朗,万分感谢
引用:lmyJavaDE1 发表于 2018-08-07 17:02 "进一步优化,解决重复拉取离线消息的问题:拉取了离线消息却没有ACK,服务器不会删除之前的离线消息,故下 ...
引用:lmyJavaDE1 发表于 2018-08-08 09:21 那如果要是此时的客户端是web网页呢?这种情况应该怎么处理?
引用:lee3164 发表于 2019-09-30 11:46 有个问题,分页按需拉取,假设有1000条离线消息,其中前100条是同一个会话中的,每次分页拉取也是100条,那 ...
引用:bakatora 发表于 2020-01-08 18:27 您好,我想问一下,在推送系统的场景下,消息存储用什么数据库比较好,我感觉直接用sql并不是很好的一个选 ...
引用:宋宋嗖嗖嗖 发表于 2020-02-14 22:34 可以用redis list结构存储离线消息么
引用:宋宋嗖嗖嗖 发表于 2020-02-20 00:01 你好,请问netty怎么实现重发消息
Gangan_Master
引用:ToFind1991 发表于 2020-04-01 18:00 你好,我有个疑问,就是最后说分页拉取的时候,后一次是前一次的ack,会不会出现拉20条消息,有一条丢了,这 ...
引用:某非著名程序 发表于 2021-01-31 09:14 服务端不会存储消息,如果客户端切换设备,或者同时有多个端如PC端、手机端,是不是意味着没有历史记录
引用:某非著名程序 发表于 2021-02-05 09:24 文中第5条优化2一般一次性拉取,主流的的移动端IM(比如微信、手Q等)通常都是以“优化方案2”为主。然后第 ...
引用:江明 发表于 2021-07-23 11:01 是否可以通过端上缓存最新的消息时间戳,拉取的时候带上时间戳向服务器请求,服务器返回>=时间戳的消息。 ...
引用:doublesouth 发表于 2023-06-08 19:49 关于“Step 2:服务器查看用户B的状态,发现B的状态为“offline”(即B当前不在线);” 当用户B在线,服 ...
引用:doublesouth 发表于 2023-06-09 12:42 如果每条消息在下发之前都存入离线消息库,是不是还得监听客户端ack,如果确认客户端收到消息了再从离线 ...
精华主题数超过100个。
连续任职达2年以上的合格正式版主
为论区做出突出贡献的开发者、版主等。
Copyright © 2014-2024 即时通讯网 - 即时通讯开发者社区 / 版本 V4.4
苏州网际时代信息科技有限公司 (苏ICP备16005070号-1)
Processed in 0.124998 second(s), 41 queries , Gzip On.