设置群消息强制推送
更新时间: 2024/03/14 16:36:34
云信 NIM SDK 支持对于群消息的强制推送功能。
当发送方设置了群消息的强制推送,群消息接收者即使屏蔽了当前会话(如设置免打扰),仍能接收到该条推送。
通过消息体的指定成员推送选项字段 MemberPushOption
来实现。
MemberPushOption
接口说明:
参数 | 类型 | 说明 |
---|---|---|
ForcePush | Boolean | 是否强制推送(仅针对 ForcePushList 中的账户),true 为强制推送(默认),false 为不强制推送 |
ForcePushList | String | 需要强推的成员列表 如果填 null,表示强制推送给该会话的所有成员,不为 null 时,最多可传入 100 个用户账号 |
ForcePushContent | String | 强制推送的文案,最大长度 500 字符,如果设置为 nil,则使用消息本身的推送文案(pushContent ) |
- 对于
ForcePushList
中的用户,推送文案使用ForcePushContent
;对于不在ForcePushList
中的用户,推送文案使用pushContent
。 ForcePushList
中的账户的推送文案又分两种情况.- 当
ForcePush
为 true 时,推送文案中不会包含发送者前缀(nick),直接为ForcePushContent
。 - 当
ForcePush
为 false 时,推送文案中目前包含了发送者的前缀(nick),即为fromNick:ForcePushContent
。
- 当
示例代码如下:
// 该帐号为示例,请先注册
String account = "testAccount";
// 群聊才有强推消息
SessionTypeEnum sessionType = SessionTypeEnum.Team;
String text = "指定推送消息";
// 创建一个文本消息
IMMessage textMessage = MessageBuilder.createTextMessage(account, sessionType, text);
// 配置指定成员推送
MemberPushOption memberPushOption = new MemberPushOption();
// 开启强制推送
memberPushOption.setForcePush(true);
// 设置强推文案
memberPushOption.setForcePushContent(textMessage.getContent());
List<String> pushList = new ArrayList<>();
pushList.add("account1");
pushList.add("account2");
// 设置指定推送列表
memberPushOption.setForcePushList(pushList);
textMessage.setMemberPushOption(memberPushOption);
// 发送给对方
NIMClient.getService(MsgService.class).sendMessage(textMessage, false);
此文档是否对你有帮助?