@100mslive/react-native-hms 1.2.0 → 1.3.0

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 (267) hide show
  1. package/README.md +2 -2
  2. package/android/src/main/java/com/reactnativehmssdk/HMSDecoder.kt +121 -53
  3. package/android/src/main/java/com/reactnativehmssdk/HMSManager.kt +14 -0
  4. package/android/src/main/java/com/reactnativehmssdk/HMSRNSDK.kt +139 -31
  5. package/ios/HMSDecoder.swift +113 -50
  6. package/ios/HMSManager.m +4 -0
  7. package/ios/HMSManager.swift +15 -1
  8. package/ios/HMSRNSDK.swift +119 -26
  9. package/ios/HMSView.swift +1 -1
  10. package/lib/commonjs/classes/HMSAudioCodec.js +4 -4
  11. package/lib/commonjs/classes/HMSAudioCodec.js.map +1 -1
  12. package/lib/commonjs/classes/HMSAudioDevice.js +4 -4
  13. package/lib/commonjs/classes/HMSAudioDevice.js.map +1 -1
  14. package/lib/commonjs/classes/HMSAudioFilePlayerNode.js.map +1 -1
  15. package/lib/commonjs/classes/HMSAudioMixerSource.js.map +1 -1
  16. package/lib/commonjs/classes/HMSAudioMixingMode.js +4 -4
  17. package/lib/commonjs/classes/HMSAudioMixingMode.js.map +1 -1
  18. package/lib/commonjs/classes/HMSAudioMode.js +4 -4
  19. package/lib/commonjs/classes/HMSAudioMode.js.map +1 -1
  20. package/lib/commonjs/classes/HMSAudioNode.js +2 -1
  21. package/lib/commonjs/classes/HMSAudioNode.js.map +1 -1
  22. package/lib/commonjs/classes/HMSAudioSettings.js.map +1 -1
  23. package/lib/commonjs/classes/HMSAudioTrack.js.map +1 -1
  24. package/lib/commonjs/classes/HMSAudioTrackSettings.js.map +1 -1
  25. package/lib/commonjs/classes/HMSBrowserRecordingState.js.map +1 -1
  26. package/lib/commonjs/classes/HMSCameraFacing.js +4 -4
  27. package/lib/commonjs/classes/HMSCameraFacing.js.map +1 -1
  28. package/lib/commonjs/classes/HMSChangeTrackStateRequest.js.map +1 -1
  29. package/lib/commonjs/classes/HMSConfig.js.map +1 -1
  30. package/lib/commonjs/classes/HMSConstants.js +11 -0
  31. package/lib/commonjs/classes/HMSConstants.js.map +1 -0
  32. package/lib/commonjs/classes/HMSEncoder.js +21 -43
  33. package/lib/commonjs/classes/HMSEncoder.js.map +1 -1
  34. package/lib/commonjs/classes/HMSException.js.map +1 -1
  35. package/lib/commonjs/classes/HMSHLSConfig.js.map +1 -1
  36. package/lib/commonjs/classes/HMSHLSMeetingURLVariant.js.map +1 -1
  37. package/lib/commonjs/classes/HMSHLSRecordingConfig.js.map +1 -1
  38. package/lib/commonjs/classes/HMSHLSRecordingState.js.map +1 -1
  39. package/lib/commonjs/classes/HMSHLSStreamingState.js.map +1 -1
  40. package/lib/commonjs/classes/HMSHLSVariant.js.map +1 -1
  41. package/lib/commonjs/classes/HMSHelper.js.map +1 -1
  42. package/lib/commonjs/classes/HMSLocalAudioStats.js.map +1 -1
  43. package/lib/commonjs/classes/HMSLocalAudioTrack.js.map +1 -1
  44. package/lib/commonjs/classes/HMSLocalPeer.js +0 -1
  45. package/lib/commonjs/classes/HMSLocalPeer.js.map +1 -1
  46. package/lib/commonjs/classes/HMSLocalVideoStats.js.map +1 -1
  47. package/lib/commonjs/classes/HMSLocalVideoTrack.js.map +1 -1
  48. package/lib/commonjs/classes/HMSLogAlarmManager.js +4 -4
  49. package/lib/commonjs/classes/HMSLogAlarmManager.js.map +1 -1
  50. package/lib/commonjs/classes/HMSLogLevel.js +4 -4
  51. package/lib/commonjs/classes/HMSLogLevel.js.map +1 -1
  52. package/lib/commonjs/classes/HMSLogSettings.js.map +1 -1
  53. package/lib/commonjs/classes/HMSLogger.js +17 -25
  54. package/lib/commonjs/classes/HMSLogger.js.map +1 -1
  55. package/lib/commonjs/classes/HMSMessage.js.map +1 -1
  56. package/lib/commonjs/classes/HMSMessageRecipient.js.map +1 -1
  57. package/lib/commonjs/classes/HMSMessageRecipientType.js +4 -4
  58. package/lib/commonjs/classes/HMSMessageRecipientType.js.map +1 -1
  59. package/lib/commonjs/classes/HMSMessageType.js +4 -4
  60. package/lib/commonjs/classes/HMSMessageType.js.map +1 -1
  61. package/lib/commonjs/classes/HMSMicNode.js.map +1 -1
  62. package/lib/commonjs/classes/HMSNativeEventEmitter.js +0 -5
  63. package/lib/commonjs/classes/HMSNativeEventEmitter.js.map +1 -1
  64. package/lib/commonjs/classes/HMSNetworkQuality.js.map +1 -1
  65. package/lib/commonjs/classes/HMSPIPListenerActions.js +4 -4
  66. package/lib/commonjs/classes/HMSPIPListenerActions.js.map +1 -1
  67. package/lib/commonjs/classes/HMSPeer.js +66 -19
  68. package/lib/commonjs/classes/HMSPeer.js.map +1 -1
  69. package/lib/commonjs/classes/HMSPeerUpdate.js +7 -5
  70. package/lib/commonjs/classes/HMSPeerUpdate.js.map +1 -1
  71. package/lib/commonjs/classes/HMSPeersCache.js +229 -0
  72. package/lib/commonjs/classes/HMSPeersCache.js.map +1 -0
  73. package/lib/commonjs/classes/HMSPermissions.js.map +1 -1
  74. package/lib/commonjs/classes/HMSPublishSettings.js.map +1 -1
  75. package/lib/commonjs/classes/HMSRTCStats.js.map +1 -1
  76. package/lib/commonjs/classes/HMSRTCStatsReport.js.map +1 -1
  77. package/lib/commonjs/classes/HMSRTMPConfig.js.map +1 -1
  78. package/lib/commonjs/classes/HMSRemoteAudioStats.js.map +1 -1
  79. package/lib/commonjs/classes/HMSRemoteAudioTrack.js.map +1 -1
  80. package/lib/commonjs/classes/HMSRemotePeer.js +0 -1
  81. package/lib/commonjs/classes/HMSRemotePeer.js.map +1 -1
  82. package/lib/commonjs/classes/HMSRemoteVideoStats.js.map +1 -1
  83. package/lib/commonjs/classes/HMSRemoteVideoTrack.js.map +1 -1
  84. package/lib/commonjs/classes/HMSRole.js.map +1 -1
  85. package/lib/commonjs/classes/HMSRoleChangeRequest.js.map +1 -1
  86. package/lib/commonjs/classes/HMSRoom.js +79 -22
  87. package/lib/commonjs/classes/HMSRoom.js.map +1 -1
  88. package/lib/commonjs/classes/HMSRoomCache.js +128 -0
  89. package/lib/commonjs/classes/HMSRoomCache.js.map +1 -0
  90. package/lib/commonjs/classes/HMSRoomUpdate.js +4 -4
  91. package/lib/commonjs/classes/HMSRoomUpdate.js.map +1 -1
  92. package/lib/commonjs/classes/HMSRtmpStreamingState.js.map +1 -1
  93. package/lib/commonjs/classes/HMSRtmpVideoResolution.js.map +1 -1
  94. package/lib/commonjs/classes/HMSSDK.js +468 -21
  95. package/lib/commonjs/classes/HMSSDK.js.map +1 -1
  96. package/lib/commonjs/classes/HMSScreenBroadcastAudioReceiverNode.js.map +1 -1
  97. package/lib/commonjs/classes/HMSServerRecordingState.js.map +1 -1
  98. package/lib/commonjs/classes/HMSSimulcastLayerSettings.js.map +1 -1
  99. package/lib/commonjs/classes/HMSSimulcastSettings.js.map +1 -1
  100. package/lib/commonjs/classes/HMSSpeaker.js.map +1 -1
  101. package/lib/commonjs/classes/HMSSubscribeSettings.js.map +1 -1
  102. package/lib/commonjs/classes/HMSTrack.js.map +1 -1
  103. package/lib/commonjs/classes/HMSTrackSettings.js.map +1 -1
  104. package/lib/commonjs/classes/HMSTrackSettingsInitState.js +4 -4
  105. package/lib/commonjs/classes/HMSTrackSettingsInitState.js.map +1 -1
  106. package/lib/commonjs/classes/HMSTrackSource.js +4 -4
  107. package/lib/commonjs/classes/HMSTrackSource.js.map +1 -1
  108. package/lib/commonjs/classes/HMSTrackType.js +4 -4
  109. package/lib/commonjs/classes/HMSTrackType.js.map +1 -1
  110. package/lib/commonjs/classes/HMSTrackUpdate.js +4 -4
  111. package/lib/commonjs/classes/HMSTrackUpdate.js.map +1 -1
  112. package/lib/commonjs/classes/HMSUpdateListenerActions.js +5 -5
  113. package/lib/commonjs/classes/HMSUpdateListenerActions.js.map +1 -1
  114. package/lib/commonjs/classes/HMSVideoCodec.js +4 -4
  115. package/lib/commonjs/classes/HMSVideoCodec.js.map +1 -1
  116. package/lib/commonjs/classes/HMSVideoResolution.js.map +1 -1
  117. package/lib/commonjs/classes/HMSVideoSettings.js.map +1 -1
  118. package/lib/commonjs/classes/HMSVideoTrack.js.map +1 -1
  119. package/lib/commonjs/classes/HMSVideoTrackSettings.js.map +1 -1
  120. package/lib/commonjs/classes/HMSVideoViewMode.js +4 -4
  121. package/lib/commonjs/classes/HMSVideoViewMode.js.map +1 -1
  122. package/lib/commonjs/classes/HmsView.js +2 -1
  123. package/lib/commonjs/classes/HmsView.js.map +1 -1
  124. package/lib/commonjs/index.js.map +1 -1
  125. package/lib/module/classes/HMSAudioCodec.js +3 -3
  126. package/lib/module/classes/HMSAudioCodec.js.map +1 -1
  127. package/lib/module/classes/HMSAudioDevice.js +3 -3
  128. package/lib/module/classes/HMSAudioDevice.js.map +1 -1
  129. package/lib/module/classes/HMSAudioFilePlayerNode.js.map +1 -1
  130. package/lib/module/classes/HMSAudioMixerSource.js.map +1 -1
  131. package/lib/module/classes/HMSAudioMixingMode.js +3 -3
  132. package/lib/module/classes/HMSAudioMixingMode.js.map +1 -1
  133. package/lib/module/classes/HMSAudioMode.js +3 -3
  134. package/lib/module/classes/HMSAudioMode.js.map +1 -1
  135. package/lib/module/classes/HMSAudioNode.js +2 -1
  136. package/lib/module/classes/HMSAudioNode.js.map +1 -1
  137. package/lib/module/classes/HMSAudioSettings.js.map +1 -1
  138. package/lib/module/classes/HMSAudioTrack.js.map +1 -1
  139. package/lib/module/classes/HMSAudioTrackSettings.js.map +1 -1
  140. package/lib/module/classes/HMSBrowserRecordingState.js.map +1 -1
  141. package/lib/module/classes/HMSCameraFacing.js +3 -3
  142. package/lib/module/classes/HMSCameraFacing.js.map +1 -1
  143. package/lib/module/classes/HMSChangeTrackStateRequest.js.map +1 -1
  144. package/lib/module/classes/HMSConfig.js.map +1 -1
  145. package/lib/module/classes/HMSConstants.js +4 -0
  146. package/lib/module/classes/HMSConstants.js.map +1 -0
  147. package/lib/module/classes/HMSEncoder.js +21 -43
  148. package/lib/module/classes/HMSEncoder.js.map +1 -1
  149. package/lib/module/classes/HMSException.js.map +1 -1
  150. package/lib/module/classes/HMSHLSConfig.js.map +1 -1
  151. package/lib/module/classes/HMSHLSMeetingURLVariant.js.map +1 -1
  152. package/lib/module/classes/HMSHLSRecordingConfig.js.map +1 -1
  153. package/lib/module/classes/HMSHLSRecordingState.js.map +1 -1
  154. package/lib/module/classes/HMSHLSStreamingState.js.map +1 -1
  155. package/lib/module/classes/HMSHLSVariant.js.map +1 -1
  156. package/lib/module/classes/HMSHelper.js.map +1 -1
  157. package/lib/module/classes/HMSLocalAudioStats.js.map +1 -1
  158. package/lib/module/classes/HMSLocalAudioTrack.js.map +1 -1
  159. package/lib/module/classes/HMSLocalPeer.js +0 -1
  160. package/lib/module/classes/HMSLocalPeer.js.map +1 -1
  161. package/lib/module/classes/HMSLocalVideoStats.js.map +1 -1
  162. package/lib/module/classes/HMSLocalVideoTrack.js.map +1 -1
  163. package/lib/module/classes/HMSLogAlarmManager.js +3 -3
  164. package/lib/module/classes/HMSLogAlarmManager.js.map +1 -1
  165. package/lib/module/classes/HMSLogLevel.js +3 -3
  166. package/lib/module/classes/HMSLogLevel.js.map +1 -1
  167. package/lib/module/classes/HMSLogSettings.js.map +1 -1
  168. package/lib/module/classes/HMSLogger.js +17 -25
  169. package/lib/module/classes/HMSLogger.js.map +1 -1
  170. package/lib/module/classes/HMSMessage.js.map +1 -1
  171. package/lib/module/classes/HMSMessageRecipient.js.map +1 -1
  172. package/lib/module/classes/HMSMessageRecipientType.js +3 -3
  173. package/lib/module/classes/HMSMessageRecipientType.js.map +1 -1
  174. package/lib/module/classes/HMSMessageType.js +3 -3
  175. package/lib/module/classes/HMSMessageType.js.map +1 -1
  176. package/lib/module/classes/HMSMicNode.js.map +1 -1
  177. package/lib/module/classes/HMSNativeEventEmitter.js +1 -6
  178. package/lib/module/classes/HMSNativeEventEmitter.js.map +1 -1
  179. package/lib/module/classes/HMSNetworkQuality.js.map +1 -1
  180. package/lib/module/classes/HMSPIPListenerActions.js +3 -3
  181. package/lib/module/classes/HMSPIPListenerActions.js.map +1 -1
  182. package/lib/module/classes/HMSPeer.js +66 -19
  183. package/lib/module/classes/HMSPeer.js.map +1 -1
  184. package/lib/module/classes/HMSPeerUpdate.js +4 -3
  185. package/lib/module/classes/HMSPeerUpdate.js.map +1 -1
  186. package/lib/module/classes/HMSPeersCache.js +216 -0
  187. package/lib/module/classes/HMSPeersCache.js.map +1 -0
  188. package/lib/module/classes/HMSPermissions.js.map +1 -1
  189. package/lib/module/classes/HMSPublishSettings.js.map +1 -1
  190. package/lib/module/classes/HMSRTCStats.js.map +1 -1
  191. package/lib/module/classes/HMSRTCStatsReport.js.map +1 -1
  192. package/lib/module/classes/HMSRTMPConfig.js.map +1 -1
  193. package/lib/module/classes/HMSRemoteAudioStats.js.map +1 -1
  194. package/lib/module/classes/HMSRemoteAudioTrack.js.map +1 -1
  195. package/lib/module/classes/HMSRemotePeer.js +0 -1
  196. package/lib/module/classes/HMSRemotePeer.js.map +1 -1
  197. package/lib/module/classes/HMSRemoteVideoStats.js.map +1 -1
  198. package/lib/module/classes/HMSRemoteVideoTrack.js.map +1 -1
  199. package/lib/module/classes/HMSRole.js.map +1 -1
  200. package/lib/module/classes/HMSRoleChangeRequest.js.map +1 -1
  201. package/lib/module/classes/HMSRoom.js +79 -22
  202. package/lib/module/classes/HMSRoom.js.map +1 -1
  203. package/lib/module/classes/HMSRoomCache.js +115 -0
  204. package/lib/module/classes/HMSRoomCache.js.map +1 -0
  205. package/lib/module/classes/HMSRoomUpdate.js +3 -3
  206. package/lib/module/classes/HMSRoomUpdate.js.map +1 -1
  207. package/lib/module/classes/HMSRtmpStreamingState.js.map +1 -1
  208. package/lib/module/classes/HMSRtmpVideoResolution.js.map +1 -1
  209. package/lib/module/classes/HMSSDK.js +468 -21
  210. package/lib/module/classes/HMSSDK.js.map +1 -1
  211. package/lib/module/classes/HMSScreenBroadcastAudioReceiverNode.js.map +1 -1
  212. package/lib/module/classes/HMSServerRecordingState.js.map +1 -1
  213. package/lib/module/classes/HMSSimulcastLayerSettings.js.map +1 -1
  214. package/lib/module/classes/HMSSimulcastSettings.js.map +1 -1
  215. package/lib/module/classes/HMSSpeaker.js.map +1 -1
  216. package/lib/module/classes/HMSSubscribeSettings.js.map +1 -1
  217. package/lib/module/classes/HMSTrack.js.map +1 -1
  218. package/lib/module/classes/HMSTrackSettings.js.map +1 -1
  219. package/lib/module/classes/HMSTrackSettingsInitState.js +3 -3
  220. package/lib/module/classes/HMSTrackSettingsInitState.js.map +1 -1
  221. package/lib/module/classes/HMSTrackSource.js +3 -3
  222. package/lib/module/classes/HMSTrackSource.js.map +1 -1
  223. package/lib/module/classes/HMSTrackType.js +3 -3
  224. package/lib/module/classes/HMSTrackType.js.map +1 -1
  225. package/lib/module/classes/HMSTrackUpdate.js +3 -3
  226. package/lib/module/classes/HMSTrackUpdate.js.map +1 -1
  227. package/lib/module/classes/HMSUpdateListenerActions.js +4 -4
  228. package/lib/module/classes/HMSUpdateListenerActions.js.map +1 -1
  229. package/lib/module/classes/HMSVideoCodec.js +3 -3
  230. package/lib/module/classes/HMSVideoCodec.js.map +1 -1
  231. package/lib/module/classes/HMSVideoResolution.js.map +1 -1
  232. package/lib/module/classes/HMSVideoSettings.js.map +1 -1
  233. package/lib/module/classes/HMSVideoTrack.js.map +1 -1
  234. package/lib/module/classes/HMSVideoTrackSettings.js.map +1 -1
  235. package/lib/module/classes/HMSVideoViewMode.js +3 -3
  236. package/lib/module/classes/HMSVideoViewMode.js.map +1 -1
  237. package/lib/module/classes/HmsView.js +2 -1
  238. package/lib/module/classes/HmsView.js.map +1 -1
  239. package/lib/typescript/classes/HMSConstants.d.ts +3 -0
  240. package/lib/typescript/classes/HMSEncoder.d.ts +7 -6
  241. package/lib/typescript/classes/HMSLocalPeer.d.ts +0 -14
  242. package/lib/typescript/classes/HMSLogger.d.ts +1 -7
  243. package/lib/typescript/classes/HMSPeer.d.ts +12 -18
  244. package/lib/typescript/classes/HMSPeerUpdate.d.ts +1 -0
  245. package/lib/typescript/classes/HMSPeersCache.d.ts +17 -0
  246. package/lib/typescript/classes/HMSRemotePeer.d.ts +0 -14
  247. package/lib/typescript/classes/HMSRoom.d.ts +11 -22
  248. package/lib/typescript/classes/HMSRoomCache.d.ts +16 -0
  249. package/lib/typescript/classes/HMSSDK.d.ts +1 -1
  250. package/lib/typescript/classes/HMSUpdateListenerActions.d.ts +1 -1
  251. package/package.json +1 -1
  252. package/sdk-versions.json +3 -3
  253. package/src/classes/HMSAudioNode.ts +3 -1
  254. package/src/classes/HMSConstants.ts +3 -0
  255. package/src/classes/HMSEncoder.ts +24 -69
  256. package/src/classes/HMSLocalPeer.ts +0 -15
  257. package/src/classes/HMSLogger.ts +20 -19
  258. package/src/classes/HMSNativeEventEmitter.ts +35 -12
  259. package/src/classes/HMSPeer.ts +133 -34
  260. package/src/classes/HMSPeerUpdate.ts +9 -0
  261. package/src/classes/HMSPeersCache.ts +252 -0
  262. package/src/classes/HMSRemotePeer.ts +0 -16
  263. package/src/classes/HMSRoom.ts +141 -37
  264. package/src/classes/HMSRoomCache.ts +157 -0
  265. package/src/classes/HMSSDK.tsx +57 -24
  266. package/src/classes/HMSUpdateListenerActions.ts +1 -1
  267. package/src/classes/HmsView.tsx +2 -1
