默认
发表评论 12
想开发IM:买成品怕坑?租第3方怕贵?找开源自已撸?尽量别走弯路了... 找站长给点建议
求教IM聊天好友功能-黑名单实现疑问
阅读(55340) | 评论(12 收藏 淘帖
不想接收被拉黑用户的聊天信息时,IMSDK server端有没有提供的接口或有变相的实现方法。

即时通讯网 - 即时通讯开发者社区! 来源: - 即时通讯开发者社区!

上一篇:IM群聊消息究竟是存1份(即扩散读)还是存多份(即扩散写)?下一篇:IM后端开发,每天推荐20个同城异性好友的功能怎么做?
推荐方案
评论 12
实现黑名单有两个方法:
1)直接在客户端判断,如果收到黑名单的消息,直接抛弃,什么也不做;
2)在服务端判断,这个就需要综合考虑服务端的性能了,无论如果你都需要加一层判断,性能上肯定是有消耗。

建议你研究一下qq的拉黑机制,qq就基本上是拉黑你后,你并不知道对方把你拉黑,但对方一定是收不到你的消息,而且一段时间后你这边的好友列表里,对方会消失等等。既然做到了悄无声息,功能上又不特别突兀
引用:JackJiang 发表于 2018-05-29 11:53
实现黑名单有两个方法:
1)直接在客户端判断,如果收到黑名单的消息,直接抛弃,什么也不做;
2)在服务 ...

那咱们的服务端里有处理的回调接口没,在发送的时候进行一次验证,现在给的回调接口里是客户端成功接收到的回调,那已经失去作用了。
客户端也能实现,要实现双方都不能进行消息的发送没有实时性
引用:卍漂流太平洋卍 发表于 2018-05-29 12:10
那咱们的服务端里有处理的回调接口没,在发送的时候进行一次验证,现在给的回调接口里是客户端成功接收到 ...

这种业务层面的逻辑,做到sdk里不合适,你可以根据你的需求,自已扩展一下sdk代码
1)直接在客户端判断,如果收到黑名单的消息,直接抛弃,什么也不做;

针对这个问题我有一个疑惑
1:我拉黑对方,收到黑名单的消息,直接抛弃这个没毛病,但是黑名单发送消息,也应该提示发送消息失败吧?这个该如何实现,比如拉黑对方就发送透传消息给对方,然后对方发送消息过来,就可以判断已经被拉黑
还有消息免打扰Rainbowchat是否有实现嘛,我发送消息不接收对方的提醒和推送通知
引用:ckkkkkkk 发表于 2021-08-11 13:59
还有消息免打扰Rainbowchat是否有实现嘛,我发送消息不接收对方的提醒和推送通知

有一个全局的免打扰,你也可以针对个人加一个针对个人免打扰,这个免打扰开关保存在本地就可以了,一般都是这么做的
引用:ckkkkkkk 发表于 2021-08-11 13:57
1)直接在客户端判断,如果收到黑名单的消息,直接抛弃,什么也不做;

针对这个问题我有一个疑惑

如果要实现微信这种,发一条消息还能知道是不是被对方拉黑,这个就得要加指令了,最简单的方法就是让对方推一条指令过来,如果要在服务端做的话,服务端的每条消息都要加这个拉黑名单判断,会全局影响性能,不划算

做im其实跟做传统的电商系统这些有区别,有时候个别的消息因为网络延迟等不能精准判断,是可以接受的,必竟聊天消息多数都相当于日常说话,一两句话没听到,再说一遍就好了。是可以允许万有一失的,腾讯一直都有这个技术理念
引用:JackJiang 发表于 2021-08-11 17:23
有一个全局的免打扰,你也可以针对个人加一个针对个人免打扰,这个免打扰开关保存在本地就可以了,一般都 ...

全局免打扰的API方法是啥没有找到,针对个人添加免打扰是类似全局免打扰去实现嘛??
引用:ckkkkkkk 发表于 2021-08-11 17:45
全局免打扰的API方法是啥没有找到,针对个人添加免打扰是类似全局免打扰去实现嘛??

在“更多”界面里,去看一下那个免打扰的按钮事件是怎么处理的就明白了
引用:JackJiang 发表于 2021-08-11 17:53
在“更多”界面里,去看一下那个免打扰的按钮事件是怎么处理的就明白了

好的,谢谢,我去看看
引用:JackJiang 发表于 2021-08-11 17:24
如果要实现微信这种,发一条消息还能知道是不是被对方拉黑,这个就得要加指令了,最简单的方法就是让对方 ...

要实现微信这种,发一条消息还能知道是不是被对方拉黑,这个就得要加指令了,最简单的方法就是让对方推一条指令过来, 这个指令怎么实现呢,比如说类似透传消息,携带扩展字段?
引用:ckkkkkkk 发表于 2021-08-12 19:47
要实现微信这种,发一条消息还能知道是不是被对方拉黑,这个就得要加指令了,最简单的方法就是让对方推一 ...

比如聊天消息有很多类型:文本消息、图片消息、短视频消息。。。。 你可以照葫芦画瓢,加一个比如:“被拉黑消息反馈”的类型
打赏楼主 ×
使用微信打赏! 使用支付宝打赏!

返回顶部