未读消息提示是基础的IM功能,imo班聊的跨平台未读消息提示也是一直以来用户反馈较多的问题。因此,我调研了国内代表性IM产品在未读消息提示上的现状,并提出优化需求。
一、PC端查看消息后,APP端的消息提示(以下简称“小红点”)的消失情况
1、 场景分析
PC端查看过的消息,APP端不应再提示、小红点应消失,这样可以避免给用户带来不必要的打扰。
并且,在PC端只要打开新聊天窗口或点击已打开的该聊天窗口,就应认为用户已查看消息。
2、 竞品调研与分析
QQ、微信、企业微信、钉钉、班聊,在PC端查看消息后,APP端小红点均消失。
其中,前4者只要打开新聊天窗口或点击已打开的该聊天窗口,APP端小红点就会消失。
而班聊在打开新聊天窗口或点击已打开的该聊天窗口后,APP端小红点并不会立即消失;而需要用户关闭该聊天窗口或切到别的窗口,APP端小红点才会消失。
3、 优化方案
如果imo班聊直接将消息已读的判断逻辑改为“只要用户打开新聊天窗口或点击已打开的该聊天窗口,APP端小红点就消失”,那么可能会带来新的问题:在群聊场景下,如果群聊的参与人数很多,可能会出现每秒钟发出数百条消息的情况,此时如果用户的鼠标停留在PC端的聊天窗口,PC客户端将以每秒数百次的频率通知服务器消息已读,服务器可能会不堪重负。
因此,修改判断逻辑的同时,需要添加一个判断条件,例如:如果1秒钟内向服务器发送过消息已读的通知,则不再重复发送。这样既能解决消息已读触发时机不对的问题,又能避免服务器过载。
二、APP端查看消息后,PC端消息提示(表现形式为小红点或聊天窗口Tab闪烁,以下统称“小红点”)的消失情况
1、 场景分析
APP查看过的消息,PC端不应再提示、小红点/聊天窗口Tab闪烁应消失,这样可以避免给用户带来不必要的打扰。
在APP端消息已查看的触发方式上,由于班聊面向的是办公场景,为了不错过重要消息,不建议支持“标为已读”。
2、 竞品调研与分析
QQ、微信、企业微信、钉钉,在APP端查看消息后,PC端小红点消失;
班聊,在APP端查看消息后,PC端聊天窗口Tab闪烁不消失。
面向生活场景的QQ和微信均支持“标为已读”,并触发APP端消息已查看;而面向工作场景的企业微信、钉钉、班聊不支持“标为已读”。
3、 优化方案
经排查,imo班聊在APP查看消息后PC端小红点不消失的原因是:用户在APP查看消息后,APP没有及时通知服务器消息已读。这属于一个bug,需要安排修复。
同时,考虑到服务器过载的可能性,APP对服务器的通知也需要添加一个判断条件,例如:如果1秒钟内向服务器发送过消息已读的通知,则不再重复发送。