@100mslive/react-native-hms 1.1.1 → 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 (312) hide show
  1. package/README.md +145 -340
  2. package/android/build.gradle +1 -1
  3. package/android/src/main/java/com/reactnativehmssdk/HMSDecoder.kt +292 -94
  4. package/android/src/main/java/com/reactnativehmssdk/HMSHelper.kt +127 -127
  5. package/android/src/main/java/com/reactnativehmssdk/HMSManager.kt +167 -115
  6. package/android/src/main/java/com/reactnativehmssdk/HMSRNSDK.kt +283 -45
  7. package/android/src/main/java/com/reactnativehmssdk/HMSSDKViewManager.kt +7 -7
  8. package/ios/HMSDecoder.swift +276 -137
  9. package/ios/HMSHelper.swift +3 -3
  10. package/ios/HMSManager.m +7 -0
  11. package/ios/HMSManager.swift +37 -2
  12. package/ios/HMSRNSDK.swift +339 -97
  13. package/ios/HMSView.m +2 -0
  14. package/ios/HMSView.swift +35 -3
  15. package/ios/Hmssdk.xcodeproj/project.xcworkspace/xcuserdata/yogesh.xcuserdatad/UserInterfaceState.xcuserstate +0 -0
  16. package/lib/commonjs/classes/HMSAudioCodec.js +4 -4
  17. package/lib/commonjs/classes/HMSAudioCodec.js.map +1 -1
  18. package/lib/commonjs/classes/HMSAudioDevice.js +4 -4
  19. package/lib/commonjs/classes/HMSAudioDevice.js.map +1 -1
  20. package/lib/commonjs/classes/HMSAudioFilePlayerNode.js.map +1 -1
  21. package/lib/commonjs/classes/HMSAudioMixerSource.js.map +1 -1
  22. package/lib/commonjs/classes/HMSAudioMixingMode.js +4 -4
  23. package/lib/commonjs/classes/HMSAudioMixingMode.js.map +1 -1
  24. package/lib/commonjs/classes/HMSAudioMode.js +4 -4
  25. package/lib/commonjs/classes/HMSAudioMode.js.map +1 -1
  26. package/lib/commonjs/classes/HMSAudioNode.js +2 -1
  27. package/lib/commonjs/classes/HMSAudioNode.js.map +1 -1
  28. package/lib/commonjs/classes/HMSAudioSettings.js.map +1 -1
  29. package/lib/commonjs/classes/HMSAudioTrack.js.map +1 -1
  30. package/lib/commonjs/classes/HMSAudioTrackSettings.js.map +1 -1
  31. package/lib/commonjs/classes/HMSBrowserRecordingState.js.map +1 -1
  32. package/lib/commonjs/classes/HMSCameraFacing.js +4 -4
  33. package/lib/commonjs/classes/HMSCameraFacing.js.map +1 -1
  34. package/lib/commonjs/classes/HMSChangeTrackStateRequest.js.map +1 -1
  35. package/lib/commonjs/classes/HMSConfig.js.map +1 -1
  36. package/lib/commonjs/classes/HMSConstants.js +11 -0
  37. package/lib/commonjs/classes/HMSConstants.js.map +1 -0
  38. package/lib/commonjs/classes/HMSEncoder.js +129 -102
  39. package/lib/commonjs/classes/HMSEncoder.js.map +1 -1
  40. package/lib/commonjs/classes/HMSException.js.map +1 -1
  41. package/lib/commonjs/classes/HMSHLSConfig.js.map +1 -1
  42. package/lib/commonjs/classes/HMSHLSMeetingURLVariant.js.map +1 -1
  43. package/lib/commonjs/classes/HMSHLSRecordingConfig.js.map +1 -1
  44. package/lib/commonjs/classes/HMSHLSRecordingState.js.map +1 -1
  45. package/lib/commonjs/classes/HMSHLSStreamingState.js.map +1 -1
  46. package/lib/commonjs/classes/HMSHLSVariant.js.map +1 -1
  47. package/lib/commonjs/classes/HMSHelper.js.map +1 -1
  48. package/lib/commonjs/classes/HMSLocalAudioStats.js.map +1 -1
  49. package/lib/commonjs/classes/HMSLocalAudioTrack.js.map +1 -1
  50. package/lib/commonjs/classes/HMSLocalPeer.js +0 -1
  51. package/lib/commonjs/classes/HMSLocalPeer.js.map +1 -1
  52. package/lib/commonjs/classes/HMSLocalVideoStats.js.map +1 -1
  53. package/lib/commonjs/classes/HMSLocalVideoTrack.js +0 -2
  54. package/lib/commonjs/classes/HMSLocalVideoTrack.js.map +1 -1
  55. package/lib/commonjs/classes/HMSLogAlarmManager.js +4 -4
  56. package/lib/commonjs/classes/HMSLogAlarmManager.js.map +1 -1
  57. package/lib/commonjs/classes/HMSLogLevel.js +4 -4
  58. package/lib/commonjs/classes/HMSLogLevel.js.map +1 -1
  59. package/lib/commonjs/classes/HMSLogSettings.js.map +1 -1
  60. package/lib/commonjs/classes/HMSLogger.js +17 -25
  61. package/lib/commonjs/classes/HMSLogger.js.map +1 -1
  62. package/lib/commonjs/classes/HMSMessage.js.map +1 -1
  63. package/lib/commonjs/classes/HMSMessageRecipient.js +1 -1
  64. package/lib/commonjs/classes/HMSMessageRecipient.js.map +1 -1
  65. package/lib/commonjs/classes/HMSMessageRecipientType.js +4 -4
  66. package/lib/commonjs/classes/HMSMessageRecipientType.js.map +1 -1
  67. package/lib/commonjs/classes/HMSMessageType.js +4 -4
  68. package/lib/commonjs/classes/HMSMessageType.js.map +1 -1
  69. package/lib/commonjs/classes/HMSMicNode.js.map +1 -1
  70. package/lib/commonjs/classes/HMSNativeEventEmitter.js +101 -0
  71. package/lib/commonjs/classes/HMSNativeEventEmitter.js.map +1 -0
  72. package/lib/commonjs/classes/HMSNetworkQuality.js.map +1 -1
  73. package/lib/commonjs/classes/HMSPIPListenerActions.js +4 -4
  74. package/lib/commonjs/classes/HMSPIPListenerActions.js.map +1 -1
  75. package/lib/commonjs/classes/HMSPeer.js +69 -18
  76. package/lib/commonjs/classes/HMSPeer.js.map +1 -1
  77. package/lib/commonjs/classes/HMSPeerUpdate.js +7 -5
  78. package/lib/commonjs/classes/HMSPeerUpdate.js.map +1 -1
  79. package/lib/commonjs/classes/HMSPeersCache.js +229 -0
  80. package/lib/commonjs/classes/HMSPeersCache.js.map +1 -0
  81. package/lib/commonjs/classes/HMSPermissions.js.map +1 -1
  82. package/lib/commonjs/classes/HMSPublishSettings.js +0 -6
  83. package/lib/commonjs/classes/HMSPublishSettings.js.map +1 -1
  84. package/lib/commonjs/classes/HMSRTCStats.js.map +1 -1
  85. package/lib/commonjs/classes/HMSRTCStatsReport.js.map +1 -1
  86. package/lib/commonjs/classes/HMSRTMPConfig.js.map +1 -1
  87. package/lib/commonjs/classes/HMSRemoteAudioStats.js.map +1 -1
  88. package/lib/commonjs/classes/HMSRemoteAudioTrack.js.map +1 -1
  89. package/lib/commonjs/classes/HMSRemotePeer.js +0 -1
  90. package/lib/commonjs/classes/HMSRemotePeer.js.map +1 -1
  91. package/lib/commonjs/classes/HMSRemoteVideoStats.js.map +1 -1
  92. package/lib/commonjs/classes/HMSRemoteVideoTrack.js.map +1 -1
  93. package/lib/commonjs/classes/HMSRole.js +0 -6
  94. package/lib/commonjs/classes/HMSRole.js.map +1 -1
  95. package/lib/commonjs/classes/HMSRoleChangeRequest.js +3 -1
  96. package/lib/commonjs/classes/HMSRoleChangeRequest.js.map +1 -1
  97. package/lib/commonjs/classes/HMSRoom.js +79 -22
  98. package/lib/commonjs/classes/HMSRoom.js.map +1 -1
  99. package/lib/commonjs/classes/HMSRoomCache.js +128 -0
  100. package/lib/commonjs/classes/HMSRoomCache.js.map +1 -0
  101. package/lib/commonjs/classes/HMSRoomUpdate.js +4 -4
  102. package/lib/commonjs/classes/HMSRoomUpdate.js.map +1 -1
  103. package/lib/commonjs/classes/HMSRtmpStreamingState.js.map +1 -1
  104. package/lib/commonjs/classes/HMSRtmpVideoResolution.js.map +1 -1
  105. package/lib/commonjs/classes/HMSSDK.js +933 -158
  106. package/lib/commonjs/classes/HMSSDK.js.map +1 -1
  107. package/lib/commonjs/classes/HMSScreenBroadcastAudioReceiverNode.js.map +1 -1
  108. package/lib/commonjs/classes/HMSServerRecordingState.js.map +1 -1
  109. package/lib/commonjs/classes/HMSSimulcastLayerSettings.js.map +1 -1
  110. package/lib/commonjs/classes/HMSSimulcastSettings.js.map +1 -1
  111. package/lib/commonjs/classes/HMSSpeaker.js.map +1 -1
  112. package/lib/commonjs/classes/HMSSubscribeSettings.js +0 -2
  113. package/lib/commonjs/classes/HMSSubscribeSettings.js.map +1 -1
  114. package/lib/commonjs/classes/HMSTrack.js.map +1 -1
  115. package/lib/commonjs/classes/HMSTrackSettings.js.map +1 -1
  116. package/lib/commonjs/classes/HMSTrackSettingsInitState.js +4 -4
  117. package/lib/commonjs/classes/HMSTrackSettingsInitState.js.map +1 -1
  118. package/lib/commonjs/classes/HMSTrackSource.js +4 -4
  119. package/lib/commonjs/classes/HMSTrackSource.js.map +1 -1
  120. package/lib/commonjs/classes/HMSTrackType.js +4 -4
  121. package/lib/commonjs/classes/HMSTrackType.js.map +1 -1
  122. package/lib/commonjs/classes/HMSTrackUpdate.js +4 -4
  123. package/lib/commonjs/classes/HMSTrackUpdate.js.map +1 -1
  124. package/lib/commonjs/classes/HMSUpdateListenerActions.js +5 -5
  125. package/lib/commonjs/classes/HMSUpdateListenerActions.js.map +1 -1
  126. package/lib/commonjs/classes/HMSVideoCodec.js +4 -4
  127. package/lib/commonjs/classes/HMSVideoCodec.js.map +1 -1
  128. package/lib/commonjs/classes/HMSVideoResolution.js.map +1 -1
  129. package/lib/commonjs/classes/HMSVideoSettings.js.map +1 -1
  130. package/lib/commonjs/classes/HMSVideoTrack.js.map +1 -1
  131. package/lib/commonjs/classes/HMSVideoTrackSettings.js.map +1 -1
  132. package/lib/commonjs/classes/HMSVideoViewMode.js +4 -4
  133. package/lib/commonjs/classes/HMSVideoViewMode.js.map +1 -1
  134. package/lib/commonjs/classes/HmsView.js +2 -1
  135. package/lib/commonjs/classes/HmsView.js.map +1 -1
  136. package/lib/commonjs/index.js.map +1 -1
  137. package/lib/module/classes/HMSAudioCodec.js +3 -3
  138. package/lib/module/classes/HMSAudioCodec.js.map +1 -1
  139. package/lib/module/classes/HMSAudioDevice.js +3 -3
  140. package/lib/module/classes/HMSAudioDevice.js.map +1 -1
  141. package/lib/module/classes/HMSAudioFilePlayerNode.js.map +1 -1
  142. package/lib/module/classes/HMSAudioMixerSource.js.map +1 -1
  143. package/lib/module/classes/HMSAudioMixingMode.js +3 -3
  144. package/lib/module/classes/HMSAudioMixingMode.js.map +1 -1
  145. package/lib/module/classes/HMSAudioMode.js +3 -3
  146. package/lib/module/classes/HMSAudioMode.js.map +1 -1
  147. package/lib/module/classes/HMSAudioNode.js +2 -1
  148. package/lib/module/classes/HMSAudioNode.js.map +1 -1
  149. package/lib/module/classes/HMSAudioSettings.js.map +1 -1
  150. package/lib/module/classes/HMSAudioTrack.js.map +1 -1
  151. package/lib/module/classes/HMSAudioTrackSettings.js.map +1 -1
  152. package/lib/module/classes/HMSBrowserRecordingState.js.map +1 -1
  153. package/lib/module/classes/HMSCameraFacing.js +3 -3
  154. package/lib/module/classes/HMSCameraFacing.js.map +1 -1
  155. package/lib/module/classes/HMSChangeTrackStateRequest.js.map +1 -1
  156. package/lib/module/classes/HMSConfig.js.map +1 -1
  157. package/lib/module/classes/HMSConstants.js +4 -0
  158. package/lib/module/classes/HMSConstants.js.map +1 -0
  159. package/lib/module/classes/HMSEncoder.js +129 -102
  160. package/lib/module/classes/HMSEncoder.js.map +1 -1
  161. package/lib/module/classes/HMSException.js.map +1 -1
  162. package/lib/module/classes/HMSHLSConfig.js.map +1 -1
  163. package/lib/module/classes/HMSHLSMeetingURLVariant.js.map +1 -1
  164. package/lib/module/classes/HMSHLSRecordingConfig.js.map +1 -1
  165. package/lib/module/classes/HMSHLSRecordingState.js.map +1 -1
  166. package/lib/module/classes/HMSHLSStreamingState.js.map +1 -1
  167. package/lib/module/classes/HMSHLSVariant.js.map +1 -1
  168. package/lib/module/classes/HMSHelper.js.map +1 -1
  169. package/lib/module/classes/HMSLocalAudioStats.js.map +1 -1
  170. package/lib/module/classes/HMSLocalAudioTrack.js.map +1 -1
  171. package/lib/module/classes/HMSLocalPeer.js +0 -1
  172. package/lib/module/classes/HMSLocalPeer.js.map +1 -1
  173. package/lib/module/classes/HMSLocalVideoStats.js.map +1 -1
  174. package/lib/module/classes/HMSLocalVideoTrack.js +0 -2
  175. package/lib/module/classes/HMSLocalVideoTrack.js.map +1 -1
  176. package/lib/module/classes/HMSLogAlarmManager.js +3 -3
  177. package/lib/module/classes/HMSLogAlarmManager.js.map +1 -1
  178. package/lib/module/classes/HMSLogLevel.js +3 -3
  179. package/lib/module/classes/HMSLogLevel.js.map +1 -1
  180. package/lib/module/classes/HMSLogSettings.js.map +1 -1
  181. package/lib/module/classes/HMSLogger.js +17 -25
  182. package/lib/module/classes/HMSLogger.js.map +1 -1
  183. package/lib/module/classes/HMSMessage.js.map +1 -1
  184. package/lib/module/classes/HMSMessageRecipient.js +1 -1
  185. package/lib/module/classes/HMSMessageRecipient.js.map +1 -1
  186. package/lib/module/classes/HMSMessageRecipientType.js +3 -3
  187. package/lib/module/classes/HMSMessageRecipientType.js.map +1 -1
  188. package/lib/module/classes/HMSMessageType.js +3 -3
  189. package/lib/module/classes/HMSMessageType.js.map +1 -1
  190. package/lib/module/classes/HMSMicNode.js.map +1 -1
  191. package/lib/module/classes/HMSNativeEventEmitter.js +94 -0
  192. package/lib/module/classes/HMSNativeEventEmitter.js.map +1 -0
  193. package/lib/module/classes/HMSNetworkQuality.js.map +1 -1
  194. package/lib/module/classes/HMSPIPListenerActions.js +3 -3
  195. package/lib/module/classes/HMSPIPListenerActions.js.map +1 -1
  196. package/lib/module/classes/HMSPeer.js +69 -18
  197. package/lib/module/classes/HMSPeer.js.map +1 -1
  198. package/lib/module/classes/HMSPeerUpdate.js +4 -3
  199. package/lib/module/classes/HMSPeerUpdate.js.map +1 -1
  200. package/lib/module/classes/HMSPeersCache.js +216 -0
  201. package/lib/module/classes/HMSPeersCache.js.map +1 -0
  202. package/lib/module/classes/HMSPermissions.js.map +1 -1
  203. package/lib/module/classes/HMSPublishSettings.js +0 -6
  204. package/lib/module/classes/HMSPublishSettings.js.map +1 -1
  205. package/lib/module/classes/HMSRTCStats.js.map +1 -1
  206. package/lib/module/classes/HMSRTCStatsReport.js.map +1 -1
  207. package/lib/module/classes/HMSRTMPConfig.js.map +1 -1
  208. package/lib/module/classes/HMSRemoteAudioStats.js.map +1 -1
  209. package/lib/module/classes/HMSRemoteAudioTrack.js.map +1 -1
  210. package/lib/module/classes/HMSRemotePeer.js +0 -1
  211. package/lib/module/classes/HMSRemotePeer.js.map +1 -1
  212. package/lib/module/classes/HMSRemoteVideoStats.js.map +1 -1
  213. package/lib/module/classes/HMSRemoteVideoTrack.js.map +1 -1
  214. package/lib/module/classes/HMSRole.js +0 -6
  215. package/lib/module/classes/HMSRole.js.map +1 -1
  216. package/lib/module/classes/HMSRoleChangeRequest.js +3 -1
  217. package/lib/module/classes/HMSRoleChangeRequest.js.map +1 -1
  218. package/lib/module/classes/HMSRoom.js +79 -22
  219. package/lib/module/classes/HMSRoom.js.map +1 -1
  220. package/lib/module/classes/HMSRoomCache.js +115 -0
  221. package/lib/module/classes/HMSRoomCache.js.map +1 -0
  222. package/lib/module/classes/HMSRoomUpdate.js +3 -3
  223. package/lib/module/classes/HMSRoomUpdate.js.map +1 -1
  224. package/lib/module/classes/HMSRtmpStreamingState.js.map +1 -1
  225. package/lib/module/classes/HMSRtmpVideoResolution.js.map +1 -1
  226. package/lib/module/classes/HMSSDK.js +934 -159
  227. package/lib/module/classes/HMSSDK.js.map +1 -1
  228. package/lib/module/classes/HMSScreenBroadcastAudioReceiverNode.js.map +1 -1
  229. package/lib/module/classes/HMSServerRecordingState.js.map +1 -1
  230. package/lib/module/classes/HMSSimulcastLayerSettings.js.map +1 -1
  231. package/lib/module/classes/HMSSimulcastSettings.js.map +1 -1
  232. package/lib/module/classes/HMSSpeaker.js.map +1 -1
  233. package/lib/module/classes/HMSSubscribeSettings.js +0 -2
  234. package/lib/module/classes/HMSSubscribeSettings.js.map +1 -1
  235. package/lib/module/classes/HMSTrack.js.map +1 -1
  236. package/lib/module/classes/HMSTrackSettings.js.map +1 -1
  237. package/lib/module/classes/HMSTrackSettingsInitState.js +3 -3
  238. package/lib/module/classes/HMSTrackSettingsInitState.js.map +1 -1
  239. package/lib/module/classes/HMSTrackSource.js +3 -3
  240. package/lib/module/classes/HMSTrackSource.js.map +1 -1
  241. package/lib/module/classes/HMSTrackType.js +3 -3
  242. package/lib/module/classes/HMSTrackType.js.map +1 -1
  243. package/lib/module/classes/HMSTrackUpdate.js +3 -3
  244. package/lib/module/classes/HMSTrackUpdate.js.map +1 -1
  245. package/lib/module/classes/HMSUpdateListenerActions.js +4 -4
  246. package/lib/module/classes/HMSUpdateListenerActions.js.map +1 -1
  247. package/lib/module/classes/HMSVideoCodec.js +3 -3
  248. package/lib/module/classes/HMSVideoCodec.js.map +1 -1
  249. package/lib/module/classes/HMSVideoResolution.js.map +1 -1
  250. package/lib/module/classes/HMSVideoSettings.js.map +1 -1
  251. package/lib/module/classes/HMSVideoTrack.js.map +1 -1
  252. package/lib/module/classes/HMSVideoTrackSettings.js.map +1 -1
  253. package/lib/module/classes/HMSVideoViewMode.js +3 -3
  254. package/lib/module/classes/HMSVideoViewMode.js.map +1 -1
  255. package/lib/module/classes/HmsView.js +2 -1
  256. package/lib/module/classes/HmsView.js.map +1 -1
  257. package/lib/module/index.js.map +1 -1
  258. package/lib/typescript/classes/HMSBrowserRecordingState.d.ts +4 -4
  259. package/lib/typescript/classes/HMSChangeTrackStateRequest.d.ts +2 -2
  260. package/lib/typescript/classes/HMSConstants.d.ts +3 -0
  261. package/lib/typescript/classes/HMSEncoder.d.ts +10 -6
  262. package/lib/typescript/classes/HMSHLSStreamingState.d.ts +2 -2
  263. package/lib/typescript/classes/HMSLocalPeer.d.ts +0 -14
  264. package/lib/typescript/classes/HMSLocalVideoTrack.d.ts +0 -2
  265. package/lib/typescript/classes/HMSLogger.d.ts +1 -7
  266. package/lib/typescript/classes/HMSMessageRecipient.d.ts +2 -2
  267. package/lib/typescript/classes/HMSNativeEventEmitter.d.ts +13 -0
  268. package/lib/typescript/classes/HMSPeer.d.ts +12 -18
  269. package/lib/typescript/classes/HMSPeerUpdate.d.ts +1 -0
  270. package/lib/typescript/classes/HMSPeersCache.d.ts +17 -0
  271. package/lib/typescript/classes/HMSPublishSettings.d.ts +8 -15
  272. package/lib/typescript/classes/HMSRemotePeer.d.ts +0 -14
  273. package/lib/typescript/classes/HMSRole.d.ts +0 -6
  274. package/lib/typescript/classes/HMSRoleChangeRequest.d.ts +2 -2
  275. package/lib/typescript/classes/HMSRoom.d.ts +11 -22
  276. package/lib/typescript/classes/HMSRoomCache.d.ts +16 -0
  277. package/lib/typescript/classes/HMSRtmpStreamingState.d.ts +4 -4
  278. package/lib/typescript/classes/HMSSDK.d.ts +3 -13
  279. package/lib/typescript/classes/HMSServerRecordingState.d.ts +2 -2
  280. package/lib/typescript/classes/HMSSubscribeSettings.d.ts +0 -2
  281. package/lib/typescript/classes/HMSUpdateListenerActions.d.ts +1 -1
  282. package/lib/typescript/index.d.ts +1 -0
  283. package/package.json +5 -4
  284. package/react-native-hms.podspec +1 -1
  285. package/sdk-versions.json +3 -2
  286. package/src/classes/HMSAudioNode.ts +3 -1
  287. package/src/classes/HMSBrowserRecordingState.ts +4 -4
  288. package/src/classes/HMSChangeTrackStateRequest.ts +2 -2
  289. package/src/classes/HMSConstants.ts +3 -0
  290. package/src/classes/HMSEncoder.ts +162 -120
  291. package/src/classes/HMSHLSStreamingState.ts +2 -2
  292. package/src/classes/HMSLocalPeer.ts +0 -15
  293. package/src/classes/HMSLocalVideoTrack.ts +0 -2
  294. package/src/classes/HMSLogger.ts +20 -19
  295. package/src/classes/HMSMessageRecipient.ts +3 -3
  296. package/src/classes/HMSNativeEventEmitter.ts +109 -0
  297. package/src/classes/HMSPeer.ts +135 -32
  298. package/src/classes/HMSPeerUpdate.ts +9 -0
  299. package/src/classes/HMSPeersCache.ts +252 -0
  300. package/src/classes/HMSPublishSettings.ts +8 -18
  301. package/src/classes/HMSRemotePeer.ts +0 -16
  302. package/src/classes/HMSRole.ts +0 -9
  303. package/src/classes/HMSRoleChangeRequest.ts +5 -3
  304. package/src/classes/HMSRoom.ts +141 -37
  305. package/src/classes/HMSRoomCache.ts +157 -0
  306. package/src/classes/HMSRtmpStreamingState.ts +4 -4
  307. package/src/classes/HMSSDK.tsx +685 -292
  308. package/src/classes/HMSServerRecordingState.ts +2 -2
  309. package/src/classes/HMSSubscribeSettings.ts +1 -7
  310. package/src/classes/HMSUpdateListenerActions.ts +1 -1
  311. package/src/classes/HmsView.tsx +2 -1
  312. package/src/index.ts +1 -0
