我指的是quickblox中的示例iOS应用程序,用于将聊天/通话功能集成到我的应用程序中。但是我看到SDK和Q-municate应用程序的框架有所不同。
视频/音频通话可以与SDK一起提供的示例应用程序正常运行,但是当我尝试查找用户的在线/离线状态时,我必须包含Q-municate的框架。包括我无法在模拟器上运行后,它给出了错误
“体系结构x86_64的未定义符号”
但它可以在真实设备上运行。
视频通话挂在带有Q-municate框架的设备上,但可以与SDK中的框架配合使用。
知道有什么区别吗??
更新:以下方法仍然可以使用。还有一种新的方法可以执行此操作,此方法在发布此答案时不可用。请参阅下面的Update-2部分。
为了找到用户状态(在线/离线),Quickblox建议以下内容:
每个用户都有一个lastRequestAt
字段-显示上次用户活动时间。您可以使用它来确定用户现在是联机还是脱机。
NSInteger currentTimeInterval = [[NSDate date] timeIntervalSince1970];
NSInteger userLastRequestAtTimeInterval = [[user lastRequestAt] timeIntervalSince1970];
// if user didn't do anything last 5 minutes (5*60 seconds)
if((currentTimeInterval - userLastRequestAtTimeInterval) > 5*60){
// user is offline now
}
更新2
要查找在线用户列表,请使用以下命令:
NSMutableDictionary *filters = [NSMutableDictionary dictionary];
filters[@"filter[]"] = @"date last_request_at gt 2012-03-20T08:47:34Z";
[QBRequest usersWithExtendedRequest:filters page:[QBGeneralResponsePage responsePageWithCurrentPage:1 perPage:100] successBlock:^(QBResponse *response, QBGeneralResponsePage *page, NSArray *users) {
// Request succeeded
} errorBlock:^(QBResponse *response) {
// Handle error
}];
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句