NIMSDK-AOS 10.4.0-beta
载入中...
搜索中...
未找到
V2NIMMessageService.java
浏览该文件的文档.
1package com.netease.nimlib.sdk.v2.message;
2
3import com.netease.nimlib.sdk.v2.V2NIMFailureCallback;
4import com.netease.nimlib.sdk.v2.V2NIMProgressCallback;
5import com.netease.nimlib.sdk.v2.V2NIMSuccessCallback;
6import com.netease.nimlib.sdk.v2.message.config.V2NIMMessageQuickCommentPushConfig;
7import com.netease.nimlib.sdk.v2.message.option.V2NIMClearHistoryMessageOption;
8import com.netease.nimlib.sdk.v2.message.option.V2NIMCollectionOption;
9import com.netease.nimlib.sdk.v2.message.option.V2NIMMessageListOption;
10import com.netease.nimlib.sdk.v2.message.option.V2NIMThreadMessageListOption;
11import com.netease.nimlib.sdk.v2.message.params.V2NIMAddCollectionParams;
12import com.netease.nimlib.sdk.v2.message.params.V2NIMMessageRevokeParams;
13import com.netease.nimlib.sdk.v2.message.params.V2NIMMessageSearchParams;
14import com.netease.nimlib.sdk.v2.message.params.V2NIMModifyMessageParams;
15import com.netease.nimlib.sdk.v2.message.params.V2NIMSendMessageParams;
16import com.netease.nimlib.sdk.v2.message.params.V2NIMVoiceToTextParams;
17import com.netease.nimlib.sdk.v2.message.result.V2NIMModifyMessageResult;
18import com.netease.nimlib.sdk.v2.message.result.V2NIMSendMessageResult;
19import com.netease.nimlib.sdk.v2.message.result.V2NIMThreadMessageListResult;
20import java.util.List;
21import java.util.Map;
22import java.util.Set;
23
24public interface V2NIMMessageService {
25
26 /**
27 * 发送消息接口
28 * 主要运用于文件类消息,回调文件发送进度
29 *
30 * @param message 需要发送的消息体
31 * @param conversationId 会话 ID
32 * @param params 发送消息相关配置参数,可以配置如下参数,具体参见参数定义
33 * 消息相关参数配置
34 * 消息推送参数配置
35 * 消息反垃圾配置
36 * 抄送信息配置
37 * @param success 发送消息成功回调
38 * @param failure 发送消息失败回调
39 * @param progress 发送消息进度回调
40 */
42 String conversationId,
46 V2NIMProgressCallback progress);
47
48 /**
49 * 回复消息
50 *
51 * @param message 需要发送的消息体
52 * @param replyMessage 被回复的消息
53 * @param params 发送消息相关配置参数,可以配置如下参数,具体参见参数定义
54 * 消息相关参数配置
55 * 消息推送参数配置
56 * 消息反垃圾配置
57 * 抄送信息配置
58 * @param success 发送消息成功回调
59 * @param failure 发送消息失败回调
60 * @param progress 发送消息进度回调
61 */
67 V2NIMProgressCallback progress);
68
69 /**
70 * 撤回单条消息
71 * 如果被删除消息未发送成功, 则只删除本地消息
72 * 删除本地消息不会多端同步,删除云端会多端同步
73 *
74 * @param message 需要撤回的消息
75 * @param params 撤回消息相关参数
76 * @param success 发送消息成功回调
77 * @param failure 发送消息失败回调
78 */
80
81
82 /**
83 * 查询历史消息
84 * 分页接口,每次默认50条,可以根据参数组合查询各种类型
85 *
86 * @param option 查询消息配置选项
87 * @param success 查询成功回调
88 * @param failure 查询失败回调
89 */
90 void getMessageList(V2NIMMessageListOption option, V2NIMSuccessCallback<List<V2NIMMessage>> success, V2NIMFailureCallback failure);
91
92
93 /**
94 * 根据ID列表查询消息
95 * 只查询本地数据库
96 *
97 * @param messageClientIds 需要查询的消息客户端ID列表
98 * 若为空,或者数量为0,返回参数错误
99 * @param success 发送消息成功回调
100 * @param failure 发送消息失败回调
101 */
102 void getMessageListByIds(List<String> messageClientIds, V2NIMSuccessCallback<List<V2NIMMessage>> success, V2NIMFailureCallback failure);
103
104
105 /**
106 * 根据MessageRefer列表查询消息
107 * 先查询本地数据库, 不存在查询已有协议(23-2)
108 * 如果本地数据已经存在, 则直接返回成功
109 * 如果本地数据不存在或者不全, 则服务器查询缺失数据
110 * 如果服务器协议层失败, 则直接返回失败
111 * 如果服务器内容部分失败, 则返回成功列表数据
112 *
113 * @param messageRefers 需要查询的消息Refer列表
114 * 若为空,或者数量为0,返回参数错误
115 * @param success 发送消息成功回调
116 * @param failure 发送消息失败回调
117 */
118 void getMessageListByRefers(List<V2NIMMessageRefer> messageRefers, V2NIMSuccessCallback<List<V2NIMMessage>> success, V2NIMFailureCallback failure);
119
120
121 /**
122 * 删除单条消息
123 * 如果被删除消息未发送成功, 则只删除本地消息
124 * 删除本地消息不会多端同步,删除云端会多端同步
125 *
126 * @param message 需要删除的消息
127 * @param serverExtension 扩展字段, 会多端同步到其他的登录端
128 * @param onlyDeleteLocal 是否只删除本地消息
129 * true:只删除本地,本地会将该消息标记为删除, getMessageList会过滤该消息,界面不展示,卸载重装会再次显示
130 * false:同时删除云端, 删除后消息不能恢复
131 * @param success 发送消息成功回调
132 * @param failure 发送消息失败回调
133 */
134 void deleteMessage(V2NIMMessage message, String serverExtension, boolean onlyDeleteLocal, V2NIMSuccessCallback<Void> success, V2NIMFailureCallback failure);
135
136 /**
137 * 批量删除消息
138 * 如果被删除消息未发送成功, 则只删除本地消息
139 * 所有消息必须属于同一个会话
140 * 每次最多50条消息,超过50条返回参数错误
141 * 删除本地消息不会多端同步,删除云端会多端同步
142 * 不考虑部分删除失败的情况
143 *
144 * @param messages 需要删除的消息列表
145 * @param serverExtension 扩展字段, 会多端同步到其他的登录端
146 * @param onlyDeleteLocal 是否只删除本地消息
147 * true:只删除本地,本地会将该消息标记为删除, getMessageList会过滤该消息,界面不展示,卸载重装会再次显示
148 * false:同时删除云端, 删除后消息不能恢复
149 * @param success 发送消息成功回调
150 * @param failure 发送消息失败回调
151 */
152 void deleteMessages(List<V2NIMMessage> messages, String serverExtension, boolean onlyDeleteLocal, V2NIMSuccessCallback<Void> success, V2NIMFailureCallback failure);
153
154 /**
155 * 清空历史消息
156 * 同步删除本地消息,云端消息
157 * 会话不会被删除, 如果需要删除会话,请调用删除会话接口
158 *
159 * @param option 清空消息参数,清空参数不能为空 必填
160 * @param success 发送消息成功回调
161 * @param failure 发送消息失败回调
162 */
164
165 /**
166 * 更新消息本地扩展字段
167 *
168 * @param message 需要被更新的消息体
169 * @param localExtension 扩展字段
170 * @param success 发送消息成功回调
171 * @param failure 发送消息失败回调
172 */
174
175 /**
176 * 插入一条本地消息, 该消息不会发送
177 * 该消息不会多端同步,只是本端显示
178 * 插入成功后, SDK会抛出回调
179 * Web端不支持该接口
180 *
181 * @param message 需要插入的消息体
182 * @param conversationId 会话 ID
183 * @param senderId 消息发送者账号
184 * @param createTime 指定插入消息时间
185 * @param success 发送消息成功回调
186 * @param failure 发送消息失败回调
187 */
188 void insertMessageToLocal(V2NIMMessage message, String conversationId, String senderId, long createTime, V2NIMSuccessCallback<V2NIMMessage> success, V2NIMFailureCallback failure);
189
190 /**
191 * Pin一条消息
192 * Pin成功后,SDK会抛出回调
193 *
194 * @param message 需要被pin的消息体
195 * @param serverExtension 扩展字段
196 * @param success 发送消息成功回调
197 * @param failure 发送消息失败回调
198 */
199 void pinMessage(V2NIMMessage message, String serverExtension, V2NIMSuccessCallback<Void> success, V2NIMFailureCallback failure);
200
201 /**
202 * 取消一条Pin消息
203 *
204 * @param messageRefer 需要被unpin的消息引用
205 * @param serverExtension 扩展字段
206 * @param success 发送消息成功回调
207 * @param failure 发送消息失败回调
208 */
209 void unpinMessage(V2NIMMessageRefer messageRefer, String serverExtension, V2NIMSuccessCallback<Void> success, V2NIMFailureCallback failure);
210
211 /**
212 * 更新一条 Pin 消息
213 *
214 * @param message 需要被更新pin的消息体
215 * @param serverExtension 扩展字段
216 * @param success 发送消息成功回调
217 * @param failure 发送消息失败回调
218 */
219 void updatePinMessage(V2NIMMessage message, String serverExtension, V2NIMSuccessCallback<Void> success, V2NIMFailureCallback failure);
220
221 /**
222 * 获取 pin 消息列表
223 *
224 * @param conversationId  会话 ID
225 * @param success 发送消息成功回调
226 * @param failure 发送消息失败回调
227 */
228 void getPinnedMessageList(String conversationId, V2NIMSuccessCallback<List<V2NIMMessagePin>> success, V2NIMFailureCallback failure);
229
230 /**
231 * 添加快捷评论
232 *
233 * @param message 被快捷评论的消息
234 * @param index 快捷评论索引,可以自定义映射关系,例如
235 * 表情回复: 可以本地构造映射关系, 1:笑脸 2:大笑, 当前读取到对应的index后,界面展示可以替换对应的表情
236 * 还可以应用于其他场景, 文本快捷回复等
237 * 大于 0
238 * @param serverExtension 扩展字段, 最大8个字符
239 * @param pushConfig 快捷评论推送配置
240 * @param success 发送消息成功回调
241 * @param failure 发送消息失败回调
242 */
243 void addQuickComment(V2NIMMessage message, long index, String serverExtension, V2NIMMessageQuickCommentPushConfig pushConfig, V2NIMSuccessCallback<Void> success, V2NIMFailureCallback failure);
244
245 /**
246 * 移除快捷评论
247 *
248 * @param messageRefer 要移除快捷评论的消息引用
249 * @param index 快捷评论索引
250 * @param serverExtension 扩展字段, 最大8个字符
251 * @param success 发送消息成功回调
252 * @param failure 发送消息失败回调
253 */
254 void removeQuickComment(V2NIMMessageRefer messageRefer, long index, String serverExtension, V2NIMSuccessCallback<Void> success, V2NIMFailureCallback failure);
255
256 /**
257 * 获取快捷评论列表
258 *
259 * @param messages 需要查询快捷评论的消息列表
260 * 如果list为空, 或者size为0, 返回参数错误
261 * @param success 发送消息成功回调
262 * @param failure 发送消息失败回调
263 */
264 void getQuickCommentList(List<V2NIMMessage> messages, V2NIMSuccessCallback<Map<String, List<V2NIMMessageQuickComment>>> success, V2NIMFailureCallback failure);
265
266 /**
267 * 添加一个收藏
268 * 可以收藏消息, 也可以收藏其他自定义内容
269 * 后续可能会移动到另外单独服务中, 它与消息不绑定
270 *
271 * @param params 添加收藏相关参数
272 * @param success 发送消息成功回调
273 * @param failure 发送消息失败回调
274 */
276
277
278 /**
279 * 添加一个收藏
280 * 可以收藏消息, 也可以收藏其他自定义内容
281 * 后续可能会移动到另外单独服务中, 它与消息不绑定
282 *
283 * @param collections 需要移除的相关收藏
284 * @param success 发送消息成功回调
285 * @param failure 发送消息失败回调
286 */
287 void removeCollections(List<V2NIMCollection> collections, V2NIMSuccessCallback<Integer> success, V2NIMFailureCallback failure);
288
289
290 /**
291 * 更新收藏扩展字段
292 *
293 * @param collection 需要更新的收藏信息
294 * @param serverExtension
295 * 为空, 表示移除扩展字段
296 * 否则更新为新扩展字段
297 * @param success 发送消息成功回调
298 * @param failure 发送消息失败回调
299 */
301
302
303 /**
304 * 按条件分页获取收藏信息
305 *
306 * @param option 查询参数
307 * @param success 发送消息成功回调
308 * @param failure 发送消息失败回调
309 */
310 void getCollectionListByOption (V2NIMCollectionOption option, V2NIMSuccessCallback<List<V2NIMCollection>> success, V2NIMFailureCallback failure);
311
312
313 /**
314 * 发送消息已读回执
315 *
316 * @param message 点对点会话最近一条消息
317 * @param success 发送消息成功回调
318 * @param failure 发送消息失败回调
319 */
321
322
323 /**
324 * 查询点对点消息已读回执
325 *
326 * @param conversationId 会话ID
327 * @param success 发送消息成功回调
328 * @param failure 发送消息失败回调
329 */
331
332
333 /**
334 * 查询点对点消息是否对方已读
335 * 内部判断逻辑为: 消息时间小于对方已读回执时间都为true
336 *
337 * @param message 需要查询的消息
338 */
339 boolean isPeerRead(V2NIMMessage message);
340
341
342 /**
343 * 发送消息已读回执
344 * 所有消息必须属于同一个会话,否则返回 191001 使用姿势错误
345 *
346 * @param messages 需要发送已读回执的消息列表
347 * @param success 发送消息成功回调
348 * @param failure 发送消息失败回调
349 */
350 void sendTeamMessageReceipts(List<V2NIMMessage> messages, V2NIMSuccessCallback<Void> success, V2NIMFailureCallback failure);
351
352
353 /**
354 * 获取群消息已读回执状态
355 * 所有消息必须属于同一个会话,否则返回 191001 使用姿势错误
356 * 单次消息数量上限50
357 * 只返回存在且有效的消息的已读回执
358 *
359 * @param messages 需要查询已读回执状态的消息
360 * @param success 发送消息成功回调
361 * @param failure 发送消息失败回调
362 */
363 void getTeamMessageReceipts(List<V2NIMMessage> messages, V2NIMSuccessCallback<List<V2NIMTeamMessageReadReceipt>> success, V2NIMFailureCallback failure);
364
365
366 /**
367 * 获取群消息已读回执状态详情
368 *
369 * @param message 需要查询已读回执状态的消息
370 * @param memberAccountIds 查找指定的账号列表已读未读
371 * 为空表示查询全部
372 * 同时作用于已读未读账号列表和人数
373 * @param success 发送消息成功回调
374 * @param failure 发送消息失败回调
375 */
377
378
379 /**
380 * 语音转文字
381 *
382 * @param params 本地语音文件
383 * @param success 发送消息成功回调
384 * @param failure 发送消息失败回调
385 */
387
388 /**
389 * 取消文件类附件上传,只有文件类消息可以调用该接口
390 * 如果文件已经上传成功,则取消失败
391 * 如果取消成功, 则对应消息文件上传状态会变成V2NIMMessageAttachmentUploadState.V2NIM_MESSAGE_ATTACHMENT_UPLOAD_STATE_FAILED,同时消息会发送失败
392 *
393 * @param message 需要取消附件上传的消息体
394 * @param success 发送消息成功回调
395 * @param failure 发送消息失败回调
396 */
398
399 /**
400 * 搜索云端消息
401 *
402 * @param params 消息检索参数
403 * @param success 发送消息成功回调
404 * @param failure 发送消息失败回调
405 */
407
408 /**
409 * 查询thread聊天云端消息列表
410 * @param threadMessageListOption thread消息查询选项
411 * @param success 查询成功回调
412 * @param failure 查询失败回调
413 */
415
416 /**
417 * 查询thread聊天本地消息列表
418 * @param messageRefer 根消息引用
419 * @param success 查询成功回调
420 * @param failure 查询失败回调
421 */
423
424 /**
425 * 更新消息
426 * @param message 需要更新的消息
427 * @param params 更新参数
428 * @param success 成功回调
429 * @param failure 失败回调
430 */
432 /**
433 * 添加消息监听
434 *
435 * @param listener 消息监听回调
436 */
438
439 /**
440 * 移除消息监听
441 *
442 * @param listener 消息监听回调
443 */
445}
void sendTeamMessageReceipts(List< V2NIMMessage > messages, V2NIMSuccessCallback< Void > success, V2NIMFailureCallback failure)
发送消息已读回执 所有消息必须属于同一个会话,否则返回 191001 使用姿势错误
void clearHistoryMessage(V2NIMClearHistoryMessageOption option, V2NIMSuccessCallback< Void > success, V2NIMFailureCallback failure)
清空历史消息 同步删除本地消息,云端消息 会话不会被删除, 如果需要删除会话,请调用删除会话接口
void cancelMessageAttachmentUpload(V2NIMMessage message, V2NIMSuccessCallback< Void > success, V2NIMFailureCallback failure)
取消文件类附件上传,只有文件类消息可以调用该接口 如果文件已经上传成功,则取消失败 如果取消成功, 则对应消息文件上传状态会变成V2NIMMessageAttachmentUploadState....
void replyMessage(V2NIMMessage message, V2NIMMessage replyMessage, V2NIMSendMessageParams params, V2NIMSuccessCallback< V2NIMSendMessageResult > success, V2NIMFailureCallback failure, V2NIMProgressCallback progress)
回复消息
void removeMessageListener(V2NIMMessageListener listener)
移除消息监听
void insertMessageToLocal(V2NIMMessage message, String conversationId, String senderId, long createTime, V2NIMSuccessCallback< V2NIMMessage > success, V2NIMFailureCallback failure)
插入一条本地消息, 该消息不会发送 该消息不会多端同步,只是本端显示 插入成功后, SDK会抛出回调 Web端不支持该接口
void sendMessage(V2NIMMessage message, String conversationId, V2NIMSendMessageParams params, V2NIMSuccessCallback< V2NIMSendMessageResult > success, V2NIMFailureCallback failure, V2NIMProgressCallback progress)
发送消息接口 主要运用于文件类消息,回调文件发送进度
void pinMessage(V2NIMMessage message, String serverExtension, V2NIMSuccessCallback< Void > success, V2NIMFailureCallback failure)
Pin一条消息 Pin成功后,SDK会抛出回调
void getPinnedMessageList(String conversationId, V2NIMSuccessCallback< List< V2NIMMessagePin > > success, V2NIMFailureCallback failure)
获取 pin 消息列表
void getP2PMessageReceipt(String conversationId, V2NIMSuccessCallback< V2NIMP2PMessageReadReceipt > success, V2NIMFailureCallback failure)
查询点对点消息已读回执
void getMessageList(V2NIMMessageListOption option, V2NIMSuccessCallback< List< V2NIMMessage > > success, V2NIMFailureCallback failure)
查询历史消息 分页接口,每次默认50条,可以根据参数组合查询各种类型
void updatePinMessage(V2NIMMessage message, String serverExtension, V2NIMSuccessCallback< Void > success, V2NIMFailureCallback failure)
更新一条 Pin 消息
boolean isPeerRead(V2NIMMessage message)
查询点对点消息是否对方已读 内部判断逻辑为: 消息时间小于对方已读回执时间都为true
void revokeMessage(V2NIMMessage message, V2NIMMessageRevokeParams params, V2NIMSuccessCallback< Void > success, V2NIMFailureCallback failure)
撤回单条消息 如果被删除消息未发送成功, 则只删除本地消息 删除本地消息不会多端同步,删除云端会多端同步
void updateCollectionExtension(V2NIMCollection collection, String serverExtension, V2NIMSuccessCallback< V2NIMCollection > success, V2NIMFailureCallback failure)
更新收藏扩展字段
void updateMessageLocalExtension(V2NIMMessage message, String localExtension, V2NIMSuccessCallback< V2NIMMessage > success, V2NIMFailureCallback failure)
更新消息本地扩展字段
void deleteMessage(V2NIMMessage message, String serverExtension, boolean onlyDeleteLocal, V2NIMSuccessCallback< Void > success, V2NIMFailureCallback failure)
删除单条消息 如果被删除消息未发送成功, 则只删除本地消息 删除本地消息不会多端同步,删除云端会多端同步
void getTeamMessageReceipts(List< V2NIMMessage > messages, V2NIMSuccessCallback< List< V2NIMTeamMessageReadReceipt > > success, V2NIMFailureCallback failure)
获取群消息已读回执状态 所有消息必须属于同一个会话,否则返回 191001 使用姿势错误 单次消息数量上限50 只返回存在且有效的消息的已读回执
void addQuickComment(V2NIMMessage message, long index, String serverExtension, V2NIMMessageQuickCommentPushConfig pushConfig, V2NIMSuccessCallback< Void > success, V2NIMFailureCallback failure)
添加快捷评论
void searchCloudMessages(V2NIMMessageSearchParams params, V2NIMSuccessCallback< List< V2NIMMessage > > success, V2NIMFailureCallback failure)
搜索云端消息
void addCollection(V2NIMAddCollectionParams params, V2NIMSuccessCallback< V2NIMCollection > success, V2NIMFailureCallback failure)
添加一个收藏 可以收藏消息, 也可以收藏其他自定义内容 后续可能会移动到另外单独服务中, 它与消息不绑定
void removeQuickComment(V2NIMMessageRefer messageRefer, long index, String serverExtension, V2NIMSuccessCallback< Void > success, V2NIMFailureCallback failure)
移除快捷评论
void getLocalThreadMessageList(V2NIMMessageRefer messageRefer, V2NIMSuccessCallback< V2NIMThreadMessageListResult > success, V2NIMFailureCallback failure)
查询thread聊天本地消息列表
void getMessageListByRefers(List< V2NIMMessageRefer > messageRefers, V2NIMSuccessCallback< List< V2NIMMessage > > success, V2NIMFailureCallback failure)
根据MessageRefer列表查询消息 先查询本地数据库, 不存在查询已有协议(23-2) 如果本地数据已经存在, 则直接返回成功 如果本地数据不存在或者不全, 则服务器查询缺失数据 如果服务器协议层...
void getMessageListByIds(List< String > messageClientIds, V2NIMSuccessCallback< List< V2NIMMessage > > success, V2NIMFailureCallback failure)
根据ID列表查询消息 只查询本地数据库
void sendP2PMessageReceipt(V2NIMMessage message, V2NIMSuccessCallback< Void > success, V2NIMFailureCallback failure)
发送消息已读回执
void unpinMessage(V2NIMMessageRefer messageRefer, String serverExtension, V2NIMSuccessCallback< Void > success, V2NIMFailureCallback failure)
取消一条Pin消息
void getCollectionListByOption(V2NIMCollectionOption option, V2NIMSuccessCallback< List< V2NIMCollection > > success, V2NIMFailureCallback failure)
按条件分页获取收藏信息
void getQuickCommentList(List< V2NIMMessage > messages, V2NIMSuccessCallback< Map< String, List< V2NIMMessageQuickComment > > > success, V2NIMFailureCallback failure)
获取快捷评论列表
void removeCollections(List< V2NIMCollection > collections, V2NIMSuccessCallback< Integer > success, V2NIMFailureCallback failure)
添加一个收藏 可以收藏消息, 也可以收藏其他自定义内容 后续可能会移动到另外单独服务中, 它与消息不绑定
void deleteMessages(List< V2NIMMessage > messages, String serverExtension, boolean onlyDeleteLocal, V2NIMSuccessCallback< Void > success, V2NIMFailureCallback failure)
批量删除消息 如果被删除消息未发送成功, 则只删除本地消息 所有消息必须属于同一个会话 每次最多50条消息,超过50条返回参数错误 删除本地消息不会多端同步,删除云端会多端同步 不考虑部分删除失败的情况
void voiceToText(V2NIMVoiceToTextParams params, V2NIMSuccessCallback< String > success, V2NIMFailureCallback failure)
语音转文字
void modifyMessage(V2NIMMessage message, V2NIMModifyMessageParams params, V2NIMSuccessCallback< V2NIMModifyMessageResult > success, V2NIMFailureCallback failure)
更新消息
void getThreadMessageList(V2NIMThreadMessageListOption threadMessageListOption, V2NIMSuccessCallback< V2NIMThreadMessageListResult > success, V2NIMFailureCallback failure)
查询thread聊天云端消息列表
void addMessageListener(V2NIMMessageListener listener)
添加消息监听
void getTeamMessageReceiptDetail(V2NIMMessage message, Set< String > memberAccountIds, V2NIMSuccessCallback< V2NIMTeamMessageReadReceiptDetail > success, V2NIMFailureCallback failure)
获取群消息已读回执状态详情