UserEntity.swift 1.2 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445
  1. //
  2. // UserEntity.swift
  3. // TUIRoomKit
  4. //
  5. // Created by WesleyLei on 2022/9/26.
  6. // Copyright © 2022 Tencent. All rights reserved.
  7. //
  8. import Foundation
  9. import RTCRoomEngine
  10. class UserEntity {
  11. var userId: String = ""
  12. var userName: String = ""
  13. var avatarUrl: String = ""
  14. var userRole: TUIRole = .generalUser
  15. var userVoiceVolume: Int = 0
  16. var hasAudioStream: Bool = false
  17. var hasVideoStream: Bool = false
  18. var videoStreamType: TUIVideoStreamType = .cameraStream
  19. var isOnSeat: Bool = false
  20. var disableSendingMessage: Bool = false
  21. var hasScreenStream: Bool = false
  22. func update(userInfo: TUIUserInfo) {
  23. userId = userInfo.userId
  24. userName = userInfo.nameCard.isEmpty ? userInfo.userName : userInfo.nameCard
  25. avatarUrl = userInfo.avatarUrl
  26. userRole = userInfo.userRole
  27. hasAudioStream = userInfo.hasAudioStream
  28. hasVideoStream = userInfo.hasVideoStream
  29. hasScreenStream = userInfo.hasScreenStream
  30. }
  31. init(){}
  32. init(invitation: TUIInvitation) {
  33. self.userId = invitation.invitee.userId
  34. self.userName = invitation.invitee.userName
  35. self.avatarUrl = invitation.invitee.avatarUrl
  36. }
  37. deinit {
  38. debugPrint("deinit \(self)")
  39. }
  40. }