会话
更新时间: 2024/04/18 18:10:59
云信 IM 支持用户会话管理功能,包括创建、更新、删除会话等基础操作,以及置顶会话等进阶操作。
如何实现会话相关功能请参考开发文档会话管理。本文介绍 NetEase IM SDK(以下简称 NIM SDK)会话相关 API。
支持平台
Android | iOS | macOS/Windows | Web/uni-app/小程序 | Harmony |
---|---|---|---|---|
✓ | ✓ | ✓ | ✓ | ✓ |
API 概览
会话监听
API | 描述 | 起始版本 |
---|---|---|
addConversationListener | 注册会话相关监听器 | v10.2.0 |
removeConversationListener | 移除会话相关监听器 | v10.2.0 |
API | 描述 | 起始版本 |
---|---|---|
on("EventName") | 注册会话相关监听 | v10.2.0(对应 Harmony v0.5.0) |
off("EventName") | 取消注册会话相关监听 | v10.2.0(对应 Harmony v0.5.0) |
会话操作
API | 描述 | 起始版本 |
---|---|---|
createConversation | 创建一条空会话 | v10.2.0(对应 Harmony v0.5.0) |
deleteConversation | 删除一条会话 | v10.2.0(对应 Harmony v0.5.0) |
deleteConversationListByIds | 批量删除会话列表 | v10.2.0(对应 Harmony v0.5.0) |
getConversation | 获取单条会话 | v10.2.0(对应 Harmony v0.5.0) |
getConversationList | 获取会话列表 | v10.2.0(对应 Harmony v0.5.0) |
getConversationListByOption | 获取指定会话列表 | v10.2.0(对应 Harmony v0.5.0) |
getConversationListByIds | 根据会话 ID 批量获取会话列表 | v10.2.0(对应 Harmony v0.5.0) |
updateConversation | 更新会话服务端扩展字段 | v10.2.0(对应 Harmony v0.5.0) |
updateConversationLocalExtension | 更新会话本地扩展字段 | v10.2.0(对应 Harmony v0.5.0) |
stickTopConversation | 置顶会话 | v10.2.0(对应 Harmony v0.5.0) |
会话未读数
API | 描述 | 起始版本 |
---|---|---|
getTotalUnreadCount | 获取全部会话的消息总未读数 | v10.2.0(对应 Harmony v0.5.0) |
getUnreadCountByIds | 获取指定会话列表的消息总未读数 | v10.2.0(对应 Harmony v0.5.0) |
getUnreadCountByFilter | 根据过滤参数获取相应的消息未读数 | v10.2.0(对应 Harmony v0.5.0) |
clearTotalUnreadCount | 清空所有会话总的未读数 | v10.2.0(对应 Harmony v0.5.0) |
clearUnreadCountByIds | 清空指定会话列表的消息总未读数 | v10.2.0(对应 Harmony v0.5.0) |
clearUnreadCountByFilter | 清除过滤后的会话消息未读 | v10.2.0(对应 Harmony v0.5.0) |
subscribeUnreadCountByFilter | 订阅过滤后的会话未读数变化 | v10.2.0(对应 Harmony v0.5.0) |
unsubscribeUnreadCountByFilter | 取消订阅过滤后的会话未读数变化 | v10.2.0(对应 Harmony v0.5.0) |
接口类
V2NIMConversationService
类提供创建、删除、更新、获取会话,会话未读数、置顶会话、注册会话监听等接口。
addConversationListener
接口描述
注册会话监听器。
注册成功后,当事件发生时,SDK 会返回对应的回调。
-
建议在初始化后调用该方法。
-
全局只需注册一次。
参数说明
javavoid addConversationListener(@NonNull V2NIMConversationListener listener);
参数名称 | 类型 | 是否必填 | 默认值 | 描述 |
---|---|---|---|---|
listener |
V2NIMConversationListener |
是 | - | 会话相关监听器 |
objective-c- (void)addConversationListener:(id<V2NIMConversationListener>)listener;
参数名称 | 类型 | 是否必填 | 默认值 | 描述 |
---|---|---|---|---|
listener |
V2NIMConversationListener |
是 | - | 会话相关监听器 |
cppvirtual void addConversationListener(V2NIMConversationListener listener) = 0;
参数名称 | 类型 | 是否必填 | 默认值 | 描述 |
---|---|---|---|---|
listener |
V2NIMConversationListener |
是 | - | 会话相关监听器 |
示例代码
javaNIMClient.getV2NIMConversationService().addConversationListener(new V2NIMConversationListener() {
@Override
public void onSyncStarted() {
// Sync started
}
@Override
public void onSyncFinished() {
// Sync finished
}
@Override
public void onSyncFailed(V2NIMError error) {
// Sync failed
}
@Override
public void onConversationCreated(V2NIMConversation conversation) {
// Conversation created
}
@Override
public void onConversationDeleted(List<String> conversationIds) {
// Conversations deleted
}
@Override
public void onConversationChanged(List<V2NIMConversation> conversationList) {
// Conversations changed
}
@Override
public void onTotalUnreadChanged(int unreadCount) {
// Total unread count changed
}
@Override
public void onUnreadChangedByFilter(V2NIMConversationFilter filter, int unreadCount) {
// Filter unread count changed
}
};
NIMClient.getService(V2NIMConversationService.class).addConversationListener(listener);
objective-c@interface V2ConversationServiceSample : NSObject <V2NIMConversationListener>
@end
@implementation V2ConversationServiceSample
- (void)onSyncStarted
{
// Sync started
}
- (void)onSyncFinished
{
// Sync finished
}
- (void)onSyncFailed:(V2NIMError *)error
{
// Sync failed
}
- (void)onConversationCreated:(V2NIMConversation *)conversation
{
// Conversation created
}
- (void)onConversationDeleted:(NSArray<NSString *> *)conversationIds
{
// Conversations deleted
}
- (void)onConversationChanged:(NSArray<V2NIMConversation *> *)conversations
{
// Conversations changed
}
- (void)onTotalUnreadCountChanged:(NSInteger)unreadCount
{
// Total unread count changed
}
- (void)onUnreadCountChangedByFilter:(V2NIMConversationFilter *)filter
unreadCount:(NSInteger)unreadCount
{
// Filter unread count changed
}
- (void)addConversationListener
{
[NIMSDK.sharedSDK.v2ConversationService addConversationListener:self];
}
@end
cppV2NIMConversationListener listener;
listener.onSyncStarted = []() {
// handle conversation sync start event
};
listener.onSyncFinished = []() {
// handle conversation sync finish event
};
listener.onSyncFailed = [](V2NIMError error) {
// handle conversation sync failed event
};
listener.onConversationCreated = [](V2NIMConversation conversation) {
// handle conversation created event
};
listener.onConversationDeleted = [](nstd::string conversationId) {
// handle conversation deleted event
};
listener.onConversationChanged = [](V2NIMConversationList conversationList) {
// handle conversation changed event
};
listener.onTotalUnreadChanged = [](uint32_t unreadCount) {
// handle total unread count changed event
};
listener.onUnreadChangedByFilter = [](V2NIMConversationFilter filter, uint32_t unreadCount) {
// handle unread count changed by group event
};
conversationService.addConversationListener(listener);
返回值
无
removeConversationListener
接口描述
移除会话监听器。
参数说明
javavoid removeConversationListener(@NonNull V2NIMConversationListener listener);
参数名称 | 类型 | 是否必填 | 默认值 | 描述 |
---|---|---|---|---|
listener |
V2NIMConversationListener |
是 | - | 会话相关监听器 |
objective-c- (void)removeConversationListener:(id<V2NIMConversationListener>)listener;
参数名称 | 类型 | 是否必填 | 默认值 | 描述 |
---|---|---|---|---|
listener |
V2NIMConversationListener |
是 | - | 会话相关监听器 |
cppvirtual void removeConversationListener(V2NIMConversationListener listener) = 0;
参数名称 | 类型 | 是否必填 | 默认值 | 描述 |
---|---|---|---|---|
listener |
V2NIMConversationListener |
是 | - | 会话相关监听器 |
示例代码
javaNIMClient.getV2NIMConversationServcie().removeConversationListener(listener);
objective-cid<V2NIMConversationListener> listener;
[NIMSDK.sharedSDK.v2ConversationService removeConversationListener:listener];
cppV2NIMConversationListener listener;
conversationService.removeConversationListener(listener);
返回值
无
on("EventName")
接口描述
注册会话相关监听。
注册成功后,当事件发生时,SDK 会触发相关回调通知。
- 建议在初始化后调用该方法。
- 全局只需注册一次。
- 该接口为同步。
参数说明
typescriptexport interface NIMEBaseServiceInterface<I extends NIMEBaseListener> {
/**
* 继承自 EventEmitter3 的监听事件方法。
*/
on<T extends keyof I>(eventName: T, fn: (...args: I[T]) => void): void;
/**
* 继承自 EventEmitter3 的监听事件方法。
*/
once<T extends keyof I>(eventName: T, fn: (...args: I[T]) => void): void;
}
参数名称 | 类型 | 是否必填 | 默认值 | 描述 |
---|---|---|---|---|
eventName |
T | 是 | - | 事件名称:onSyncStarted :数据同步开始回调onSyncFinished :数据同步结束回调onSyncFailed :数据同步失败回调,返回相关错误码。onConversationCreated :会话创建回调,返回创建的会话对象。onConversationDeleted :会话删除回调,返回被删除的会话 ID 列表。 onConversationChanged :会话变更回调,返回变更后的会话列表。 onTotalUnreadCountChanged :会话消息总未读数变更,返回变更后的总未读数。 |
fn |
function | 是 | - | 监听事件的回调函数。当事件触发时,会调用该函数进行处理。 |
typescriptexport interface NIMEBaseServiceInterface<I extends NIMEBaseListener> {
/**
* 继承自 eventEmitter3 的监听事件方法
*/
on<T extends keyof I>(eventName: T, fn: (...args: I[T]) => void): void
/**
* 继承自 eventEmitter3 的监听事件方法
*/
once<T extends keyof I>(eventName: T, fn: (...args: I[T]) => void): void
}
参数名称 | 类型 | 是否必填 | 默认值 | 描述 |
---|---|---|---|---|
eventName |
T | 是 | - | 事件名称:onSyncStarted :数据同步开始回调onSyncFinished :数据同步结束回调onSyncFailed :数据同步失败回调,返回相关错误码。onConversationCreated :会话创建回调,返回创建的会话对象。onConversationDeleted :会话删除回调,返回被删除的会话 ID 列表。 onConversationChanged :会话变更回调,返回变更后的会话列表。 onTotalUnreadCountChanged :会话消息总未读数变更,返回变更后的总未读数。 |
fn |
function | 是 | - | 监听事件的回调函数。当事件触发时,会调用该函数进行处理。 |
示例代码
typescriptnim.V2NIMConversationService.on("onSyncStarted", function () {})
nim.V2NIMConversationService.on("onSyncFinished", function () {})
nim.V2NIMConversationService.on("onSyncFailed", function (err) {})
nim.V2NIMConversationService.on("onConversationCreated", function (conversation: V2NIMConversation) {})
nim.V2NIMConversationService.on("onConversationDeleted", function (conversationIds: string[]) {})
nim.V2NIMConversationService.on("onConversationChanged", function (conversationList: V2NIMConversation[]) {})
nim.V2NIMConversationService.on("onTotalUnreadChanged", function (unreadCount: number) {})
nim.V2NIMConversationService.on("onUnreadChangedByFilter", function (filter: V2NIMConversationFilter & { equals: (filter: V2NIMConversationFilter) => boolean }, unreadCount: number) {
// Success
// if filter.equals(TARGET_FILTER)
})
typescriptnim.conversationService.on("onSyncStarted", () => {})
nim.conversationService.on("onSyncFinished", () => {})
nim.conversationService.on("onSyncFailed", (err) => {})
nim.conversationService.on("onConversationCreated", (conversation: V2NIMConversation) => {})
nim.conversationService.on("onConversationDeleted", (conversationIds: string[]) => {})
nim.conversationService.on("onConversationChanged", (conversationList: V2NIMConversation[]) => {})
nim.conversationService.on("onTotalUnreadCountChanged", (unreadCount: number) => {})
nim.conversationService.on("onUnreadCountChangedByFilter", (filter: V2NIMConversationFilter, unreadCount: number) => {
// todo success
// if filter.equals(TARGET_FILTER)
})
返回值
无
off("EventName")
接口描述
取消注册会话相关监听。
该接口为同步。
参数说明
typescriptexport interface NIMEBaseServiceInterface<I extends NIMEBaseListener> {
/**
* 继承自 EventEmitter3 的取消监听方法。
*/
off<T extends keyof I>(eventName: T, fn: (...args: I[T]) => void): void;
/**
* 继承自 EventEmitter3 的移除事件方法。
*/
removeAllListeners<T extends keyof I>(eventName?: T): void;
}
参数名称 | 类型 | 是否必填 | 默认值 | 描述 |
---|---|---|---|---|
eventName |
T | 是 | - | 事件名称:onSyncStarted :数据同步开始回调onSyncFinished :数据同步结束回调。如果数据同步已开始,建议在数据同步完成后再进行会话相关操作。onSyncFailed :数据同步失败回调,返回相关错误码onConversationCreated :会话创建回调,返回创建的会话对象。当本地端或多端同步创建会话成功时会触发该回调。onConversationDeleted :会话删除回调,返回被删除的会话 ID 列表。当本地端或多端同步删除会话成功时会触发该回调。 onConversationChanged :会话变更回调,返回变更后的会话列表。当本地端或多端同步更新会话成功时会触发该回调。 onTotalUnreadCountChanged :会话消息总未读数变更,返回变更后的总未读数。 |
fn |
function | 是 | - | 监听事件的回调函数。当事件触发时,会调用该函数进行处理。 |
typescriptexport interface NIMEBaseServiceInterface<I extends NIMEBaseListener> {
/**
* 继承自 EventEmitter3 的取消监听方法。
*/
off<T extends keyof I>(eventName: T, fn: (...args: I[T]) => void): void
/**
* 继承自 eventEmitter3 的移除事件方法
*/
removeAllListeners<T extends keyof I>(eventName?: T): void
}
参数名称 | 类型 | 是否必填 | 默认值 | 描述 |
---|---|---|---|---|
eventName |
T | 是 | - | 事件名称:onSyncStarted :数据同步开始回调onSyncFinished :数据同步结束回调。如果数据同步已开始,建议在数据同步完成后再进行会话相关操作。onSyncFailed :数据同步失败回调,返回相关错误码onConversationCreated :会话创建回调,返回创建的会话对象。当本地端或多端同步创建会话成功时会触发该回调。onConversationDeleted :会话删除回调,返回被删除的会话 ID 列表。当本地端或多端同步删除会话成功时会触发该回调。 onConversationChanged :会话变更回调,返回变更后的会话列表。当本地端或多端同步更新会话成功时会触发该回调。 onTotalUnreadCountChanged :会话消息总未读数变更,返回变更后的总未读数。 |
fn |
function | 是 | - | 监听事件的回调函数。当事件触发时,会调用该函数进行处理。 |
示例代码
typescriptnim.V2NIMConversationService.off("onSyncStarted")
nim.V2NIMConversationService.off("onSyncFinished")
nim.V2NIMConversationService.off("onSyncFailed")
nim.V2NIMConversationService.off("onConversationCreated")
nim.V2NIMConversationService.off("onConversationDeleted")
nim.V2NIMConversationService.off("onConversationChanged")
nim.V2NIMConversationService.off("onTotalUnreadChanged")
nim.V2NIMConversationService.off("onUnreadChangedByFilter")
typescriptnim.conversationService.off("onSyncStarted", theListner)
nim.conversationService.off("onSyncFinished", theListner)
nim.conversationService.off("onSyncFailed", theListner)
nim.conversationService.off("onConversationCreated", theListner)
nim.conversationService.off("onConversationDeleted", theListner)
nim.conversationService.off("onConversationChanged", theListner)
nim.conversationService.off("onTotalUnreadCountChanged", theListner)
nim.conversationService.off("onUnreadCountChangedByFilter", theListner)
// remove all listeners
nim.conversationService.removeAllListeners()
返回值
无
createConversation
接口描述
创建一条空会话。
本地端或多端同步创建成功后,SDK 会返回创建成功回调 onConversationCreated
,并同步缓存和数据库。
如果没有消息收发,该会话仅创建人可见。
使用场景
当需要本地占位空会话时可以调用该方法,一般情况下无需主动调用,收发消息时 SDK 会自动创建会话。
参数说明
javavoid createConversation(@NonNull String conversationId, V2NIMSuccessCallback<V2NIMConversation> success, V2NIMFailureCallback failure);
参数名称 | 类型 | 是否必填 | 默认值 | 描述 |
---|---|---|---|---|
conversationId |
String | 是 | - | 会话 ID,通过调用 V2NIMConversationIdUtil 的对应函数创建。V2NIMConversationType )|聊天对象账号(accountId)或群组 ID。 |
success |
V2NIMSuccessCallback |
是 | - | 创建会话成功回调,返回 V2NIMConversation 。 |
failure |
V2NIMFailureCallback |
是 | - | 创建会话失败回调,返回错误码。 |
objective-c- (void)createConversation:(NSString *)conversationId
success:(nullable V2NIMConversationCallback)success
failure:(nullable V2NIMFailureCallback)failure;
参数名称 | 类型 | 是否必填 | 默认值 | 描述 |
---|---|---|---|---|
conversationId |
String | 是 | - | 会话 ID,通过调用 V2NIMConversationIdUtil 的对应函数创建。V2NIMConversationType )|聊天对象账号(account)或群组 ID。 |
success |
V2NIMConversationCallback |
是 | - | 创建会话成功回调,可自定义。 |
failure |
V2NIMFailureCallback |
是 | - | 创建会话失败回调,返回错误码。 |
cppvirtual void createConversation(nstd::string conversationId, V2NIMSuccessCallback<V2NIMConversation> success, V2NIMFailureCallback failure) = 0;
参数名称 | 类型 | 是否必填 | 默认值 | 描述 |
---|---|---|---|---|
conversationId |
String | 是 | - | 会话 ID,通过调用 V2NIMConversationIdUtil 的对应函数创建。V2NIMConversationType )|聊天对象账号(accountId)或群组 ID。 |
success |
V2NIMSuccessCallback |
是 | - | 创建会话成功回调,返回 [V2NIMConversation ]((https://doc.yunxin.163.com/messaging2/client-apis/DAxNjk0Mzc?platform=client#V2NIMConversation)。 |
failure |
V2NIMFailureCallback |
是 | - | 创建会话失败回调,返回错误码。 |
typescriptcreateConversation(conversationId: string): Promise<V2NIMConversation>
参数名称 | 类型 | 是否必填 | 默认值 | 描述 |
---|---|---|---|---|
conversationId |
String | 是 | - | 会话 ID,通过调用 V2NIMConversationIdUtil 的对应函数创建。V2NIMConversationType )|聊天对象账号(accountId)或群组 ID。 |
typescriptcreateConversation(conversationId: string): Promise<V2NIMConversation>
参数名称 | 类型 | 是否必填 | 默认值 | 描述 |
---|---|---|---|---|
conversationId |
String | 是 | - | 会话 ID,通过调用 V2NIMConversationIdUtil 的对应函数创建。V2NIMConversationType )|聊天对象账号(accountId)或群组 ID。 |
示例代码
javaString conversationId = V2NIMConversationIdUtil.p2pConversationId("accountId");
NIMClient.getService(V2NIMConversationService.class).createConversation(conversationId, new V2NIMSuccessCallback<V2NIMConversation>(){
@Override
public void onSuccess(V2NIMConversation conversation){
// conversation created
}
}, new V2NIMFailureCallback(){
@Override
public void onFailure(V2NIMError error){
int code = error.getCode();
String desc = error.getDesc();
// create failed, handle error
}
});
objective-cNSString *conversationId = [V2NIMConversationIdUtil p2pConversationId:@"accountId"];
[NIMSDK.sharedSDK.v2ConversationService createConversation:conversationId success:^(V2NIMConversation *conversation) {
// conversation created
} failure:^(V2NIMError *error) {
// create failed, handle error
}];
cppauto conversationId = V2NIMConversationId::p2pConversationId("account1");
conversationService.createConversation(
conversationId,
[](V2NIMConversation conversation) {
// create succeeded
},
[](V2NIMError error) {
// create failed, handle error
});
typescripttry {
const data = await nim.V2NIMConversationService.createConversation("CONVERSATION_ID");
// conversation created
} catch (err) {
// create failed, handle error
}
typescriptlet conversationId: string = "cjl|1|cjl1";
try {
let conv: V2NIMConversation = await this.conversationService.createConversation(conversationId)
// success
} catch (e) {
// fail
}
返回值
无返回值
Promise<V2NIMConversation
> 会话相关信息
相关回调
- 请求成功,返回
V2NIMSuccessCallback
回调;创建成功,返回onConversationCreated
回调。 - 请求失败,返回
V2NIMFailuerCallback
回调,包含会话相关错误码。
- 请求成功,返回
V2NIMConversationCallback
回调,可自定义设置;创建成功,返回onConversationCreated
回调。 - 请求失败,返回
V2NIMFailuerCallback
回调,包含会话相关错误码。
创建成功,返回 onConversationCreated
回调。
deleteConversation
接口描述
删除指定会话。
本地端或多端同步删除成功后,SDK 会返回删除成功回调 onConversationDeleted
,并同步数据库和缓存。
如果被删除会话中有消息未读,SDK 还会返回 onTotalUnreadChanged
和 onUnreadCountChangedByFilter
回调。
参数说明
javavoid deleteConversation(@NonNull String conversationId, boolean clearMessage, V2NIMSuccessCallback<Void> success, V2NIMFailureCallback failure);
参数名称 | 类型 | 是否必填 | 默认值 | 描述 |
---|---|---|---|---|
conversationId |
String | 是 | - | 会话 ID,如果为空、不合法、不存在则返回 191004 参数错误。 |
clearMessage |
Boolean | 否 | false | 是否同步删除会话中本地和服务端的历史消息 |
success |
V2NIMSuccessCallback |
是 | - | 删除会话成功回调 |
failure |
V2NIMFailureCallback |
是 | - | 删除会话失败回调,返回错误码。 |
objective-c- (void)deleteConversation:(NSString *)conversationId
clearMessage:(BOOL)clearMessage
success:(nullable V2NIMSuccessCallback)success
failure:(nullable V2NIMFailureCallback)failure;
参数名称 | 类型 | 是否必填 | 默认值 | 描述 |
---|---|---|---|---|
conversationId |
String | 是 | - | 会话 ID,如果为空、不合法、不存在则返回 191004 参数错误。 |
clearMessage |
Bool | 否 | false | 是否同步删除会话对应的历史消息 |
success |
V2NIMSuccessCallback |
是 | - | 删除会话成功回调 |
failure |
V2NIMFailureCallback |
是 | - | 删除会话失败回调,返回错误码。 |
cppvirtual void deleteConversation(nstd::string conversationId,
bool clearMessage,
V2NIMSuccessCallback<void> success,
V2NIMFailureCallback failure) = 0;
参数名称 | 类型 | 是否必填 | 默认值 | 描述 |
---|---|---|---|---|
conversationId |
String | 是 | - | 会话 ID,如果为空、不合法、不存在则返回 191004 参数错误。 |
clearMessage |
Bool | 否 | false | 是否同步删除会话对应的历史消息 |
success |
V2NIMSuccessCallback |
是 | - | 删除会话成功回调 |
failure |
V2NIMFailureCallback |
是 | - | 删除会话失败回调,返回错误码。 |
typescriptdeleteConversation(conversationId: string, clearMessage?: boolean): Promise<void>
参数名称 | 类型 | 是否必填 | 默认值 | 描述 |
---|---|---|---|---|
conversationId |
String | 是 | - | 会话 ID,如果为空、不合法、不存在则返回 191004 参数错误。 |
clearMessage |
Boolean | 否 | false | 是否同步删除会话对应的历史消息 |
typescriptdeleteConversation(conversationId: string, clearMessage?: boolean): Promise<void>
参数名称 | 类型 | 是否必填 | 默认值 | 描述 |
---|---|---|---|---|
conversationId |
String | 是 | - | 会话 ID,如果为空、不合法、不存在则返回 191004 参数错误。 |
clearMessage |
Boolean | 否 | false | 是否同步删除会话对应的历史消息 |
示例代码
javaNIMClient.getService(V2NIMConversationService.class).deleteConversation("会话id", false, new V2NIMSuccessCallback<Void>() {
@Override
public void onSuccess(Void unused) {
// delete succeeded
}
}, new V2NIMFailureCallback() {
@Override
public void onFailure(V2NIMError error) {
int code = error.getCode();
String desc = error.getDesc();
// delete failed, handle error
}
});
objective-c[NIMSDK.sharedSDK.v2ConversationService deleteConversation:@"conversationId" clearMessage:NO success:^{
// delete succeeded
} failure:^(V2NIMError *error) {
// delete failed, handle error
}];
cppauto conversationId = V2NIMConversationId::p2pConversationId("account1");
conversationService.deleteConversation(
conversationId,
true,
[]() {
// delete succeeded
},
[](V2NIMError error) {
// delete failed, handle error
});
typescripttry {
await nim.V2NIMConversationService.deleteConversation("CONVERSATION_ID", true);
// delete succeeded
} catch (err) {
// delete failed, handle error
}
typescriptlet conversationId: string = "cjl|1|cjl1";
let clearMessage: boolean = true;
try {
await this.conversationService.deleteConversation(conversationId, clearMessage)
// success
} catch (e) {
// fail
}
返回值
无返回值
Promise<void>
相关回调
- 请求成功,返回
V2NIMSuccessCallback
回调;删除成功,返回onConversationDeleted
回调。可能返回onTotalUnreadChanged
和onUnreadCountChangedByFilter
回调。 - 请求失败,返回
V2NIMFailuerCallback
回调,包含会话相关错误码。
删除成功,返回 onConversationDeleted
回调。可能返回 onTotalUnreadChanged
和 onUnreadCountChangedByFilter
回调。
deleteConversationListByIds
接口描述
批量删除指定的会话列表。
本地端或多端同步删除每一条会话成功后,SDK 均会返回删除成功回调 onConversationDeleted
回调,并同步数据库和缓存。
如果被删除会话中有消息未读,SDK 还会返回 onTotalUnreadChanged
和 onUnreadCountChangedByFilter
回调。
参数说明
javavoid deleteConversationListByIds(@NonNull List<String> conversationIds, boolean clearMessage, V2NIMSuccessCallback<List<V2NIMConversationOperationResult>> success,
V2NIMFailureCallback failure);
参数名称 | 类型 | 是否必填 | 默认值 | 描述 |
---|---|---|---|---|
conversationIds |
List |
是 | - | 会话 ID 列表。 |
clearMessage |
Boolean | 否 | false | 是否同步删除会话对应的历史消息 |
success |
V2NIMSuccessCallback |
是 | - | 删除会话成功回调,返回 V2NIMConversationOperationResult ,仅包含删除失败的会话 ID 及相关错误 |
failure |
V2NIMFailureCallback |
是 | - | 删除会话失败回调,返回错误码。 |
objective-c- (void)deleteConversationListByIds:(NSArray<NSString *> *)conversationIds
clearMessage:(BOOL)clearMessage
success:(nullable V2NIMConversationOperationResultListCallback)success
failure:(nullable V2NIMFailureCallback)failure;
参数名称 | 类型 | 是否必填 | 默认值 | 描述 |
---|---|---|---|---|
conversationIds |
NSArray |
是 | - | 会话 ID 列表。 |
clearMessage |
Bool | 否 | false | 是否同步删除会话对应的历史消息 |
success |
V2NIMConversationOperationResultListCallback |
是 | - | 删除会话成功回调,可自定义设置。 |
failure |
V2NIMFailureCallback |
是 | - | 删除会话失败回调,返回错误码。 |
cppvirtual void deleteConversationListByIds(nstd::vector<nstd::string> conversationIds,
bool clearMessage,
V2NIMSuccessCallback<nstd::vector<V2NIMConversationOperationResult>> success,
V2NIMFailureCallback failure) = 0;
参数名称 | 类型 | 是否必填 | 默认值 | 描述 |
---|---|---|---|---|
conversationIds |
String | 是 | - | 会话 ID 列表。 |
clearMessage |
Bool | 否 | false | 是否同步删除会话对应的历史消息 |
success |
V2NIMSuccessCallback |
是 | - | 删除会话成功回调,返回 V2NIMConversationOperationResult ,仅包含删除失败的会话 ID 及相关错误码。 |
failure |
V2NIMFailureCallback |
是 | - | 删除会话失败回调,返回错误码。 |
typescriptdeleteConversationListByIds(conversationIds: string[], clearMessage?: boolean): Promise<void>
参数名称 | 类型 | 是否必填 | 默认值 | 描述 |
---|---|---|---|---|
conversationIds |
String[] | 是 | - | 会话 ID 列表。 |
clearMessage |
Boolean | 否 | false | 是否同步删除会话对应的历史消息 |
typescriptdeleteConversationListByIds(conversationIds: string[], clearMessage?: boolean): Promise<V2NIMConversationOperationResult[]>
参数名称 | 类型 | 是否必填 | 默认值 | 描述 |
---|---|---|---|---|
conversationIds |
String[] | 是 | - | 会话 ID 列表。 |
clearMessage |
Boolean | 否 | false | 是否同步删除会话对应的历史消息 |
示例代码
javaNIMClient.getService(V2NIMConversationService.class).deleteConversationListByIds(ids, new V2NIMSuccessCallback<List<V2NIMConversationOperationResult>>() {
@Override
public void onSuccess(List<V2NIMConversationOperationResult> results) {
// delete succeeded, check failed conversation
}
}, new V2NIMFailureCallback() {
@Override
public void onFailure(V2NIMError error) {
int code = error.getCode();
String desc = error.getDesc();
// delete failed, handle error
}
});
objective-c[NIMSDK.sharedSDK.v2ConversationService deleteConversationListByIds:@[@"conversationIdA", @"conversationIdB"] clearMessage:NO success:^(NSArray<V2NIMConversationOperationResult *> *resultList) {
if (resultList.count > 0) {
// delete succeeded, check failed conversation
}
} failure:^(V2NIMError *error) {
// handle error
}];
cppauto conversationIds = nstd::vector<nstd::string>();
conversationIds.emplace_back(V2NIMConversationId::p2pConversationId("account1"));
conversationIds.emplace_back(V2NIMConversationId::p2pConversationId("account2"));
conversationService.deleteConversationListByIds(
conversationIds,
true,
[](nstd::vector<V2NIMConversationOperationResult> failedList) {
// delete succeeded, check failed conversation
},
[](V2NIMError error) {
// delete failed, handle error
});
typescripttry {
const ids = ["CONVERSATION_ID1", "CONVERSATION_ID2"]
await nim.V2NIMConversationService.deleteConversationListByIds(ids, true)
// delete succeeded, check failed conversation
} catch (err) {
// delete failed, handle error
}
typescriptlet conversationIds: string[] = ["cjl|1|cjl1", "cjl|2|cjl2"];
let clearMessage: boolean = true;
try {
let deleteFailedConversationList: V2NIMConversationOperationResult[] = await this.conversationService.deleteConversationListByIds(conversationIds, clearMessage)
if (deleteFailedConversationList && deleteFailedConversationList.length > 0) {
// partial success
} else {
// all success
}
} catch (e) {
// fail
}
返回值
无返回值
Promise<void>
相关回调
- 请求成功,返回
V2NIMSuccessCallback
回调;每一条会话删除成功,均返回onConversationDeleted
回调。可能返回onTotalUnreadChanged
和onUnreadCountChangedByFilter
回调。 - 请求失败,返回
V2NIMFailuerCallback
回调,包含会话相关错误码。
- 请求成功,返回
V2NIMConversationOperationResultListCallback
回调;每一条会话删除成功,均返回onConversationDeleted
回调。可能返回onTotalUnreadChanged
和onUnreadCountChangedByFilter
回调。 - 请求失败,返回
V2NIMFailuerCallback
回调,包含会话相关错误码。
每一条会话删除成功,均返回 onConversationDeleted
回调。可能返回 onTotalUnreadChanged
和 onUnreadCountChangedByFilter
回调。
getConversation
接口描述
查询单条指定会话。
- 查询前请确保指定的会话存在。
- 数据同步完成前,可能查询不到完整数据。
参数说明
javavoid getConversation(@NonNull String conversationId, V2NIMSuccessCallback<V2NIMConversation> success, V2NIMFailureCallback failure);
参数名称 | 类型 | 是否必填 | 默认值 | 描述 |
---|---|---|---|---|
conversationId |
String | 是 | - | 会话 ID,如果为空、不合法、不存在则返回 191004 参数错误。 |
success |
V2NIMSuccessCallback |
是 | - | 查询成功回调,返回 V2NIMConversation 。 |
failure |
V2NIMFailureCallback |
是 | - | 查询失败回调,返回错误码。 |
objective-c- (void)getConversation:(NSString *)conversationId
success:(nullable V2NIMConversationCallback)success
failure:(nullable V2NIMFailureCallback)failure;
参数名称 | 类型 | 是否必填 | 默认值 | 描述 |
---|---|---|---|---|
conversationId |
NSString | 是 | - | 会话 ID,如果为空、不合法、不存在则返回 191004 参数错误。 |
success |
V2NIMConversationCallback |
是 | - | 查询会话成功回调,可自定义。 |
failure |
V2NIMFailureCallback |
是 | - | 查询失败回调,返回错误码。 |
cppvirtual void getConversation(nstd::string conversationId, V2NIMSuccessCallback<V2NIMConversation> success, V2NIMFailureCallback failure) = 0;
参数名称 | 类型 | 是否必填 | 默认值 | 描述 | ||
---|---|---|---|---|---|---|
conversationId |
String | 是 | - | 会话 ID,如果为空、不合法、不存在则返回 191004 参数错误。 | ||
success |
V2NIMSuccessCallback |
是 | - | 查询成功回调,返回 V2NIMConversation 。 |
||
failure |
V2NIMFailureCallback |
是 | - | 查询失败回调,返回错误码。 | 查询失败回调,返回错误码。 |
typescriptgetConversation(conversationId: string): Promise<V2NIMConversation>
参数名称 | 类型 | 是否必填 | 默认值 | 描述 |
---|---|---|---|---|
conversationId |
String | 是 | - | 会话 ID,如果为空、不合法、不存在则返回 191004 参数错误。 |
typescriptgetConversation(conversationId: string): Promise<V2NIMConversation>
参数名称 | 类型 | 是否必填 | 默认值 | 描述 |
---|---|---|---|---|
conversationId |
String | 是 | - | 会话 ID,如果为空、不合法、不存在则返回 191004 参数错误。 |
示例代码
javaNIMClient.getV2NIMConversationServcie().getConversation("会话id", new V2NIMSuccessCallback<V2NIMConversation>(){
@Override
public void onSuccess(V2NIMConversation conversation){
// success
}
}, new V2NIMFailueCallback(){
@Override
public void onFailure(V2NIMError error){
int code = error.getCode();
String desc = error.getDesc();
// handle error
}
});
objective-c[NIMSDK.sharedSDK.v2ConversationService getConversation:@"conversationId" success:^(V2NIMConversation *conversation) {
// success
} failure:^(V2NIMError *error) {
// handle error
}];
cppauto conversationId = V2NIMConversationId::p2pConversationId("account1");
conversationService.getConversation(
conversationId,
[](V2NIMConversation conversation) {
// get conversation succeeded
},
[](V2NIMError error) {
// get conversation failed, handle error
});
typescripttry {
const data = await nim.V2NIMConversationService.getConversation("TARGET_CONVERSATION_ID")
// success
} catch (err) {
// handle error
}
typescriptlet conversationId: string = "cjl|1|cjl1";
try {
let conv: V2NIMConversation = await this.conversationService.getConversation(conversationId)
// success
} catch (e) {
// fail
}
返回值
无返回值
Promise<V2NIMConversation
> 会话相关信息
相关回调
- 请求成功,返回
V2NIMSuccessCallback
回调,包含V2NIMConversation
。 - 请求失败,返回
V2NIMFailuerCallback
回调,包含会话相关错误码。
- 请求成功,返回
V2NIMConversationCallback
回调,可自定义设置。 - 请求失败,返回
V2NIMFailuerCallback
回调,包含会话相关错误码。
无
getConversationList
接口描述
分页查询所有会话列表。
该方法从客户端本地分页获取会话数据,直到获取全量会话。
- 查询的会话列表结果中,置顶会话排首位。
- 数据同步完成前,可能查询不到完整数据。
参数说明
javavoid getConversationList(long offset, int limit, V2NIMSuccessCallback<V2NIMConversationResult> success, V2NIMFailureCallback failure);
参数名称 | 类型 | 是否必填 | 默认值 | 描述 |
---|---|---|---|---|
offset |
Long | 是 | - | 分页偏移。首次调用传 0,后续调用时传入上一次调用返回的 offset 。 |
limit |
Int | 是 | - | 单次查询会话数量上限,建议不超过 100。设置为小于或等于 0 则默认为 100。 |
success |
V2NIMSuccessCallback |
是 | - | 查询成功回调,返回 V2NIMConversationResult 。 |
failure |
V2NIMFailureCallback |
是 | - | 查询失败回调,返回错误码。 |
objective-c- (void)getConversationList:(long long)offset
limit:(NSInteger)limit
success:(nullable V2NIMConversationResultCallback)success
failure:(nullable V2NIMFailureCallback)failure;
参数名称 | 类型 | 是否必填 | 默认值 | 描述 |
---|---|---|---|---|
offset |
Long | 是 | - | 分页偏移。首次调用传 0,后续调用时传入上一次调用返回的 offset 。 |
limit |
NSInteger | 是 | - | 单次查询会话数量上限,建议不超过 100。设置为小于或等于 0 则默认为 100。 |
success |
V2NIMConversationResultCallback |
是 | - | 查询会话列表成功回调,可自定义。 |
failure |
V2NIMFailureCallback |
是 | - | 查询失败回调,返回错误码。 |
cppvirtual void getConversationList(uint64_t offset,
uint32_t limit,
V2NIMSuccessCallback<V2NIMConversationResult> success,
V2NIMFailureCallback failure) = 0;
参数名称 | 类型 | 是否必填 | 默认值 | 描述 |
---|---|---|---|---|
offset |
uint64_t | 是 | - | 分页偏移。首次调用传 0,后续调用时传入上一次调用返回的 offset 。 |
limit |
uint32_t | 是 | - | 单次查询会话数量上限,建议不超过 100。设置为小于或等于 0 则默认为 100。 |
success |
V2NIMSuccessCallback |
是 | - | 查询成功回调,返回 V2NIMConversationResult 。 |
failure |
V2NIMFailureCallback |
是 | - | 查询失败回调,返回错误码。 |
typescriptgetConversationList(offset: number, limit: number): Promise<V2NIMConversationResult>
参数名称 | 类型 | 是否必填 | 默认值 | 描述 |
---|---|---|---|---|
offset |
Number | 是 | - | 分页偏移。首次调用传 0,后续调用时传入上一次调用返回的 offset 。 |
limit |
Number | 是 | - | 单次查询会话数量上限,建议不超过 100。设置为小于或等于 0 则默认为 100。 |
typescriptgetConversationList(offset: number, limit: number): Promise<V2NIMConversationResult>
参数名称 | 类型 | 是否必填 | 默认值 | 描述 |
---|---|---|---|---|
offset |
Number | 是 | - | 分页偏移。首次调用传 0,后续调用时传入上一次调用返回的 offset 。 |
limit |
Number | 是 | - | 单次查询会话数量上限,建议不超过 100。设置为小于或等于 0 则默认为 100。 |
示例代码
javaNIMClient.getV2NIMConversationServcie().getConversionList(0, 100, new V2NIMSuccessCallback<V2NIMConversationResult>() {
@Override
public void onSuccess(V2NIMConversationResult result) {
// success
}
}, new V2NIMFailueCallback() {
@Override
public void onFailure(V2NIMError error) {
int code = error.code;
String desc = error.desc;
// handle error
}
});
objective-c[NIMSDK.sharedSDK.v2ConversationService getConversationList:0 limit:10 success:^(V2NIMConversationResult *result) {
// receive result
} failure:^(V2NIMError *error) {
// handle error
}];
cppconversationService.getConversationList(
lastCursor,
10,
[](V2NIMConversationResult result) {
// get conversation list succeeded
},
[](V2NIMError error) {
// get conversation list failed, handle error
});
typescripttry {
const result = await nim.V2NIMConversationService.getConversationList(0, 100)
// receive result
} catch (err) {
// handle error
}
typescripttry {
const result = await nim.conversationService.getConversationList(0, 100)
// success
} catch (err) {
// fail
}
返回值
无返回值
Promise<V2NIMConversationResult
> 分页查询会话列表结果相关信息
相关回调
- 请求成功,返回
V2NIMSuccessCallback
回调,包含V2NIMConversationResult
。 - 请求失败,返回
V2NIMFailuerCallback
回调,包含会话相关错误码。
- 请求成功,返回
V2NIMConversationResultCallback
回调,可自定义设置。 - 请求失败,返回
V2NIMFailuerCallback
回调,包含会话相关错误码。
无
getConversationListByOption
接口描述
根据指定条件分页查询会话列表。
该方法根据指定条件从客户端本地分页获取会话数据,直到获取全量会话,SDK 会进行数据同步并返回对应回调通知 UI 层。
数据同步完成前,可能查询不到完整数据。
参数说明
javavoid getConversationListByOption(long offset, int limit, V2NIMConversationOption option, V2NIMSuccessCallback<V2NIMConversationResult> success,
V2NIMFailureCallback failure);
参数名称 | 类型 | 是否必填 | 默认值 | 描述 |
---|---|---|---|---|
offset |
Long | 是 | - | 分页偏移。首次调用传 0,后续调用时传入上一次调用返回的 offset 。 |
limit |
Int | 是 | - | 单次查询会话数量上限,建议不超过 100。设置为小于或等于 0 则默认为 100。 |
option |
V2NIMConversationOption |
是 | - | 查询条件,设置为空则查询所有会话列表。 |
success |
V2NIMSuccessCallback |
是 | - | 查询成功回调,返回 V2NIMConversationResult 。 |
failure |
V2NIMFailureCallback |
是 | - | 查询失败回调,返回错误码。 |
objective-c- (void)getConversationListByOption:(long long)offset
limit:(NSInteger)limit
option:(V2NIMConversationOption *)option
success:(nullable V2NIMConversationResultCallback)success
failure:(nullable V2NIMFailureCallback)failure;
参数名称 | 类型 | 是否必填 | 默认值 | 描述 |
---|---|---|---|---|
offset |
Long | 是 | - | 分页偏移。首次调用传 0,后续调用时传入上一次调用返回的 offset 。 |
limit |
NSInteger | 是 | - | 单次查询会话数量上限,建议不超过 100。设置为小于或等于 0 则默认为 100。 |
option |
V2NIMConversationOption |
是 | - | 查询条件,设置为空则查询所有会话列表。 |
success |
V2NIMConversationResultCallback |
是 | - | 查询会话列表成功回调,可自定义。 |
failure |
V2NIMFailureCallback |
是 | - | 查询失败回调,返回错误码。 |
cppvirtual void getConversationListByOption(uint64_t offset,
uint32_t limit,
V2NIMConversationOption option,
V2NIMSuccessCallback<V2NIMConversationResult> success,
V2NIMFailureCallback failure) = 0;
参数名称 | 类型 | 是否必填 | 默认值 | 描述 |
---|---|---|---|---|
offset |
uint64_t | 是 | - | 分页偏移。首次调用传 0,后续调用时传入上一次调用返回的 offset 。 |
limit |
uint32_t | 是 | - | 单次查询会话数量上限,建议不超过 100。设置为小于或等于 0 则默认为 100。 |
option |
V2NIMConversationOption |
是 | - | 查询条件,设置为空则查询所有会话列表。 |
success |
V2NIMSuccessCallback |
是 | - | 查询成功回调,返回 V2NIMConversationResult 。 |
failure |
V2NIMFailureCallback |
是 | - | 查询失败回调,返回错误码。 |
typescriptgetConversationListByOption(offset: number, limit: number, option: V2NIMConversationOption): Promise<V2NIMConversationResult>
参数名称 | 类型 | 是否必填 | 默认值 | 描述 |
---|---|---|---|---|
offset |
Number | 是 | - | 分页偏移。首次调用传 0,后续调用时传入上一次调用返回的 offset 。 |
limit |
Number | 是 | - | 单次查询会话数量上限,建议不超过 100。设置为小于或等于 0 则默认为 100。 |
option |
V2NIMConversationOption |
是 | - | 查询条件,设置为空则查询所有会话列表。 |
typescriptgetConversationListByOption(offset: number, limit: number, option: V2NIMConversationOption): Promise<V2NIMConversationResult>
参数名称 | 类型 | 是否必填 | 默认值 | 描述 |
---|---|---|---|---|
offset |
Number | 是 | - | 分页偏移。首次调用传 0,后续调用时传入上一次调用返回的 offset 。 |
limit |
Number | 是 | - | 单次查询会话数量上限,建议不超过 100。设置为小于或等于 0 则默认为 100。 |
option |
V2NIMConversationOption |
是 | - | 查询条件,设置为空则查询所有会话列表。 |
示例代码
javaV2NIMConversationOption option = new V2NIMConversationOption();
List<Integer> conversionTypes = new ArrayList<Integer>();
conversionTypes.add(1);
options.setConversionTypes =conversionTypes;
option.onlyUnread = true;
NIMClient.getV2NIMConversationServcie().getConversionListByOption(0, 100,option, new V2NIMSuccessCallback<V2NIMConversationResult>>(){
@Override
public void onSuccess<V2NIMConversationResult>(V2NIMConversationResult result){
// receive result
}
}, new V2NIMFailueCallback(){
@Override
public void onFailure(V2NIMError error){
int code = error.code;
String desc = error.desc;
// handle error
}
});
objective-cV2NIMConversationOption *option = [[V2NIMConversationOption alloc] init];
option.conversationTypes = @[
@(V2NIM_CONVERSATION_TYPE_P2P),
@(V2NIM_CONVERSATION_TYPE_TEAM),
];
option.conversationGroupIds = @[
@"groupIdA",
@"groupIdB",
];
option.onlyUnread = YES;
[NIMSDK.sharedSDK.v2ConversationService getConversationListByOption:0 limit:10 option:option success:^(V2NIMConversationResult * result) {
// receive result
} failure:^(V2NIMError * error) {
// handle error
}];
cppV2NIMConversationOption option;
option.onlyUnread = true;
option.conversationTypes = {V2NIM_CONVERSATION_TYPE_P2P, V2NIM_CONVERSATION_TYPE_TEAM};
conversationService.getConversationListByOption(
lastCursor,
10,
option,
[](V2NIMConversationResult result) {
// get conversation list succeeded
},
[](V2NIMError error) {
// get conversation list failed, handle error
});
typescripttry {
const list = await nim.V2NIMConversationService.getConversationListByOption(0, 100, {
conversationTypes: [V2NIMConversationType.V2NIM_CONVERSATION_TYPE_P2P]
onlyUnread: true,
})
// Success
} catch (err) {
// handle error
}
typescriptlet offset: number = 0;
let limit: number = 100;
let option: V2NIMConversationOption = {
conversationTypes: [V2NIMConversationType.V2NIM_CONVERSATION_TYPE_P2P]
}
try {
let result: V2NIMConversationResult = await this.conversationService.getConversationListByOption(offset, limit, option)
// success
} catch (e) {
// fail
}
返回值
无返回值
Promise<V2NIMConversationResult
> 分页查询会话列表结果相关信息
相关回调
- 请求成功,返回
V2NIMSuccessCallback
回调,包含V2NIMConversationResult
。 - 请求失败,返回
V2NIMFailuerCallback
回调,包含会话相关错误码。
- 请求成功,返回
V2NIMConversationResultCallback
回调,可自定义设置。 - 请求失败,返回
V2NIMFailuerCallback
回调,包含会话相关错误码。
无
getConversationListByIds
接口描述
批量查询指定的会话列表。
数据同步完成前,可能查询不到完整数据。
参数说明
javavoid getConversationListByIds(@NonNull List<String> conversationIds, V2NIMSuccessCallback<List<V2NIMConversation>> success,
V2NIMFailureCallback failure);
参数名称 | 类型 | 是否必填 | 默认值 | 描述 |
---|---|---|---|---|
conversationIds |
List |
是 | - | 会话 ID 列表,不可为空,否则返回 191004 参数错误。 |
success |
V2NIMSuccessCallback |
是 | - | 查询成功回调,返回 List<V2NIMConversation >。 |
failure |
V2NIMFailureCallback |
是 | - | 查询失败回调,返回错误码。 |
objective-c- (void)getConversationListByIds:(NSString *)conversationIds
success:(nullable V2NIMConversationListCallback)success
failure:(nullable V2NIMFailureCallback)failure;
参数名称 | 类型 | 是否必填 | 默认值 | 描述 |
---|---|---|---|---|
conversationIds |
NSString | 是 | - | 会话 ID 列表,不可为空,否则返回 191004 参数错误。 |
success |
V2NIMConversationListCallback |
是 | - | 查询成功回调,可自定义。 |
failure |
V2NIMFailureCallback |
是 | - | 查询失败回调,返回错误码。 |
cppvirtual void getConversationListByIds(nstd::vector<nstd::string> conversationIds,
V2NIMSuccessCallback<V2NIMConversationList> success,
V2NIMFailureCallback failure) = 0;
参数名称 | 类型 | 是否必填 | 默认值 | 描述 |
---|---|---|---|---|
conversationIds |
String | 是 | - | 会话 ID 列表,不可为空,否则返回 191004 参数错误。 |
success |
V2NIMSuccessCallback |
是 | - | 查询会话列表成功回调,返回 List<V2NIMConversation >。 |
failure |
V2NIMFailureCallback |
是 | - | 查询失败回调,返回错误码。 |
typescriptgetConversationListByIds(conversationIds: string[]): Promise<V2NIMConversation[]>
参数名称 | 类型 | 是否必填 | 默认值 | 描述 |
---|---|---|---|---|
conversationIds |
string[] | 是 | - | 会话 ID 列表,不可为空,否则返回 191004 参数错误。 |
typescriptgetConversationListByIds(conversationIds: string[]): Promise<V2NIMConversation[]>
参数名称 | 类型 | 是否必填 | 默认值 | 描述 |
---|---|---|---|---|
conversationIds |
string[] | 是 | - | 会话 ID 列表,不可为空,否则返回 191004 参数错误。 |
示例代码
javaNIMClient.getService(V2NIMConversationService.class).getConversationListByIds(ids, new V2NIMSuccessCallback<List<V2NIMConversation>>() {
@Override
public void onSuccess(List<V2NIMConversation> conversations) {
// receive conversation list
}
}, new V2NIMFailureCallback() {
@Override
public void onFailure(V2NIMError error) {
int code = error.getCode();
String desc = error.getDesc();
// handle error
}
});
objective-c[NIMSDK.sharedSDK.v2ConversationService getConversationListByIds:@[@"conversationIdA", @"conversationIdB"] success:^(NSArray<V2NIMConversation *> *conversationList) {
// receive conversation list
} failure:^(V2NIMError *error) {
// handle error
}];
cppauto conversationIds = nstd::vector<nstd::string>();
conversationIds.emplace_back(V2NIMConversationId::p2pConversationId("account1"));
conversationIds.emplace_back(V2NIMConversationId::p2pConversationId("account2"));
conversationService.getConversationListByIds(
conversationIds,
[](V2NIMConversationList list) {
// get conversation list succeeded
},
[](V2NIMError error) {
// get conversation list failed, handle error
});
typescripttry {
const ids = ["ID1", "ID2"]
const list = await nim.V2NIMConversationService.getConversationListByIds(ids)
// receive conversation list
} catch (err) {
// handle error
}
typescriptlet conversationIds: string[] = ["cjl|1|cjl1", "cjl|2|cjl2"];
try {
let result: V2NIMConversation[] = await this.conversationService.getConversationListByIds(conversationIds)
// success
} catch (e) {
// fail
}
返回值
无返回值
Promise<V2NIMConversation
[]> 会话列表相关信息
相关回调
- 请求成功,返回
V2NIMSuccessCallback
回调,包含V2NIMConversation
列表。 - 请求失败,返回
V2NIMFailuerCallback
回调,包含会话相关错误码。
- 请求成功,返回
V2NIMConversationListCallback
回调,可自定义设置。 - 请求失败,返回
V2NIMFailuerCallback
回调,包含会话相关错误码。
无
updateConversation
接口描述
更新指定会话的服务端扩展字段。
本地端或多端同步更新成功后,SDK 会返回会话变更回调 onConversationChanged
,并同步数据库、缓存及本地扩展字段。
更新前请确保该会话已存在。
参数说明
javavoid updateConversation(@NonNull String conversationId, V2NIMConversationUpdate updateInfo, V2NIMSuccessCallback<Void> success,
V2NIMFailureCallback failure);
参数名称 | 类型 | 是否必填 | 默认值 | 描述 |
---|---|---|---|---|
conversationId |
String | 是 | - | 会话 ID,如果为空、不合法、不存在则返回 191004 参数错误。 |
updateInfo |
V2NIMConversationUpdate |
是 | - | 会话更新对象,可以更新服务端扩展字段,会多端同步 |
success |
V2NIMSuccessCallback |
是 | - | 更新会话成功回调 |
failure |
V2NIMFailureCallback |
是 | - | 更新会话失败回调,返回错误码。 |
objective-c- (void)updateConversation:(NSString *)conversationId
updateInfo:(V2NIMConversationUpdate *)updateInfo
success:(nullable V2NIMSuccessCallback)success
failure:(nullable V2NIMFailureCallback)failure;
参数名称 | 类型 | 是否必填 | 默认值 | 描述 |
---|---|---|---|---|
conversationId |
String | 是 | - | 会话 ID,如果为空、不合法、不存在则返回 191004 参数错误。 |
updateInfo |
V2NIMConversationUpdate |
是 | - | 会话更新对象,可以更新服务端扩展字段,会多端同步 |
success |
V2NIMSuccessCallback |
是 | - | 更新会话成功回调 |
failure |
V2NIMFailureCallback |
是 | - | 更新会话失败回调,返回错误码。 |
cppvirtual void updateConversation(nstd::string conversationId,
V2NIMConversationUpdate updateInfo,
V2NIMSuccessCallback<void> success,
V2NIMFailureCallback failure) = 0;
参数名称 | 类型 | 是否必填 | 默认值 | 描述 |
---|---|---|---|---|
conversationId |
String | 是 | - | 会话 ID,如果为空、不合法、不存在则返回 191004 参数错误。 |
updateInfo |
V2NIMConversationUpdate |
是 | - | 会话更新对象,可以更新服务端扩展字段,会多端同步 |
success |
V2NIMSuccessCallback |
是 | - | 更新会话成功回调 |
failure |
V2NIMFailureCallback |
是 | - | 更新会话失败回调,返回错误码。 |
typescriptupdateConversation(conversationId: string, updateInfo: V2NIMConversationUpdate): Promise<void>
参数名称 | 类型 | 是否必填 | 默认值 | 描述 |
---|---|---|---|---|
conversationId |
String | 是 | - | 会话 ID,如果为空、不合法、不存在则返回 191004 参数错误。 |
updateInfo |
V2NIMConversationUpdate |
是 | - | 会话更新对象,可以更新服务端扩展字段,会多端同步 |
typescriptupdateConversation(conversationId: string, updateInfo: V2NIMConversationUpdate): Promise<void>
参数名称 | 类型 | 是否必填 | 默认值 | 描述 |
---|---|---|---|---|
conversationId |
String | 是 | - | 会话 ID,如果为空、不合法、不存在则返回 191004 参数错误。 |
updateInfo |
V2NIMConversationUpdate |
是 | - | 会话更新对象,可以更新服务端扩展字段,会多端同步 |
示例代码
javaV2NIMConversationUpdate updateInfo = new V2NIMConversationUpdate();
updateInfo.setServerExtension("serverextension");
updateInfo.setLocalExtension("localextension");
NIMClient.getService(V2NIMConversationService.class).updateConversation("conversationId", updateInfo, new V2NIMSuccessCallback<Void>() {
@Override
public void onSuccess(Void unused) {
// success
}
}, new V2NIMFailureCallback() {
@Override
public void onFailure(V2NIMError error) {
int code = error.getCode();
String desc = error.getDesc();
// handle error
}
});
objective-cV2NIMConversationUpdate *info = [[V2NIMConversationUpdate alloc] init];
info.localExtension = @"localExtension";
info.serverExtension = @"serverExtension";
[NIMSDK.sharedSDK.v2ConversationService updateConversation:@"conversationId" updateInfo:info success:^{
// success
} failure:^(V2NIMError *error) {
// handle error
}];
cppauto conversationId = V2NIMConversationId::p2pConversationId("account1");
V2NIMConversationUpdate param;
param.extension = "extension";
conversationService.updateConversation(
conversationId,
param,
[]() {
// update succeeded
},
[](V2NIMError error) {
// update failed, handle error
});
typescripttry {
const params = { serverExtention: "This is a new text" }
await nim.V2NIMConversationService.updateConversation("CONVERSATION_ID", params)
// Success
} catch (err) {
// handle error
}
typescriptlet conversationId: string = "cjl|1|cjl1"
let userInfo: V2NIMConversationUpdate = {
serverExtension: "serverExtension"
}
try {
await this.conversationService.updateConversation(conversationId, userInfo)
// success
} catch (e) {
// fail
}
返回值
无返回值
Promise<void>
相关回调
- 请求成功,返回
V2NIMSuccessCallback
回调;更新成功,返回onConversationChanged
回调。 - 请求失败,返回
V2NIMFailuerCallback
回调,包含会话相关错误码。
更新成功,返回 onConversationChanged
回调。
updateConversationLocalExtension
接口描述
更新指定会话的本地扩展字段。
本地扩展字段更新后,SDK 会返回会话变更回调 onConversationChanged
。
本地扩展字段不会多端同步,web 端仅存内存。
更新前请确保该会话已存在。
参数说明
javavoid updateConversation(@NonNull String conversationId, V2NIMConversationUpdate updateInfo, V2NIMSuccessCallback<Void> success,
V2NIMFailureCallback failure);
参数名称 | 类型 | 是否必填 | 默认值 | 描述 |
---|---|---|---|---|
conversationId |
String | 是 | - | 会话 ID,如果为空、不合法、不存在则返回 191004 参数错误。 |
updateInfo |
V2NIMConversationUpdate |
是 | - | 会话更新对象,可以更新服务端扩展字段,会多端同步 |
success |
V2NIMSuccessCallback |
是 | - | 更新会话成功回调 |
failure |
V2NIMFailureCallback |
是 | - | 更新会话失败回调,返回错误码。 |
objective-c- (void)updateConversation:(NSString *)conversationId
updateInfo:(V2NIMConversationUpdate *)updateInfo
success:(nullable V2NIMSuccessCallback)success
failure:(nullable V2NIMFailureCallback)failure;
参数名称 | 类型 | 是否必填 | 默认值 | 描述 |
---|---|---|---|---|
conversationId |
String | 是 | - | 会话 ID,如果为空、不合法、不存在则返回 191004 参数错误。 |
updateInfo |
V2NIMConversationUpdate |
是 | - | 会话更新对象,可以更新服务端扩展字段,会多端同步 |
success |
V2NIMSuccessCallback |
是 | - | 更新会话成功回调 |
failure |
V2NIMFailureCallback |
是 | - | 更新会话失败回调,返回错误码。 |
cppvirtual void updateConversation(nstd::string conversationId,
V2NIMConversationUpdate updateInfo,
V2NIMSuccessCallback<void> success,
V2NIMFailureCallback failure) = 0;
参数名称 | 类型 | 是否必填 | 默认值 | 描述 |
---|---|---|---|---|
conversationId |
String | 是 | - | 会话 ID,如果为空、不合法、不存在则返回 191004 参数错误。 |
updateInfo |
V2NIMConversationUpdate |
是 | - | 会话更新对象,可以更新服务端扩展字段,会多端同步 |
success |
V2NIMSuccessCallback |
是 | - | 更新会话成功回调 |
failure |
V2NIMFailureCallback |
是 | - | 更新会话失败回调,返回错误码。 |
typescriptupdateConversation(conversationId: string, updateInfo: V2NIMConversationUpdate): Promise<void>
参数名称 | 类型 | 是否必填 | 默认值 | 描述 |
---|---|---|---|---|
conversationId |
String | 是 | - | 会话 ID,如果为空、不合法、不存在则返回 191004 参数错误。 |
updateInfo |
V2NIMConversationUpdate |
是 | - | 会话更新对象,可以更新服务端扩展字段,会多端同步 |
typescriptupdateConversation(conversationId: string, updateInfo: V2NIMConversationUpdate): Promise<void>
参数名称 | 类型 | 是否必填 | 默认值 | 描述 |
---|---|---|---|---|
conversationId |
String | 是 | - | 会话 ID,如果为空、不合法、不存在则返回 191004 参数错误。 |
updateInfo |
V2NIMConversationUpdate |
是 | - | 会话更新对象,可以更新服务端扩展字段,会多端同步 |
示例代码
javaV2NIMConversationUpdate updateInfo = new V2NIMConversationUpdate();
updateInfo.setServerExtension("serverextension");
updateInfo.setLocalExtension("localextension");
NIMClient.getService(V2NIMConversationService.class).updateConversation("conversationId", updateInfo, new V2NIMSuccessCallback<Void>() {
@Override
public void onSuccess(Void unused) {
// success
}
}, new V2NIMFailureCallback() {
@Override
public void onFailure(V2NIMError error) {
int code = error.getCode();
String desc = error.getDesc();
// handle error
}
});
objective-cV2NIMConversationUpdate *info = [[V2NIMConversationUpdate alloc] init];
info.localExtension = @"localExtension";
info.serverExtension = @"serverExtension";
[NIMSDK.sharedSDK.v2ConversationService updateConversation:@"conversationId" updateInfo:info success:^{
// success
} failure:^(V2NIMError *error) {
// handle error
}];
cppauto conversationId = V2NIMConversationId::p2pConversationId("account1");
V2NIMConversationUpdate param;
param.extension = "extension";
conversationService.updateConversation(
conversationId,
param,
[]() {
// update succeeded
},
[](V2NIMError error) {
// update failed, handle error
});
typescripttry {
const params = { serverExtention: "This is a new text" }
await nim.V2NIMConversationService.updateConversation("CONVERSATION_ID", params)
// Success
} catch (err) {
// handle error
}
typescriptlet conversationId: string = "cjl|1|cjl1"
let userInfo: V2NIMConversationUpdate = {
serverExtension: "serverExtension"
}
try {
await this.conversationService.updateConversation(conversationId, userInfo)
// success
} catch (e) {
// fail
}
返回值
无返回值
Promise<void>
相关回调
- 请求成功,返回
V2NIMSuccessCallback
回调;更新成功,返回onConversationChanged
回调。 - 请求失败,返回
V2NIMFailuerCallback
回调,包含会话相关错误码。
更新成功,返回 onConversationChanged
回调。
stickTopConversation
接口描述
将会话置顶。最多支持置顶 100 条会话。
置顶成功后,SDK 会返回会话变更回调 onConversationChanged
,并同步数据库和缓存。
置顶前请确保该会话已存在。
参数说明
javavoid stickTopConversation(@NonNull String conversationId, boolean stickTop, V2NIMSuccessCallback<Void> success, V2NIMFailureCallback failure);
参数名称 | 类型 | 是否必填 | 默认值 | 描述 |
---|---|---|---|---|
conversationId |
String | 是 | - | 会话 ID,如果为空、不合法、不存在则返回 191004 参数错误。 |
stickTop |
Boolean | 是 | - | 是否置顶会话。 |
success |
V2NIMSuccessCallback |
是 | - | 置顶会话成功回调 |
failure |
V2NIMFailureCallback |
是 | - | 置顶会话失败回调,返回错误码。 |
objective-c- (void)stickTopConversation:(NSString *)conversationId
stickTop:(BOOL)stickTop
success:(nullable V2NIMSuccessCallback)success
failure:(nullable V2NIMFailureCallback)failure;
参数名称 | 类型 | 是否必填 | 默认值 | 描述 |
---|---|---|---|---|
conversationId |
NSString | 是 | - | 会话 ID,如果为空、不合法、不存在则返回 191004 参数错误。 |
stickTop |
BOOL | 是 | - | 是否置顶会话。 |
success |
V2NIMSuccessCallback |
是 | - | 置顶会话成功回调 |
failure |
V2NIMFailureCallback |
是 | - | 置顶会话失败回调,返回错误码。 |
cppvirtual void stickTopConversation(nstd::string conversationId,
bool stickTop,
V2NIMSuccessCallback<void> success,
V2NIMFailureCallback failure) = 0;
参数名称 | 类型 | 是否必填 | 默认值 | 描述 |
---|---|---|---|---|
conversationId |
String | 是 | - | 会话 ID,如果为空、不合法、不存在则返回 191004 参数错误。 |
stickTop |
BOOL | 是 | - | 是否置顶会话。 |
success |
V2NIMSuccessCallback |
是 | - | 置顶会话成功回调 |
failure |
V2NIMFailureCallback |
是 | - | 置顶会话失败回调,返回错误码。 |
typescriptstickTopConversation(conversationId: string, stickTop: boolean): Promise<void>
参数名称 | 类型 | 是否必填 | 默认值 | 描述 |
---|---|---|---|---|
conversationId |
String | 是 | - | 会话 ID,如果为空、不合法、不存在则返回 191004 参数错误。 |
stickTop |
Boolean | 是 | - | 是否置顶会话。 |
typescriptstickTopConversation(conversationId: string, stickTop: boolean): Promise<void>
参数名称 | 类型 | 是否必填 | 默认值 | 描述 |
---|---|---|---|---|
conversationId |
String | 是 | - | 会话 ID,如果为空、不合法、不存在则返回 191004 参数错误。 |
stickTop |
Boolean | 是 | - | 是否置顶会话。 |
示例代码
javaNIMClient.getService(V2NIMConversationService.class).stickTopConversation("会话id", true, new V2NIMSuccessCallback<Void>() {
@Override
public void onSuccess(Void unused) {
// success
}
}, new V2NIMFailureCallback() {
@Override
public void onFailure(V2NIMError error) {
int code = error.getCode();
String desc = error.getDesc();
// handle error
}
});
objective-c[NIMSDK.sharedSDK.v2ConversationService stickTopConversation:@"conversationId" stickTop:YES success:^{
// success
} failure:^(V2NIMError *error) {
// handle error
}];
cppauto conversationId = V2NIMConversationId::p2pConversationId("account1");
conversationService.stickTopConversation(
conversationId,
true,
[]() {
// stick top succeeded
},
[](V2NIMError error) {
// stick top failed, handle error
});
typescripttry {
await nim.V2NIMConversationService.stickTopConversation("CONVERSATION_ID", true)
// Success
} catch (err) {
// handle error
}
typescriptlet conversationId: string = "cjl|1|cjl1"
let stickTop: boolean = true;
try {
await this.conversationService.stickTopConversation(conversationId, stickTop)
// success
} catch (e) {
// fail
}
返回值
无返回值
Promise<void>
相关回调
- 请求成功,返回
V2NIMSuccessCallback
回调;置顶成功,返回onConversationChanged
回调。 - 请求失败,返回
V2NIMFailuerCallback
回调,包含会话相关错误码。
置顶成功,返回 onConversationChanged
回调。
getTotalUnreadCount
接口描述
获取全部会话的消息总未读数。
- 数据同步完成前,可能查询不到完整数据。
- 该接口为同步。
参数说明
javaint getTotalUnreadCount();
无参数
objective-c- (NSInteger)getTotalUnreadCount;
无参数
cppvirtual uint32_t getTotalUnreadCount() = 0;
无参数
typescriptgetTotalUnreadCount(): number
无参数
typescriptgetTotalUnreadCount(): number
无参数
示例代码
javaint totalUnreadCount = NIMClient.getService(V2NIMConversationService.class).getTotalUnreadCount();
objective-cNSInteger count = [NIMSDK.sharedSDK.v2ConversationService getTotalUnreadCount];
cppauto totalUnreadCount = conversationService.getTotalUnreadCount();
typescriptconst count = nim.V2NIMConversationService.getTotalUnreadCount()
typescriptconst unreadCount: number = this.conversationService.getTotalUnreadCount()
返回值
全部会话的消息总未读数
getUnreadCountByIds
接口描述
获取指定的会话列表的总未读数。
- 查询前请确保指定的会话已存在。
- 数据同步完成前,可能查询不到完整数据。
参数说明
javavoid getUnreadCountByIds(@NonNull List<String> conversationIds, V2NIMSuccessCallback<Integer> success, V2NIMFailureCallback failure);
参数名称 | 类型 | 是否必填 | 默认值 | 描述 |
---|---|---|---|---|
conversationIds |
List<String> | 是 | - | 会话 ID 列表,不可为空,否则返回 191004 参数错误。 |
success |
V2NIMSuccessCallback |
是 | - | 获取成功回调,返回指定会话列表的总未读数。 |
failure |
V2NIMFailureCallback |
是 | - | 获取失败回调,返回错误码。 |
objective-c- (void)getUnreadCountByIds:(NSArray<NSString *> *)conversationIds
success:(nullable V2NIMConversationUnreadCountCallback)success
failure:(nullable V2NIMFailureCallback)failure;
参数名称 | 类型 | 是否必填 | 默认值 | 描述 |
---|---|---|---|---|
conversationIds |
NSArray<NSString> | 是 | - | 会话 ID 列表,不可为空,否则返回 191004 参数错误。 |
success |
V2NIMConversationUnreadCountCallback |
是 | - | 获取会话未读数成功回调,可自定义。 |
failure |
V2NIMFailureCallback |
是 | - | 获取失败回调,返回错误码。 |
cppvirtual void getUnreadCountByIds(nstd::vector<nstd::string> conversationIds,
V2NIMSuccessCallback<uint32_t> success,
V2NIMFailureCallback failure) = 0;
参数名称 | 类型 | 是否必填 | 默认值 | 描述 |
---|---|---|---|---|
conversationIds |
nstd::vectornstd::string | 是 | - | 会话 ID 列表,不可为空,否则返回 191004 参数错误。 |
success |
V2NIMSuccessCallback |
是 | - | 获取成功回调,返回指定会话列表的总未读数。 |
failure |
V2NIMFailureCallback |
是 | - | 获取失败回调,返回错误码。 |
typescriptgetUnreadCountByIds(conversationIds: string[]): Promise<number>
参数名称 | 类型 | 是否必填 | 默认值 | 描述 |
---|---|---|---|---|
conversationIds |
string[] | 是 | - | 会话 ID 列表,不可为空,否则返回 191004 参数错误。 |
typescriptgetUnreadCountByIds(conversationIds: string[]): Promise<number>
参数名称 | 类型 | 是否必填 | 默认值 | 描述 |
---|---|---|---|---|
conversationIds |
string[] | 是 | - | 会话 ID 列表,不可为空,否则返回 191004 参数错误。 |
示例代码
javaNIMClient.getService(V2NIMConversationService.class).getUnreadCountByIds(ids, new V2NIMSuccessCallback<Integer>(){
@Override
public void onSuccess(Integer count){
// receive unread count
}
},new V2NIMFailureCallback(){
@Override
public void onFailure(V2NIMError error){
int code = error.getCode();
String desc = error.getDesc();
// handle error
}
});
objective-c[NIMSDK.sharedSDK.v2ConversationService getUnreadCountByIds:@[@"conversationIdA", @"conversationIdB"] success:^(NSInteger unreadCount) {
// receive unread count
} failure:^(V2NIMError * _Nonnull error) {
// handle error
}];
cppauto conversationIds = nstd::vector<nstd::string>();
conversationIds.emplace_back(V2NIMConversationId::p2pConversationId("account1"));
conversationIds.emplace_back(V2NIMConversationId::p2pConversationId("account2"));
conversationService.getUnreadCountByIds(
conversationIds,
[](uint32_t count) {
// get unread count succeeded
},
[](V2NIMError error) {
// get unread count failed, handle error
});
typescripttry {
const counts = await nim.V2NIMConversationService.getUnreadCountByIds(["CONVERSATION_ID1", "CONVERSATION_ID2"]);
} catch (err) {
// Handle error
}
typescriptlet conversationIds: string[] = ["cjl|1|cjl1", "cjl|2|cjl2"];
try {
const unreadCount: number = await this.conversationService.getUnreadCountByIds(conversationIds)
// success
} catch (e) {
// fail
}
返回值
无返回值
Promise<number> 指定的会话列表的总未读数。
相关回调
- 请求成功,返回
V2NIMSuccessCallback
回调,包含指定的会话列表的总未读数。 - 请求失败,返回
V2NIMFailuerCallback
回调,包含会话相关错误码。
- 请求成功,返回
V2NIMConversationUnreadCountCallback
回调,可自定义设置。 - 请求失败,返回
V2NIMFailuerCallback
回调,包含会话相关错误码。
无
getUnreadCountByFilter
接口描述
获取过滤后的所有会话列表消息总未读数。
数据同步完成前,可能查询不到完整数据。
参数说明
javavoid getUnreadCountByFilter(V2NIMConversationFilter filter, V2NIMSuccessCallback<Integer> success, V2NIMFailureCallback failure);
参数名称 | 类型 | 是否必填 | 默认值 | 描述 |
---|---|---|---|---|
filter |
V2NIMConversationFilter |
是 | - | 过滤器配置,SDK 会按照该参数配置进行滤,并返回过滤后的会话列表的消息总未读数。 |
success |
V2NIMSuccessCallback |
是 | - | 获取成功回调,返回过滤后的会话列表的总未读数。 |
failure |
V2NIMFailureCallback |
是 | - | 获取失败回调,返回错误码。 |
objective-c- (void)getUnreadCountByFilter:(V2NIMConversationFilter *)filter
success:(nullable V2NIMConversationUnreadCountCallback)success
failure:(nullable V2NIMFailureCallback)failure;
参数名称 | 类型 | 是否必填 | 默认值 | 描述 |
---|---|---|---|---|
filter |
V2NIMConversationFilter |
是 | - | 过滤器配置,SDK 会按照该参数配置进行滤,并返回过滤后的会话列表的消息总未读数。 |
success |
V2NIMConversationUnreadCountCallback |
是 | - | 获取会话未读数成功回调,可自定义。 |
failure |
V2NIMFailureCallback |
是 | - | 获取失败回调,返回错误码。 |
cppvirtual void getUnreadCountByFilter(V2NIMConversationFilter filter, V2NIMSuccessCallback<uint32_t> success, V2NIMFailureCallback failure) = 0;
参数名称 | 类型 | 是否必填 | 默认值 | 描述 |
---|---|---|---|---|
filter |
V2NIMConversationFilter |
是 | - | 过滤器配置,SDK 会按照该参数配置进行滤,并返回过滤后的会话列表的消息总未读数。 |
success |
V2NIMSuccessCallback |
是 | - | 获取成功回调,返回过滤后的会话列表的总未读数。 |
failure |
V2NIMFailureCallback |
是 | - | 获取失败回调,返回错误码。 |
typescriptgetUnreadCountByFilter(filter: V2NIMConversationFilter): Promise<number>
参数名称 | 类型 | 是否必填 | 默认值 | 描述 |
---|---|---|---|---|
filter |
V2NIMConversationFilter |
是 | - | 过滤器配置,SDK 会按照该参数配置进行滤,并返回过滤后的会话列表的消息总未读数。 |
typescriptgetUnreadCountByFilter(filter: V2NIMConversationFilter): Promise<number>
参数名称 | 类型 | 是否必填 | 默认值 | 描述 |
---|---|---|---|---|
filter |
V2NIMConversationFilter |
是 | - | 过滤器配置,SDK 会按照该参数配置进行滤,并返回过滤后的会话列表的消息总未读数。 |
示例代码
javaV2NIMConversationFilter filter = new V2NIMConversationFilter();
List<V2NIMConversationType> conversionTypes = new ArrayList<>();
conversionTypes.add(V2NIMConversationType.V2NIM_CONVERSATION_TYPE_P2P);
filter.setConversationTypes(conversionTypes);
filter.setConversationGroupId("会话分组id");
NIMClient.getService(V2NIMConversationService.class).getUnreadCountByFilter(filter, new V2NIMSuccessCallback<Integer>(){
@Override
public void onSuccess(Integer count){
// receive unread count
}
},new V2NIMFailureCallback(){
@Override
public void onFailure(V2NIMError error){
int code = error.getCode();
String desc = error.getDesc();
// handle error
}
});
objective-cV2NIMConversationFilter *filter = [[V2NIMConversationFilter alloc] init];
filter.conversationTypes = @[
@(V2NIM_CONVERSATION_TYPE_P2P),
@(V2NIM_CONVERSATION_TYPE_TEAM)
];
filter.conversationGroupId = @"groupId";
filter.ignoreMuted = YES;
[NIMSDK.sharedSDK.v2ConversationService getUnreadCountByFilter:filter
success:^(NSInteger unreadCount) {
// receive unread count
}
failure:^(V2NIMError * _Nonnull error) {
// handle error
}];
cppV2NIMConversationFilter filter;
filter.conversationTypes = {V2NIM_CONVERSATION_TYPE_P2P, V2NIM_CONVERSATION_TYPE_TEAM};
conversationService.getUnreadCountByFilter(
filter,
[](uint32_t count) {
// get unread count succeeded
},
[](V2NIMError error) {
// get unread count failed, handle error
});
typescripttry {
// P2P type
const filter = { conversationTypes: [1] }
const counts = await nim.V2NIMConversationService.getUnreadCountByFilter(filter)
// receive unread count
} catch (err) {
// handle error
}
typescriptlet filter: V2NIMConversationFilter = {
conversationTypes: [V2NIMConversationType.V2NIM_CONVERSATION_TYPE_P2P]
}
try {
let unreadCount: number = await this.conversationService.getUnreadCountByFilter(filter)
// success
} catch (e) {
// fail
}
返回值
无返回值
Promise<number> 过滤后的会话列表的消息总未读数。
相关回调
- 请求成功,返回
V2NIMSuccessCallback
回调,包含过滤后的会话列表的消息总未读数。 - 请求失败,返回
V2NIMFailuerCallback
回调,包含会话相关错误码。
- 请求成功,返回
V2NIMConversationUnreadCountCallback
回调,可自定义设置。 - 请求失败,返回
V2NIMFailuerCallback
回调,包含会话相关错误码。
无
clearTotalUnreadCount
接口描述
将全部会话的消息总未读数清零。
清零成功后,SDK 返回 onTotalUnreadChanged
、onConversationChanged
和 onUnreadCountChangedByFilter
回调,并同步数据库和缓存。
参数说明
javavoid clearTotalUnreadCount(V2NIMSuccessCallback<Void> success, V2NIMFailureCallback failure);
参数名称 | 类型 | 是否必填 | 默认值 | 描述 |
---|---|---|---|---|
success |
V2NIMSuccessCallback |
是 | - | 清零成功回调 |
failure |
V2NIMFailureCallback |
是 | - | 清零失败回调,返回错误码。 |
objective-c- (void)clearTotalUnreadCount:(nullable V2NIMSuccessCallback)success
failure:(nullable V2NIMFailureCallback)failure;
参数名称 | 类型 | 是否必填 | 默认值 | 描述 |
---|---|---|---|---|
success |
V2NIMSuccessCallback |
是 | - | 清零成功回调 |
failure |
V2NIMFailureCallback |
是 | - | 清零失败回调,返回错误码。 |
cppvirtual void clearTotalUnreadCount(V2NIMSuccessCallback<void> success, V2NIMFailureCallback failure) = 0;
参数名称 | 类型 | 是否必填 | 默认值 | 描述 |
---|---|---|---|---|
success |
V2NIMSuccessCallback |
是 | - | 清零成功回调 |
failure |
V2NIMFailureCallback |
是 | - | 清零失败回调,返回错误码。 |
typescriptclearTotalUnreadCount(): Promise<void>
无参数
typescriptclearTotalUnreadCount(): Promise<void>
无参数
示例代码
javaNIMClient.getService(V2NIMConversationService.class).clearTotalUnreadCount(new V2NIMSuccessCallback<Void>(){
@Override
public void onSuccess(Void unused) {
// success
}
}, new V2NIMFailureCallback(){
@Override
public void onFailure(V2NIMError error){
int code = error.getCode();
String desc = error.getDesc();
// handle error
}
});
objective-c[NIMSDK.sharedSDK.v2ConversationService clearTotalUnreadCount:^{
} failure:^(V2NIMError * _Nonnull error) {
// handle error
}];
cppconversationService.clearTotalUnreadCount(
[]() {
// clear total unread count succeeded
},
[](V2NIMError error) {
// clear total unread count failed, handle error
});
typescripttry {
await nim.V2NIMConversationService.clearTotalUnreadCount()
// Success
} catch (err) {
// handle error
}
typescripttry {
await nim.V2NIMConversationService.clearTotalUnreadCount()
// Success
} catch (err) {
// handle error
}
返回值
无返回值
Promise<void>
相关回调
- 请求成功,返回
V2NIMSuccessCallback
回调。清零成功,返回onTotalUnreadChanged
、onConversationChanged
和onUnreadCountChangedByFilter
回调。 - 请求失败,返回
V2NIMFailuerCallback
回调,包含会话相关错误码。
clearUnreadCountByIds
接口描述
将指定会话列表的消息未读数清零。
清零成功后,SDK 返回 onTotalUnreadChanged
、onConversationChanged
和 onUnreadCountChangedByFilter
回调,并同步数据库和缓存。
调用前请确保指定的会话已存在。
参数说明
javavoid clearUnreadCountByIds(@NonNull List<String> conversationIds, V2NIMSuccessCallback<List<V2NIMConversationOperationResult>> success, V2NIMFailureCallback failure);
参数名称 | 类型 | 是否必填 | 默认值 | 描述 |
---|---|---|---|---|
conversationIds |
List |
是 | - | 会话 ID 列表。 |
success |
V2NIMSuccessCallback |
是 | - | 清零成功回调,返回 List<V2NIMConversationOperationResult >,仅包含清零失败的会话 ID 及相关错误码。 |
failure |
V2NIMFailureCallback |
是 | - | 清零失败回调,返回错误码。 |
objective-c- (void)clearUnreadCountByIds:(NSArray<NSString *> *)conversationIds
success:(nullable V2NIMConversationOperationResultListCallback)success
failure:(nullable V2NIMFailureCallback)failure;
参数名称 | 类型 | 是否必填 | 默认值 | 描述 |
---|---|---|---|---|
conversationIds |
NSArray |
是 | - | 会话 ID 列表。 |
success |
V2NIMConversationOperationResultListCallback |
是 | - | 清零成功回调,可自定义设置。 |
failure |
V2NIMFailureCallback |
是 | - | 清零失败回调,返回错误码。 |
cppvirtual void clearUnreadCountByIds(nstd::vector<nstd::string> conversationIds,
V2NIMSuccessCallback<nstd::vector<V2NIMConversationOperationResult>> success,
V2NIMFailureCallback failure) = 0;
参数名称 | 类型 | 是否必填 | 默认值 | 描述 |
---|---|---|---|---|
conversationIds |
String | 是 | - | 会话 ID 列表。 |
success |
V2NIMSuccessCallback |
是 | - | 清零成功回调,返回 V2NIMConversationOperationResult 列表,仅包含清零失败的会话 ID 及相关错误码。 |
failure |
V2NIMFailureCallback |
是 | - | 清零失败回调,返回错误码。 |
typescriptclearUnreadCountByIds(conversationIds: string[]): Promise<V2NIMConversationOperationResult[]>
参数名称 | 类型 | 是否必填 | 默认值 | 描述 |
---|---|---|---|---|
conversationIds |
String[] | 是 | - | 会话 ID 列表。 |
typescriptclearUnreadCountByIds(conversationIds: string[]): Promise<V2NIMConversationOperationResult[]>
参数名称 | 类型 | 是否必填 | 默认值 | 描述 |
---|---|---|---|---|
conversationIds |
String[] | 是 | - | 会话 ID 列表。 |
示例代码
javaNIMClient.getService(V2NIMConversationService.class).clearUnreadCountByIds(ids, new V2NIMSuccessCallback<List<V2NIMConversationOperationResult>>(){
@Override
public void onSuccess(List<V2NIMConversationOperationResult> results){
// check failed conversation
}
}, new V2NIMFailureCallback(){
@Override
public void onFailure(V2NIMError error){
int code = error.getCode();
String desc = error.getDesc();
// handle error
}
});
objective-c[NIMSDK.sharedSDK.v2ConversationService clearUnreadCountByIds:@[@"conversationIdA", @"conversationIdB"] success:^(NSArray<V2NIMConversationOperationResult *> *resultList) {
if (resultList.count > 0) {
// check failed conversation
}
} failure:^(V2NIMError * _Nonnull error) {
// handle error
}];
cppauto conversationIds = nstd::vector<nstd::string>();
conversationIds.emplace_back(V2NIMConversationId::p2pConversationId("account1"));
conversationIds.emplace_back(V2NIMConversationId::p2pConversationId("account2"));
conversationService.clearUnreadCountByIds(
conversationIds,
[](nstd::vector<V2NIMConversationOperationResult> failedList) {
// clear unread count succeeded
},
[](V2NIMError error) {
// clear unread count failed, handle error
});
typescripttry {
await nim.V2NIMConversationService.clearUnreadCountByIds(["CONVERSATION_ID1", "CONVERSATION_ID2"])
// Success
} catch (err) {
// handle error
}
typescriptlet conversationIds: string[] = ["cjl|1|cjl1", "cjl|2|cjl2"];
try {
const deleteFailedConversationList: V2NIMConversationOperationResult[] = await this.conversationService.clearUnreadCountByIds(conversationIds)
if (deleteFailedConversationList && deleteFailedConversationList.length > 0) {
// partial success
} else {
// all success
}
} catch (e) {
// fail
}
返回值
无返回值
Promise<V2NIMConversationOperationResult
[]>
相关回调
- 请求成功,返回
V2NIMSuccessCallback
回调。清零成功,返回onTotalUnreadChanged
、onConversationChanged
和onUnreadCountChangedByFilter
回调。 - 请求失败,返回
V2NIMFailuerCallback
回调,包含会话相关错误码。
- 请求成功,返回
V2NIMConversationOperationResultListCallback
回调。清零成功,返回onTotalUnreadChanged
、onConversationChanged
和onUnreadCountChangedByFilter
回调。 - 请求失败,返回
V2NIMFailuerCallback
回调,包含会话相关错误码。
clearUnreadCountByGroupId
接口描述
将指定分组的会话消息未读数清零。
清零成功后,SDK 返回 onTotalUnreadChanged
、onConversationChanged
和 onUnreadCountChangedByFilter
回调,并同步数据库和缓存。
调用前请确保指定的会话分组已存在。
参数说明
javavoid clearUnreadCountByGroupId(@NonNull String groupId, V2NIMSuccessCallback<Void> success, V2NIMFailureCallback failure);
参数名称 | 类型 | 是否必填 | 默认值 | 描述 |
---|---|---|---|---|
groupId |
String | 是 | - | 会话分组 ID。通过调用 createConversationGroup 获得。不可为空,否则返回 191004 参数错误。 |
success |
V2NIMSuccessCallback |
是 | - | 清零成功回调 |
failure |
V2NIMFailureCallback |
是 | - | 清零失败回调,返回错误码。 |
objective-c- (void)clearUnreadCountByGroupId:(NSString *)groupId
success:(nullable V2NIMSuccessCallback)success
failure:(nullable V2NIMFailureCallback)failure;
参数名称 | 类型 | 是否必填 | 默认值 | 描述 |
---|---|---|---|---|
groupId |
String | 是 | - | 会话分组 ID。通过调用 createConversationGroup 获得。不可为空,否则返回 191004 参数错误。 |
success |
V2NIMSuccessCallback |
是 | - | 清零成功回调 |
failure |
V2NIMFailureCallback |
是 | - | 清零失败回调,返回错误码。 |
cppvirtual void clearUnreadCountByGroupId(nstd::string groupId, V2NIMSuccessCallback<void> success, V2NIMFailureCallback failure) = 0;
参数名称 | 类型 | 是否必填 | 默认值 | 描述 |
---|---|---|---|---|
groupId |
String | 是 | - | 会话分组 ID。通过调用 createConversationGroup 获得。不可为空,否则返回 191004 参数错误。 |
success |
V2NIMSuccessCallback |
是 | - | 清零成功回调 |
failure |
V2NIMFailureCallback |
是 | - | 清零失败回调,返回错误码。 |
typescriptclearUnreadCountByGroupId(groupId: string): Promise<void>
参数名称 | 类型 | 是否必填 | 默认值 | 描述 |
---|---|---|---|---|
groupId |
String | 是 | - | 会话分组 ID。通过调用 createConversationGroup 获得。不可为空,否则返回 191004 参数错误。 |
typescriptclearUnreadCountByGroupId(groupId: string): Promise<void>
参数名称 | 类型 | 是否必填 | 默认值 | 描述 |
---|---|---|---|---|
groupId |
String | 是 | - | 会话分组 ID。通过调用 createConversationGroup 获得。不可为空,否则返回 191004 参数错误。 |
示例代码
javaNIMClient.getService(V2NIMConversationService.class).clearUnreadCountByGroupId("会话分组id",new V2NIMSuccessCallback<Void>(){
@Override
public void onSuccess(Void unused) {
// success
}
}, new V2NIMFailureCallback(){
@Override
public void onFailure(V2NIMError error){
int code = error.getCode();
String desc = error.getDesc();
// handle error
}
});
objective-c[NIMSDK.sharedSDK.v2ConversationService clearUnreadCountByGroupId:@"groupId" success:^{
} failure:^(V2NIMError * _Nonnull error) {
// handle error
}];
cppconversationService.clearUnreadCountByGroupId(
"groupId",
[]() {
// clear unread count succeeded
},
[](V2NIMError error) {
// clear unread count failed, handle error
});
typescripttry {
await nim.V2NIMConversationService.clearUnreadCountByGroupId('GROUP_ID')
// Success
} catch (err) {
// handle error
}
typescriptlet groupId: string = "0123456789"
try {
await this.conversationService.clearUnreadCountByGroupId(groupId)
// success
} catch (e) {
// fail
}
返回值
无返回值
Promise<void>
相关回调
- 请求成功,返回
V2NIMSuccessCallback
回调。清零成功,返回onTotalUnreadChanged
、onConversationChanged
和onUnreadCountChangedByFilter
回调。 - 请求失败,返回
V2NIMFailuerCallback
回调,包含会话相关错误码。
clearUnreadCountByTypes
接口描述
将指定类型的会话消息未读数清零。
清零成功后,SDK 返回 onTotalUnreadChanged
、onConversationChanged
和 onUnreadCountChangedByFilter
回调,并同步数据库和缓存。
参数说明
javavoid clearUnreadCountByTypes(@NonNull List<V2NIMConversationType> conversationTypes, V2NIMSuccessCallback<Void> success, V2NIMFailureCallback failure);
参数名称 | 类型 | 是否必填 | 默认值 | 描述 |
---|---|---|---|---|
conversationTypes |
List<V2NIMConversationType > |
是 | - | 会话类型 |
success |
V2NIMSuccessCallback |
是 | - | 清零成功回调 |
failure |
V2NIMFailureCallback |
是 | - | 清零失败回调,返回错误码。 |
objective-c- (void)clearUnreadCountByTypes:(NSArray<NSNumber *> *)conversationTypes
success:(nullable V2NIMSuccessCallback)success
failure:(nullable V2NIMFailureCallback)failure;
参数名称 | 类型 | 是否必填 | 默认值 | 描述 |
---|---|---|---|---|
conversationTypes |
NSArray<NSNumber *> * | 是 | - | 会话类型 |
success |
V2NIMSuccessCallback |
是 | - | 清零成功回调 |
failure |
V2NIMFailureCallback |
是 | - | 清零失败回调,返回错误码。 |
cppvirtual void clearUnreadCountByTypes(nstd::vector<V2NIMConversationType> conversationTypes,
V2NIMSuccessCallback<void> success,
V2NIMFailureCallback failure) = 0;
参数名称 | 类型 | 是否必填 | 默认值 | 描述 |
---|---|---|---|---|
conversationTypes |
nstd::vector<V2NIMConversationType > |
是 | - | 会话类型 |
success |
V2NIMSuccessCallback |
是 | - | 清零成功回调 |
failure |
V2NIMFailureCallback |
是 | - | 清零失败回调,返回错误码。 |
typescriptclearUnreadCountByTypes(types: V2NIMConversationType[]): Promise<void>
参数名称 | 类型 | 是否必填 | 默认值 | 描述 |
---|---|---|---|---|
types |
V2NIMConversationType [] |
是 | - | 会话类型 |
typescriptclearUnreadCountByTypes(types: V2NIMConversationType[]): Promise<void>
参数名称 | 类型 | 是否必填 | 默认值 | 描述 |
---|---|---|---|---|
types |
V2NIMConversationType [] |
是 | - | 会话类型 |
示例代码
javaList<V2NIMConversationType> conversionTypes = new ArrayList<>();
conversionTypes.add(V2NIMConversationType.V2NIM_CONVERSATION_TYPE_P2P);
NIMClient.getService(V2NIMConversationService.class).clearUnreadCountByTypes(conversionTypes,new V2NIMSuccessCallback<Void>(){
@Override
public void onSuccess(Void unused) {
// TODO
}
}, new V2NIMFailureCallback(){
@Override
public void onFailure(V2NIMError error){
int code = error.getCode();
String desc = error.getDesc();
// TODO
}
});
objective-c[NIMSDK.sharedSDK.v2ConversationService clearUnreadCountByTypes:@[
@(V2NIM_CONVERSATION_TYPE_P2P),
@(V2NIM_CONVERSATION_TYPE_TEAM),
] success:^{
} failure:^(V2NIMError * _Nonnull error) {
// handle error
}];
cppconversationService.clearUnreadCountByTypes(
{V2NIM_CONVERSATION_TYPE_P2P, V2NIM_CONVERSATION_TYPE_TEAM},
[]() {
// clear unread count succeeded
},
[](V2NIMError error) {
// clear unread count failed, handle error
});
typescripttry {
await nim.V2NIMConversationService.clearUnreadCountByTypes([1])
// todo Success.
} catch (err) {
// todo err.code
}
typescriptlet conversationTypes:V2NIMConversationType[] = [V2NIMConversationType.V2NIM_CONVERSATION_TYPE_P2P]
try {
await this.conversationService.clearUnreadCountByTypes(conversationTypes)
// success
} catch (e) {
// fail
}
返回值
无返回值
Promise<void>
相关回调
- 请求成功,返回
V2NIMSuccessCallback
回调。清零成功,返回onTotalUnreadChanged
、onConversationChanged
和onUnreadCountChangedByFilter
回调。 - 请求失败,返回
V2NIMFailuerCallback
回调,包含会话相关错误码。
subscribeUnreadCountByFilter
接口描述
订阅过滤后的会话未读数变化监听。您可以多次调用该方法,订阅多个过滤器的会话未读数监听。
订阅成功后,当过滤后的会话未读数变化,SDK 返回 onUnreadCountChangedByFilter
回调。
参数说明
javavoid subscribeUnreadCountByFilter(@NonNull V2NIMConversationFilter filter);
参数名称 | 类型 | 是否必填 | 默认值 | 描述 |
---|---|---|---|---|
filter |
V2NIMConversationFilter |
是 | - | 会话过滤对象 |
objective-c- (void)subscribeUnreadCountByFilter:(V2NIMConversationFilter *)filter;
参数名称 | 类型 | 是否必填 | 默认值 | 描述 |
---|---|---|---|---|
filter |
V2NIMConversationFilter |
是 | - | 会话过滤对象 |
cppvirtual void subscribeUnreadCountByFilter(V2NIMConversationFilter filter) = 0;
参数名称 | 类型 | 是否必填 | 默认值 | 描述 |
---|---|---|---|---|
filter |
V2NIMConversationFilter |
是 | - | 会话过滤对象 |
typescriptsubscribeUnreadCountByFilter(filter: V2NIMConversationFilter): void
参数名称 | 类型 | 是否必填 | 默认值 | 描述 |
---|---|---|---|---|
filter |
V2NIMConversationFilter |
是 | - | 会话过滤对象 |
typescriptsubscribeUnreadCountByFilter(filter: V2NIMConversationFilter): void
参数名称 | 类型 | 是否必填 | 默认值 | 描述 |
---|---|---|---|---|
filter |
V2NIMConversationFilter |
是 | - | 会话过滤对象 |
示例代码
javaV2NIMConversationFilter filter = new V2NIMConversationFilter();
List<V2NIMConversationType> conversionTypes = new ArrayList<>();
conversionTypes.add(V2NIMConversationType.V2NIM_CONVERSATION_TYPE_P2P);
filter.setConversationTypes(conversionTypes);
filter.setConversationGroupId("会话分组id");
filter.setIgnoreMuted(true);
V2NIMError result = NIMClient.getService(V2NIMConversationService.class).subscribeUnreadCountByFilter(filter);
if(result == null){
// success
}else{
int code = result.getCode();
String desc = result.getDesc();
// handle error
}
objective-cV2NIMConversationFilter *filter = [[V2NIMConversationFilter alloc] init];
filter.conversationTypes = @[
@(V2NIM_CONVERSATION_TYPE_P2P),
@(V2NIM_CONVERSATION_TYPE_TEAM),
];
filter.conversationGroupId = @"groupId";
filter.ignoreMuted = YES;
[NIMSDK.sharedSDK.v2ConversationService subscribeUnreadCountByFilter:filter];
cppV2NIMConversationFilter filter;
filter.conversationTypes = {V2NIM_CONVERSATION_TYPE_P2P, V2NIM_CONVERSATION_TYPE_TEAM};
conversationService.subscribeUnreadCountByFilter(filter);
typescriptconst filter = {
conversationTypes: [1]
}
nim.V2NIMConversationService.subscribeUnreadCountByFilter(filter)
typescriptconst filter: V2NIMConversationFilter = {
conversationTypes: [V2NIMConversationType.V2NIM_CONVERSATION_TYPE_P2P]
}
try {
this.conversationService.subscribeUnreadCountByFilter(filter)
// success
} catch (e) {
// fail
}
返回值
无
unsubscribeUnreadCountByFilter
接口描述
取消订阅过滤后的会话未读数变化监听。
参数说明
javavoid unsubscribeUnreadCountByFilter(@NonNull V2NIMConversationFilter filter);
参数名称 | 类型 | 是否必填 | 默认值 | 描述 |
---|---|---|---|---|
filter |
V2NIMConversationFilter |
是 | - | 会话过滤对象。如果该对象参数均为空,则返回 191004 错误码。 |
objective-c- (void)unsubscribeUnreadCountByFilter:(V2NIMConversationFilter *)filter;
参数名称 | 类型 | 是否必填 | 默认值 | 描述 |
---|---|---|---|---|
filter |
V2NIMConversationFilter |
是 | - | 会话过滤对象。如果该对象参数均为空,则返回 191004 错误码。 |
cppvirtual void unsubscribeUnreadCountByFilter(V2NIMConversationFilter filter) = 0;
参数名称 | 类型 | 是否必填 | 默认值 | 描述 |
---|---|---|---|---|
filter |
V2NIMConversationFilter |
是 | - | 会话过滤对象。如果该对象参数均为空,则返回 191004 错误码。 |
typescriptunsubscribeUnreadCountByFilter(filter: V2NIMConversationFilter): void
参数名称 | 类型 | 是否必填 | 默认值 | 描述 |
---|---|---|---|---|
filter |
V2NIMConversationFilter |
是 | - | 会话过滤对象。如果该对象参数均为空,则返回 191004 错误码。 |
typescriptunsubscribeUnreadCountByFilter(filter: V2NIMConversationFilter): void
参数名称 | 类型 | 是否必填 | 默认值 | 描述 |
---|---|---|---|---|
filter |
V2NIMConversationFilter |
是 | - | 会话过滤对象。如果该对象参数均为空,则返回 191004 错误码。 |
示例代码
javaV2NIMError result = NIMClient.getService(V2NIMConversationService.class).unsubscribeUnreadCountByFilter(filter);
if(result == null){
// success
}else{
int code = result.getCode();
String desc = result.getDesc();
// handle error
}
objective-cV2NIMConversationFilter *filter = [[V2NIMConversationFilter alloc] init];
filter.conversationTypes = @[
@(V2NIM_CONVERSATION_TYPE_P2P),
@(V2NIM_CONVERSATION_TYPE_TEAM),
];
filter.conversationGroupId = @"groupId";
filter.ignoreMuted = YES;
[NIMSDK.sharedSDK.v2ConversationService unsubscribeUnreadCountByFilter:filter];
cppV2NIMConversationFilter filter;
filter.conversationTypes = {V2NIM_CONVERSATION_TYPE_P2P, V2NIM_CONVERSATION_TYPE_TEAM};
conversationService.unsubscribeUnreadCountByFilter(filter);
typescriptconst filter = {
conversationTypes: [1]
}
nim.V2NIMConversationService.unsubscribeUnreadCountByFilter(filter)
typescriptconst filter: V2NIMConversationFilter = {
conversationTypes: [V2NIMConversationType.V2NIM_CONVERSATION_TYPE_P2P]
}
try {
this.conversationService.unsubscribeUnreadCountByFilter(filter)
// success
} catch (e) {
// fail
}
返回值
无