跳到主要内容

按会话设置免打扰

设置会话的消息免打扰状态

方法

即时通讯业务用户为指定会话或超级群设置免打扰级别,支持单聊、群聊、超级群会话。

changeConversationNotificationLevel(type: RCIMIWConversationType, targetId: string, channelId: string, level: RCIMIWPushNotificationLevel): Promise<number>;

参数说明

参数类型说明
conversationTypeRCIMIWConversationType会话类型。请注意以下限制:
  • 超级群会话类型:如在 2022.09.01 之前开通超级群业务,默认不支持为单个超级群会话所有消息设置免打扰级别(“所有消息”指所有频道中的消息和不属于任何频道的消息)。该接口仅设置指定超级群会话(targetId)中不属于任何频道的消息的免打扰状态级别。如需修改请提交工单。
  • 聊天室会话类型:不支持,因为聊天室消息默认不支持消息推送提醒。
targetIdstring会话 ID/超级群ID
channelIdstring超级群的会话频道 ID。
  • 如果传入频道 ID,则针对该指定频道设置消息免打扰级别。如果不指定频道 ID,则对所有超级群消息生效。
  • 注意:2022.09.01 之前开通超级群业务的客户,如果不指定频道 ID,则默认传 "" 空字符串,即仅针对指定超级群会话(targetId)中不属于任何频道的消息设置免打扰状态级别。如需修改请提交工单。
levelRCIMIWPushNotificationLevel免打扰级别,参考免打扰概述

返回值

返回值描述
Promise<number>当次接口操作状态码,并不代表最终操作结果,状态码详细信息

代码示例

engine.changeConversationNotificationLevel(
type,
targetId,
channelId,
level
)
.then((code: number) => {});

回调方法

  • setOnConversationNotificationLevelChangedListener
setOnConversationNotificationLevelChangedListener(listener?: (code: number, type: RCIMIWConversationType, targetId: string, channelId: string, level: RCIMIWPushNotificationLevel) => void): void;

参数说明

参数类型说明
codenumber接口回调的状态码,0 代表成功,非 0 代表出现异常
typeRCIMIWConversationType调用接口时传入的会话类型
targetIdstring调用接口时传入的会话ID
channelIdstring调用接口时传入的频道 ID
levelRCIMIWPushNotificationLevel调用接口时传入的免打扰级别,参考免打扰概述

代码示例

engine.setOnConversationNotificationLevelChangedListener(
(
code: number,
type: RCIMIWConversationType,
targetId: string,
channelId: string,
level: RCIMIWPushNotificationLevel
) => {}
);

获取会话的免打扰状态

查询当前用户为指定会话设置的免打扰级别

方法

loadConversationNotificationLevel(type: RCIMIWConversationType, targetId: string, channelId: string): Promise<number>;

参数说明

参数类型说明
conversationTypeRCIMIWConversationType会话类型。请注意以下限制:
  • 超级群会话类型:如在 2022.09.01 之前开通超级群业务,默认不支持为单个超级群会话所有消息设置免打扰级别(“所有消息”指所有频道中的消息和不属于任何频道的消息)。该接口仅设置指定超级群会话(targetId)中不属于任何频道的消息的免打扰状态级别。如需修改请提交工单。
  • 聊天室会话类型:不支持,因为聊天室消息默认不支持消息推送提醒。
targetIdstring会话 ID/超级群ID
channelIdstring超级群的会话频道 ID。
  • 如果传入频道 ID,则针对该指定频道设置消息免打扰级别。如果不指定频道 ID,则对所有超级群消息生效。
  • 注意:2022.09.01 之前开通超级群业务的客户,如果不指定频道 ID,则默认传 "" 空字符串,即仅针对指定超级群会话(targetId)中不属于任何频道的消息设置免打扰状态级别。如需修改请提交工单。

返回值

返回值描述
Promise<number>当次接口操作状态码,并不代表最终操作结果,状态码详细信息

代码示例

engine.loadConversationNotificationLevel(
type,
useTargetId,
useChannelId
)
.then((code: number) => {});

回调方法

  • onConversationNotificationLevelLoaded
setOnConversationNotificationLevelLoadedListener(listener?: (code: number, type: RCIMIWConversationType, targetId: string, channelId: string, level: RCIMIWPushNotificationLevel) => void): void;

参数说明

参数类型说明
codenumber接口回调的状态码,0 代表成功,非 0 代表出现异常
typeRCIMIWConversationType调用接口时传入的会话类型
targetIdstring调用接口时传入的会话ID
channelIdstring调用接口时传入的频道 ID
levelRCIMIWPushNotificationLevel调用接口时传入的免打扰级别,参考免打扰概述

代码示例

main.engine?.setOnConversationNotificationLevelLoadedListener(
(
code: number,
type: RCIMIWConversationType,
targetId: string,
channelId: string,
level: RCIMIWPushNotificationLevel
) => {}
);

获取免打扰状态列表

获取所有设置了消息免打扰的会话列表。

方法

loadBlockedConversations(conversationTypes: Array<RCIMIWConversationType>, channelId: string): Promise<number>;

参数说明

参数类型说明
conversationTypesArray<RCIMIWConversationType>会话类型数组, 可设置多个会话类型(不支持聊天室)。
channelIdstring频道 ID,暂不支持该参数。传 null 即可。

返回值

返回值描述
Promise<number>当次接口操作状态码,并不代表最终操作结果,状态码详细信息

代码示例

engine.loadBlockedConversations(
types,
channelId
)
.then((code: number) => {});

回调方法

  • setOnBlockedConversationsLoadedListener
setOnBlockedConversationsLoadedListener(listener?: (code: number, types: Array<RCIMIWConversationType>, channelId: string, conversations: Array<RCIMIWConversation>) => void): void;

参数说明

参数类型说明
codenumber接口回调的状态码,0 代表成功,非 0 代表出现异常
typesArray<[RCIMIWConversationType](https://www.rongcloud.cn/docs/api/react-native/imlib_v5/latest/enums/RCIMDefines.RCIMIWConversationType.html)>会话类型
channelIdstring调用接口时传入的频道 ID
conversationsArray<[RCIMIWConversation](https://www.rongcloud.cn/docs/api/react-native/imlib_v5/latest/interfaces/RCIMDefines.RCIMIWConversation.html)>免打扰的会话列表

代码示例

engine.setOnBlockedConversationsLoadedListener(
(
code: number,
types: Array<RCIMIWConversationType>,
channelId: string,
conversations: Array<RCIMIWConversation>
) => {}
);