@100mslive/react-native-hms 0.7.3 → 0.8.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (211) hide show
  1. package/README.md +37 -39
  2. package/android/.gradle/checksums/checksums.lock +0 -0
  3. package/android/.gradle/checksums/md5-checksums.bin +0 -0
  4. package/android/.gradle/checksums/sha1-checksums.bin +0 -0
  5. package/android/.project +34 -0
  6. package/android/build.gradle +1 -2
  7. package/android/src/main/java/com/reactnativehmssdk/HmsDecoder.kt +268 -232
  8. package/android/src/main/java/com/reactnativehmssdk/HmsHelper.kt +122 -12
  9. package/android/src/main/java/com/reactnativehmssdk/HmsModule.kt +143 -508
  10. package/android/src/main/java/com/reactnativehmssdk/HmsSDK.kt +935 -0
  11. package/android/src/main/java/com/reactnativehmssdk/HmsView.kt +34 -22
  12. package/android/src/main/java/com/reactnativehmssdk/HmssdkPackage.kt +1 -2
  13. package/android/src/main/java/com/reactnativehmssdk/HmssdkViewManager.kt +9 -13
  14. package/ios/HmsDecoder.swift +168 -33
  15. package/ios/HmsHelper.swift +121 -1
  16. package/ios/HmsManager.m +20 -14
  17. package/ios/HmsManager.swift +122 -394
  18. package/ios/HmsSDK.swift +784 -0
  19. package/ios/HmsView.swift +16 -8
  20. package/lib/commonjs/classes/HMSAudioTrack.js.map +1 -1
  21. package/lib/commonjs/classes/HMSAudioTrackSettings.js +3 -0
  22. package/lib/commonjs/classes/HMSAudioTrackSettings.js.map +1 -1
  23. package/lib/commonjs/classes/HMSBrowserRecordingState.js +23 -0
  24. package/lib/commonjs/classes/HMSBrowserRecordingState.js.map +1 -0
  25. package/lib/commonjs/classes/HMSCameraFacing.js +14 -0
  26. package/lib/commonjs/classes/HMSCameraFacing.js.map +1 -0
  27. package/lib/commonjs/classes/HMSConfig.js +3 -7
  28. package/lib/commonjs/classes/HMSConfig.js.map +1 -1
  29. package/lib/commonjs/classes/HMSEncoder.js +65 -35
  30. package/lib/commonjs/classes/HMSEncoder.js.map +1 -1
  31. package/lib/commonjs/classes/HMSException.js +30 -0
  32. package/lib/commonjs/classes/HMSException.js.map +1 -0
  33. package/lib/commonjs/classes/HMSHelper.js +2 -2
  34. package/lib/commonjs/classes/HMSHelper.js.map +1 -1
  35. package/lib/commonjs/classes/HMSLocalAudioTrack.js +39 -1
  36. package/lib/commonjs/classes/HMSLocalAudioTrack.js.map +1 -1
  37. package/lib/commonjs/classes/HMSLocalPeer.js.map +1 -1
  38. package/lib/commonjs/classes/HMSLocalVideoTrack.js +28 -2
  39. package/lib/commonjs/classes/HMSLocalVideoTrack.js.map +1 -1
  40. package/lib/commonjs/classes/HMSLogger.js +28 -1
  41. package/lib/commonjs/classes/HMSLogger.js.map +1 -1
  42. package/lib/commonjs/classes/HMSPeer.js +3 -0
  43. package/lib/commonjs/classes/HMSPeer.js.map +1 -1
  44. package/lib/commonjs/classes/HMSPeerUpdate.js +1 -0
  45. package/lib/commonjs/classes/HMSPeerUpdate.js.map +1 -1
  46. package/lib/commonjs/classes/HMSPermissions.js +6 -0
  47. package/lib/commonjs/classes/HMSPermissions.js.map +1 -1
  48. package/lib/commonjs/classes/HMSRTMPConfig.js +26 -0
  49. package/lib/commonjs/classes/HMSRTMPConfig.js.map +1 -0
  50. package/lib/commonjs/classes/HMSRemoteAudioTrack.js +21 -0
  51. package/lib/commonjs/classes/HMSRemoteAudioTrack.js.map +1 -1
  52. package/lib/commonjs/classes/HMSRemotePeer.js.map +1 -1
  53. package/lib/commonjs/classes/HMSRemoteVideoTrack.js +21 -0
  54. package/lib/commonjs/classes/HMSRemoteVideoTrack.js.map +1 -1
  55. package/lib/commonjs/classes/HMSRoom.js +9 -0
  56. package/lib/commonjs/classes/HMSRoom.js.map +1 -1
  57. package/lib/commonjs/classes/HMSRtmpStreamingState.js +23 -0
  58. package/lib/commonjs/classes/HMSRtmpStreamingState.js.map +1 -0
  59. package/lib/commonjs/classes/HMSSDK.js +419 -151
  60. package/lib/commonjs/classes/HMSSDK.js.map +1 -1
  61. package/lib/commonjs/classes/HMSServerRecordingState.js +23 -0
  62. package/lib/commonjs/classes/HMSServerRecordingState.js.map +1 -0
  63. package/lib/commonjs/classes/HMSTrack.js +8 -18
  64. package/lib/commonjs/classes/HMSTrack.js.map +1 -1
  65. package/lib/commonjs/classes/HMSTrackSettings.js +3 -0
  66. package/lib/commonjs/classes/HMSTrackSettings.js.map +1 -1
  67. package/lib/commonjs/classes/HMSTrackType.js +14 -0
  68. package/lib/commonjs/classes/HMSTrackType.js.map +1 -0
  69. package/lib/commonjs/classes/HMSVideoCodec.js +4 -4
  70. package/lib/commonjs/classes/HMSVideoCodec.js.map +1 -1
  71. package/lib/commonjs/classes/HMSVideoResolution.js +23 -0
  72. package/lib/commonjs/classes/HMSVideoResolution.js.map +1 -0
  73. package/lib/commonjs/classes/HMSVideoSettings.js.map +1 -1
  74. package/lib/commonjs/classes/HMSVideoTrack.js +2 -0
  75. package/lib/commonjs/classes/HMSVideoTrack.js.map +1 -1
  76. package/lib/commonjs/classes/HMSVideoTrackSettings.js +0 -3
  77. package/lib/commonjs/classes/HMSVideoTrackSettings.js.map +1 -1
  78. package/lib/commonjs/classes/HmsView.js +10 -7
  79. package/lib/commonjs/classes/HmsView.js.map +1 -1
  80. package/lib/commonjs/index.js +112 -0
  81. package/lib/commonjs/index.js.map +1 -1
  82. package/lib/module/classes/HMSAudioTrack.js.map +1 -1
  83. package/lib/module/classes/HMSAudioTrackSettings.js +3 -0
  84. package/lib/module/classes/HMSAudioTrackSettings.js.map +1 -1
  85. package/lib/module/classes/HMSBrowserRecordingState.js +14 -0
  86. package/lib/module/classes/HMSBrowserRecordingState.js.map +1 -0
  87. package/lib/module/classes/HMSCameraFacing.js +7 -0
  88. package/lib/module/classes/HMSCameraFacing.js.map +1 -0
  89. package/lib/module/classes/HMSConfig.js +3 -7
  90. package/lib/module/classes/HMSConfig.js.map +1 -1
  91. package/lib/module/classes/HMSEncoder.js +64 -35
  92. package/lib/module/classes/HMSEncoder.js.map +1 -1
  93. package/lib/module/classes/HMSException.js +21 -0
  94. package/lib/module/classes/HMSException.js.map +1 -0
  95. package/lib/module/classes/HMSHelper.js +2 -2
  96. package/lib/module/classes/HMSHelper.js.map +1 -1
  97. package/lib/module/classes/HMSLocalAudioTrack.js +37 -2
  98. package/lib/module/classes/HMSLocalAudioTrack.js.map +1 -1
  99. package/lib/module/classes/HMSLocalPeer.js.map +1 -1
  100. package/lib/module/classes/HMSLocalVideoTrack.js +25 -2
  101. package/lib/module/classes/HMSLocalVideoTrack.js.map +1 -1
  102. package/lib/module/classes/HMSLogger.js +28 -1
  103. package/lib/module/classes/HMSLogger.js.map +1 -1
  104. package/lib/module/classes/HMSPeer.js +3 -0
  105. package/lib/module/classes/HMSPeer.js.map +1 -1
  106. package/lib/module/classes/HMSPeerUpdate.js +1 -0
  107. package/lib/module/classes/HMSPeerUpdate.js.map +1 -1
  108. package/lib/module/classes/HMSPermissions.js +6 -0
  109. package/lib/module/classes/HMSPermissions.js.map +1 -1
  110. package/lib/module/classes/HMSRTMPConfig.js +17 -0
  111. package/lib/module/classes/HMSRTMPConfig.js.map +1 -0
  112. package/lib/module/classes/HMSRemoteAudioTrack.js +18 -0
  113. package/lib/module/classes/HMSRemoteAudioTrack.js.map +1 -1
  114. package/lib/module/classes/HMSRemotePeer.js.map +1 -1
  115. package/lib/module/classes/HMSRemoteVideoTrack.js +18 -0
  116. package/lib/module/classes/HMSRemoteVideoTrack.js.map +1 -1
  117. package/lib/module/classes/HMSRoom.js +9 -0
  118. package/lib/module/classes/HMSRoom.js.map +1 -1
  119. package/lib/module/classes/HMSRtmpStreamingState.js +14 -0
  120. package/lib/module/classes/HMSRtmpStreamingState.js.map +1 -0
  121. package/lib/module/classes/HMSSDK.js +408 -151
  122. package/lib/module/classes/HMSSDK.js.map +1 -1
  123. package/lib/module/classes/HMSServerRecordingState.js +14 -0
  124. package/lib/module/classes/HMSServerRecordingState.js.map +1 -0
  125. package/lib/module/classes/HMSTrack.js +8 -16
  126. package/lib/module/classes/HMSTrack.js.map +1 -1
  127. package/lib/module/classes/HMSTrackSettings.js +3 -0
  128. package/lib/module/classes/HMSTrackSettings.js.map +1 -1
  129. package/lib/module/classes/HMSTrackType.js +7 -0
  130. package/lib/module/classes/HMSTrackType.js.map +1 -0
  131. package/lib/module/classes/HMSVideoCodec.js +4 -4
  132. package/lib/module/classes/HMSVideoCodec.js.map +1 -1
  133. package/lib/module/classes/HMSVideoResolution.js +14 -0
  134. package/lib/module/classes/HMSVideoResolution.js.map +1 -0
  135. package/lib/module/classes/HMSVideoSettings.js.map +1 -1
  136. package/lib/module/classes/HMSVideoTrack.js +2 -0
  137. package/lib/module/classes/HMSVideoTrack.js.map +1 -1
  138. package/lib/module/classes/HMSVideoTrackSettings.js +0 -3
  139. package/lib/module/classes/HMSVideoTrackSettings.js.map +1 -1
  140. package/lib/module/classes/HmsView.js +10 -7
  141. package/lib/module/classes/HmsView.js.map +1 -1
  142. package/lib/module/index.js +8 -0
  143. package/lib/module/index.js.map +1 -1
  144. package/lib/typescript/classes/HMSAudioTrack.d.ts +3 -0
  145. package/lib/typescript/classes/HMSAudioTrackSettings.d.ts +3 -0
  146. package/lib/typescript/classes/HMSBrowserRecordingState.d.ts +9 -0
  147. package/lib/typescript/classes/HMSCameraFacing.d.ts +4 -0
  148. package/lib/typescript/classes/HMSConfig.d.ts +2 -4
  149. package/lib/typescript/classes/HMSEncoder.d.ts +14 -12
  150. package/lib/typescript/classes/HMSException.d.ts +22 -0
  151. package/lib/typescript/classes/HMSLocalAudioTrack.d.ts +5 -0
  152. package/lib/typescript/classes/HMSLocalPeer.d.ts +6 -0
  153. package/lib/typescript/classes/HMSLocalVideoTrack.d.ts +4 -0
  154. package/lib/typescript/classes/HMSLogger.d.ts +11 -4
  155. package/lib/typescript/classes/HMSPeer.d.ts +2 -0
  156. package/lib/typescript/classes/HMSPeerUpdate.d.ts +1 -0
  157. package/lib/typescript/classes/HMSPermissions.d.ts +4 -0
  158. package/lib/typescript/classes/HMSRTMPConfig.d.ts +10 -0
  159. package/lib/typescript/classes/HMSRemoteAudioTrack.d.ts +4 -0
  160. package/lib/typescript/classes/HMSRemotePeer.d.ts +3 -0
  161. package/lib/typescript/classes/HMSRemoteVideoTrack.d.ts +4 -0
  162. package/lib/typescript/classes/HMSRoom.d.ts +9 -0
  163. package/lib/typescript/classes/HMSRtmpStreamingState.d.ts +9 -0
  164. package/lib/typescript/classes/HMSSDK.d.ts +41 -11
  165. package/lib/typescript/classes/HMSServerRecordingState.d.ts +9 -0
  166. package/lib/typescript/classes/HMSTrack.d.ts +6 -1
  167. package/lib/typescript/classes/HMSTrackSettings.d.ts +2 -0
  168. package/lib/typescript/classes/HMSTrackType.d.ts +4 -0
  169. package/lib/typescript/classes/HMSVideoCodec.d.ts +4 -4
  170. package/lib/typescript/classes/HMSVideoResolution.d.ts +8 -0
  171. package/lib/typescript/classes/HMSVideoSettings.d.ts +3 -3
  172. package/lib/typescript/classes/HMSVideoTrack.d.ts +5 -1
  173. package/lib/typescript/classes/HMSVideoTrackSettings.d.ts +13 -10
  174. package/lib/typescript/classes/HmsView.d.ts +2 -1
  175. package/lib/typescript/index.d.ts +8 -0
  176. package/package.json +1 -1
  177. package/src/classes/HMSAudioTrack.ts +3 -0
  178. package/src/classes/HMSAudioTrackSettings.ts +9 -1
  179. package/src/classes/HMSBrowserRecordingState.ts +11 -0
  180. package/src/classes/HMSCameraFacing.ts +4 -0
  181. package/src/classes/HMSConfig.ts +3 -7
  182. package/src/classes/HMSEncoder.ts +64 -28
  183. package/src/classes/HMSException.ts +33 -0
  184. package/src/classes/HMSHelper.ts +2 -2
  185. package/src/classes/HMSLocalAudioTrack.ts +35 -2
  186. package/src/classes/HMSLocalPeer.ts +6 -0
  187. package/src/classes/HMSLocalVideoTrack.ts +22 -2
  188. package/src/classes/HMSLogger.ts +19 -6
  189. package/src/classes/HMSPeer.ts +3 -0
  190. package/src/classes/HMSPeerUpdate.ts +1 -0
  191. package/src/classes/HMSPermissions.ts +6 -0
  192. package/src/classes/HMSRTMPConfig.ts +15 -0
  193. package/src/classes/HMSRemoteAudioTrack.ts +29 -2
  194. package/src/classes/HMSRemotePeer.ts +3 -0
  195. package/src/classes/HMSRemoteVideoTrack.ts +29 -2
  196. package/src/classes/HMSRoom.ts +12 -0
  197. package/src/classes/HMSRtmpStreamingState.ts +11 -0
  198. package/src/classes/{HMSSDK.ts → HMSSDK.tsx} +396 -97
  199. package/src/classes/HMSServerRecordingState.ts +11 -0
  200. package/src/classes/HMSTrack.ts +9 -15
  201. package/src/classes/HMSTrackSettings.ts +3 -0
  202. package/src/classes/HMSTrackType.ts +4 -0
  203. package/src/classes/HMSVideoCodec.ts +4 -4
  204. package/src/classes/HMSVideoResolution.ts +9 -0
  205. package/src/classes/HMSVideoSettings.ts +3 -3
  206. package/src/classes/HMSVideoTrack.ts +6 -1
  207. package/src/classes/HMSVideoTrackSettings.ts +13 -10
  208. package/src/classes/HmsView.tsx +4 -0
  209. package/src/index.ts +8 -0
  210. package/ios/Hmssdk.m +0 -8
  211. package/ios/Hmssdk.swift +0 -8
