我正在尝试创建一对一通道连接,但是我无法弄清楚创建SDBUser的格式。我正在做以下尝试创建频道。
SBDGroupChannel.createChannelWithUsers([("123456", "1234567"], isDistinct: true) { (channel, error) in
if error != nil {
NSLog("Error: %@", error!)
return
} else {
//this means that the channel was successfully created
print(channel)
//segue to the open chat view
//segue here DREW
}
}
这些字符串是它们出现在SendBird中的ID。它有一个错误,它预期SDBUser的类型,并得到String。
我已尝试以下方法来获取SBDUser,但我得到以下值
let user1 = SBDUserListQuery.init(userIds: ["123456"])
但是用户值是SBDUserListQuery类型,所以它仍然不起作用。
我无法在SendBird文档中找到解决方案
答案 0 :(得分:1)
SendBird有多种方法可以创建包含用户对象或用户ID的组通道。您使用的方法是使用用户对象创建通道。以下链接是另一个带有用户ID的方法。
该链接适用于Objective-C,但您可以在Swift中采用相同的方法:
斯威夫特3:
SBDGroupChannel.createChannel(withUserIds: ["123456", "1234567"], isDistinct: true) { (channel, error) in
// Do something.
}
SBDUserListQuery
对象是获取用户列表的查询对象。如果要从查询对象中获取用户对象,则必须调用load方法。
方法的completionHandler
块返回用户列表。
斯威夫特3:
let query = SBDUserListQuery(userIds: ["123456"]);
query?.loadNextPage(completionHandler: { (users, error) in
})