批量查询弹幕消息
本文介绍如何批量查询弹幕消息。
说明
注意,弹幕消息是分页拉取的,页码要从1开始。
API使用示例
iOS:
// 以下为以升序AIRBRoomChatCommentsSortedTypeTimestampAscending从第一页开始查询,每页查询20个
id<AIRBRoomChannelProtocol> room = [[AIRBRoomEngine sharedInstance] getRoomChannelWithRoomID:@"xxx"];
[room.chat queryCommentsWithSortedType:AIRBRoomChatCommentsSortedTypeTimestampAscending pageNum:1 pageSize:20 onSuccess:^(AIRBRoomChannelCommentsResponse * _Nonnull response) {
//查询成功,response.commentList即为查询出来的弹幕列表
} onFailure:^(NSString * _Nonnull errorMsg) {
}];
Android:
CommentParam param = new CommentParam();
param.pageNum = 1;
param.pageSize = 50;
// TIME_ASC: 按时间升序; TIME_DESC: 按时间降序;
param.sortType = CommentSortType.TIME_ASC;
chatService.listComment(param, new Callback<PageModel<CommentModel>>() {
@Override
public void onSuccess(PageModel<CommentModel> data) {
int total = data.total;
boolean hasMore = data.hasMore;
List<CommentModel> list = data.list;
}
@Override
public void onError(String errorMsg) {
// 查询失败
}
});
Web:
// pageIndex从1开始
// sortType为排序方式,0为时间递增顺序,1为时间递减顺序
chatService.listComment(sortType, pageIndex, pageSize).then((res) => {
// 获取成功
console.log(res.commentModelList)
})
Windows:
auto room_ptr = alibaba::meta_space::MetaSpace::GetInstance()->GetRoomInstance(room_id);
std::shared_ptr<IChat> chat_plugin = std::dynamic_pointer_cast<IChat>(room_ptr->GetPlugin(PluginChat));
alibaba::chat::ListCommentReq req;
chat_plugin->ListComment(req,[](const ::alibaba::chat::ListCommentRsp& rsp) {
}, [](const alibaba::dps::DPSError& err) {
});