package/ios/HmsManager.m CHANGED
@@ -5,21 +5,27 @@
5
5
 
6
6
  RCT_EXTERN_METHOD(join: (NSDictionary) credentials)
7
7
  RCT_EXTERN_METHOD(preview: (NSDictionary) credentials)
8
- RCT_EXTERN_METHOD(setLocalMute: (BOOL) isMute)
9
- RCT_EXTERN_METHOD(setLocalVideoMute: (BOOL) isMute)
10
- RCT_EXTERN_METHOD(sendBroadcastMessage: (NSDictionary) data)
11
- RCT_EXTERN_METHOD(sendGroupMessage: (NSDictionary) data)
12
- RCT_EXTERN_METHOD(sendDirectMessage: (NSDictionary) data)
8
+ RCT_EXTERN_METHOD(setLocalMute: (NSDictionary) isMute)
9
+ RCT_EXTERN_METHOD(setLocalVideoMute: (NSDictionary) isMute)
10
+ RCT_EXTERN_METHOD(sendBroadcastMessage: (NSDictionary) data :(RCTPromiseResolveBlock) resolve :(RCTPromiseRejectBlock) reject)
11
+ RCT_EXTERN_METHOD(sendGroupMessage: (NSDictionary) data :(RCTPromiseResolveBlock) resolve :(RCTPromiseRejectBlock) reject)
12
+ RCT_EXTERN_METHOD(sendDirectMessage: (NSDictionary) data :(RCTPromiseResolveBlock) resolve :(RCTPromiseRejectBlock) reject)
13
13
  RCT_EXTERN_METHOD(setPlaybackAllowed: (NSDictionary) data)
