【发布时间】:2017-10-20 09:09:19
【问题描述】:
Quickblox iOS 视频附件
我已将 Quickblox iOS (Objc) 库集成到我的聊天模块应用程序中。
图像作为 QBRequest TUploadFile 方法下的附件是可能的。但我找不到任何可行的解决方案来根据同一请求制作视频附件。
我已通过阅读 Quickblog 的文档确认 - Quickblox 聊天 SDK 下可能有视频附件。
有人有任何可行的解决方案来制作视频文件附件吗?
以下代码用于在QBRequest TUploadFile下上传视频。
提前致谢!
- (void)uploadAndSendAttachmentMessage:(QBChatMessage*)message toDialog:(QBChatDialog*)dialog withChatService:(QMChatService*)chatService withAttachedVideo:(NSData*)videoData completion:(QBChatCompletionBlock)completion {
[self changeMessageAttachmentStatus:QMMessageAttachmentStatusLoading forMessage:message];
[QBRequest TUploadFile:videoData fileName:@"attachment video" contentType:@"video/mp4" isPublic:YES successBlock:^(QBResponse* response, QBCBlob* blob) {
QBChatAttachment* attachment = [QBChatAttachment new];
attachment.type = @"video";
attachment.ID = blob.UID;
attachment.url = [blob publicUrl];
message.attachments = @[attachment];
message.text = @"Attachment video";
[self saveData:videoData chatAttachment:attachment error:nil];
[self.attachmentsStorage setObject:videoData forKey:attachment.ID];
[self changeMessageAttachmentStatus:QMMessageAttachmentStatusLoaded forMessage:message];
[chatService sendMessage:message type:QMMessageTypeText toDialog:dialog saveToHistory:YES saveToStorage:YES completion:completion];
} statusBlock:^(QBRequest* request, QBRequestStatus* status) {
if ([self.delegate respondsToSelector:@selector(chatAttachmentService:didChangeUploadingProgress:forMessage:)]) {
[self.delegate chatAttachmentService:self didChangeUploadingProgress:status.percentOfCompletion forMessage:message];
}
} errorBlock:^(QBResponse* response) {
[self changeMessageAttachmentStatus:QMMessageAttachmentStatusNotLoaded forMessage:message];
if (completion) {
completion(response.error.error);
}
}];
}
【问题讨论】:
标签: ios objective-c video attachment quickblox