• imo班聊未读消息提示优化


    未读消息提示是基础的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秒钟内向服务器发送过消息已读的通知,则不再重复发送。

  • 相关阅读:
    C#yield return用法示例
    C#多线程示例
    AspNetCore.Authentication
    C#委托与事件
    按值和按引用传递参数
    基于iView的无限级菜单
    Sortable By Attribute
    未能加载文件或程序集“BLL”或它的某一个依赖项。生成此程序集的运行时比当前加载的运行时新,无法加载此程序集。
    有关导出Excel特殊字符的问题
    openFileDialog的使用
  • 原文地址:https://www.cnblogs.com/liuzengming/p/5719759.html
Copyright © 2020-2023  润新知