라이브 - 방장이 아닌 사용자가 유저 차단 시 라이브에서 강퇴되는 버그 수정
This commit is contained in:
parent
6cbd4edacc
commit
823bd8e92d
|
@ -597,7 +597,12 @@ struct LiveRoomView: View {
|
||||||
UserBlockConfirmDialogView(
|
UserBlockConfirmDialogView(
|
||||||
isShowing: $viewModel.isShowUesrBlockConfirm,
|
isShowing: $viewModel.isShowUesrBlockConfirm,
|
||||||
nickname: viewModel.reportUserNickname,
|
nickname: viewModel.reportUserNickname,
|
||||||
confirmAction: { viewModel.userBlock() }
|
confirmAction: {
|
||||||
|
viewModel.userBlock { userId in
|
||||||
|
viewModel.kickOutId = userId
|
||||||
|
viewModel.kickOut()
|
||||||
|
}
|
||||||
|
}
|
||||||
)
|
)
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -713,12 +713,14 @@ final class LiveRoomViewModel: NSObject, ObservableObject {
|
||||||
.store(in: &subscription)
|
.store(in: &subscription)
|
||||||
|
|
||||||
let nickname = getUserNicknameAndProfileUrl(accountId: kickOutId).nickname
|
let nickname = getUserNicknameAndProfileUrl(accountId: kickOutId).nickname
|
||||||
agora.sendMessageToPeer(peerId: String(kickOutId), rawMessage: LiveRoomRequestType.KICK_OUT.rawValue.data(using: .utf8)!, completion: { [unowned self] errorCode in
|
if UserDefaults.int(forKey: .userId) == liveRoomInfo?.creatorId {
|
||||||
if errorCode == .ok {
|
agora.sendMessageToPeer(peerId: String(kickOutId), rawMessage: LiveRoomRequestType.KICK_OUT.rawValue.data(using: .utf8)!, completion: { [unowned self] errorCode in
|
||||||
self.popupContent = "\(nickname)님을 내보냈습니다."
|
if errorCode == .ok {
|
||||||
self.isShowPopup = true
|
self.popupContent = "\(nickname)님을 내보냈습니다."
|
||||||
}
|
self.isShowPopup = true
|
||||||
})
|
}
|
||||||
|
})
|
||||||
|
}
|
||||||
|
|
||||||
if let index = muteSpeakers.firstIndex(of: UInt(kickOutId)) {
|
if let index = muteSpeakers.firstIndex(of: UInt(kickOutId)) {
|
||||||
muteSpeakers.remove(at: index)
|
muteSpeakers.remove(at: index)
|
||||||
|
@ -1129,7 +1131,7 @@ final class LiveRoomViewModel: NSObject, ObservableObject {
|
||||||
self.agora.sendRawMessageToGroup(rawMessage: setManagerMessage)
|
self.agora.sendRawMessageToGroup(rawMessage: setManagerMessage)
|
||||||
}
|
}
|
||||||
|
|
||||||
func userBlock() {
|
func userBlock(onSuccess: @escaping (Int) -> Void) {
|
||||||
isLoading = true
|
isLoading = true
|
||||||
userRepository.memberBlock(userId: reportUserId)
|
userRepository.memberBlock(userId: reportUserId)
|
||||||
.sink { result in
|
.sink { result in
|
||||||
|
@ -1150,6 +1152,8 @@ final class LiveRoomViewModel: NSObject, ObservableObject {
|
||||||
if decoded.success {
|
if decoded.success {
|
||||||
self.reportMessage = "차단하였습니다."
|
self.reportMessage = "차단하였습니다."
|
||||||
self.getUserProfile(userId: reportUserId)
|
self.getUserProfile(userId: reportUserId)
|
||||||
|
onSuccess(reportUserId)
|
||||||
|
|
||||||
self.reportUserId = 0
|
self.reportUserId = 0
|
||||||
self.reportUserNickname = ""
|
self.reportUserNickname = ""
|
||||||
self.reportUserIsBlocked = false
|
self.reportUserIsBlocked = false
|
||||||
|
|
Loading…
Reference in New Issue