ios - sendbird sdk 自动重连
问题描述
我在 5 分钟后收到错误描述。这是因为 sendbird sdk 的自动重新连接。那么,是否有任何方法可以停止自动连接或减少错误消息的到达时间。
这是我尝试过的,
let preSendMessage = channel.sendFileMessage(withBinaryData: data!, filename: "demo", type: mimeType! as String, size: UInt((data?.count)!), thumbnailSizes: [thumbnailSize!], data: "", customType: "", progressHandler: nil, completionHandler: { (fileMessage, error) in
DispatchQueue.main.asyncAfter(deadline: DispatchTime.now() + .milliseconds(150), execute: {
let preSendMessage = self.preSendMessages[(fileMessage?.requestId)!]
self.preSendMessages.removeValue(forKey: (fileMessage?.requestId)!)
if error != nil {
self.resendableMessages[(fileMessage?.requestId)!] = preSendMessage
self.resendableFileData[(preSendMessage as! SBDFileMessage).requestId!] = [
"data": data as AnyObject,
"type": mimeType as AnyObject,
]
self.chatTableView.reloadData()
DispatchQueue.main.async {
self.chatTableView.scrollToLastRow(animated: true)
}
return
}
if fileMessage != nil {
self.resendableMessages.removeValue(forKey: (fileMessage?.requestId)!)
self.resendableFileData.removeValue(forKey: (fileMessage?.requestId)!)
self.messages[self.messages.index(of: preSendMessage as! SBDFileMessage)!] = fileMessage!
DispatchQueue.main.async {
self.chatTableView.reloadData()
DispatchQueue.main.async {
self.chatTableView.scrollToLastRow(animated: true)
}
}
}
})
})
解决方案
终于找到解决办法了
显示错误,因为 sendbird 不允许发送包含 15MB 或更大大小的文件消息。
所以,我调整了视频大小,然后发送到 sendbird 服务器,现在它正在工作。
推荐阅读
- pandas - 在一个轴上绘制数据框列,在同一图上将其他列绘制为单独的线(以不同的颜色)
- javascript - Javascript Array - 获取前 10 个项目
- python - PYTHON FUNCTIONS UnboundLocalError:分配前引用的局部变量“值”
- powershell - 父进程结束时杀死子进程
- c# - 为什么我们不再需要在更高版本的 ASP.NET Core 中手动验证模型?
- javascript - JavaScript:将 [[a, b]] 转换为 [a, b]
- javascript - 我想使用 jquery ajax 方法将数据从刀片传递到控制器,但我收到类似 [object Object] 的错误。我该如何解决这个问题?
- python - 如何正确设置日期期间条件?
- amazon-web-services - 如何通过 aws ali 获取 AWS 上 Service Quotas 中的 Usage 值?
- python - 无法使用 os.system 下载文件