@@ -12,7 +12,45 @@ class HMSDecoder: NSObject {
12
12
  restrictRoleData.removeAll()
13
13
  }
14
14
 
15
- static func getHmsRoom (_ hmsRoom: HMSRoom?) -> [String: Any] {
15
+ static func getHmsRoomSubset(_ hmsRoom: HMSRoom?, _ hmsRoomUpdateType: HMSRoomUpdate? = nil) -> [String: Any] {
16
+
17
+ guard let room = hmsRoom else { return [String: Any]() }
18
+
19
+ var data: [String: Any] = ["id": room.roomID ?? ""]
20
+
21
+ switch hmsRoomUpdateType {
22
+ case .none:
23
+ return data
24
+ case .metaDataUpdated:
25
+ let count = room.peerCount ?? 0
26
+ data["peerCount"] = count
27
+ return data
28
+ case .hlsRecordingStateUpdated:
29
+ let hlsRecordingState = HMSDecoder.getHlsRecordingState(hmsRoom?.hlsRecordingState)
30
+ data["hlsRecordingState"] = hlsRecordingState
31
+ return data
32
+ case .browserRecordingStateUpdated:
33
+ let browserRecordingState = HMSDecoder.getHMSBrowserRecordingState(hmsRoom?.browserRecordingState)
34
+ data["browserRecordingState"] = browserRecordingState
35
+ return data
36
+ case .hlsStreamingStateUpdated:
37
+ let hlsStreamingState = HMSDecoder.getHlsStreamingState(hmsRoom?.hlsStreamingState)
38
+ data["hlsStreamingState"] = hlsStreamingState
39
+ return data
40
+ case .rtmpStreamingStateUpdated:
41
+ let rtmpStreamingState = HMSDecoder.getHMSRtmpStreamingState(hmsRoom?.rtmpStreamingState)
42
+ data["rtmpHMSRtmpStreamingState"] = rtmpStreamingState
43
+ return data
44
+ case .serverRecordingStateUpdated:
45
+ let serverRecordingState = HMSDecoder.getHMSServerRecordingState(hmsRoom?.serverRecordingState)
46
+ data["serverRecordingState"] = serverRecordingState
47
+ return data
48
+ default:
49
+ return data
50
+ }
51
+ }
52
+
53
+ static func getHmsRoom(_ hmsRoom: HMSRoom?) -> [String: Any] {
16
54
 
17
55
  guard let room = hmsRoom else { return [String: Any]() }
18
56
 
@@ -31,7 +69,7 @@ class HMSDecoder: NSObject {
31
69
  var peers = [[String: Any]]()
32
70
 
33
71
  for peer in room.peers {
34
- let parsedPeer = getHmsPeer(peer)
72
+ let parsedPeer = getHmsPeerSubset(peer)
35
73
  peers.append(parsedPeer)
36
74
  if peer.isLocal {
37
75
  localPeer = parsedPeer
@@ -41,6 +79,76 @@ class HMSDecoder: NSObject {
41
79
  return ["id": id, "name": name, "metaData": metaData, "peers": peers, "browserRecordingState": browserRecordingState, "rtmpHMSRtmpStreamingState": rtmpStreamingState, "serverRecordingState": serverRecordingState, "hlsRecordingState": hlsRecordingState, "hlsStreamingState": hlsStreamingState, "peerCount": count, "sessionId": sessionId, "localPeer": localPeer]
42
80
  }
43
81
 
82
+ static func getPeerUpdateTypeOrdinals(_ peerUpdateType: HMSPeerUpdate) -> String? {
83
+ switch peerUpdateType {
84
+ case .peerJoined: return "0"
85
+ case .peerLeft: return "1"
86
+ case .roleUpdated: return "9"
87
+ case .nameUpdated: return "10"
88
+ case .metadataUpdated: return "11"
89
+ case .networkQualityUpdated: return "12"
90
+ default: return nil
91
+ }
92
+ }
93
+
94
+ static func getHmsPeerSubsetForPeerUpdateEvent (_ hmsPeer: HMSPeer?, _ peerUpdateType: HMSPeerUpdate) -> [String: Any] {
95
+
96
+ guard let peer = hmsPeer else { return [String: Any]() }
97
+
98
+ var peerDict = [String: Any]()
99
+
100
+ guard let updateType = getPeerUpdateTypeOrdinals(peerUpdateType) else { return peerDict }
101
+
102
+ peerDict[updateType] = peer.peerID
103
+
104
+ switch peerUpdateType {
105
+ case .nameUpdated:
106
+ peerDict["name"] = peer.name
107
+ return peerDict
108
+ case .metadataUpdated:
109
+ peerDict["metadata"] = peer.metadata ?? ""
110
+ return peerDict
111
+ case .roleUpdated:
112
+ peerDict["role"] = getHmsRole(peer.role)
113
+ return peerDict
114
+ case .networkQualityUpdated:
115
+ if let quality = peer.networkQuality {
116
+ peerDict["networkQuality"] = getHmsNetworkQuality(quality)
117
+ }
118
+ return peerDict
119
+ default:
120
+ return peerDict
121
+ }
122
+ }
123
+
124
+ static func getHmsPeerSubset (_ hmsPeer: HMSPeer?, _ peerUpdateType: HMSPeerUpdate? = nil) -> [String: Any] {
125
+
126
+ guard let peer = hmsPeer else { return [String: Any]() }
127
+
128
+ var peerDict = [String: Any]()
129
+
130
+ peerDict["peerID"] = peer.peerID
131
+
132
+ switch peerUpdateType {
133
+ case .nameUpdated:
134
+ peerDict["name"] = peer.name
135
+ return peerDict
136
+ case .metadataUpdated:
137
+ peerDict["metadata"] = peer.metadata ?? ""
138
+ return peerDict
139
+ case .roleUpdated:
140
+ peerDict["role"] = getHmsRole(peer.role)
141
+ return peerDict
142
+ case .networkQualityUpdated:
143
+ if let quality = peer.networkQuality {
144
+ peerDict["networkQuality"] = getHmsNetworkQuality(quality)
145
+ }
146
+ return peerDict
147
+ default:
148
+ return peerDict
149
+ }
150
+ }
151
+
44
152
  static func getHmsPeer (_ hmsPeer: HMSPeer?) -> [String: Any] {
45
153
 
46
154
  guard let peer = hmsPeer else { return [String: Any]() }
@@ -137,41 +245,18 @@ class HMSDecoder: NSObject {
137
245
 
138
246
  peerDict["peerID"] = peer.peerID
139
247
 
140
- peerDict["name"] = peer.name
141
- peerDict["isLocal"] = peer.isLocal
142
-
143
- if let userID = peer.customerUserID {
144
- peerDict["customerUserID"] = userID
145
- }
146
-
147
- peerDict["metadata"] = peer.metadata ?? ""
148
-
149
- peerDict["role"] = getHmsRole(peer.role)
150
-
151
248
  if let audio = peer.audioTrack {
152
- peerDict["audioTrack"] = getHmsAudioTrack(audio)
153
-
154
249
  if let localAudio = audio as? HMSLocalAudioTrack {
155
250
  peerDict["localAudioTrackData"] = getHmsLocalAudioTrack(localAudio)
156
251
  }
157
252
  }
158
253
 
159
254
  if let video = peer.videoTrack {
160
- peerDict["videoTrack"] = getHmsVideoTrack(video)
161
-
162
255
  if let localVideo = video as? HMSLocalVideoTrack {
163
256
  peerDict["localVideoTrackData"] = getHmsLocalVideoTrack(localVideo)
164
257
  }
165
258
  }
166
259
 
167
- if let quality = peer.networkQuality {
168
- peerDict["networkQuality"] = getHmsNetworkQuality(quality)
169
- }
170
-
171
- if let auxTracks = peer.auxiliaryTracks, auxTracks.count > 0 {
172
- peerDict["auxiliaryTracks"] = getAllTracks(auxTracks)
173
- }
174
-
175
260
  return peerDict
176
261
  }
177
262
 
@@ -262,43 +347,21 @@ class HMSDecoder: NSObject {
262
347
  var peerDict = [String: Any]()
263
348
 
264
349
  peerDict["peerID"] = peer.peerID
265
- peerDict["name"] = peer.name
266
- peerDict["isLocal"] = peer.isLocal
267
-
268
- if let userID = peer.customerUserID {
269
- peerDict["customerUserID"] = userID
270
- }
271
-
272
- peerDict["metadata"] = peer.metadata ?? ""
273
350
 
274
351
  // joinedAt
275
352
 
276
- peerDict["role"] = getHmsRole(peer.role)
277
-
278
- if let quality = peer.networkQuality {
279
- peerDict["networkQuality"] = getHmsNetworkQuality(quality)
280
- }
281
-
282
353
  if let audio = peer.audioTrack {
283
- peerDict["audioTrack"] = getHmsAudioTrack(audio)
284
-
285
354
  if let remoteAudio = audio as? HMSRemoteAudioTrack {
286
355
  peerDict["remoteAudioTrackData"] = getHMSRemoteAudioTrack(remoteAudio)
287
356
  }
288
357
  }
289
358
 
290
359
  if let video = peer.videoTrack {
291
- peerDict["videoTrack"] = getHmsVideoTrack(video)
292
-
293
360
  if let remoteVideo = video as? HMSRemoteVideoTrack {
294
361
  peerDict["remoteVideoTrackData"] = getHMSRemoteVideoTrack(remoteVideo)
295
362
  }
296
363
  }
297
364
 
298
- if let auxTracks = peer.auxiliaryTracks, auxTracks.count > 0 {
299
- peerDict["auxiliaryTracks"] = getAllTracks(auxTracks)
300
- }
301
-
302
365
  return peerDict
303
366
  }
304
367
 
@@ -482,7 +545,7 @@ class HMSDecoder: NSObject {
482
545
  if let sdkId = id {
483
546
  var requestedBy: [String: Any]?
484
547
  if let peer = roleChangeRequest.requestedBy {
485
- requestedBy = getHmsPeer(peer)
548
+ requestedBy = getHmsPeerSubset(peer)
486
549
  }
487
550
 
488
551
  let suggestedRole = getHmsRole(roleChangeRequest.suggestedRole)
@@ -500,7 +563,7 @@ class HMSDecoder: NSObject {
500
563
  static func getHmsChangeTrackStateRequest(_ changeTrackStateRequest: HMSChangeTrackStateRequest, _ id: String) -> [String: Any] {
501
564
  var requestedBy: [String: Any]?
502
565
  if let peer = changeTrackStateRequest.requestedBy {
503
- requestedBy = getHmsPeer(peer)
566
+ requestedBy = getHmsPeerSubset(peer)
504
567
  }
505
568
  let trackType = changeTrackStateRequest.track.kind == .video ? "video" : "audio"
506
569
 
@@ -656,7 +719,7 @@ class HMSDecoder: NSObject {
656
719
  var data = [String: Any]()
657
720
 
658
721
  if let peer = recipient.peerRecipient {
659
- data["recipientPeer"] = getHmsPeer(peer)
722
+ data["recipientPeer"] = getHmsPeerSubset(peer)
660
723
  }
661
724
 
662
725
  data["recipientType"] = getRecipientType(from: recipient.type)
package/ios/HMSManager.m CHANGED
@@ -57,6 +57,10 @@ RCT_EXTERN_METHOD(setSessionMetaData: (NSDictionary) data :(RCTPromiseResolveBlo
57
57
  RCT_EXTERN_METHOD(getSessionMetaData: (NSDictionary) data :(RCTPromiseResolveBlock) resolve :(RCTPromiseRejectBlock) reject)
58
58
  RCT_EXTERN_METHOD(changeRoleOfPeer: (NSDictionary) data :(RCTPromiseResolveBlock) resolve :(RCTPromiseRejectBlock) reject)
59
59
  RCT_EXTERN_METHOD(changeRoleOfPeersWithRoles: (NSDictionary) data :(RCTPromiseResolveBlock) resolve :(RCTPromiseRejectBlock) reject)
60
+
61
+ RCT_EXTERN__BLOCKING_SYNCHRONOUS_METHOD(getPeerProperty: (NSDictionary) data)
62
+ RCT_EXTERN__BLOCKING_SYNCHRONOUS_METHOD(getRoomProperty: (NSDictionary) data)
63
+
60
64
  RCT_EXTERN_METHOD(enableEvent: (NSDictionary) data :(RCTPromiseResolveBlock) resolve :(RCTPromiseRejectBlock) reject)
61
65
  RCT_EXTERN_METHOD(disableEvent: (NSDictionary) data :(RCTPromiseResolveBlock) resolve :(RCTPromiseRejectBlock) reject)
62
66
  RCT_EXTERN_METHOD(restrictData: (NSDictionary) data)
@@ -8,7 +8,7 @@ class HMSManager: RCTEventEmitter {
8
8
  let ON_PREVIEW = "ON_PREVIEW"
9
9
  let ON_JOIN = "ON_JOIN"
10
10
  let ON_ROOM_UPDATE = "ON_ROOM_UPDATE"
11
- let ON_PEER_UPDATE = "ON_PEER_UPDATE"
11
+ let ON_PEER_UPDATE = "3"
12
12
  let ON_TRACK_UPDATE = "ON_TRACK_UPDATE"
13
13
  let ON_ROLE_CHANGE_REQUEST = "ON_ROLE_CHANGE_REQUEST"
14
14
  let ON_CHANGE_TRACK_STATE_REQUEST = "ON_CHANGE_TRACK_STATE_REQUEST"
@@ -401,6 +401,20 @@ class HMSManager: RCTEventEmitter {
401
401
  hms?.setSessionMetaData(data, resolve, reject)
402
402
  }
403
403
 
404
+ @objc
405
+ func getPeerProperty(_ data: NSDictionary) -> [AnyHashable: Any]? {
406
+ let hms = HMSHelper.getHms(data, hmsCollection)
407
+
408
+ return hms?.getPeerProperty(data)
409
+ }
410
+
411
+ @objc
412
+ func getRoomProperty(_ data: NSDictionary) -> [AnyHashable: Any]? {
413
+ let hms = HMSHelper.getHms(data, hmsCollection)
414
+
415
+ return hms?.getRoomProperty(data)
416
+ }
417
+
404
418
  @objc
405
419
  func enableEvent(_ data: NSDictionary, _ resolve: RCTPromiseResolveBlock?, _ reject: RCTPromiseRejectBlock?) {
406
420
  let hms = HMSHelper.getHms(data, hmsCollection)
@@ -31,7 +31,7 @@ class HMSRNSDK: HMSUpdateListener, HMSPreviewListener {
31
31
  let ON_PREVIEW = "ON_PREVIEW"
32
32
  let ON_JOIN = "ON_JOIN"
33
33
  let ON_ROOM_UPDATE = "ON_ROOM_UPDATE"
34
- let ON_PEER_UPDATE = "ON_PEER_UPDATE"
34
+ let ON_PEER_UPDATE = "3"
35
35
  let ON_TRACK_UPDATE = "ON_TRACK_UPDATE"
36
36
  let ON_ROLE_CHANGE_REQUEST = "ON_ROLE_CHANGE_REQUEST"
37
37
  let ON_REMOVED_FROM_ROOM = "ON_REMOVED_FROM_ROOM"
@@ -702,12 +702,6 @@ class HMSRNSDK: HMSUpdateListener, HMSPreviewListener {
702
702
  let config = HMSRTMPConfig(meetingURL: meetingUrl, rtmpURLs: URLs, record: record)
703
703
  hms?.startRTMPOrRecording(config: config, completion: { success, error in
704
704
  if success {
705
- let roomData = HMSDecoder.getHmsRoom(self.hms?.room)
706
- let type = self.getString(from: HMSRoomUpdate.browserRecordingStateUpdated)
707
-
708
- if self.eventsEnableStatus[self.ON_ROOM_UPDATE] == true {
709
- self.delegate?.emitEvent(self.ON_ROOM_UPDATE, ["event": self.ON_ROOM_UPDATE, "id": self.id, "type": type, "room": roomData])
710
- }
711
705
  resolve?(["success": success])
712
706
  return
713
707
  } else {
@@ -723,12 +717,6 @@ class HMSRNSDK: HMSUpdateListener, HMSPreviewListener {
723
717
  func stopRtmpAndRecording(_ resolve: RCTPromiseResolveBlock?, _ reject: RCTPromiseRejectBlock?) {
724
718
  hms?.stopRTMPAndRecording(completion: { success, error in
725
719
  if success {
726
- let roomData = HMSDecoder.getHmsRoom(self.hms?.room)
727
- let type = self.getString(from: HMSRoomUpdate.browserRecordingStateUpdated)
728
-
729
- if self.eventsEnableStatus[self.ON_ROOM_UPDATE] == true {
730
- self.delegate?.emitEvent(self.ON_ROOM_UPDATE, ["event": self.ON_ROOM_UPDATE, "id": self.id, "type": type, "room": roomData])
731
- }
732
720
  resolve?(["success": success])
733
721
  return
734
722
  } else {
@@ -1158,13 +1146,118 @@ class HMSRNSDK: HMSUpdateListener, HMSPreviewListener {
1158
1146
  }
1159
1147
  }
1160
1148
 
1149
+ func getPeerProperty(_ data: NSDictionary) -> [AnyHashable: Any]? {
1150
+ guard let property = data.value(forKey: "property") as? String else {
1151
+ return nil
1152
+ }
1153
+
1154
+ guard let peerId = data.value(forKey: "peerId") as? String else {
1155
+ return nil
1156
+ }
1157
+
1158
+ guard let room = hms?.room, let peer = HMSUtilities.getPeer(for: peerId, in: room) else {
1159
+ return nil
1160
+ }
1161
+
1162
+ switch property {
1163
+ case "name":
1164
+ return ["name": peer.name]
1165
+ case "isLocal":
1166
+ return ["isLocal": peer.isLocal]
1167
+ case "networkQuality":
1168
+ if peer.networkQuality != nil {
1169
+ return ["networkQuality": HMSDecoder.getHmsNetworkQuality(peer.networkQuality)]
1170
+ } else {
1171
+ return nil
1172
+ }
1173
+ case "metadata":
1174
+ return ["metadata": peer.metadata ?? ""]
1175
+ case "role":
1176
+ return ["role": HMSDecoder.getHmsRole(peer.role)]
1177
+ case "customerUserID":
1178
+ return ["customerUserID": peer.customerUserID ?? ""]
1179
+ case "audioTrack":
1180
+ if peer.audioTrack != nil {
1181
+ return ["audioTrack": HMSDecoder.getHmsAudioTrack(peer.audioTrack)]
1182
+ } else {
1183
+ return nil
1184
+ }
1185
+ case "videoTrack":
1186
+ if peer.videoTrack != nil {
1187
+ return ["videoTrack": HMSDecoder.getHmsVideoTrack(peer.videoTrack)]
1188
+ } else {
1189
+ return nil
1190
+ }
1191
+ case "auxiliaryTracks":
1192
+ if let auxTracks = peer.auxiliaryTracks, auxTracks.count > 0 {
1193
+ return ["auxiliaryTracks": HMSDecoder.getAllTracks(auxTracks)]
1194
+ } else {
1195
+ return nil
1196
+ }
1197
+ default:
1198
+ return nil
1199
+ }
1200
+ }
1201
+
1202
+ func getRoomProperty(_ data: NSDictionary) -> [AnyHashable: Any]? {
1203
+ guard let property = data.value(forKey: "property") as? String else {
1204
+ return nil
1205
+ }
1206
+
1207
+ guard let hmsRoom = hms?.room else {
1208
+ return nil
1209
+ }
1210
+
1211
+ switch property {
1212
+ case "sessionId":
1213
+ return ["sessionId": hmsRoom.sessionID ?? ""]
1214
+ case "name":
1215
+ return ["name": hmsRoom.name ?? ""]
1216
+
1217
+ case "metaData":
1218
+ return ["metaData": hmsRoom.metaData ?? ""]
1219
+
1220
+ case "peerCount":
1221
+ return ["peerCount": hmsRoom.peerCount ?? 0]
1222
+
1223
+ case "peers":
1224
+ var peers = [[String: Any]]()
1225
+ for peer in hmsRoom.peers {
1226
+ let parsedPeer = HMSDecoder.getHmsPeerSubset(peer)
1227
+ peers.append(parsedPeer)
1228
+ }
1229
+ return ["peers": peers]
1230
+
1231
+ case "localPeer":
1232
+ return ["localPeer": HMSDecoder.getHmsLocalPeer(hms?.localPeer)]
1233
+
1234
+ case "browserRecordingState":
1235
+ return ["browserRecordingState": HMSDecoder.getHMSBrowserRecordingState(hmsRoom.browserRecordingState)]
1236
+
1237
+ case "rtmpHMSRtmpStreamingState":
1238
+ return ["rtmpHMSRtmpStreamingState": HMSDecoder.getHMSRtmpStreamingState(hmsRoom.rtmpStreamingState)]
1239
+
1240
+ case "serverRecordingState":
1241
+ return ["serverRecordingState": HMSDecoder.getHMSServerRecordingState(hmsRoom.serverRecordingState)]
1242
+
1243
+ case "hlsStreamingState":
1244
+ return ["hlsStreamingState": HMSDecoder.getHlsStreamingState(hmsRoom.hlsStreamingState)]
1245
+
1246
+ case "hlsRecordingState":
1247
+ return ["hlsRecordingState": HMSDecoder.getHlsRecordingState(hmsRoom.hlsRecordingState)]
1248
+
1249
+ default:
1250
+ return nil
1251
+ }
1252
+ }
1253
+
1161
1254
  // MARK: - HMS SDK Delegate Callbacks
1162
1255
  func on(join room: HMSRoom) {
1163
1256
  self.recentPreviewTracks = []
1164
1257
  if eventsEnableStatus[ON_JOIN] != true {
1165
1258
  return
1166
1259
  }
1167
- let roomData = HMSDecoder.getHmsRoom(room)
1260
+ let roomData = HMSDecoder.getHmsRoomSubset(room)
1168
1261
  self.delegate?.emitEvent(ON_JOIN, ["event": ON_JOIN, "id": self.id, "room": roomData])
1169
1262
  }
1170
1263
 
@@ -1174,7 +1267,7 @@ class HMSRNSDK: HMSUpdateListener, HMSPreviewListener {
1174
1267
  return
1175
1268
  }
1176
1269
  let previewTracks = HMSDecoder.getPreviewTracks(localTracks)
1177
- let hmsRoom = HMSDecoder.getHmsRoom(room)
1270
+ let hmsRoom = HMSDecoder.getHmsRoomSubset(room)
1178
1271
 
1179
1272
  self.delegate?.emitEvent(ON_PREVIEW, ["event": ON_PREVIEW, "id": self.id, "room": hmsRoom, "previewTracks": previewTracks])
1180
1273
  }
@@ -1187,7 +1280,7 @@ class HMSRNSDK: HMSUpdateListener, HMSPreviewListener {
1187
1280
  return
1188
1281
  }
1189
1282
 
1190
- let roomData = HMSDecoder.getHmsRoom(room)
1283
+ let roomData = HMSDecoder.getHmsRoomSubset(room, update)
1191
1284
  let type = getString(from: update)
1192
1285
 
1193
1286
  self.delegate?.emitEvent(ON_ROOM_UPDATE, ["event": ON_ROOM_UPDATE, "id": self.id, "type": type, "room": roomData])
@@ -1198,13 +1291,13 @@ class HMSRNSDK: HMSUpdateListener, HMSPreviewListener {
1198
1291
  return
1199
1292
  }
1200
1293
  let type = getString(from: update)
1201
- let hmsPeer = HMSDecoder.getHmsPeer(peer)
1294
+ let hmsPeer = HMSDecoder.getHmsPeerSubsetForPeerUpdateEvent(peer, update)
1202
1295
 
1203
1296
  if !networkQualityUpdatesAttached && update == .networkQualityUpdated {
1204
1297
  return
1205
1298
  }
1206
1299
 
1207
- self.delegate?.emitEvent(ON_PEER_UPDATE, ["event": ON_PEER_UPDATE, "id": self.id, "type": type, "peer": hmsPeer])
1300
+ self.delegate?.emitEvent(ON_PEER_UPDATE, hmsPeer)
1208
1301
  }
1209
1302
 
1210
1303
  func on(track: HMSTrack, update: HMSTrackUpdate, for peer: HMSPeer) {
@@ -1225,7 +1318,7 @@ class HMSRNSDK: HMSUpdateListener, HMSPreviewListener {
1225
1318
  }
1226
1319
 
1227
1320
  let type = getString(from: update)
1228
- let hmsPeer = HMSDecoder.getHmsPeer(peer)
1321
+ let hmsPeer = HMSDecoder.getHmsPeerSubset(peer)
1229
1322
  let hmsTrack = HMSDecoder.getHmsTrack(track)
1230
1323
 
1231
1324
  self.delegate?.emitEvent(ON_TRACK_UPDATE, ["event": ON_TRACK_UPDATE, "id": self.id, "type": type, "peer": hmsPeer, "track": hmsTrack])
@@ -1243,7 +1336,7 @@ class HMSRNSDK: HMSUpdateListener, HMSPreviewListener {
1243
1336
  if eventsEnableStatus[ON_MESSAGE] != true {
1244
1337
  return
1245
1338
  }
1246
- self.delegate?.emitEvent(ON_MESSAGE, ["event": ON_MESSAGE, "id": self.id, "sender": HMSDecoder.getHmsPeer(message.sender), "recipient": HMSDecoder.getHmsMessageRecipient(message.recipient), "time": message.time.timeIntervalSince1970 * 1000, "message": message.message, "type": message.type])
1339
+ self.delegate?.emitEvent(ON_MESSAGE, ["event": ON_MESSAGE, "id": self.id, "sender": HMSDecoder.getHmsPeerSubset(message.sender), "recipient": HMSDecoder.getHmsMessageRecipient(message.recipient), "time": message.time.timeIntervalSince1970 * 1000, "message": message.message, "type": message.type])
1247
1340
  }
1248
1341
 
1249
1342
  func on(updated speakers: [HMSSpeaker]) {
@@ -1252,7 +1345,7 @@ class HMSRNSDK: HMSUpdateListener, HMSPreviewListener {
1252
1345
  }
1253
1346
  var speakerPeerIds: [[String: Any]] = []
1254
1347
  for speaker in speakers {
1255
- speakerPeerIds.append(["peer": HMSDecoder.getHmsPeer(speaker.peer), "level": speaker.level, "track": HMSDecoder.getHmsTrack(speaker.track)])
1348
+ speakerPeerIds.append(["peer": HMSDecoder.getHmsPeerSubset(speaker.peer), "level": speaker.level, "track": HMSDecoder.getHmsTrack(speaker.track)])
1256
1349
  }
1257
1350
  self.delegate?.emitEvent(ON_SPEAKER, ["event": ON_SPEAKER, "id": self.id, "speakers": speakerPeerIds])
1258
1351
  }
@@ -1298,7 +1391,7 @@ class HMSRNSDK: HMSUpdateListener, HMSPreviewListener {
1298
1391
  let requestedBy = notification.requestedBy as HMSPeer?
1299
1392
  var decodedRequestedBy: [String: Any]?
1300
1393
  if let requested = requestedBy {
1301
- decodedRequestedBy = HMSDecoder.getHmsPeer(requested)
1394
+ decodedRequestedBy = HMSDecoder.getHmsPeerSubset(requested)
1302
1395
  }
1303
1396
  let reason = notification.reason
1304
1397
  let roomEnded = notification.roomEnded
@@ -1328,7 +1421,7 @@ class HMSRNSDK: HMSUpdateListener, HMSPreviewListener {
1328
1421
  }
1329
1422
  let localStats = HMSDecoder.getLocalAudioStats(localAudioStats)
1330
1423
  let localTrack = HMSDecoder.getHmsAudioTrack(track)
1331
- let decodedPeer = HMSDecoder.getHmsPeer(peer)
1424
+ let decodedPeer = HMSDecoder.getHmsPeerSubset(peer)
1332
1425
 
1333
1426
  self.delegate?.emitEvent(ON_LOCAL_AUDIO_STATS, ["localAudioStats": localStats, "track": localTrack, "peer": decodedPeer, "id": self.id])
1334
1427
  }
@@ -1341,7 +1434,7 @@ class HMSRNSDK: HMSUpdateListener, HMSPreviewListener {
1341
1434
  return
1342
1435
  }
1343
1436
  let localStats = HMSDecoder.getLocalVideoStats(localVideoStats)
1344
- let decodedPeer = HMSDecoder.getHmsPeer(peer)
1437
+ let decodedPeer = HMSDecoder.getHmsPeerSubset(peer)
1345
1438
  let localTrack = HMSDecoder.getHmsVideoTrack(track)
1346
1439
 
1347
1440
  self.delegate?.emitEvent(ON_LOCAL_VIDEO_STATS, ["localVideoStats": localStats, "track": localTrack, "peer": decodedPeer, "id": self.id])
@@ -1356,7 +1449,7 @@ class HMSRNSDK: HMSUpdateListener, HMSPreviewListener {
1356
1449
  }
1357
1450
  let remoteStats = HMSDecoder.getRemoteAudioStats(remoteAudioStats)
1358
1451
  let remoteTrack = HMSDecoder.getHmsAudioTrack(track)
1359
- let decodedPeer = HMSDecoder.getHmsPeer(peer)
1452
+ let decodedPeer = HMSDecoder.getHmsPeerSubset(peer)
1360
1453
 
1361
1454
  self.delegate?.emitEvent(ON_REMOTE_AUDIO_STATS, ["remoteAudioStats": remoteStats, "track": remoteTrack, "peer": decodedPeer, "id": self.id])
1362
1455
  }
@@ -1369,7 +1462,7 @@ class HMSRNSDK: HMSUpdateListener, HMSPreviewListener {
1369
1462
  return
1370
1463
  }
1371
1464
  let remoteStats = HMSDecoder.getRemoteVideoStats(remoteVideoStats)
1372
- let decodedPeer = HMSDecoder.getHmsPeer(peer)
1465
+ let decodedPeer = HMSDecoder.getHmsPeerSubset(peer)
1373
1466
  let remoteTrack = HMSDecoder.getHmsVideoTrack(track)
1374
1467
 
1375
1468
  self.delegate?.emitEvent(ON_REMOTE_VIDEO_STATS, ["remoteVideoStats": remoteStats, "track": remoteTrack, "peer": decodedPeer, "id": self.id])
package/ios/HMSView.swift CHANGED
@@ -43,7 +43,7 @@ class HmssdkDisplayView: UIView {
43
43
  hmsCollection = hmsInstance
44
44
  }
45
45
 
46
- @objc var onDataReturned: RCTDirectEventBlock? = nil
46
+ @objc var onDataReturned: RCTDirectEventBlock?
47
47
 
48
48
  @objc var scaleType: String = "ASPECT_FILL" {
49
49
  didSet {
@@ -4,9 +4,9 @@ Object.defineProperty(exports, "__esModule", {
4
4
  value: true
5
5
  });
6
6
  exports.HMSAudioCodec = void 0;
7
- let HMSAudioCodec;
8
- exports.HMSAudioCodec = HMSAudioCodec;
9
- (function (HMSAudioCodec) {
7
+ let HMSAudioCodec = /*#__PURE__*/function (HMSAudioCodec) {
10
8
  HMSAudioCodec["opus"] = "opus";
11
- })(HMSAudioCodec || (exports.HMSAudioCodec = HMSAudioCodec = {}));
9
+ return HMSAudioCodec;
10
+ }({});
11
+ exports.HMSAudioCodec = HMSAudioCodec;
12
12
  //# sourceMappingURL=HMSAudioCodec.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["HMSAudioCodec"],"sources":["HMSAudioCodec.ts"],"sourcesContent":["export enum HMSAudioCodec {\n opus = 'opus',\n}\n"],"mappings":";;;;;;IAAYA,aAAa;AAAA;AAAA,WAAbA,aAAa;EAAbA,aAAa;AAAA,GAAbA,aAAa,6BAAbA,aAAa"}
1
+ {"version":3,"names":["HMSAudioCodec","exports"],"sources":["HMSAudioCodec.ts"],"sourcesContent":["export enum HMSAudioCodec {\n opus = 'opus',\n}\n"],"mappings":";;;;;;IAAYA,aAAa,0BAAbA,aAAa;EAAbA,aAAa;EAAA,OAAbA,aAAa;AAAA;AAAAC,OAAA,CAAAD,aAAA,GAAAA,aAAA"}
@@ -4,13 +4,13 @@ Object.defineProperty(exports, "__esModule", {
4
4
  value: true
5
5
  });
6
6
  exports.HMSAudioDevice = void 0;
7
- let HMSAudioDevice;
8
- exports.HMSAudioDevice = HMSAudioDevice;
9
- (function (HMSAudioDevice) {
7
+ let HMSAudioDevice = /*#__PURE__*/function (HMSAudioDevice) {
10
8
  HMSAudioDevice["SPEAKER_PHONE"] = "SPEAKER_PHONE";
11
9
  HMSAudioDevice["WIRED_HEADSET"] = "WIRED_HEADSET";
12
10
  HMSAudioDevice["EARPIECE"] = "EARPIECE";
13
11
  HMSAudioDevice["BLUETOOTH"] = "BLUETOOTH";
14
12
  HMSAudioDevice["AUTOMATIC"] = "AUTOMATIC";
15
- })(HMSAudioDevice || (exports.HMSAudioDevice = HMSAudioDevice = {}));
13
+ return HMSAudioDevice;
14
+ }({});
15
+ exports.HMSAudioDevice = HMSAudioDevice;
16
16
  //# sourceMappingURL=HMSAudioDevice.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["HMSAudioDevice"],"sources":["HMSAudioDevice.ts"],"sourcesContent":["export enum HMSAudioDevice {\n SPEAKER_PHONE = 'SPEAKER_PHONE',\n WIRED_HEADSET = 'WIRED_HEADSET',\n EARPIECE = 'EARPIECE',\n BLUETOOTH = 'BLUETOOTH',\n AUTOMATIC = 'AUTOMATIC',\n}\n"],"mappings":";;;;;;IAAYA,cAAc;AAAA;AAAA,WAAdA,cAAc;EAAdA,cAAc;EAAdA,cAAc;EAAdA,cAAc;EAAdA,cAAc;EAAdA,cAAc;AAAA,GAAdA,cAAc,8BAAdA,cAAc"}
1
+ {"version":3,"names":["HMSAudioDevice","exports"],"sources":["HMSAudioDevice.ts"],"sourcesContent":["export enum HMSAudioDevice {\n SPEAKER_PHONE = 'SPEAKER_PHONE',\n WIRED_HEADSET = 'WIRED_HEADSET',\n EARPIECE = 'EARPIECE',\n BLUETOOTH = 'BLUETOOTH',\n AUTOMATIC = 'AUTOMATIC',\n}\n"],"mappings":";;;;;;IAAYA,cAAc,0BAAdA,cAAc;EAAdA,cAAc;EAAdA,cAAc;EAAdA,cAAc;EAAdA,cAAc;EAAdA,cAAc;EAAA,OAAdA,cAAc;AAAA;AAAAC,OAAA,CAAAD,cAAA,GAAAA,cAAA"}
@@ -1 +1 @@
1
- {"version":3,"names":["HMSManager","NativeModules","HMSAudioFilePlayerNode","HMSAudioNode","constructor","name","setVolume","volume","setAudioShareVolume","id","sdkId","audioNode","play","fileUrl","loops","interrupts","playAudioShare","pause","pauseAudioShare","resume","resumeAudioShare","stop","stopAudioShare","isPlaying","audioShareIsPlaying","currentDuration","audioShareCurrentTime","duration","audioShareDuration"],"sources":["HMSAudioFilePlayerNode.ts"],"sourcesContent":["import { NativeModules } from 'react-native';\nimport { HMSAudioNode } from './HMSAudioNode';\n\nconst {\n /**\n * @ignore\n */\n HMSManager,\n} = NativeModules;\n\nexport class HMSAudioFilePlayerNode extends HMSAudioNode {\n constructor(name: string) {\n super(name);\n }\n\n setVolume(volume: number) {\n HMSManager.setAudioShareVolume({\n id: this.sdkId,\n audioNode: this.name,\n volume,\n });\n }\n\n async play(fileUrl: string, loops?: boolean, interrupts?: boolean) {\n return await HMSManager.playAudioShare({\n id: this.sdkId,\n audioNode: this.name,\n fileUrl,\n loops,\n interrupts,\n });\n }\n\n pause() {\n HMSManager.pauseAudioShare({\n id: this.sdkId,\n audioNode: this.name,\n });\n }\n\n resume() {\n HMSManager.resumeAudioShare({\n id: this.sdkId,\n audioNode: this.name,\n });\n }\n\n stop() {\n HMSManager.stopAudioShare({\n id: this.sdkId,\n audioNode: this.name,\n });\n }\n\n async isPlaying() {\n return await HMSManager.audioShareIsPlaying({\n id: this.sdkId,\n audioNode: this.name,\n });\n }\n\n async currentDuration() {\n return await HMSManager.audioShareCurrentTime({\n id: this.sdkId,\n audioNode: this.name,\n });\n }\n\n async duration() {\n return await HMSManager.audioShareDuration({\n id: this.sdkId,\n audioNode: this.name,\n });\n }\n}\n"],"mappings":";;;;;;AAAA;AACA;AAEA,MAAM;EACJ;AACF;AACA;EACEA;AACF,CAAC,GAAGC,0BAAa;AAEV,MAAMC,sBAAsB,SAASC,0BAAY,CAAC;EACvDC,WAAW,CAACC,IAAY,EAAE;IACxB,KAAK,CAACA,IAAI,CAAC;EACb;EAEAC,SAAS,CAACC,MAAc,EAAE;IACxBP,UAAU,CAACQ,mBAAmB,CAAC;MAC7BC,EAAE,EAAE,IAAI,CAACC,KAAK;MACdC,SAAS,EAAE,IAAI,CAACN,IAAI;MACpBE;IACF,CAAC,CAAC;EACJ;EAEA,MAAMK,IAAI,CAACC,OAAe,EAAEC,KAAe,EAAEC,UAAoB,EAAE;IACjE,OAAO,MAAMf,UAAU,CAACgB,cAAc,CAAC;MACrCP,EAAE,EAAE,IAAI,CAACC,KAAK;MACdC,SAAS,EAAE,IAAI,CAACN,IAAI;MACpBQ,OAAO;MACPC,KAAK;MACLC;IACF,CAAC,CAAC;EACJ;EAEAE,KAAK,GAAG;IACNjB,UAAU,CAACkB,eAAe,CAAC;MACzBT,EAAE,EAAE,IAAI,CAACC,KAAK;MACdC,SAAS,EAAE,IAAI,CAACN;IAClB,CAAC,CAAC;EACJ;EAEAc,MAAM,GAAG;IACPnB,UAAU,CAACoB,gBAAgB,CAAC;MAC1BX,EAAE,EAAE,IAAI,CAACC,KAAK;MACdC,SAAS,EAAE,IAAI,CAACN;IAClB,CAAC,CAAC;EACJ;EAEAgB,IAAI,GAAG;IACLrB,UAAU,CAACsB,cAAc,CAAC;MACxBb,EAAE,EAAE,IAAI,CAACC,KAAK;MACdC,SAAS,EAAE,IAAI,CAACN;IAClB,CAAC,CAAC;EACJ;EAEA,MAAMkB,SAAS,GAAG;IAChB,OAAO,MAAMvB,UAAU,CAACwB,mBAAmB,CAAC;MAC1Cf,EAAE,EAAE,IAAI,CAACC,KAAK;MACdC,SAAS,EAAE,IAAI,CAACN;IAClB,CAAC,CAAC;EACJ;EAEA,MAAMoB,eAAe,GAAG;IACtB,OAAO,MAAMzB,UAAU,CAAC0B,qBAAqB,CAAC;MAC5CjB,EAAE,EAAE,IAAI,CAACC,KAAK;MACdC,SAAS,EAAE,IAAI,CAACN;IAClB,CAAC,CAAC;EACJ;EAEA,MAAMsB,QAAQ,GAAG;IACf,OAAO,MAAM3B,UAAU,CAAC4B,kBAAkB,CAAC;MACzCnB,EAAE,EAAE,IAAI,CAACC,KAAK;MACdC,SAAS,EAAE,IAAI,CAACN;IAClB,CAAC,CAAC;EACJ;AACF;AAAC"}
1
+ {"version":3,"names":["_reactNative","require","_HMSAudioNode","HMSManager","NativeModules","HMSAudioFilePlayerNode","HMSAudioNode","constructor","name","setVolume","volume","setAudioShareVolume","id","sdkId","audioNode","play","fileUrl","loops","interrupts","playAudioShare","pause","pauseAudioShare","resume","resumeAudioShare","stop","stopAudioShare","isPlaying","audioShareIsPlaying","currentDuration","audioShareCurrentTime","duration","audioShareDuration","exports"],"sources":["HMSAudioFilePlayerNode.ts"],"sourcesContent":["import { NativeModules } from 'react-native';\nimport { HMSAudioNode } from './HMSAudioNode';\n\nconst {\n /**\n * @ignore\n */\n HMSManager,\n} = NativeModules;\n\nexport class HMSAudioFilePlayerNode extends HMSAudioNode {\n constructor(name: string) {\n super(name);\n }\n\n setVolume(volume: number) {\n HMSManager.setAudioShareVolume({\n id: this.sdkId,\n audioNode: this.name,\n volume,\n });\n }\n\n async play(fileUrl: string, loops?: boolean, interrupts?: boolean) {\n return await HMSManager.playAudioShare({\n id: this.sdkId,\n audioNode: this.name,\n fileUrl,\n loops,\n interrupts,\n });\n }\n\n pause() {\n HMSManager.pauseAudioShare({\n id: this.sdkId,\n audioNode: this.name,\n });\n }\n\n resume() {\n HMSManager.resumeAudioShare({\n id: this.sdkId,\n audioNode: this.name,\n });\n }\n\n stop() {\n HMSManager.stopAudioShare({\n id: this.sdkId,\n audioNode: this.name,\n });\n }\n\n async isPlaying() {\n return await HMSManager.audioShareIsPlaying({\n id: this.sdkId,\n audioNode: this.name,\n });\n }\n\n async currentDuration() {\n return await HMSManager.audioShareCurrentTime({\n id: this.sdkId,\n audioNode: this.name,\n });\n }\n\n async duration() {\n return await HMSManager.audioShareDuration({\n id: this.sdkId,\n audioNode: this.name,\n });\n }\n}\n"],"mappings":";;;;;;AAAA,IAAAA,YAAA,GAAAC,OAAA;AACA,IAAAC,aAAA,GAAAD,OAAA;AAEA,MAAM;EACJ;AACF;AACA;EACEE;AACF,CAAC,GAAGC,0BAAa;AAEV,MAAMC,sBAAsB,SAASC,0BAAY,CAAC;EACvDC,WAAWA,CAACC,IAAY,EAAE;IACxB,KAAK,CAACA,IAAI,CAAC;EACb;EAEAC,SAASA,CAACC,MAAc,EAAE;IACxBP,UAAU,CAACQ,mBAAmB,CAAC;MAC7BC,EAAE,EAAE,IAAI,CAACC,KAAK;MACdC,SAAS,EAAE,IAAI,CAACN,IAAI;MACpBE;IACF,CAAC,CAAC;EACJ;EAEA,MAAMK,IAAIA,CAACC,OAAe,EAAEC,KAAe,EAAEC,UAAoB,EAAE;IACjE,OAAO,MAAMf,UAAU,CAACgB,cAAc,CAAC;MACrCP,EAAE,EAAE,IAAI,CAACC,KAAK;MACdC,SAAS,EAAE,IAAI,CAACN,IAAI;MACpBQ,OAAO;MACPC,KAAK;MACLC;IACF,CAAC,CAAC;EACJ;EAEAE,KAAKA,CAAA,EAAG;IACNjB,UAAU,CAACkB,eAAe,CAAC;MACzBT,EAAE,EAAE,IAAI,CAACC,KAAK;MACdC,SAAS,EAAE,IAAI,CAACN;IAClB,CAAC,CAAC;EACJ;EAEAc,MAAMA,CAAA,EAAG;IACPnB,UAAU,CAACoB,gBAAgB,CAAC;MAC1BX,EAAE,EAAE,IAAI,CAACC,KAAK;MACdC,SAAS,EAAE,IAAI,CAACN;IAClB,CAAC,CAAC;EACJ;EAEAgB,IAAIA,CAAA,EAAG;IACLrB,UAAU,CAACsB,cAAc,CAAC;MACxBb,EAAE,EAAE,IAAI,CAACC,KAAK;MACdC,SAAS,EAAE,IAAI,CAACN;IAClB,CAAC,CAAC;EACJ;EAEA,MAAMkB,SAASA,CAAA,EAAG;IAChB,OAAO,MAAMvB,UAAU,CAACwB,mBAAmB,CAAC;MAC1Cf,EAAE,EAAE,IAAI,CAACC,KAAK;MACdC,SAAS,EAAE,IAAI,CAACN;IAClB,CAAC,CAAC;EACJ;EAEA,MAAMoB,eAAeA,CAAA,EAAG;IACtB,OAAO,MAAMzB,UAAU,CAAC0B,qBAAqB,CAAC;MAC5CjB,EAAE,EAAE,IAAI,CAACC,KAAK;MACdC,SAAS,EAAE,IAAI,CAACN;IAClB,CAAC,CAAC;EACJ;EAEA,MAAMsB,QAAQA,CAAA,EAAG;IACf,OAAO,MAAM3B,UAAU,CAAC4B,kBAAkB,CAAC;MACzCnB,EAAE,EAAE,IAAI,CAACC,KAAK;MACdC,SAAS,EAAE,IAAI,CAACN;IAClB,CAAC,CAAC;EACJ;AACF;AAACwB,OAAA,CAAA3B,sBAAA,GAAAA,sBAAA"}
@@ -1 +1 @@
1
- {"version":3,"names":["HMSAudioMixerSource","constructor","params","node","toList","nodeName","forEach","audioNode","push","toString"],"sources":["HMSAudioMixerSource.ts"],"sourcesContent":["import type { HMSAudioNode } from './HMSAudioNode';\n\nexport class HMSAudioMixerSource {\n node: HMSAudioNode[];\n\n constructor(params: { node: HMSAudioNode[] }) {\n this.node = params.node;\n }\n\n toList(): string[] {\n const nodeName: string[] = [];\n this.node.forEach((audioNode) => nodeName.push(audioNode.toString()));\n return nodeName;\n }\n}\n"],"mappings":";;;;;;;;;AAEO,MAAMA,mBAAmB,CAAC;EAG/BC,WAAW,CAACC,MAAgC,EAAE;IAAA;IAC5C,IAAI,CAACC,IAAI,GAAGD,MAAM,CAACC,IAAI;EACzB;EAEAC,MAAM,GAAa;IACjB,MAAMC,QAAkB,GAAG,EAAE;IAC7B,IAAI,CAACF,IAAI,CAACG,OAAO,CAAEC,SAAS,IAAKF,QAAQ,CAACG,IAAI,CAACD,SAAS,CAACE,QAAQ,EAAE,CAAC,CAAC;IACrE,OAAOJ,QAAQ;EACjB;AACF;AAAC"}
1
+ {"version":3,"names":["HMSAudioMixerSource","constructor","params","_defineProperty","node","toList","nodeName","forEach","audioNode","push","toString","exports"],"sources":["HMSAudioMixerSource.ts"],"sourcesContent":["import type { HMSAudioNode } from './HMSAudioNode';\n\nexport class HMSAudioMixerSource {\n node: HMSAudioNode[];\n\n constructor(params: { node: HMSAudioNode[] }) {\n this.node = params.node;\n }\n\n toList(): string[] {\n const nodeName: string[] = [];\n this.node.forEach((audioNode) => nodeName.push(audioNode.toString()));\n return nodeName;\n }\n}\n"],"mappings":";;;;;;;;;AAEO,MAAMA,mBAAmB,CAAC;EAG/BC,WAAWA,CAACC,MAAgC,EAAE;IAAAC,eAAA;IAC5C,IAAI,CAACC,IAAI,GAAGF,MAAM,CAACE,IAAI;EACzB;EAEAC,MAAMA,CAAA,EAAa;IACjB,MAAMC,QAAkB,GAAG,EAAE;IAC7B,IAAI,CAACF,IAAI,CAACG,OAAO,CAAEC,SAAS,IAAKF,QAAQ,CAACG,IAAI,CAACD,SAAS,CAACE,QAAQ,EAAE,CAAC,CAAC;IACrE,OAAOJ,QAAQ;EACjB;AACF;AAACK,OAAA,CAAAX,mBAAA,GAAAA,mBAAA"}
@@ -4,11 +4,11 @@ Object.defineProperty(exports, "__esModule", {
4
4
  value: true
5
5
  });
6
6
  exports.HMSAudioMixingMode = void 0;
7
- let HMSAudioMixingMode;
8
- exports.HMSAudioMixingMode = HMSAudioMixingMode;
9
- (function (HMSAudioMixingMode) {
7
+ let HMSAudioMixingMode = /*#__PURE__*/function (HMSAudioMixingMode) {
10
8
  HMSAudioMixingMode["TALK_ONLY"] = "TALK_ONLY";
11
9
  HMSAudioMixingMode["TALK_AND_MUSIC"] = "TALK_AND_MUSIC";
12
10
  HMSAudioMixingMode["MUSIC_ONLY"] = "MUSIC_ONLY";
13
- })(HMSAudioMixingMode || (exports.HMSAudioMixingMode = HMSAudioMixingMode = {}));
11
+ return HMSAudioMixingMode;
12
+ }({});
13
+ exports.HMSAudioMixingMode = HMSAudioMixingMode;
14
14
  //# sourceMappingURL=HMSAudioMixingMode.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["HMSAudioMixingMode"],"sources":["HMSAudioMixingMode.ts"],"sourcesContent":["export enum HMSAudioMixingMode {\n TALK_ONLY = 'TALK_ONLY',\n TALK_AND_MUSIC = 'TALK_AND_MUSIC',\n MUSIC_ONLY = 'MUSIC_ONLY',\n}\n"],"mappings":";;;;;;IAAYA,kBAAkB;AAAA;AAAA,WAAlBA,kBAAkB;EAAlBA,kBAAkB;EAAlBA,kBAAkB;EAAlBA,kBAAkB;AAAA,GAAlBA,kBAAkB,kCAAlBA,kBAAkB"}
1
+ {"version":3,"names":["HMSAudioMixingMode","exports"],"sources":["HMSAudioMixingMode.ts"],"sourcesContent":["export enum HMSAudioMixingMode {\n TALK_ONLY = 'TALK_ONLY',\n TALK_AND_MUSIC = 'TALK_AND_MUSIC',\n MUSIC_ONLY = 'MUSIC_ONLY',\n}\n"],"mappings":";;;;;;IAAYA,kBAAkB,0BAAlBA,kBAAkB;EAAlBA,kBAAkB;EAAlBA,kBAAkB;EAAlBA,kBAAkB;EAAA,OAAlBA,kBAAkB;AAAA;AAAAC,OAAA,CAAAD,kBAAA,GAAAA,kBAAA"}