14
- RCT_EXTERN_METHOD(removePeer: (NSDictionary) data)
15
- RCT_EXTERN_METHOD(endRoom: (NSDictionary) data)
16
- RCT_EXTERN_METHOD(changeRole: (NSDictionary) data)
17
- RCT_EXTERN_METHOD(changeTrackState: (NSDictionary) data)
18
- RCT_EXTERN_METHOD(acceptRoleChange)
14
+ RCT_EXTERN_METHOD(removePeer: (NSDictionary) data :(RCTPromiseResolveBlock) resolve :(RCTPromiseRejectBlock) reject)
15
+ RCT_EXTERN_METHOD(endRoom: (NSDictionary) data :(RCTPromiseResolveBlock) resolve :(RCTPromiseRejectBlock) reject)
16
+ RCT_EXTERN_METHOD(changeRole: (NSDictionary) data :(RCTPromiseResolveBlock) resolve :(RCTPromiseRejectBlock) reject)
17
+ RCT_EXTERN_METHOD(changeTrackState: (NSDictionary) data :(RCTPromiseResolveBlock) resolve :(RCTPromiseRejectBlock) reject)
18
+ RCT_EXTERN_METHOD(changeTrackStateRoles: (NSDictionary) data :(RCTPromiseResolveBlock) resolve :(RCTPromiseRejectBlock) reject)
19
+ RCT_EXTERN_METHOD(acceptRoleChange: (NSDictionary) data)
19
20
  RCT_EXTERN_METHOD(isMute: (NSDictionary) data :(RCTPromiseResolveBlock) resolve :(RCTPromiseRejectBlock) reject)
