圈组主要功能(本文已不再维护)

更新时间: 2023/07/21 06:54:54

本文已不再维护,请前往圈组订阅机制圈组APNs推送查看相关文档。

消息和订阅制

消息

在圈组的消息系统中,分为消息系统通知两种类型:

消息是频道级别的,即用户可以在某个频道内进行收发消息。

消息支持:

  • 文字、图片、视频、音频、地理位置等多种类型。
  • 撤回、删除和变更消息等操作。其中撤回和删除的权限由身份组控制,变更的权限目前仅消息发送者可以操作。

消息默认存离线,用户可以通过调用查询云端消息历史接口查询历史消息。此外,圈组服务器会维护每个用户在每个频道上的消息未读数(默认最大99+)和@消息未读数(默认最大99+)。

@消息未读数量的有效期默认为7天。

系统通知可以是频道级别,也可以服务器级别。

支持针对频道内的某些账号或者服务器内的某些账号单独发送系统通知。默认情况下,系统通知仅发给在线设备。如果系统通知是针对某些账号发送的,则还支持存离线,这样不在线的用户也可以在下次登录时获取这些系统通知。

对于存离线的系统通知,通知接收者可以变更通知的状态和内容,而不变更为已读状态,从而可以下次登录或者换设备登录时重新获取到离线通知。此外,系统通知分为内置的系统通知(如成员变动触发系统自动发送的系统通知)和自定义系统通知,两种类型的系统通知分别支持最多1个月内的1000条的离线通知。

订阅制

圈组收发消息/系统通知使用订阅机制,也就是说当用户登录到圈组服务器后,需要先订阅相关频道或者服务器,才能收到相关频道和服务器的消息/系统通知。对于一些小的频道/服务器(默认阈值是2000,可联系商务经理调整配置),即使不订阅,服务器也会主动下推。

此外,对于消息中的@消息,被@的账号(非@所有人),即使没有订阅也会收到消息;对于系统通知中针对某些账号发送的通知(区别于发送给频道内所有人或者服务器内所有人),即使没有订阅也会收到通知。

订阅分为4个类型:

  • 订阅某个频道的消息和系统通知,默认最多100个频道。
  • 订阅某个频道的消息未读数和系统通知,默认最多500个频道。
  • 订阅某个频道的消息未读状态和系统通知,默认最多1000个频道。
  • 订阅某个服务器的系统通知,默认最多2000个服务器。

这里特别说明一下订阅类型1、2、3的区别,三种类型的订阅对于系统通知效果是一致的,区别在于消息,类型1客户端会收到频道内每条消息的实时通知,类型2会收到频道内每条消息的摘要(如消息id、消息发送时间点),用于更新本地的未读计数,且在未读计数达到上限后(默认99)不再下发通知,类型3和类型2类似,区别在于未读数只要大于0就不再下发消息摘要通知。

用户在使用消息订阅系统时,可以选择自己关注的服务器/频道进行订阅,最优方案是订阅当前页面所在服务器/频道(订阅类型1),其他服务器/频道选择订阅类型2或者3,当用户切换页面到其他服务器和频道后,将新的服务器/频道设置为订阅类型1,并获取一次最近历史消息。

为了简化操作,用户可以选择订阅页面范围内的所有服务器/频道,当随着页面滑动不断更新订阅列表。

推送

圈组根据消息优先级和推送范围的大小确定消息推送与否和是否对消息发送进行频控,具体推送机制见下图。

新的圈组推送机制.png

成员管理

圈组成员管理主要有如下方式:

  • 创建服务器后用户可以选择邀请他人成为服务器成员。
  • 用户申请成为某个服务器的成员。
  • 具有踢除他人权限的用户可以将其他圈组服务器成员踢出服务器。
  • 用户加入服务器后如不想继续待在该服务器,可选择主动离开。离开后用户将不会收到该服务器下的消息和通知。
  • 如有相应权限,用户可修改自己或者他人的Server成员信息。

下行消息量

下行消息量为计费特征。下行消息包含:

  • 主动拉取的历史消息
  • 在线期间收到的消息
此文档是否对你有帮助?
有帮助
去反馈
  • 消息和订阅制
  • 消息
  • 订阅制
  • 推送
  • 成员管理
  • 下行消息量