浏览 SDKs · iOS
平台
SDKsiOS

查询指定会话

使用 iOS SDK 按用户或群组获取一个会话。

复制

从用户资料卡片或群资料页进入聊天界面时,按聊天目标获取对应的会话对象:

参数说明

参数类型说明
sessionTypeOIMConversationType会话类型。单聊使用 OIMConversationTypeC2C,群聊使用 OIMConversationTypeGroup。
sourceIDNSString *聊天目标标识。单聊为对方用户 ID,群聊为群组 ID。

会话类型枚举

枚举值数值含义
OIMConversationTypeC2C1单聊会话。
OIMConversationTypeGroup2普通群聊会话。
OIMConversationTypeSuperGroup3超大群聊会话。
[[OIMManager manager] getOneConversationWithSessionType:OIMConversationTypeC2C
                                               sourceID:@"user_1002"
                                              onSuccess:^(OIMConversationInfo *conversation) {
                                                  [chatRouter openConversation:conversation];
                                              }
                                              onFailure:^(NSInteger code, NSString *message) {
                                                  NSLog(@"getOneConversation failed: %ld %@", (long)code, message);
                                              }];

状态以 conversationID 为合并标识。

返回结果

成功回调 onSuccess 返回完整的会话资料对象 OIMConversationInfo *。

即便双方尚未产生任何消息记录,SDK 也会自动创建并返回正确的会话快照,无需在应用层手动拼接或伪造会话对象。若业务仅需要获取计算后的会话标识字符串,可调用纯本地计算方法生成会话 ID。

该查询仅返回调用时刻的数据快照,不触发会话 delegate 回调。会话新增与变更的实时监听请参考获取会话列表。