21
+ RCT_EXTERN_METHOD(getRoom: (NSDictionary) data :(RCTPromiseResolveBlock) resolve :(RCTPromiseRejectBlock) reject)
22
+ RCT_EXTERN_METHOD(switchCamera: (NSDictionary) data)
23
+ RCT_EXTERN_METHOD(setVolume: (NSDictionary) data)
24
+ RCT_EXTERN_METHOD(build : (NSDictionary) data :(RCTPromiseResolveBlock) resolve :(RCTPromiseRejectBlock) reject)
25
+ RCT_EXTERN_METHOD(leave: (NSDictionary) data :(RCTPromiseResolveBlock) resolve :(RCTPromiseRejectBlock) reject)
26
+ RCT_EXTERN_METHOD(muteAllPeersAudio: (NSDictionary) mute)
20
27
  RCT_EXTERN_METHOD(isPlaybackAllowed: (NSDictionary) data :(RCTPromiseResolveBlock) resolve :(RCTPromiseRejectBlock) reject)
21
- RCT_EXTERN_METHOD(switchCamera)
22
- RCT_EXTERN_METHOD(build)
23
- RCT_EXTERN_METHOD(leave)
24
- RCT_EXTERN_METHOD(muteAllPeersAudio: (BOOL) mute)
28
+ RCT_EXTERN_METHOD(changeMetadata: (NSDictionary) data :(RCTPromiseResolveBlock) resolve :(RCTPromiseRejectBlock) reject)
29
+ RCT_EXTERN_METHOD(startRTMPOrRecording: (NSDictionary) data :(RCTPromiseResolveBlock) resolve :(RCTPromiseRejectBlock) reject)
30
+ RCT_EXTERN_METHOD(stopRtmpAndRecording: (NSDictionary) data :(RCTPromiseResolveBlock) resolve :(RCTPromiseRejectBlock) reject)
25
31
  @end
@@ -2,12 +2,9 @@
2
2
  import HMSSDK
3
3
 
4
4
  @objc(HmsManager)
