ConferenceDefine.swift 2.7 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889
  1. //
  2. // ConferenceError.swift
  3. // TUIRoomKit
  4. //
  5. // Created by janejntang on 2024/3/14.
  6. //
  7. import Foundation
  8. import RTCRoomEngine
  9. @objcMembers public class StartConferenceParams: NSObject {
  10. public var roomId = ""
  11. public var isOpenMicrophone = true
  12. public var isOpenCamera = false
  13. public var isOpenSpeaker = true
  14. public var isMicrophoneDisableForAllUser = false
  15. public var isCameraDisableForAllUser = false
  16. public var isSeatEnabled = false
  17. public var name: String?
  18. public var password: String?
  19. public init(roomId: String,
  20. isOpenMicrophone: Bool = true,
  21. isOpenCamera: Bool = false,
  22. isOpenSpeaker: Bool = true,
  23. isMicrophoneDisableForAllUser: Bool = false,
  24. isCameraDisableForAllUser: Bool = false,
  25. isSeatEnabled: Bool = false,
  26. name: String? = nil,
  27. password: String? = nil) {
  28. self.roomId = roomId
  29. self.isOpenMicrophone = isOpenMicrophone
  30. self.isOpenCamera = isOpenCamera
  31. self.isOpenSpeaker = isOpenSpeaker
  32. self.isMicrophoneDisableForAllUser = isMicrophoneDisableForAllUser
  33. self.isCameraDisableForAllUser = isCameraDisableForAllUser
  34. self.isSeatEnabled = isSeatEnabled
  35. self.name = name
  36. self.password = password
  37. super.init()
  38. }
  39. }
  40. @objcMembers public class JoinConferenceParams: NSObject {
  41. public var roomId = ""
  42. public var isOpenMicrophone = true
  43. public var isOpenCamera = false
  44. public var isOpenSpeaker = true
  45. public var password: String?
  46. public init(roomId: String,
  47. isOpenMicrophone: Bool = true,
  48. isOpenCamera: Bool = false,
  49. isOpenSpeaker: Bool = true) {
  50. self.roomId = roomId
  51. self.isOpenMicrophone = isOpenMicrophone
  52. self.isOpenCamera = isOpenCamera
  53. self.isOpenSpeaker = isOpenSpeaker
  54. super.init()
  55. }
  56. }
  57. @objc public protocol ConferenceObserver {
  58. @objc optional func onConferenceStarted(roomInfo: TUIRoomInfo, error: TUIError, message: String)
  59. @objc optional func onConferenceJoined(roomInfo: TUIRoomInfo, error: TUIError, message: String)
  60. @objc optional func onConferenceFinished(roomInfo: TUIRoomInfo, reason: ConferenceFinishedReason)
  61. @objc optional func onConferenceExited(roomInfo: TUIRoomInfo, reason: ConferenceExitedReason)
  62. }
  63. @objc
  64. public enum ConferenceFinishedReason: Int {
  65. case finishedByOwner
  66. case finishedByServer
  67. }
  68. @objc
  69. public enum ConferenceExitedReason: Int {
  70. case exitedBySelf
  71. case exitedByAdminKickOut
  72. case exitedByServerKickOut
  73. case exitedByJoinedOnOtherDevice
  74. case exitedByKickedOutOfLine
  75. case exitedByUserSigExpired
  76. }