1 package com.netease.nimlib.sdk.qchat.param;
3 import androidx.annotation.NonNull;
12 import java.util.List;
20 private static final String TAG =
"QChatSendMessageParam";
25 private final Long serverId;
30 private final Long channelId;
43 private String attach;
47 private Map<String, Object> extension;
51 private Map<String, Object> pushPayload;
55 private String pushContent;
59 private List<String> mentionedAccidList;
63 private List<Long> mentionedRoleIdList;
67 private boolean mentionedAll =
false;
71 private boolean historyEnable =
true;
75 private boolean pushEnable =
true;
79 private boolean needBadge =
true;
83 private boolean needPushNick =
true;
95 private final String uuid;
100 private Integer serverStatus;
113 private Integer subType;
122 this.serverId = serverId;
123 this.channelId = channelId;
126 this.uuid = StringUtil.get32UUID();
142 this.attach = attach;
150 this.attach = attachment.
toJson(
false);
158 this.extension = extension;
166 this.pushPayload = pushPayload;
174 this.pushContent = pushContent;
182 this.mentionedAccidList = mentionedAccidList;
190 this.mentionedRoleIdList = mentionedRoleIdList;
198 this.mentionedAll = mentionedAll;
206 this.historyEnable = historyEnable;
214 this.pushEnable = pushEnable;
222 this.needBadge = needBadge;
230 this.needPushNick = needPushNick;
305 return mentionedAccidList;
313 return mentionedRoleIdList;
329 return historyEnable;
376 this.serverStatus = serverStatus;
384 return antiSpamOption;
392 this.antiSpamOption = antiSpamOption;
408 isRouteEnable = routeEnable;
444 this.subType = subType;
447 private QChatMessageImpl qChatMessage;
454 if (qChatMessage == null) {
455 qChatMessage = QChatMessageImpl.fromParam(
this);
456 qChatMessage.setFromAccount(QChatAuthCache.getInstance().getCurrentAccount());
460 QChatMessageImpl.fromParam(
this,qChatMessage);
boolean isRouteEnable()
是否需要抄送,默认true
void setPushEnable(boolean pushEnable)
设置是否需要推送
List< Long > getMentionedRoleIdList()
设置@身份组的RoleId列表
boolean isNeedBadge()
是否需要消息计数,默认true
Map< String, Object > getPushPayload()
获取推送payload
String getEnv()
获取环境变量 用户可以根据不同的env配置不同的抄送和回调地址
void setBody(String body)
设置消息内容
Integer getServerStatus()
获取消息服务器状态
void setSubType(Integer subType)
设置消息子类型
Long getChannelId()
获取频道id
boolean isPushEnable()
是否需要推送,默认true
void setPushPayload(Map< String, Object > pushPayload)
设置推送payload
void setEnv(String env)
设置环境变量 用户可以根据不同的env配置不同的抄送和回调地址
boolean isMentionedAll()
是否@所有人
void setAttachment(MsgAttachment attachment)
设置消息附件
void setNeedPushNick(boolean needPushNick)
设置是否需要推送昵称
void setAttach(String attach)
设置消息附件,通过MsgAttachment::toJson(false)获得
Long getServerId()
获取服务器id
Integer getSubType()
获取消息子类型
void setDirect(MsgDirectionEnum direct)
设置消息方向
List< String > getMentionedAccidList()
获取@账号列表
void setMentionedRoleIdList(List< Long > mentionedRoleIdList)
设置@身份组的RoleId列表
synchronized QChatMessage toQChatMessage()
将QChatSendMessageParam转换成QChatMessage
Map< String, Object > getExtension()
获取扩展字段
MsgTypeEnum getType()
获取消息类型
QChatSendMessageParam(long serverId, long channelId,@NonNull MsgTypeEnum type)
void setServerStatus(Integer serverStatus)
如果设置状态,状态只能设置成自定义的状态(status>= 10000),否则提示414参数错误
void setRouteEnable(boolean routeEnable)
设置是否需要抄送
QChatMessageAntiSpamOption getAntiSpamOption()
获取消息反垃圾配置选项
String getPushContent()
获取推送文案
boolean isNeedPushNick()
是否需要推送昵称,默认true
void setAntiSpamOption(QChatMessageAntiSpamOption antiSpamOption)
设置消息反垃圾配置选项
void setExtension(Map< String, Object > extension)
设置扩展字段
String toJson(boolean send)
将消息附件序列化为字符串,存储到消息数据库或发送到服务器。
void setHistoryEnable(boolean historyEnable)
设置是否消息是否存储云端历史
String getAttach()
获取消息附件字符串
void setNeedBadge(boolean needBadge)
设置是否需要消息计数
boolean isHistoryEnable()
是否消息在云端存储,默认true
void setPushContent(String pushContent)
设置推送文案
void setMentionedAccidList(List< String > mentionedAccidList)
设置@账号列表
void setMentionedAll(boolean mentionedAll)
设置是否@所有人