5
- class HmsManager: RCTEventEmitter, HMSUpdateListener, HMSPreviewListener {
5
+ class HmsManager: RCTEventEmitter{
6
6
 
7
- var hms: HMSSDK?
8
- var config: HMSConfig?
9
- var recentRoleChangeRequest: HMSRoleChangeRequest?
10
- var recentChangeTrackStateRequest: HMSChangeTrackStateRequest?
7
+ var hmsCollection: [String: HmsSDK] = [:]
11
8
 
12
9
  let ON_PREVIEW = "ON_PREVIEW"
13
10
  let ON_JOIN = "ON_JOIN"
@@ -29,9 +26,9 @@ class HmsManager: RCTEventEmitter, HMSUpdateListener, HMSPreviewListener {
29
26
  super.init()
30
27
  }
31
28
 
32
- override class func requiresMainQueueSetup() -> Bool {
33
- true
34
- }
29
+ // override class func requiresMainQueueSetup() -> Bool {
30
+ // true
31
+ // }
35
32
 
36
33
  override func supportedEvents() -> [String]! {
37
34
  return [ON_JOIN, ON_PREVIEW, ON_ROOM_UPDATE, ON_PEER_UPDATE, ON_TRACK_UPDATE, ON_ERROR, ON_MESSAGE, ON_SPEAKER, RECONNECTING, RECONNECTED, ON_ROLE_CHANGE_REQUEST, ON_CHANGE_TRACK_STATE_REQUEST, ON_REMOVED_FROM_ROOM]
@@ -41,478 +38,209 @@ class HmsManager: RCTEventEmitter, HMSUpdateListener, HMSPreviewListener {
41
38
  // MARK: - HMS SDK Actions
42
39
 
43
40
  @objc
44
- func build() {
41
+ func build(_ data: NSDictionary, _ resolve: RCTPromiseResolveBlock?, _ reject: RCTPromiseRejectBlock?) {
45
42
  DispatchQueue.main.async { [weak self] in
46
- self?.hms = HMSSDK.build()
43
+ let hasItem = self?.hmsCollection.index(forKey: "12345")
44
+
45
+ if let _ = hasItem {
46
+ let id = UUID().uuidString
47
+ let hms = HmsSDK(data: data, delegate: self, uid: id)
48
+ self?.hmsCollection[id] = hms
49
+
50
+ resolve?(id)
51
+ } else {
52
+ let id = "12345"
53
+ let hms = HmsSDK(data: data, delegate: self, uid: id)
54
+ self?.hmsCollection[id] = hms
55
+
56
+ resolve?(id)
57
+ }
47
58
  }
48
59
  }
49
60
 
50
61
  @objc
51
62
  func preview(_ credentials: NSDictionary) {
52
-
53
- guard let authToken = credentials.value(forKey: "authToken") as? String,
54
- let user = credentials.value(forKey: "userID") as? String,
55
- let room = credentials.value(forKey: "roomID") as? String
56
- else {
57
- return
58
- }
59
-
60
- DispatchQueue.main.async { [weak self] in
61
- guard let strongSelf = self else { return }
62
- if let endpoint = credentials.value(forKey: "endpoint") as? String {
63
- strongSelf.config = HMSConfig(userName: user, userID: UUID().uuidString, roomID: room, authToken: authToken, endpoint: endpoint)
64
- strongSelf.hms?.preview(config: strongSelf.config!, delegate: strongSelf)
65
- } else {
66
- strongSelf.config = HMSConfig(userName: user, userID: UUID().uuidString, roomID: room, authToken: authToken)
67
- strongSelf.hms?.preview(config: strongSelf.config!, delegate: strongSelf)
68
- }
69
- }
63
+ let hms = HmsHelper.getHms(credentials, hmsCollection)
64
+ hms?.preview(credentials)
70
65
  }
71
66
 
72
67
  @objc
73
68
  func join(_ credentials: NSDictionary) {
74
-
75
- guard let authToken = credentials.value(forKey: "authToken") as? String,
76
- let user = credentials.value(forKey: "username") as? String,
77
- let room = credentials.value(forKey: "roomID") as? String
78
- else {
79
- return
80
- }
81
-
82
- DispatchQueue.main.async { [weak self] in
83
- guard let strongSelf = self else { return }
84
- if let config = strongSelf.config {
85
- do{
86
- try strongSelf.hms?.join(config: config, delegate: strongSelf)
87
- }catch let error{
88
- strongSelf.sendEvent(withName: strongSelf.ON_ERROR, body: ["event": strongSelf.ON_ERROR, "error": error.localizedDescription])
89
- }
90
- } else {
91
- if let endpoint = credentials.value(forKey: "endpoint") as? String {
92
- do{
93
- strongSelf.config = HMSConfig(userName: user, userID: UUID().uuidString, roomID: room, authToken: authToken, endpoint: endpoint)
94
- try strongSelf.hms?.join(config: strongSelf.config!, delegate: strongSelf)
95
- }catch let error{
96
- strongSelf.sendEvent(withName: strongSelf.ON_ERROR, body: ["event": strongSelf.ON_ERROR, "error": error.localizedDescription])
97
- }
98
- } else {
99
- do{
100
- strongSelf.config = HMSConfig(userName: user, userID: UUID().uuidString, roomID: room, authToken: authToken)
101
- try strongSelf.hms?.join(config: strongSelf.config!, delegate: strongSelf)
102
- }catch let error{
103
- strongSelf.sendEvent(withName: strongSelf.ON_ERROR, body: ["event": strongSelf.ON_ERROR, "error": error.localizedDescription])
104
- }
105
- }
106
- }
107
- }
69
+ let hms = HmsHelper.getHms(credentials, hmsCollection)
70
+ hms?.join(credentials)
108
71
  }
109
72
 
110
73
  @objc
111
- func setLocalMute(_ isMute: Bool) {
112
- DispatchQueue.main.async { [weak self] in
113
- self?.hms?.localPeer?.localAudioTrack()?.setMute(isMute)
114
- }
74
+ func setLocalMute(_ data: NSDictionary) {
75
+ let hms = HmsHelper.getHms(data, hmsCollection)
76
+
77
+ hms?.setLocalMute(data)
115
78
  }
116
79
 
117
80
  @objc
118
- func setLocalVideoMute(_ isMute: Bool) {
119
- DispatchQueue.main.async { [weak self] in
120
- self?.hms?.localPeer?.localVideoTrack()?.setMute(isMute)
121
- }
81
+ func setLocalVideoMute(_ data: NSDictionary) {
82
+ let hms = HmsHelper.getHms(data, hmsCollection)
83
+
84
+ hms?.setLocalVideoMute(data)
122
85
  }
123
86
 
124
87
  @objc
125
- func switchCamera() {
126
- DispatchQueue.main.async { [weak self] in
127
- self?.hms?.localPeer?.localVideoTrack()?.switchCamera()
128
- }
88
+ func switchCamera(_ data: NSDictionary) {
89
+ let hms = HmsHelper.getHms(data, hmsCollection)
90
+
91
+ hms?.switchCamera()
129
92
  }
130
93
 
131
94
  @objc
132
- func leave() {
133
- DispatchQueue.main.async { [weak self] in
134
- self?.hms?.leave();
135
- }
95
+ func leave(_ data: NSDictionary, _ resolve: RCTPromiseResolveBlock?, _ reject: RCTPromiseRejectBlock?) {
96
+ let hms = HmsHelper.getHms(data, hmsCollection)
97
+
98
+ hms?.leave(resolve, reject)
136
99
  }
137
100
 
138
101
  @objc
139
- func sendBroadcastMessage(_ data: NSDictionary) {
140
- guard let message = data.value(forKey: "message") as? String
141
- else {
142
- return
143
- }
144
-
145
- let type = data.value(forKey: "type") as? String ?? "chat"
102
+ func sendBroadcastMessage(_ data: NSDictionary, _ resolve: RCTPromiseResolveBlock?, _ reject: RCTPromiseRejectBlock?) {
103
+ let hms = HmsHelper.getHms(data, hmsCollection)
146
104
 
147
- DispatchQueue.main.async { [weak self] in
148
- self?.hms?.sendBroadcastMessage(type: type, message: message)
149
- }
105
+ hms?.sendBroadcastMessage(data, resolve, reject)
150
106
  }
151
107
 
152
108
  @objc
153
- func sendGroupMessage(_ data: NSDictionary) {
154
- guard let message = data.value(forKey: "message") as? String,
155
- let targetedRoles = data.value(forKey: "roles") as? [String]
156
- else {
157
- return
158
- }
109
+ func sendGroupMessage(_ data: NSDictionary, _ resolve: RCTPromiseResolveBlock?, _ reject: RCTPromiseRejectBlock?) {
110
+ let hms = HmsHelper.getHms(data, hmsCollection)
159
111
 
160
- DispatchQueue.main.async { [weak self] in
161
- let encodedTargetedRoles = HmsHelper.getRolesFromRoleNames(targetedRoles, roles: self?.hms?.roles)
162
- self?.hms?.sendGroupMessage(message: message, roles: encodedTargetedRoles)
163
- }
112
+ hms?.sendGroupMessage(data, resolve, reject)
164
113
  }
165
114
 
166
115
  @objc
167
- func sendDirectMessage(_ data: NSDictionary) {
168
- guard let message = data.value(forKey: "message") as? String,
169
- let peerId = data.value(forKey: "peerId") as? String
170
- else {
171
- return
172
- }
116
+ func sendDirectMessage(_ data: NSDictionary, _ resolve: RCTPromiseResolveBlock?, _ reject: RCTPromiseRejectBlock?) {
117
+ let hms = HmsHelper.getHms(data, hmsCollection)
173
118
 
174
- DispatchQueue.main.async { [weak self] in
175
- guard let peer = HmsHelper.getPeerFromPeerId(peerId, remotePeers: self?.hms?.remotePeers) else { return }
176
- self?.hms?.sendDirectMessage(message: message, peer: peer)
177
- }
119
+ hms?.sendDirectMessage(data, resolve, reject)
178
120
  }
179
121
 
180
122
  @objc
181
- func acceptRoleChange() {
123
+ func acceptRoleChange(_ data: NSDictionary) {
124
+ let hms = HmsHelper.getHms(data, hmsCollection)
182
125
 
183
- DispatchQueue.main.async { [weak self] in
184
-
185
- guard let request = self?.recentRoleChangeRequest else { return }
186
-
187
- self?.hms?.accept(changeRole: request)
188
-
189
- self?.recentRoleChangeRequest = nil
190
- }
126
+ hms?.acceptRoleChange()
191
127
  }
192
128
 
193
129
  @objc
194
- func changeRole(_ data: NSDictionary) {
195
-
196
- guard let peerId = data.value(forKey: "peerId") as? String,
197
- let role = data.value(forKey: "role") as? String
198
- else {
199
- return
200
- }
201
-
202
- let force = data.value(forKey: "force") as? Bool ?? false
130
+ func changeRole(_ data: NSDictionary, _ resolve: RCTPromiseResolveBlock?, _ reject: RCTPromiseRejectBlock?) {
131
+ let hms = HmsHelper.getHms(data, hmsCollection)
203
132
 
204
- DispatchQueue.main.async { [weak self] in
205
- guard let peer = HmsHelper.getPeerFromPeerId(peerId, remotePeers: self?.hms?.remotePeers),
206
- let role = HmsHelper.getRoleFromRoleName(role, roles: self?.hms?.roles)
207
- else { return }
208
-
209
- self?.hms?.changeRole(for: peer, to: role, force: force)
210
- }
133
+ hms?.changeRole(data, resolve, reject)
211
134
  }
212
135
 
213
136
  @objc
214
- func changeTrackState(_ data: NSDictionary) {
137
+ func changeTrackState(_ data: NSDictionary, _ resolve: RCTPromiseResolveBlock?, _ reject: RCTPromiseRejectBlock?) {
138
+ let hms = HmsHelper.getHms(data, hmsCollection)
215
139
 
216
- guard let trackId = data.value(forKey: "trackId") as? String
217
- else {
218
- return
219
- }
220
-
221
- let mute = data.value(forKey: "mute") as? Bool ?? true
222
-
223
- DispatchQueue.main.async { [weak self] in
224
- guard let remotePeers = self?.hms?.remotePeers,
225
- let track = HmsHelper.getTrackFromTrackId(trackId, remotePeers)
226
- else { return }
227
-
228
- self?.hms?.changeTrackState(for: track, mute: mute)
229
- }
140
+ hms?.changeTrackState(data, resolve, reject)
230
141
  }
231
142
 
232
143
  @objc
233
- func isMute(_ data: NSDictionary, _ resolve: RCTPromiseResolveBlock?, _ reject: RCTPromiseRejectBlock?) {
234
- guard let trackId = data.value(forKey: "trackId") as? String
235
- else {
236
- reject?(nil, "NOT_FOUND", nil)
237
- return
238
- }
144
+ func changeTrackStateRoles(_ data: NSDictionary, _ resolve: RCTPromiseResolveBlock?, _ reject: RCTPromiseRejectBlock?) {
145
+ let hms = HmsHelper.getHms(data, hmsCollection)
239
146
 
240
- DispatchQueue.main.async { [weak self] in
241
- guard let localPeer = self?.hms?.localPeer,
242
- let localTrack = HmsHelper.getLocalTrackFromTrackId(trackId, localPeer: localPeer)
243
- else {
244
- guard let remotePeers = self?.hms?.remotePeers,
245
- let track = HmsHelper.getTrackFromTrackId(trackId, remotePeers)
246
- else {
247
- reject?(nil, "NOT_FOUND", nil)
248
- return
249
- }
250
- let mute = track.isMute()
251
- resolve?(mute)
252
- return
253
- }
254
- let mute = localTrack.isMute()
255
- resolve?(mute)
256
- }
147
+ hms?.changeTrackStateRoles(data, resolve, reject)
257
148
  }
258
149
 
259
150
  @objc
260
- func isPlaybackAllowed(_ data: NSDictionary, _ resolve: RCTPromiseResolveBlock?, _ reject: RCTPromiseRejectBlock?) {
261
- guard let trackId = data.value(forKey: "trackId") as? String
262
- else {
263
- reject?(nil, "NOT_FOUND", nil)
151
+ func isMute(_ data: NSDictionary, _ resolve: RCTPromiseResolveBlock?, _ reject: RCTPromiseRejectBlock?) {
152
+ let hms = HmsHelper.getHms(data, hmsCollection)
153
+ if let hmsInstance = hms {
154
+ hmsInstance.isMute(data, resolve, reject)
155
+ } else {
156
+ reject?(nil, "NO_INSTANCE", nil)
264
157
  return
265
- }
266
- DispatchQueue.main.async { [weak self] in
267
- guard let remotePeers = self?.hms?.remotePeers
268
- else {
269
- reject?(nil, "NOT_FOUND", nil)
270
- return
271
- }
272
- let remoteAudioTrack = HmsHelper.getRemoteAudioTrackFromTrackId(trackId, remotePeers)
273
- let remoteVideoTrack = HmsHelper.getRemoteVideoTrackFromTrackId(trackId, remotePeers)
274
- if (remoteAudioTrack != nil) {
275
- let isPlaybackAllowed = remoteAudioTrack?.isPlaybackAllowed()
276
- resolve?(isPlaybackAllowed)
277
- return
278
- } else if (remoteVideoTrack != nil) {
279
- let isPlaybackAllowed = remoteVideoTrack?.isPlaybackAllowed()
280
- resolve?(isPlaybackAllowed)
281
- return
282
- } else {
283
- reject?(nil, "NOT_FOUND",nil)
284
- return
285
- }
286
- }
158
+ }
287
159
  }
288
160
 
289
- @objc
290
- func setPlaybackAllowed(_ data: NSDictionary) {
291
- guard let trackId = data.value(forKey: "trackId") as? String
292
- else {
293
- return
294
- }
295
- guard let playbackAllowed = data.value(forKey: "playbackAllowed") as? Bool
296
- else {
297
- return
298
- }
299
- DispatchQueue.main.async { [weak self] in
300
- guard let remotePeers = self?.hms?.remotePeers
301
- else {
302
- return
303
- }
304
- let remoteAudioTrack = HmsHelper.getRemoteAudioTrackFromTrackId(trackId, remotePeers)
305
- let remoteVideoTrack = HmsHelper.getRemoteVideoTrackFromTrackId(trackId, remotePeers)
306
- if (remoteAudioTrack != nil) {
307
- if(playbackAllowed){
308
- remoteAudioTrack?.setPlaybackAllowed(playbackAllowed)
309
- }else {
310
- remoteAudioTrack?.setPlaybackAllowed(playbackAllowed)
311
- }
312
- } else if (remoteVideoTrack != nil) {
313
- remoteVideoTrack?.setPlaybackAllowed(playbackAllowed)
314
- }
315
- }
316
- }
317
161
 
318
162
  @objc
319
- func removePeer(_ data: NSDictionary) {
320
-
321
-
163
+ func removePeer(_ data: NSDictionary, _ resolve: RCTPromiseResolveBlock?, _ reject: RCTPromiseRejectBlock?) {
164
+ let hms = HmsHelper.getHms(data, hmsCollection)
322
165
 
323
- guard let peerId = data.value(forKey: "peerId") as? String
324
- else {
325
- return
326
- }
327
-
328
- let reason = data.value(forKey: "reason") as? String
329
-
330
- DispatchQueue.main.async { [weak self] in
331
-
332
- guard let remotePeers = self?.hms?.remotePeers,
333
- let peer = HmsHelper.getPeerFromPeerId(peerId, remotePeers: remotePeers)
334
- else { return }
335
-
336
- self?.hms?.removePeer(peer, reason: reason ?? "Removed from room")
337
- }
166
+ hms?.removePeer(data, resolve, reject)
338
167
  }
339
168
 
340
169
 
341
170
  @objc
342
- func endRoom(_ data: NSDictionary) {
171
+ func endRoom(_ data: NSDictionary, _ resolve: RCTPromiseResolveBlock?, _ reject: RCTPromiseRejectBlock?) {
172
+ let hms = HmsHelper.getHms(data, hmsCollection)
343
173
 
344
- let lock = data.value(forKey: "lock") as? Bool
345
- let reason = data.value(forKey: "reason") as? String
346
-
347
- DispatchQueue.main.async { [weak self] in
348
- self?.hms?.endRoom(lock: lock ?? false, reason: reason ?? "Room was ended")
349
- }
174
+ hms?.endRoom(data, resolve, reject)
350
175
  }
351
-
352
- // MARK: - HMS SDK Delegate Callbacks
353
-
354
- func on(join room: HMSRoom) {
355
- // Callback from join action
356
- let roomData = HmsDecoder.getHmsRoom(room)
357
- let localPeerData = HmsDecoder.getHmsLocalPeer(hms?.localPeer)
358
- let remotePeerData = HmsDecoder.getHmsRemotePeers(hms?.remotePeers)
359
-
360
- let decodedRoles = HmsDecoder.getAllRoles(hms?.roles)
361
-
362
- self.sendEvent(withName: ON_JOIN, body: ["event": ON_JOIN, "room": roomData, "localPeer": localPeerData, "remotePeers": remotePeerData, "roles": decodedRoles])
363
- }
364
-
365
- func onPreview(room: HMSRoom, localTracks: [HMSTrack]) {
366
- let previewTracks = HmsDecoder.getPreviewTracks(localTracks)
367
- let hmsRoom = HmsDecoder.getHmsRoom(room)
368
- let localPeerData = HmsDecoder.getHmsLocalPeer(hms?.localPeer)
369
-
370
- self.sendEvent(withName: ON_PREVIEW, body: ["event": ON_PREVIEW, "room": hmsRoom, "previewTracks": previewTracks, "localPeer": localPeerData])
371
- }
372
-
373
- func on(room: HMSRoom, update: HMSRoomUpdate) {
374
- // Listener for any updation in room
375
- let roomData = HmsDecoder.getHmsRoom(room)
376
- let type = getString(from: update)
377
-
378
- let localPeerData = HmsDecoder.getHmsLocalPeer(hms?.localPeer)
379
- let remotePeerData = HmsDecoder.getHmsRemotePeers(hms?.remotePeers)
176
+
177
+ @objc
178
+ func setPlaybackAllowed(_ data: NSDictionary) {
179
+ let hms = HmsHelper.getHms(data, hmsCollection)
380
180
 
381
- self.sendEvent(withName: ON_ROOM_UPDATE, body: ["event": ON_ROOM_UPDATE, "type": type, "room": roomData, "localPeer": localPeerData, "remotePeers": remotePeerData])
181
+ hms?.setPlaybackAllowed(data)
382
182
  }
383
183
 
384
- func on(peer: HMSPeer, update: HMSPeerUpdate) {
385
- // Listener for updates in Peers
386
- let roomData = HmsDecoder.getHmsRoom(hms?.room)
387
- let type = getString(from: update)
184
+ @objc
185
+ func isPlaybackAllowed(_ data: NSDictionary, _ resolve: RCTPromiseResolveBlock?, _ reject: RCTPromiseRejectBlock?) {
186
+ let hms = HmsHelper.getHms(data, hmsCollection)
388
187
 
389
- let localPeerData = HmsDecoder.getHmsLocalPeer(hms?.localPeer)
390
- let remotePeerData = HmsDecoder.getHmsRemotePeers(hms?.remotePeers)
391
-
392
- self.sendEvent(withName: ON_PEER_UPDATE, body: ["event": ON_PEER_UPDATE, "type": type, "room": roomData, "localPeer": localPeerData, "remotePeers": remotePeerData])
188
+ hms?.isPlaybackAllowed(data, resolve, reject)
393
189
  }
394
190
 
395
- func on(track: HMSTrack, update: HMSTrackUpdate, for peer: HMSPeer) {
396
- // Listener for updates in Tracks
397
- let roomData = HmsDecoder.getHmsRoom(hms?.room)
398
- let type = getString(from: update)
399
-
400
- let localPeerData = HmsDecoder.getHmsLocalPeer(hms?.localPeer)
401
- let remotePeerData = HmsDecoder.getHmsRemotePeers(hms?.remotePeers)
191
+ @objc
192
+ func getRoom(_ data: NSDictionary, _ resolve: RCTPromiseResolveBlock?, _ reject: RCTPromiseRejectBlock?) {
193
+ let hms = HmsHelper.getHms(data, hmsCollection)
402
194
 
403
- self.sendEvent(withName: ON_TRACK_UPDATE, body: ["event": ON_TRACK_UPDATE, "room": roomData, "type": type, "localPeer": localPeerData, "remotePeers": remotePeerData])
404
- }
405
-
406
- func on(error: HMSError) {
407
- self.sendEvent(withName: ON_ERROR, body: ["event": ON_ERROR, "error": error.description, "code": error.code.rawValue, "id": error.id, "message": error.message])
408
- }
409
-
410
- func on(message: HMSMessage) {
411
- self.sendEvent(withName: ON_MESSAGE, body: ["event": ON_MESSAGE, "sender": message.sender?.name ?? "", "time": message.time, "message": message.message, "type": message.type])
195
+ hms?.getRoom(data, resolve, reject)
412
196
  }
413
197
 
414
- func on(updated speakers: [HMSSpeaker]) {
415
- var speakerPeerIds: [[String : Any]] = []
416
- for speaker in speakers {
417
- speakerPeerIds.append(["peer": HmsDecoder.getHmsPeer(speaker.peer), "level": speaker.level, "track": HmsDecoder.getHmsTrack(speaker.track)])
418
- }
419
- self.sendEvent(withName: ON_SPEAKER, body: ["event": ON_SPEAKER, "count": speakers.count, "peers" :speakerPeerIds])
420
- }
421
-
422
- func onReconnecting() {
423
- self.sendEvent(withName: RECONNECTING, body: ["event": RECONNECTING])
424
- }
425
-
426
- func onReconnected() {
427
- self.sendEvent(withName: RECONNECTED, body: ["event": RECONNECTED])
198
+ // MARK: - HMS SDK Delegate Callbacks
199
+ func emitEvent(_ name: String, _ data: [String: Any]) {
200
+ self.sendEvent(withName: name, body: data)
428
201
  }
429
202
 
430
- func on(roleChangeRequest: HMSRoleChangeRequest) {
431
- let decodedRoleChangeRequest = HmsDecoder.getHmsRoleChangeRequest(roleChangeRequest)
432
- recentRoleChangeRequest = roleChangeRequest
433
- self.sendEvent(withName: ON_ROLE_CHANGE_REQUEST, body: decodedRoleChangeRequest)
434
- }
203
+ // MARK: Helper Functions
435
204
 
436
- func on(changeTrackStateRequest: HMSChangeTrackStateRequest) {
437
- let decodedChangeTrackStateRequest = HmsDecoder.getHmsChangeTrackStateRequest(changeTrackStateRequest)
438
- recentChangeTrackStateRequest = changeTrackStateRequest
439
- self.sendEvent(withName: ON_CHANGE_TRACK_STATE_REQUEST, body: decodedChangeTrackStateRequest)
205
+ @objc
206
+ func muteAllPeersAudio(_ data: NSDictionary) {
207
+ let hms = HmsHelper.getHms(data, hmsCollection)
208
+
209
+ hms?.muteAllPeersAudio(data)
440
210
  }
441
211
 
442
- func on(removedFromRoom notification: HMSRemovedFromRoomNotification) {
443
- let requestedBy = notification.requestedBy
444
- let decodedRequestedBy = HmsDecoder.getHmsPeer(requestedBy)
445
- let reason = notification.reason
446
- let roomEnded = notification.roomEnded
447
- self.sendEvent(withName: ON_REMOVED_FROM_ROOM, body: ["event": ON_REMOVED_FROM_ROOM, "requestedBy": decodedRequestedBy, "reason": reason, "roomEnded": roomEnded ])
212
+ @objc
213
+ func changeMetadata(_ data: NSDictionary, _ resolve: RCTPromiseResolveBlock?, _ reject: RCTPromiseRejectBlock?) {
214
+ let hms = HmsHelper.getHms(data, hmsCollection)
215
+
216
+ hms?.changeMetadata(data, resolve, reject)
448
217
  }
449
-
450
-
451
- // MARK: Helper Functions
452
-
218
+
453
219
  @objc
454
- func muteAllPeersAudio(_ mute: Bool) {
455
- DispatchQueue.main.async { [weak self] in
456
- let remotePeers = self?.hms?.remotePeers
457
- for peer in remotePeers ?? [] {
458
- peer.remoteAudioTrack()?.setPlaybackAllowed(!mute)
459
- }
460
- }
461
- let roomData = HmsDecoder.getHmsRoom(hms?.room)
462
- let localPeerData = HmsDecoder.getHmsLocalPeer(hms?.localPeer)
463
- let remotePeerData = HmsDecoder.getHmsRemotePeers(hms?.remotePeers)
220
+ func setVolume(_ data: NSDictionary) {
221
+ let hms = HmsHelper.getHms(data, hmsCollection)
464
222
 
465
- self.sendEvent(withName: ON_PEER_UPDATE, body: ["event": ON_PEER_UPDATE, "room": roomData, "localPeer": localPeerData, "remotePeers": remotePeerData])
223
+ hms?.setVolume(data)
466
224
  }
467
225
 
468
- private func getString(from update: HMSPeerUpdate) -> String {
469
- switch update {
470
- case .peerJoined:
471
- return "PEER_JOINED"
472
- case .peerLeft:
473
- return "PEER_LEFT"
474
- case .roleUpdated:
475
- return "ROLE_CHANGED"
476
- default:
477
- return ""
478
- }
226
+ @objc
227
+ func startRTMPOrRecording(_ data: NSDictionary, _ resolve: RCTPromiseResolveBlock?, _ reject: RCTPromiseRejectBlock?) {
228
+ let hms = HmsHelper.getHms(data, hmsCollection)
229
+
230
+ hms?.startRTMPOrRecording(data, resolve, reject)
479
231
  }
480
232
 
481
- private func getString(from update: HMSTrackUpdate) -> String {
482
- switch update {
483
- case .trackAdded:
484
- return "TRACK_ADDED"
485
- case .trackRemoved:
486
- return "TRACK_REMOVED"
487
- case .trackMuted:
488
- return "TRACK_MUTED"
489
- case .trackUnmuted:
490
- return "TRACK_UNMUTED"
491
- case .trackDescriptionChanged:
492
- return "TRACK_DESCRIPTION_CHANGED"
493
- case .trackDegraded:
494
- return "TRACK_DEGRADED"
495
- case .trackRestored:
496
- return "TRACK_RESTORED"
497
- default:
498
- return ""
499
- }
233
+ @objc
234
+ func stopRtmpAndRecording(_ data: NSDictionary, _ resolve: RCTPromiseResolveBlock?, _ reject: RCTPromiseRejectBlock?) {
235
+ let hms = HmsHelper.getHms(data, hmsCollection)
236
+
237
+ hms?.stopRtmpAndRecording(resolve, reject)
500
238
  }
501
239
 
502
- func getString(from update: HMSRoomUpdate) -> String {
503
- switch update {
504
- case .roomTypeChanged:
505
- return "ROOM_TYPE_CHANGED"
506
- case .metaDataUpdated:
507
- return "META_DATA_CHANGED"
508
- case .browserRecordingStateUpdated:
509
- return "BROWSER_RECORDING_STATE_UPDATED"
510
- case .rtmpStreamingStateUpdated:
511
- return "RTMP_STREAMING_STATE_UPDATED"
512
- case.serverRecordingStateUpdated:
513
- return "SERVER_RECORDING_STATE_UPDATED"
514
- default:
515
- return ""
516
- }
517
- }
240
+ // @objc
241
+ // func setLocalVideoSettings(_ data: NSDictionary) {
242
+ // let hms = HmsHelper.getHms(data, hmsCollection)
243
+ //
244
+ // hms?.setLocalVideoSettings(data)
245
+ // }
518
246
  }