免打扰
设置会话的提醒状态来实现免打扰功能。可以设置单个会话的免打扰,和所有会话的免打扰。
提示
单个会话免打扰,可以屏蔽某个会话的通知提醒和推送。
所有会话免打扰。可以屏蔽某一个时间段免打扰,也可以设置全天免打扰。
单个会话免打扰¶
参数
类型
说明
DO_NOT_DISTURB(0)
int
会话免打扰状态
NOTIFY(1)
int
会话提醒状态
当会话状态为 DO_NOT_DISTURB 时,客户端将不会收到消息推送。您也可以根据此状态,调整收到在线消息时的处理逻辑,如屏蔽后台通知和提示音等。
设置会话提醒状态
参数说明:
参数
类型
必填
说明
conversationType
Conversation.ConversationType
是
会话类型
targetId
String
是
目标 Id。根据不同的 conversationType,可能是用户 Id、群组 Id
notificationStatus
Conversation.ConversationNotificationStatus
是
是否屏蔽
callback
ResultCallback
是
状态的回调
代码示例:
public void setConversationNotificationStatus(final Conversation.ConversationType conversationType, final String targetId, final Conversation.ConversationNotificationStatus notificationStatus, final ResultCallback callback)
获取会话提醒状态
参数说明:
参数
类型
必填
说明
conversationType
Conversation.ConversationType
是
会话类型
targetId
String
是
目标 Id。根据不同的 conversationType,可能是用户 Id、群组 Id
callback
ResultCallback
是
状态的回调
代码示例:
public void getConversationNotificationStatus(final Conversation.ConversationType conversationType, final String targetId, final ResultCallback callback)
注意事项 (所有会话列表模块都需要此前提条件)
会话提醒状态是保存在融云服务器的,在第一次登录应用时,先通过此方法到服务器同步一下会话提醒状态。
所有会话免打扰¶
通过此方法设置通知免打扰之后,在所设置的免打扰时间段内,如果应用处于离线状态(即和融云服务器处于断开连接的状态),将不会收到消息推送。
如果处于非离线状态,客户端是仍然可以收到消息的,此时的消息是否提醒逻辑由您自己实现。
设置通知免打扰时间段
参数说明:
参数
类型
必填
说明
startTime
String
是
起始时间 格式 HH:MM:SS
spanMinutes
int
是
设置的免打扰结束时间距离起始时间的间隔分钟数。
callback
OperationCallback
是
消息通知免打扰时间回调
代码示例:public void setNotificationQuietHours(final String startTime, final int spanMinutes, final OperationCallback callback)
提示
spanMinutes 是指您设置的免打扰结束时间距离起始时间的间隔。比如,您设置的起始时间是 00:00, 结束时间为 23:59,则 spanMinutes 为 23 * 60 + 59 = 1339 分钟。
取消通知免打扰
参数说明:
参数
类型
必填
说明
callback
OperationCallback
是
移除消息通知免打扰时间回调
代码示例:
public void removeNotificationQuietHours(final OperationCallback callback)