社交朋友圈
很多人说,微信朋友圈是近年来最伟大的社交发明。微信取代人人网和微博,成为人们最重要的社交工具,这是毋庸置疑的。90后的社交软件大多都经历了QQ、空间、人人网、微博、微信的转变过程。人人网自产内容的匮乏、垃圾分享的盛行、定位的飘忽,注定了它的失败。微博是大V的平台,距离普通人太远。开放、单向的关系机制,让它更偏向于“社群”而非社交的属性。
朋友圈是微信4.0的主打功能,这个功能是微信与熟人互动的延伸,相比于微博,微信朋友圈最大的不同就是朋友圈是双向认证的,所以我们朋友圈里出现的新鲜事,可能都是来自我们熟知的朋友。
朋友圈最大的特点就是分组,它的独特之处在于你无法分辨好友发布的内容是公开的,还是部分可见的,甚至是只有你可见的。这就给了很多人伪装自己的机会,你可以随心所欲地向不同的群组展示你生活的不同方面,你的好友只能看到你一个版本的故事。有的人明明有女朋友,却天天在朋友圈发单身,明明在打游戏,却在朋友圈的父母群里发了一条通宵学习的状态。每个人都想把自己最好的一面展现给好友,出去旅游,拍各种45度自拍,然后他们还要对图片进行润色,从几十张中挑选2-3张上传到朋友圈,再配上一些励志语录和人生格言,图片和格言的结合,打造出高端的身份。
消息传递机制和数据结构
在解释下面的文字之前,我们先来统一一下下面表述的定义。
这里主要讨论的问题就不展开了,它是 和 my 的一个子集。消息机制比较复杂,涉及到所有好友,还夹杂着权限、发布时间的问题。因为是针对特定用户的,好友的首页不需要像所有好友一样进行排序,处理起来就简单多了。当用户查看好友的朋友圈首页时,系统会根据好友的权限筛选好友发布的所有帖子,然后呈现给用户。
我们来详细了解一下朋友圈的消息机制,朋友圈最基本的展示规则就是,朋友圈的所有内容都来自于你的好友。
在“谁能看”功能中,通过设置“标签”对用户进行分组,这些标签的分组和微信通讯录中的标签一致,公开和私密是两个比较宽泛的分组,既可以被所有好友看到,也可以不被看到。
分析两种常见的用户场景:
场景1:假如你之前建过群2,好友A不在1中,你设置状态只可见为1。然后你把A加到1中,这时候A能看到你的图片吗??
答案:A。他们看不到你的图片。哪些朋友能看到你的消息,是在你发图片的时候就决定了的,系统把这个状态写给有阅读权限的用户,当用户发完消息后再改变状态时,消息的阅读权限此时不会改变。这个过程如图所示,首屏一直出现的朋友圈更新小红点也验证了下图的逻辑。
这就涉及到发布者和浏览者的权限设置和过滤问题。发布者和浏览者都可以设置一个屏蔽列表,如果发布者设置权限只有A和B可以看这个帖子,那么这个帖子就写成了A-和B-。浏览者C设置“不看A的朋友圈”。这样一来,浏览者C的客户端就会根据存储的屏蔽列表过滤掉A的,或者C阅读的时候,服务器直接过滤掉A的。所以最后只有B能看到A的。
场景二:如果你发了一张图片,只有 1 个人可以看到,然后点击右上角的设置为私密照片,此时这张照片只有你自己可以看到,然后设置为公开照片,此时你的照片只有 1 个人可以看到。还是所有人都可以看到?
答:发布消息时,可以设置三种权限;发布后可以更改消息权限。部分可见/不可见和公开照片本质上是公开的照片。这里有一个有趣的逻辑。部分可见/不可见设置从私人变为公开后,照片仍然是部分可见/不可见的(它不是真正公开的照片)。
结合场景一和场景二,我们可以发现,当我们将消息权限设置为部分可见/不可见时,该权限之外的人将无论如何都看不到你的消息(无论你更改群组还是消息权限)。
场景一是常见的用户场景,用户的朋友圈在不断扩大,一个常见的例子是,用户之前每天都会发布自己以前工作的信息和状态,并设置了“同事”组可见。某用户将新同事添加为好友,并加入“同事”组,新同事想要知道他以前的状态,却看不到相关信息,这在逻辑上是不合理的。
所以当用户更改群组权限时,服务器应该能够更新相应的权限。然后调整受影响好友的权限,这更关乎平台的处理能力。此方法可以解决上述场景1的问题。或许是因为微信出于性能考虑没有这么做。
用户体验
说到这,我们来说说微信体验需要改进的地方。现在在看公众号文章、购物、玩游戏时,当好友发来消息,用户需要跳出当前页面,进入对面页面。但完成对话页面后,用户又回到了微信的对话列表页面,用户还是需要重新找到上一个页面。在端,输入“//”点击发送即可成功激活微信隐藏的多窗口切换功能。期待iOS端的改进和优化。
微信除了即时通讯和朋友圈,使用最多的功能就是微信群。微信群和QQ群一样,都是扩大社交的绝佳方式。微信群创建为零成本,这导致微信群泛滥,大部分用户的微信聊天页面前几行长期被微信群占据,而且微信群里的消息刷新很快,你很难找到真正对你有用的信息,尤其是每次上拉刷新聊天记录只能刷新10条。QQ群有一个类似的群助手,统一管理所有群,当前屏蔽的群只是取消了,当有消息来袭时,还是会显示在对话窗口顶部,你可以在对话列表页创建微信群助手,统一管理所有微信群。另外,作为一个有强迫症的人,消息上的小红点永远是我最头疼的,增加一键去红点功能虽然会降低点击量和KPI,但会提升用户体验,从这个角度来说还是值得的。
虽然很多功能可以改进,但会损失一定的用户体验,对于一个伟大的产品来说,善于做减法才是真正的伟大。