NIMSDK-AOS  10.9.50
V2NIMMessageAntispamConfig.java
浏览该文件的文档.
1 package com.netease.nimlib.sdk.v2.message.config;
2 
3 import java.io.Serializable;
4 
5 public class V2NIMMessageAntispamConfig implements Serializable {
6 
7  // 指定是否需要过安全通(对于已开通安全通的用户有效,默认消息都会走安全通,如果对单条消息设置 enable 为false,则此消息不会走安全通)。
8  // 该字段为true,以下字段(antispamBusinessId/antispamCustomMessage/antispamCheating/antispamExtension)才生效
9  private final boolean antispamEnabled;
10 
11  // 指定易盾业务id,而不使用云信后台配置的
12  // 安全通后台对接易盾
13  private final String antispamBusinessId;
14 
15  // 自定义消息中需要反垃圾的内容(仅当消息类型为自定义消息时有效)
16  // 自定义消息开发者自定义的反垃圾字段, content 必须是 json 格式,长度不超过 5000 字节,格式如下 { "type": 1, //1:文本,2:图片,3视频 "data": "" //文本内容or图片地址or视频地址 }
17  private final String antispamCustomMessage;
18 
19  // 易盾反作弊(辅助检测数据),json格式,限制长度1024
20  private final String antispamCheating;
21 
22  // 易盾反垃圾(增强检测数据),json格式,限制长度1024
23  private final String antispamExtension;
24 
25  private V2NIMMessageAntispamConfig() {
26  this(DEFAULT_ANTISPAM_ENABLED, null, null, null, null);
27  }
28 
29  private V2NIMMessageAntispamConfig(boolean antispamEnabled, String antispamBusinessId, String antispamCustomMessage, String antispamCheating, String antispamExtension) {
30  this.antispamEnabled = antispamEnabled;
31  this.antispamBusinessId = antispamBusinessId;
32  this.antispamCustomMessage = antispamCustomMessage;
33  this.antispamCheating = antispamCheating;
34  this.antispamExtension = antispamExtension;
35  }
36 
37  public boolean isAntispamEnabled() {
38  return antispamEnabled;
39  }
40 
41  public String getAntispamBusinessId() {
42  return antispamBusinessId;
43  }
44 
45  public String getAntispamCustomMessage() {
46  return antispamCustomMessage;
47  }
48 
49  public String getAntispamCheating() {
50  return antispamCheating;
51  }
52 
53  public String getAntispamExtension() {
54  return antispamExtension;
55  }
56 
57  @Override
58  public String toString() {
59  return "V2NIMMessageAntispamConfig{" +
60  "antispamEnabled=" + antispamEnabled +
61  ", antispamBusinessId='" + antispamBusinessId + '\'' +
62  ", antispamCustomMessage='" + antispamCustomMessage + '\'' +
63  ", antispamCheating='" + antispamCheating + '\'' +
64  ", antispamExtension='" + antispamExtension + '\'' +
65  '}';
66  }
67 
68  private final static boolean DEFAULT_ANTISPAM_ENABLED = true;
69 
70  public static final class V2NIMMessageAntispamConfigBuilder {
71  private boolean antispamEnabled = DEFAULT_ANTISPAM_ENABLED;
72  private String antispamBusinessId;
73  private String antispamCustomMessage;
74  private String antispamCheating;
75  private String antispamExtension;
76 
77  private V2NIMMessageAntispamConfigBuilder() {
78  }
79 
80  public static V2NIMMessageAntispamConfigBuilder builder() {
81  return new V2NIMMessageAntispamConfigBuilder();
82  }
83 
84  public V2NIMMessageAntispamConfigBuilder withAntispamEnabled(boolean antispamEnabled) {
85  this.antispamEnabled = antispamEnabled;
86  return this;
87  }
88 
89  public V2NIMMessageAntispamConfigBuilder withAntispamBusinessId(String antispamBusinessId) {
90  this.antispamBusinessId = antispamBusinessId;
91  return this;
92  }
93 
94  public V2NIMMessageAntispamConfigBuilder withAntispamCustomMessage(String antispamCustomMessage) {
95  this.antispamCustomMessage = antispamCustomMessage;
96  return this;
97  }
98 
99  public V2NIMMessageAntispamConfigBuilder withAntispamCheating(String antispamCheating) {
100  this.antispamCheating = antispamCheating;
101  return this;
102  }
103 
104  public V2NIMMessageAntispamConfigBuilder withAntispamExtension(String antispamExtension) {
105  this.antispamExtension = antispamExtension;
106  return this;
107  }
108 
109  public V2NIMMessageAntispamConfig build() {
110  return new V2NIMMessageAntispamConfig(antispamEnabled, antispamBusinessId, antispamCustomMessage, antispamCheating, antispamExtension);
111  }
112  }
113 }