关于IM软件的“已读”功能
其实是老梗了。
市面上常用的IM软件,大概也就只有wechat没有已读功能,其他的常用IM软件,比如tg和signal,都会默认发送已读标记。
这一点上我是赞同微信的,虽然我在其他方面并不喜欢它(但是我更不喜欢腾讯的另一款并不流行的IM)。
因为如果发送方真的有必要知道接收方是否阅读了消息,那么ta可以选择写明“收到请回复”,而接收方也可以通过回复来表明自己收到了消息。也就是说,已读是一个没有必要的功能。
不过有的时候,尤其是群聊中,已读还是有用的,因为你可能不想对着满屏幕的“收到”去寻找真正有用的消息。
那么IM软件应不应该有已读功能?
真的细说起来,即使接收方打开了消息,软件依然无法判断用户是否真的阅读了,阅读完,以及准确理解了消息。或者一个罕见的例子,用户查看消息的瞬间屏幕突然坏了,而软件对此并不知情,自动发送了标记,那么这条消息用户实际上是没有阅读的,所以IM软件至少不应该默认自动发送已读标记。
其实,这个问题在IM的老前辈,电子邮件系统中已经有了很好的答案。
熟悉电子邮件的人应该听说过“已读回执”功能,发送方可以要求接收方发送回执,而接收方可以选择是否,以及何时发送回执。
其实在IM中,已读回执的实现也很简单。
首先,发送消息时,添加一个“请求已读回执”的选项,此时所发出的消息的会显示“待接收回执”提示。
接收到请求已读回执的消息时,在消息的一侧添加“待发送回执”提示,接收方可以在完成阅读后手动点击标记来发送或拒绝回执。
如果拒绝回执,发送方不会收到任何提示,发送方的消息将永久处于“待回执”状态,而接收方的消息将退回普通状态。
如果发送回执,发送方和接收方的消息都将变为“已回执”状态,消息的一侧将出现已读提示。如果发送方未注意到回执,软件可以通过某些方式提醒用户回执状态发生了变化。
这样的好处,一是默认不请求已读回执,而是只有在需要时请求已读回执,避免了滥用和网络资源的浪费;二是接收方可以拒绝回执,也可以延迟发送回执,以保证只有接收方认为可以发送回执时才发送;三是接收方可以选择只对部分的消息发送回执,以表示“其余消息尚未阅读”的状态。
另外,软件也可以允许对未请求回执的消息发送回执,这也可以是一项有趣和有用的功能。
以上。