@@ -39,6 +39,7 @@ class HMSRNSDK(
39
39
  private var audioMixingMode: AudioMixingMode = AudioMixingMode.TALK_AND_MUSIC
40
40
  private var id: String = sdkId
41
41
  private var self = this
42
+ private var eventsEnableStatus = mutableMapOf<String, Boolean>()
42
43
 
43
44
  init {
44
45
  val builder = HMSSDK.Builder(reactApplicationContext)
@@ -71,6 +72,9 @@ class HMSRNSDK(
71
72
  }
72
73
 
73
74
  private fun emitCustomError(message: String) {
75
+ if (eventsEnableStatus["ON_ERROR"] != true) {
76
+ return
77
+ }
74
78
  val data: WritableMap = Arguments.createMap()
75
79
  val hmsError = HMSException(6002, message, message, message, message, null, false)
76
80
  data.putString("id", id)
@@ -79,6 +83,9 @@ class HMSRNSDK(
79
83
  }
80
84
 
81
85
  private fun emitRequiredKeysError(message: String) {
86
+ if (eventsEnableStatus["ON_ERROR"] != true) {
87
+ return
88
+ }
82
89
  val data: WritableMap = Arguments.createMap()
83
90
  val hmsError =
84
91
  HMSException(
@@ -100,6 +107,9 @@ class HMSRNSDK(
100
107
  }
101
108
 
102
109
  fun emitHMSError(error: HMSException) {
110
+ if (eventsEnableStatus["ON_ERROR"] != true) {
111
+ return
112
+ }
103
113
  val data: WritableMap = Arguments.createMap()
104
114
  data.putString("id", id)
105
115
  data.putMap("error", HMSDecoder.getError(error))
@@ -133,11 +143,17 @@ class HMSRNSDK(
133
143
  config,
134
144
  object : HMSPreviewListener {
135
145
  override fun onError(error: HMSException) {
136
- self.emitHMSError(error)
137
146
  previewInProgress = false
147
+ if (eventsEnableStatus["ON_ERROR"] != true) {
148
+ return
149
+ }
150
+ self.emitHMSError(error)
138
151
  }
139
152
 
140
153
  override fun onPeerUpdate(type: HMSPeerUpdate, peer: HMSPeer) {
154
+ if (eventsEnableStatus["3"] != true) {
155
+ return
156
+ }
141
157
  if (type === HMSPeerUpdate.AUDIO_TOGGLED ||
142
158
  type === HMSPeerUpdate.VIDEO_TOGGLED ||
143
159
  type === HMSPeerUpdate.BECAME_DOMINANT_SPEAKER ||
@@ -152,20 +168,20 @@ class HMSRNSDK(
152
168
  ) {
153
169
  return
154
170
  }
155
- val updateType = type.name
156
- val hmsPeer = HMSDecoder.getHmsPeer(peer)
157
-
158
- val data: WritableMap = Arguments.createMap()
159
-
160
- data.putMap("peer", hmsPeer)
161
- data.putString("type", updateType)
162
- data.putString("id", id)
163
- delegate.emitEvent("ON_PEER_UPDATE", data)
171
+ val hmsPeer = HMSDecoder.getHmsPeerSubsetForPeerUpdateEvent(peer, type)
172
+ delegate.emitEvent("3", hmsPeer)
164
173
  }
165
174
 
166
175
  override fun onRoomUpdate(type: HMSRoomUpdate, hmsRoom: HMSRoom) {
176
+ if (eventsEnableStatus["ON_ROOM_UPDATE"] != true) {
177
+ return
178
+ }
179
+ if (type == HMSRoomUpdate.ROOM_PEER_COUNT_UPDATED) {
180
+ return
181
+ }
182
+
167
183
  val updateType = type.name
168
- val roomData = HMSDecoder.getHmsRoom(hmsRoom)
184
+ val roomData = HMSDecoder.getHmsRoomSubset(hmsRoom, type)
169
185
 
170
186
  val data: WritableMap = Arguments.createMap()
171
187
 
@@ -176,15 +192,18 @@ class HMSRNSDK(
176
192
  }
177
193
 
178
194
  override fun onPreview(room: HMSRoom, localTracks: Array<HMSTrack>) {
195
+ previewInProgress = false
196
+ if (eventsEnableStatus["ON_PREVIEW"] != true) {
197
+ return
198
+ }
179
199
  val previewTracks = HMSDecoder.getPreviewTracks(localTracks)
180
- val hmsRoom = HMSDecoder.getHmsRoom(room)
200
+ val hmsRoom = HMSDecoder.getHmsRoomSubset(room)
181
201
  val data: WritableMap = Arguments.createMap()
182
202
 
183
203
  data.putArray("previewTracks", previewTracks)
184
204
  data.putMap("room", hmsRoom)
185
205
  data.putString("id", id)
186
206
  delegate.emitEvent("ON_PREVIEW", data)
187
- previewInProgress = false
188
207
  }
189
208
  }
190
209
  )
@@ -214,6 +233,9 @@ class HMSRNSDK(
214
233
  config,
215
234
  object : HMSUpdateListener {
216
235
  override fun onChangeTrackStateRequest(details: HMSChangeTrackStateRequest) {
236
+ if (eventsEnableStatus["ON_CHANGE_TRACK_STATE_REQUEST"] != true) {
237
+ return
238
+ }
217
239
  val decodedChangeTrackStateRequest =
218
240
  HMSDecoder.getHmsChangeTrackStateRequest(details, id)
219
241
  delegate.emitEvent(
@@ -225,6 +247,10 @@ class HMSRNSDK(
225
247
  override fun onRemovedFromRoom(notification: HMSRemovedFromRoom) {
226
248
  super.onRemovedFromRoom(notification)
227
249
 
250
+ HMSDecoder.clearRestrictDataStates()
251
+ if (eventsEnableStatus["ON_REMOVED_FROM_ROOM"] != true) {
252
+ return
253
+ }
228
254
  val data: WritableMap = Arguments.createMap()
229
255
  val requestedBy =
230
256
  HMSDecoder.getHmsRemotePeer(notification.peerWhoRemoved as HMSRemotePeer?)
@@ -240,11 +266,17 @@ class HMSRNSDK(
240
266
  }
241
267
 
242
268
  override fun onError(error: HMSException) {
269
+ if (eventsEnableStatus["ON_ERROR"] != true) {
270
+ return
271
+ }
243
272
  self.emitHMSError(error)
244
273
  }
245
274
 
246
275
  override fun onJoin(room: HMSRoom) {
247
- val roomData = HMSDecoder.getHmsRoom(room)
276
+ if (eventsEnableStatus["ON_JOIN"] != true) {
277
+ return
278
+ }
279
+ val roomData = HMSDecoder.getHmsRoomSubset(room)
248
280
 
249
281
  val data: WritableMap = Arguments.createMap()
250
282
 
@@ -254,6 +286,9 @@ class HMSRNSDK(
254
286
  }
255
287
 
256
288
  override fun onPeerUpdate(type: HMSPeerUpdate, peer: HMSPeer) {
289
+ if (eventsEnableStatus["3"] != true) {
290
+ return
291
+ }
257
292
  if (type === HMSPeerUpdate.AUDIO_TOGGLED ||
258
293
  type === HMSPeerUpdate.VIDEO_TOGGLED ||
259
294
  type === HMSPeerUpdate.BECAME_DOMINANT_SPEAKER ||
@@ -269,20 +304,20 @@ class HMSRNSDK(
269
304
  ) {
270
305
  return
271
306
  }
272
- val updateType = type.name
273
- val hmsPeer = HMSDecoder.getHmsPeer(peer)
274
-
275
- val data: WritableMap = Arguments.createMap()
276
-
277
- data.putMap("peer", hmsPeer)
278
- data.putString("type", updateType)
279
- data.putString("id", id)
280
- delegate.emitEvent("ON_PEER_UPDATE", data)
307
+ val hmsPeer = HMSDecoder.getHmsPeerSubsetForPeerUpdateEvent(peer, type)
308
+ delegate.emitEvent("3", hmsPeer)
281
309
  }
282
310
 
283
311
  override fun onRoomUpdate(type: HMSRoomUpdate, hmsRoom: HMSRoom) {
312
+ if (eventsEnableStatus["ON_ROOM_UPDATE"] != true) {
313
+ return
314
+ }
315
+ if (type == HMSRoomUpdate.ROOM_PEER_COUNT_UPDATED) {
316
+ return
317
+ }
318
+
284
319
  val updateType = type.name
285
- val roomData = HMSDecoder.getHmsRoom(hmsRoom)
320
+ val roomData = HMSDecoder.getHmsRoomSubset(hmsRoom, type)
286
321
 
287
322
  val data: WritableMap = Arguments.createMap()
288
323
 
@@ -293,8 +328,11 @@ class HMSRNSDK(
293
328
  }
294
329
 
295
330
  override fun onTrackUpdate(type: HMSTrackUpdate, track: HMSTrack, peer: HMSPeer) {
331
+ if (eventsEnableStatus["ON_TRACK_UPDATE"] != true) {
332
+ return
333
+ }
296
334
  val updateType = type.name
297
- val hmsPeer = HMSDecoder.getHmsPeer(peer)
335
+ val hmsPeer = HMSDecoder.getHmsPeerSubset(peer)
298
336
  val hmsTrack = HMSDecoder.getHmsTrack(track)
299
337
 
300
338
  val data: WritableMap = Arguments.createMap()
@@ -307,9 +345,12 @@ class HMSRNSDK(
307
345
  }
308
346
 
309
347
  override fun onMessageReceived(message: HMSMessage) {
348
+ if (eventsEnableStatus["ON_MESSAGE"] != true) {
349
+ return
350
+ }
310
351
  val data: WritableMap = Arguments.createMap()
311
352
 
312
- data.putMap("sender", HMSDecoder.getHmsPeer(message.sender))
353
+ data.putMap("sender", HMSDecoder.getHmsPeerSubset(message.sender))
313
354
  data.putString("message", message.message)
314
355
  data.putString("type", message.type)
315
356
  data.putString("time", message.serverReceiveTime.toString())
@@ -321,6 +362,9 @@ class HMSRNSDK(
321
362
 
322
363
  override fun onReconnected() {
323
364
  reconnectingStage = false
365
+ if (eventsEnableStatus["RECONNECTED"] != true) {
366
+ return
367
+ }
324
368
  val data: WritableMap = Arguments.createMap()
325
369
  data.putString("event", "RECONNECTED")
326
370
  data.putString("id", id)
@@ -329,6 +373,9 @@ class HMSRNSDK(
329
373
 
330
374
  override fun onReconnecting(error: HMSException) {
331
375
  reconnectingStage = true
376
+ if (eventsEnableStatus["RECONNECTING"] != true) {
377
+ return
378
+ }
332
379
  val data: WritableMap = Arguments.createMap()
333
380
  data.putMap("error", HMSDecoder.getError(error))
334
381
  data.putString("event", "RECONNECTING")
@@ -337,9 +384,12 @@ class HMSRNSDK(
337
384
  }
338
385
 
339
386
  override fun onRoleChangeRequest(request: HMSRoleChangeRequest) {
387
+ recentRoleChangeRequest = request
388
+ if (eventsEnableStatus["ON_ROLE_CHANGE_REQUEST"] != true) {
389
+ return
390
+ }
340
391
  val decodedChangeRoleRequest = HMSDecoder.getHmsRoleChangeRequest(request, id)
341
392
  delegate.emitEvent("ON_ROLE_CHANGE_REQUEST", decodedChangeRoleRequest)
342
- recentRoleChangeRequest = request
343
393
  }
344
394
  }
345
395
  )
@@ -350,15 +400,18 @@ class HMSRNSDK(
350
400
  hmsSDK?.addAudioObserver(
351
401
  object : HMSAudioListener {
352
402
  override fun onAudioLevelUpdate(speakers: Array<HMSSpeaker>) {
403
+ if (eventsEnableStatus["ON_SPEAKER"] != true) {
404
+ return
405
+ }
353
406
  val data: WritableMap = Arguments.createMap()
354
407
  data.putString("event", "ON_SPEAKER")
355
408
 
356
409
  val peers: WritableArray = Arguments.createArray()
357
410
  for (speaker in speakers) {
358
- speaker.peer?.let {
411
+ if (speaker.peer != null && speaker.hmsTrack != null) {
359
412
  val speakerArray: WritableMap = Arguments.createMap()
360
- speakerArray.putMap("peer", HMSDecoder.getHmsPeer(it))
361
413
  speakerArray.putInt("level", speaker.level)
414
+ speakerArray.putMap("peer", HMSDecoder.getHmsPeerSubset(speaker.peer))
362
415
  speakerArray.putMap("track", HMSDecoder.getHmsTrack(speaker.hmsTrack))
363
416
  peers.pushMap(speakerArray)
364
417
  }
@@ -377,12 +430,15 @@ class HMSRNSDK(
377
430
  hmsTrack: HMSTrack?,
378
431
  hmsPeer: HMSPeer?
379
432
  ) {
433
+ if (eventsEnableStatus["ON_LOCAL_AUDIO_STATS"] != true) {
434
+ return
435
+ }
380
436
  if (!rtcStatsAttached) {
381
437
  return
382
438
  }
383
439
  val localAudioStats = HMSDecoder.getLocalAudioStats(audioStats)
384
440
  val track = HMSDecoder.getHmsLocalAudioTrack(hmsTrack as HMSLocalAudioTrack)
385
- val peer = HMSDecoder.getHmsPeer(hmsPeer)
441
+ val peer = HMSDecoder.getHmsPeerSubset(hmsPeer)
386
442
 
387
443
  val data: WritableMap = Arguments.createMap()
388
444
  data.putMap("localAudioStats", localAudioStats)
@@ -393,20 +449,23 @@ class HMSRNSDK(
393
449
  }
394
450
 
395
451
  override fun onLocalVideoStats(
396
- videoStats: HMSLocalVideoStats,
452
+ videoStats: List<HMSLocalVideoStats>,
397
453
  hmsTrack: HMSTrack?,
398
454
  hmsPeer: HMSPeer?
399
455
  ) {
400
- if (!rtcStatsAttached) {
456
+ if (eventsEnableStatus["ON_LOCAL_VIDEO_STATS"] != true) {
457
+ return
458
+ }
459
+ if (!rtcStatsAttached && hmsPeer != null && hmsTrack != null) {
401
460
  return
402
461
  }
403
462
 
404
463
  val localVideoStats = HMSDecoder.getLocalVideoStats(videoStats)
405
464
  val track = HMSDecoder.getHmsLocalVideoTrack(hmsTrack as HMSLocalVideoTrack)
406
- val peer = HMSDecoder.getHmsPeer(hmsPeer)
465
+ val peer = HMSDecoder.getHmsPeerSubset(hmsPeer)
407
466
 
408
467
  val data: WritableMap = Arguments.createMap()
409
- data.putMap("localVideoStats", localVideoStats)
468
+ data.putArray("localVideoStats", localVideoStats)
410
469
  data.putMap("track", track)
411
470
  data.putMap("peer", peer)
412
471
  data.putString("id", id)
@@ -414,6 +473,9 @@ class HMSRNSDK(
414
473
  }
415
474
 
416
475
  override fun onRTCStats(rtcStats: HMSRTCStatsReport) {
476
+ if (eventsEnableStatus["ON_RTC_STATS"] != true) {
477
+ return
478
+ }
417
479
  if (!rtcStatsAttached) {
418
480
  return
419
481
  }
@@ -434,13 +496,16 @@ class HMSRNSDK(
434
496
  hmsTrack: HMSTrack?,
435
497
  hmsPeer: HMSPeer?
436
498
  ) {
499
+ if (eventsEnableStatus["ON_REMOTE_AUDIO_STATS"] != true) {
500
+ return
501
+ }
437
502
  if (!rtcStatsAttached) {
438
503
  return
439
504
  }
440
505
 
441
506
  val remoteAudioStats = HMSDecoder.getRemoteAudioStats(audioStats)
442
507
  val track = HMSDecoder.getHmsRemoteAudioTrack(hmsTrack as HMSRemoteAudioTrack)
443
- val peer = HMSDecoder.getHmsPeer(hmsPeer)
508
+ val peer = HMSDecoder.getHmsPeerSubset(hmsPeer)
444
509
 
445
510
  val data: WritableMap = Arguments.createMap()
446
511
  data.putMap("remoteAudioStats", remoteAudioStats)
@@ -455,13 +520,16 @@ class HMSRNSDK(
455
520
  hmsTrack: HMSTrack?,
456
521
  hmsPeer: HMSPeer?
457
522
  ) {
523
+ if (eventsEnableStatus["ON_REMOTE_VIDEO_STATS"] != true) {
524
+ return
525
+ }
458
526
  if (!rtcStatsAttached) {
459
527
  return
460
528
  }
461
529
 
462
530
  val remoteVideoStats = HMSDecoder.getRemoteVideoStats(videoStats)
463
531
  val track = HMSDecoder.getHmsRemoteVideoTrack(hmsTrack as HMSRemoteVideoTrack)
464
- val peer = HMSDecoder.getHmsPeer(hmsPeer)
532
+ val peer = HMSDecoder.getHmsPeerSubset(hmsPeer)
465
533
 
466
534
  val data: WritableMap = Arguments.createMap()
467
535
  data.putMap("remoteVideoStats", remoteVideoStats)
@@ -513,9 +581,13 @@ class HMSRNSDK(
513
581
  audioshareCallback = null
514
582
  networkQualityUpdatesAttached = false
515
583
  rtcStatsAttached = false
584
+ HMSDecoder.clearRestrictDataStates()
516
585
  if (fromPIP) {
517
586
  context.currentActivity?.moveTaskToBack(false)
518
587
 
588
+ if (eventsEnableStatus["ON_PIP_ROOM_LEAVE"] != true) {
589
+ return
590
+ }
519
591
  val map: WritableMap = Arguments.createMap()
520
592
  map.putString("id", id)
521
593
  delegate.emitEvent("ON_PIP_ROOM_LEAVE", map)
@@ -969,15 +1041,6 @@ class HMSRNSDK(
969
1041
  val peer = HMSHelper.getRemotePeerFromPeerId(peerId, hmsSDK?.getRoom())
970
1042
  peer?.audioTrack?.isPlaybackAllowed = !mute
971
1043
  }
972
- val localPeerData = HMSDecoder.getHmsLocalPeer(hmsSDK?.getLocalPeer())
973
- val remotePeerData = HMSDecoder.getHmsRemotePeers(hmsSDK?.getRemotePeers())
974
-
975
- val map: WritableMap = Arguments.createMap()
976
-
977
- map.putMap("localPeer", localPeerData)
978
- map.putArray("remotePeers", remotePeerData)
979
- map.putString("id", id)
980
- delegate.emitEvent("ON_PEER_UPDATE", map)
981
1044
  }
982
1045
  } else {
983
1046
  val errorMessage = "setPlaybackForAllAudio: $requiredKeys"
@@ -1354,6 +1417,9 @@ class HMSRNSDK(
1354
1417
  device: HMSAudioManager.AudioDevice?,
1355
1418
  audioDevicesList: Set<HMSAudioManager.AudioDevice>?
1356
1419
  ) {
1420
+ if (eventsEnableStatus["ON_AUDIO_DEVICE_CHANGED"] != true) {
1421
+ return
1422
+ }
1357
1423
  val data: WritableMap = Arguments.createMap()
1358
1424
  data.putString("device", device?.name)
1359
1425
  data.putArray("audioDevicesList", HMSHelper.getAudioDevicesSet(audioDevicesList))
@@ -1464,4 +1530,176 @@ class HMSRNSDK(
1464
1530
  }
1465
1531
  )
1466
1532
  }
1533
+
1534
+ fun getPeerProperty(data: ReadableMap): WritableMap? {
1535
+ val requiredKeys =
1536
+ HMSHelper.getUnavailableRequiredKey(data, arrayOf(Pair("peerId", "String"), Pair("property", "String")))
1537
+
1538
+ val nativeHmsSDK = hmsSDK
1539
+
1540
+ if (requiredKeys !== null || nativeHmsSDK === null) {
1541
+ return null
1542
+ }
1543
+
1544
+ val peerId = data.getString("peerId")!!
1545
+ val property = data.getString("property")!!
1546
+
1547
+ val peer = HMSHelper.getPeerFromPeerId(peerId, nativeHmsSDK.getRoom())
1548
+
1549
+ if (peer !== null) {
1550
+ val result: WritableMap = Arguments.createMap()
1551
+
1552
+ when (property) {
1553
+ "name" -> {
1554
+ result.putString("name", peer.name)
1555
+ }
1556
+ "isLocal" -> {
1557
+ result.putBoolean("isLocal", peer.isLocal)
1558
+ }
1559
+ "networkQuality" -> {
1560
+ if (peer.networkQuality !== null) {
1561
+ result.putMap("networkQuality", HMSDecoder.getHmsNetworkQuality(peer.networkQuality))
1562
+ }
1563
+ }
1564
+ "metadata" -> {
1565
+ result.putString("metadata", peer.metadata)
1566
+ }
1567
+ "role" -> {
1568
+ result.putMap("role", HMSDecoder.getHmsRole(peer.hmsRole))
1569
+ }
1570
+ "customerUserID" -> {
1571
+ if (peer.customerUserID !== null) {
1572
+ result.putString("customerUserID", peer.customerUserID)
1573
+ }
1574
+ }
1575
+ "audioTrack" -> {
1576
+ if (peer.audioTrack !== null) {
1577
+ result.putMap("audioTrack", HMSDecoder.getHmsAudioTrack(peer.audioTrack))
1578
+ }
1579
+ }
1580
+ "videoTrack" -> {
1581
+ if (peer.videoTrack !== null) {
1582
+ result.putMap("videoTrack", HMSDecoder.getHmsVideoTrack(peer.videoTrack))
1583
+ }
1584
+ }
1585
+ "auxiliaryTracks" -> {
1586
+ result.putArray("auxiliaryTracks", HMSDecoder.getAllTracks(peer.auxiliaryTracks))
1587
+ }
1588
+ else -> null
1589
+ }
1590
+
1591
+ return result
1592
+ }
1593
+
1594
+ return null
1595
+ }
1596
+
1597
+ fun getRoomProperty(data: ReadableMap): WritableMap? {
1598
+ val requiredKeys =
1599
+ HMSHelper.getUnavailableRequiredKey(data, arrayOf(Pair("property", "String")))
1600
+
1601
+ val nativeHmsSDK = hmsSDK
1602
+
1603
+ if (requiredKeys !== null || nativeHmsSDK === null) {
1604
+ return null
1605
+ }
1606
+
1607
+ val property = data.getString("property")!!
1608
+
1609
+ val hmsRoom = nativeHmsSDK.getRoom()
1610
+
1611
+ if (hmsRoom !== null) {
1612
+ val data: WritableMap = Arguments.createMap()
1613
+
1614
+ when (property) {
1615
+ "sessionId" -> {
1616
+ data.putString("sessionId", hmsRoom.sessionId)
1617
+ }
1618
+ "name" -> {
1619
+ data.putString("name", hmsRoom.name)
1620
+ }
1621
+ "metaData" -> {
1622
+ data.putString("metaData", null)
1623
+ }
1624
+ "peerCount" -> {
1625
+ data.putInt("peerCount", hmsRoom.peerCount)
1626
+ }
1627
+ "peers" -> {
1628
+ data.putArray("peers", HMSDecoder.getAllPeers(hmsRoom.peerList))
1629
+ }
1630
+ "localPeer" -> {
1631
+ data.putMap("localPeer", HMSDecoder.getHmsLocalPeer(hmsRoom.localPeer))
1632
+ }
1633
+ "browserRecordingState" -> {
1634
+ data.putMap("browserRecordingState", HMSDecoder.getHMSBrowserRecordingState(hmsRoom.browserRecordingState))
1635
+ }
1636
+ "rtmpHMSRtmpStreamingState" -> {
1637
+ data.putMap("rtmpHMSRtmpStreamingState", HMSDecoder.getHMSRtmpStreamingState(hmsRoom.rtmpHMSRtmpStreamingState))
1638
+ }
1639
+ "serverRecordingState" -> {
1640
+ data.putMap("serverRecordingState", HMSDecoder.getHMSServerRecordingState(hmsRoom.serverRecordingState))
1641
+ }
1642
+ "hlsStreamingState" -> {
1643
+ data.putMap("hlsStreamingState", HMSDecoder.getHMSHlsStreamingState(hmsRoom.hlsStreamingState))
1644
+ }
1645
+ "hlsRecordingState" -> {
1646
+ data.putMap("hlsRecordingState", HMSDecoder.getHMSHlsRecordingState(hmsRoom.hlsRecordingState))
1647
+ }
1648
+ }
1649
+
1650
+ return data
1651
+ }
1652
+
1653
+ return null
1654
+ }
1655
+
1656
+ fun enableEvent(data: ReadableMap, promise: Promise?) {
1657
+ val requiredKeys =
1658
+ HMSHelper.getUnavailableRequiredKey(data, arrayOf(Pair("eventType", "String")))
1659
+ if (requiredKeys === null) {
1660
+ val eventType = data.getString("eventType")
1661
+
1662
+ if (eventType != null) {
1663
+ eventsEnableStatus[eventType] = true
1664
+ promise?.resolve(emitHMSSuccess())
1665
+ }
1666
+ } else {
1667
+ val errorMessage = "enableEvent: $requiredKeys"
1668
+ self.emitRequiredKeysError(errorMessage)
1669
+ rejectCallback(promise, errorMessage)
1670
+ }
1671
+ }
1672
+
1673
+ fun disableEvent(data: ReadableMap, promise: Promise?) {
1674
+ val requiredKeys =
1675
+ HMSHelper.getUnavailableRequiredKey(data, arrayOf(Pair("eventType", "String")))
1676
+ if (requiredKeys === null) {
1677
+ val eventType = data.getString("eventType")
1678
+
1679
+ if (eventType != null) {
1680
+ eventsEnableStatus[eventType] = false
1681
+ promise?.resolve(emitHMSSuccess())
1682
+ }
1683
+ } else {
1684
+ val errorMessage = "disableEvent: $requiredKeys"
1685
+ self.emitRequiredKeysError(errorMessage)
1686
+ rejectCallback(promise, errorMessage)
1687
+ }
1688
+ }
1689
+
1690
+ fun restrictData(data: ReadableMap, promise: Promise?) {
1691
+ val requiredKeys =
1692
+ HMSHelper.getUnavailableRequiredKey(data, arrayOf(Pair("roleName", "String")))
1693
+ if (requiredKeys === null) {
1694
+ val roleName = data.getString("roleName")
1695
+ if (roleName != null) {
1696
+ HMSDecoder.setRestrictRoleData(roleName, true)
1697
+ promise?.resolve(emitHMSSuccess())
1698
+ }
1699
+ } else {
1700
+ val errorMessage = "restrictData: $requiredKeys"
1701
+ self.emitRequiredKeysError(errorMessage)
1702
+ rejectCallback(promise, errorMessage)
1703
+ }
1704
+ }
1467
1705
  }
@@ -26,17 +26,17 @@ class HMSSDKViewManager : SimpleViewManager<HMSView>() {
26
26
 
27
27
  override fun getExportedCustomBubblingEventTypeConstants(): MutableMap<String, Any>? {
28
28
  return MapBuilder.builder<String, Any>()
29
- .put(
30
- "topChange",
31
- MapBuilder.of("phasedRegistrationNames", MapBuilder.of("bubbled", "onChange"))
32
- )
33
- .build()
29
+ .put(
30
+ "topChange",
31
+ MapBuilder.of("phasedRegistrationNames", MapBuilder.of("bubbled", "onChange"))
32
+ )
33
+ .build()
34
34
  }
35
35
 
36
36
  override fun getExportedCustomDirectEventTypeConstants(): MutableMap<String, Any>? {
37
37
  return MapBuilder.of(
38
- "captureFrame",
39
- MapBuilder.of("registrationName", "onDataReturned"),
38
+ "captureFrame",
39
+ MapBuilder.of("registrationName", "onDataReturned")
40
40
  )
41
41
  }
42
42