@100mslive/react-native-hms 1.6.2 → 1.7.1

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 (308) hide show
  1. package/README.md +30 -39
  2. package/android/.gradle/6.7.1/executionHistory/executionHistory.lock +0 -0
  3. package/android/.gradle/6.7.1/fileChanges/last-build.bin +0 -0
  4. package/android/.gradle/6.7.1/fileHashes/fileHashes.lock +0 -0
  5. package/android/.gradle/6.9/executionHistory/executionHistory.bin +0 -0
  6. package/android/.gradle/6.9/executionHistory/executionHistory.lock +0 -0
  7. package/android/.gradle/6.9/fileHashes/fileHashes.bin +0 -0
  8. package/android/.gradle/6.9/fileHashes/fileHashes.lock +0 -0
  9. package/android/.gradle/buildOutputCleanup/buildOutputCleanup.lock +0 -0
  10. package/android/.gradle/buildOutputCleanup/cache.properties +2 -2
  11. package/android/.gradle/checksums/checksums.lock +0 -0
  12. package/android/.gradle/checksums/md5-checksums.bin +0 -0
  13. package/android/.gradle/checksums/sha1-checksums.bin +0 -0
  14. package/android/build.gradle +24 -9
  15. package/android/gradle/wrapper/gradle-wrapper.jar +0 -0
  16. package/android/gradle/wrapper/gradle-wrapper.properties +1 -1
  17. package/android/gradlew +103 -104
  18. package/android/gradlew.bat +3 -18
  19. package/android/src/main/java/com/reactnativehmssdk/HMSDecoder.kt +40 -17
  20. package/android/src/main/java/com/reactnativehmssdk/HMSHLSPlayer.kt +248 -0
  21. package/android/src/main/java/com/reactnativehmssdk/HMSHLSPlayerManager.kt +101 -0
  22. package/android/src/main/java/com/reactnativehmssdk/HMSHelper.kt +12 -6
  23. package/android/src/main/java/com/reactnativehmssdk/HMSManager.kt +7 -14
  24. package/android/src/main/java/com/reactnativehmssdk/HMSRNSDK.kt +118 -113
  25. package/android/src/main/java/com/reactnativehmssdk/HmssdkPackage.kt +1 -1
  26. package/android/src/main/res/layout/player_view.xml +9 -0
  27. package/ios/HMSDecoder.swift +8 -7
  28. package/ios/HMSHLSPlayerManager.m +22 -0
  29. package/ios/HMSHLSPlayerManager.swift +368 -0
  30. package/ios/HMSHelper.swift +6 -2
  31. package/ios/HMSManager.m +5 -2
  32. package/ios/HMSManager.swift +30 -16
  33. package/ios/HMSRNSDK.swift +84 -105
  34. package/lib/commonjs/classes/HMSAudioTrack.js.map +1 -1
  35. package/lib/commonjs/classes/HMSBrowserRecordingState.js +2 -0
  36. package/lib/commonjs/classes/HMSBrowserRecordingState.js.map +1 -1
  37. package/lib/commonjs/classes/HMSCameraControl.js +3 -5
  38. package/lib/commonjs/classes/HMSCameraControl.js.map +1 -1
  39. package/lib/commonjs/classes/HMSEncoder.js +44 -38
  40. package/lib/commonjs/classes/HMSEncoder.js.map +1 -1
  41. package/lib/commonjs/classes/HMSEventEmitter.js +10 -0
  42. package/lib/commonjs/classes/HMSEventEmitter.js.map +1 -0
  43. package/lib/commonjs/classes/HMSLocalAudioTrack.js.map +1 -1
  44. package/lib/commonjs/classes/HMSLocalPeer.js.map +1 -1
  45. package/lib/commonjs/classes/HMSLocalVideoTrack.js.map +1 -1
  46. package/lib/commonjs/classes/HMSManagerModule.js +18 -0
  47. package/lib/commonjs/classes/HMSManagerModule.js.map +1 -0
  48. package/lib/commonjs/classes/HMSNativeEventEmitter.js.map +1 -1
  49. package/lib/commonjs/classes/HMSNativeEventListener.js +13 -0
  50. package/lib/commonjs/classes/HMSNativeEventListener.js.map +1 -0
  51. package/lib/commonjs/classes/HMSPeer.js +55 -20
  52. package/lib/commonjs/classes/HMSPeer.js.map +1 -1
  53. package/lib/commonjs/classes/HMSPeerUpdate.js +1 -1
  54. package/lib/commonjs/classes/HMSPeerUpdate.js.map +1 -1
  55. package/lib/commonjs/classes/HMSPeersCache.js +33 -43
  56. package/lib/commonjs/classes/HMSPeersCache.js.map +1 -1
  57. package/lib/commonjs/classes/HMSRTMPConfig.js.map +1 -1
  58. package/lib/commonjs/classes/HMSRemoteAudioTrack.js.map +1 -1
  59. package/lib/commonjs/classes/HMSRemotePeer.js.map +1 -1
  60. package/lib/commonjs/classes/HMSRemoteVideoTrack.js.map +1 -1
  61. package/lib/commonjs/classes/HMSRoom.js.map +1 -1
  62. package/lib/commonjs/classes/HMSRoomCache.js +10 -5
  63. package/lib/commonjs/classes/HMSRoomCache.js.map +1 -1
  64. package/lib/commonjs/classes/HMSSDK.js +108 -113
  65. package/lib/commonjs/classes/HMSSDK.js.map +1 -1
  66. package/lib/commonjs/classes/HMSSessionStore.js +6 -7
  67. package/lib/commonjs/classes/HMSSessionStore.js.map +1 -1
  68. package/lib/commonjs/classes/HMSTrack.js.map +1 -1
  69. package/lib/commonjs/classes/HMSVideoTrack.js.map +1 -1
  70. package/lib/commonjs/classes/HmsView.js +4 -1
  71. package/lib/commonjs/classes/HmsView.js.map +1 -1
  72. package/lib/commonjs/components/HMSHLSPlayer/HMSHLSPlayer.js +147 -0
  73. package/lib/commonjs/components/HMSHLSPlayer/HMSHLSPlayer.js.map +1 -0
  74. package/lib/commonjs/components/HMSHLSPlayer/RCTHMSHLSPlayer.js +12 -0
  75. package/lib/commonjs/components/HMSHLSPlayer/RCTHMSHLSPlayer.js.map +1 -0
  76. package/lib/commonjs/components/HMSHLSPlayer/hooks.js +71 -0
  77. package/lib/commonjs/components/HMSHLSPlayer/hooks.js.map +1 -0
  78. package/lib/commonjs/components/HMSHLSPlayer/index.js +63 -0
  79. package/lib/commonjs/components/HMSHLSPlayer/index.js.map +1 -0
  80. package/lib/commonjs/hooks/useHMSPeerUpdates.js +77 -0
  81. package/lib/commonjs/hooks/useHMSPeerUpdates.js.map +1 -0
  82. package/lib/commonjs/index.js +63 -1
  83. package/lib/commonjs/index.js.map +1 -1
  84. package/lib/commonjs/stores/hls-player-playback-slice.js +23 -0
  85. package/lib/commonjs/stores/hls-player-playback-slice.js.map +1 -0
  86. package/lib/commonjs/stores/hls-player-stats-store.js +36 -0
  87. package/lib/commonjs/stores/hls-player-stats-store.js.map +1 -0
  88. package/lib/commonjs/stores/hms-store.js +16 -0
  89. package/lib/commonjs/stores/hms-store.js.map +1 -0
  90. package/lib/commonjs/stores/types.js +6 -0
  91. package/lib/commonjs/stores/types.js.map +1 -0
  92. package/lib/commonjs/types.js +36 -0
  93. package/lib/commonjs/types.js.map +1 -0
  94. package/lib/module/classes/HMSAudioTrack.js.map +1 -1
  95. package/lib/module/classes/HMSBrowserRecordingState.js +2 -0
  96. package/lib/module/classes/HMSBrowserRecordingState.js.map +1 -1
  97. package/lib/module/classes/HMSCameraControl.js +1 -4
  98. package/lib/module/classes/HMSCameraControl.js.map +1 -1
  99. package/lib/module/classes/HMSEncoder.js +42 -37
  100. package/lib/module/classes/HMSEncoder.js.map +1 -1
  101. package/lib/module/classes/HMSEventEmitter.js +3 -0
  102. package/lib/module/classes/HMSEventEmitter.js.map +1 -0
  103. package/lib/module/classes/HMSLocalAudioTrack.js.map +1 -1
  104. package/lib/module/classes/HMSLocalPeer.js.map +1 -1
  105. package/lib/module/classes/HMSLocalVideoTrack.js.map +1 -1
  106. package/lib/module/classes/HMSManagerModule.js +11 -0
  107. package/lib/module/classes/HMSManagerModule.js.map +1 -0
  108. package/lib/module/classes/HMSNativeEventEmitter.js.map +1 -1
  109. package/lib/module/classes/HMSNativeEventListener.js +5 -0
  110. package/lib/module/classes/HMSNativeEventListener.js.map +1 -0
  111. package/lib/module/classes/HMSPeer.js +55 -20
  112. package/lib/module/classes/HMSPeer.js.map +1 -1
  113. package/lib/module/classes/HMSPeerUpdate.js +1 -1
  114. package/lib/module/classes/HMSPeerUpdate.js.map +1 -1
  115. package/lib/module/classes/HMSPeersCache.js +31 -42
  116. package/lib/module/classes/HMSPeersCache.js.map +1 -1
  117. package/lib/module/classes/HMSRTMPConfig.js.map +1 -1
  118. package/lib/module/classes/HMSRemoteAudioTrack.js.map +1 -1
  119. package/lib/module/classes/HMSRemotePeer.js.map +1 -1
  120. package/lib/module/classes/HMSRemoteVideoTrack.js.map +1 -1
  121. package/lib/module/classes/HMSRoom.js.map +1 -1
  122. package/lib/module/classes/HMSRoomCache.js +8 -4
  123. package/lib/module/classes/HMSRoomCache.js.map +1 -1
  124. package/lib/module/classes/HMSSDK.js +57 -62
  125. package/lib/module/classes/HMSSDK.js.map +1 -1
  126. package/lib/module/classes/HMSSessionStore.js +2 -4
  127. package/lib/module/classes/HMSSessionStore.js.map +1 -1
  128. package/lib/module/classes/HMSTrack.js.map +1 -1
  129. package/lib/module/classes/HMSVideoTrack.js.map +1 -1
  130. package/lib/module/classes/HmsView.js +4 -1
  131. package/lib/module/classes/HmsView.js.map +1 -1
  132. package/lib/module/components/HMSHLSPlayer/HMSHLSPlayer.js +138 -0
  133. package/lib/module/components/HMSHLSPlayer/HMSHLSPlayer.js.map +1 -0
  134. package/lib/module/components/HMSHLSPlayer/RCTHMSHLSPlayer.js +4 -0
  135. package/lib/module/components/HMSHLSPlayer/RCTHMSHLSPlayer.js.map +1 -0
  136. package/lib/module/components/HMSHLSPlayer/hooks.js +56 -0
  137. package/lib/module/components/HMSHLSPlayer/hooks.js.map +1 -0
  138. package/lib/module/components/HMSHLSPlayer/index.js +3 -0
  139. package/lib/module/components/HMSHLSPlayer/index.js.map +1 -0
  140. package/lib/module/hooks/useHMSPeerUpdates.js +67 -0
  141. package/lib/module/hooks/useHMSPeerUpdates.js.map +1 -0
  142. package/lib/module/index.js +13 -0
  143. package/lib/module/index.js.map +1 -1
  144. package/lib/module/stores/hls-player-playback-slice.js +16 -0
  145. package/lib/module/stores/hls-player-playback-slice.js.map +1 -0
  146. package/lib/module/stores/hls-player-stats-store.js +29 -0
  147. package/lib/module/stores/hls-player-stats-store.js.map +1 -0
  148. package/lib/module/stores/hms-store.js +9 -0
  149. package/lib/module/stores/hms-store.js.map +1 -0
  150. package/lib/module/stores/types.js +2 -0
  151. package/lib/module/stores/types.js.map +1 -0
  152. package/lib/module/types.js +32 -0
  153. package/lib/module/types.js.map +1 -0
  154. package/lib/typescript/classes/HMSAudioTrack.d.ts +2 -1
  155. package/lib/typescript/classes/HMSBrowserRecordingState.d.ts +2 -0
  156. package/lib/typescript/classes/HMSEncoder.d.ts +1 -0
  157. package/lib/typescript/classes/HMSEventEmitter.d.ts +2 -0
  158. package/lib/typescript/classes/HMSLocalAudioTrack.d.ts +2 -1
  159. package/lib/typescript/classes/HMSLocalPeer.d.ts +3 -3
  160. package/lib/typescript/classes/HMSLocalVideoTrack.d.ts +2 -1
  161. package/lib/typescript/classes/HMSManagerModule.d.ts +3 -0
  162. package/lib/typescript/classes/HMSNativeEventListener.d.ts +4 -0
  163. package/lib/typescript/classes/HMSPeer.d.ts +10 -5
  164. package/lib/typescript/classes/HMSPeersCache.d.ts +17 -2
  165. package/lib/typescript/classes/HMSRTMPConfig.d.ts +2 -2
  166. package/lib/typescript/classes/HMSRemoteAudioTrack.d.ts +2 -1
  167. package/lib/typescript/classes/HMSRemotePeer.d.ts +3 -3
  168. package/lib/typescript/classes/HMSRemoteVideoTrack.d.ts +2 -1
  169. package/lib/typescript/classes/HMSRoom.d.ts +1 -1
  170. package/lib/typescript/classes/HMSSDK.d.ts +5 -15
  171. package/lib/typescript/classes/HMSTrack.d.ts +3 -2
  172. package/lib/typescript/classes/HMSVideoTrack.d.ts +2 -1
  173. package/lib/typescript/classes/HmsView.d.ts +1 -1
  174. package/lib/typescript/components/HMSHLSPlayer/HMSHLSPlayer.d.ts +21 -0
  175. package/lib/typescript/components/HMSHLSPlayer/RCTHMSHLSPlayer.d.ts +19 -0
  176. package/lib/typescript/components/HMSHLSPlayer/hooks.d.ts +17 -0
  177. package/lib/typescript/components/HMSHLSPlayer/index.d.ts +2 -0
  178. package/lib/typescript/hooks/useHMSPeerUpdates.d.ts +7 -0
  179. package/lib/typescript/index.d.ts +5 -0
  180. package/lib/typescript/stores/hls-player-playback-slice.d.ts +5 -0
  181. package/lib/typescript/stores/hls-player-stats-store.d.ts +9 -0
  182. package/lib/typescript/stores/hms-store.d.ts +9 -0
  183. package/lib/typescript/stores/types.d.ts +25 -0
  184. package/lib/typescript/types.d.ts +63 -0
  185. package/package.json +4 -1
  186. package/react-native-hms.podspec +1 -0
  187. package/sdk-versions.json +3 -2
  188. package/src/classes/HMSAudioTrack.ts +2 -1
  189. package/src/classes/HMSBrowserRecordingState.ts +3 -0
  190. package/src/classes/HMSCameraControl.ts +1 -2
  191. package/src/classes/HMSEncoder.ts +18 -8
  192. package/src/classes/HMSEventEmitter.ts +3 -0
  193. package/src/classes/HMSLocalAudioTrack.ts +2 -1
  194. package/src/classes/HMSLocalPeer.ts +3 -3
  195. package/src/classes/HMSLocalVideoTrack.ts +2 -1
  196. package/src/classes/HMSManagerModule.ts +18 -0
  197. package/src/classes/HMSNativeEventEmitter.ts +2 -1
  198. package/src/classes/HMSNativeEventListener.ts +8 -0
  199. package/src/classes/HMSPeer.ts +96 -48
  200. package/src/classes/HMSPeerUpdate.ts +4 -4
  201. package/src/classes/HMSPeersCache.ts +55 -43
  202. package/src/classes/HMSRTMPConfig.ts +2 -2
  203. package/src/classes/HMSRemoteAudioTrack.ts +2 -1
  204. package/src/classes/HMSRemotePeer.ts +3 -3
  205. package/src/classes/HMSRemoteVideoTrack.ts +2 -1
  206. package/src/classes/HMSRoom.ts +1 -1
  207. package/src/classes/HMSRoomCache.ts +11 -3
  208. package/src/classes/HMSSDK.tsx +74 -73
  209. package/src/classes/HMSSessionStore.ts +6 -8
  210. package/src/classes/HMSTrack.ts +3 -2
  211. package/src/classes/HMSVideoTrack.ts +2 -1
  212. package/src/classes/HmsView.tsx +8 -2
  213. package/src/components/HMSHLSPlayer/HMSHLSPlayer.tsx +261 -0
  214. package/src/components/HMSHLSPlayer/RCTHMSHLSPlayer.ts +37 -0
  215. package/src/components/HMSHLSPlayer/hooks.ts +101 -0
  216. package/src/components/HMSHLSPlayer/index.ts +9 -0
  217. package/src/hooks/useHMSPeerUpdates.ts +85 -0
  218. package/src/index.ts +14 -0
  219. package/src/stores/hls-player-playback-slice.ts +25 -0
  220. package/src/stores/hls-player-stats-store.ts +37 -0
  221. package/src/stores/hms-store.ts +11 -0
  222. package/src/stores/types.ts +49 -0
  223. package/src/types.ts +119 -0
  224. package/android/.gradle/buildOutputCleanup/outputFiles.bin +0 -0
  225. package/android/.idea/compiler.xml +0 -6
  226. package/android/.idea/gradle.xml +0 -18
  227. package/android/.idea/jarRepositories.xml +0 -50
  228. package/android/.idea/libraries/Gradle__androidx_activity_activity_1_2_4_aar.xml +0 -16
  229. package/android/.idea/libraries/Gradle__androidx_annotation_annotation_1_3_0.xml +0 -11
  230. package/android/.idea/libraries/Gradle__androidx_annotation_annotation_experimental_1_1_0_aar.xml +0 -13
  231. package/android/.idea/libraries/Gradle__androidx_appcompat_appcompat_1_4_1_aar.xml +0 -16
  232. package/android/.idea/libraries/Gradle__androidx_appcompat_appcompat_resources_1_4_1_aar.xml +0 -13
  233. package/android/.idea/libraries/Gradle__androidx_arch_core_core_common_2_1_0.xml +0 -11
  234. package/android/.idea/libraries/Gradle__androidx_arch_core_core_runtime_2_1_0_aar.xml +0 -13
  235. package/android/.idea/libraries/Gradle__androidx_autofill_autofill_1_1_0_aar.xml +0 -16
  236. package/android/.idea/libraries/Gradle__androidx_collection_collection_1_1_0.xml +0 -11
  237. package/android/.idea/libraries/Gradle__androidx_constraintlayout_constraintlayout_2_1_3_aar.xml +0 -13
  238. package/android/.idea/libraries/Gradle__androidx_core_core_1_7_0_aar.xml +0 -16
  239. package/android/.idea/libraries/Gradle__androidx_cursoradapter_cursoradapter_1_0_0_aar.xml +0 -13
  240. package/android/.idea/libraries/Gradle__androidx_customview_customview_1_0_0_aar.xml +0 -13
  241. package/android/.idea/libraries/Gradle__androidx_drawerlayout_drawerlayout_1_0_0_aar.xml +0 -16
  242. package/android/.idea/libraries/Gradle__androidx_fragment_fragment_1_3_6_aar.xml +0 -16
  243. package/android/.idea/libraries/Gradle__androidx_interpolator_interpolator_1_0_0_aar.xml +0 -13
  244. package/android/.idea/libraries/Gradle__androidx_lifecycle_lifecycle_common_2_4_0.xml +0 -11
  245. package/android/.idea/libraries/Gradle__androidx_lifecycle_lifecycle_livedata_2_0_0_aar.xml +0 -13
  246. package/android/.idea/libraries/Gradle__androidx_lifecycle_lifecycle_livedata_core_2_3_1_aar.xml +0 -13
  247. package/android/.idea/libraries/Gradle__androidx_lifecycle_lifecycle_runtime_2_4_0_aar.xml +0 -13
  248. package/android/.idea/libraries/Gradle__androidx_lifecycle_lifecycle_viewmodel_2_3_1_aar.xml +0 -13
  249. package/android/.idea/libraries/Gradle__androidx_lifecycle_lifecycle_viewmodel_savedstate_2_3_1_aar.xml +0 -13
  250. package/android/.idea/libraries/Gradle__androidx_loader_loader_1_0_0_aar.xml +0 -13
  251. package/android/.idea/libraries/Gradle__androidx_savedstate_savedstate_1_1_0_aar.xml +0 -13
  252. package/android/.idea/libraries/Gradle__androidx_swiperefreshlayout_swiperefreshlayout_1_0_0_aar.xml +0 -16
  253. package/android/.idea/libraries/Gradle__androidx_tracing_tracing_1_1_0_aar.xml +0 -13
  254. package/android/.idea/libraries/Gradle__androidx_vectordrawable_vectordrawable_1_1_0_aar.xml +0 -13
  255. package/android/.idea/libraries/Gradle__androidx_vectordrawable_vectordrawable_animated_1_1_0_aar.xml +0 -13
  256. package/android/.idea/libraries/Gradle__androidx_versionedparcelable_versionedparcelable_1_1_1_aar.xml +0 -13
  257. package/android/.idea/libraries/Gradle__androidx_viewpager_viewpager_1_0_0_aar.xml +0 -13
  258. package/android/.idea/libraries/Gradle__com_facebook_fbjni_fbjni_0_3_0_aar.xml +0 -14
  259. package/android/.idea/libraries/Gradle__com_facebook_fresco_drawee_2_5_0_aar.xml +0 -15
  260. package/android/.idea/libraries/Gradle__com_facebook_fresco_fbcore_2_5_0_aar.xml +0 -18
  261. package/android/.idea/libraries/Gradle__com_facebook_fresco_fresco_2_5_0_aar.xml +0 -18
  262. package/android/.idea/libraries/Gradle__com_facebook_fresco_imagepipeline_2_5_0_aar.xml +0 -18
  263. package/android/.idea/libraries/Gradle__com_facebook_fresco_imagepipeline_base_2_5_0_aar.xml +0 -18
  264. package/android/.idea/libraries/Gradle__com_facebook_fresco_imagepipeline_native_2_5_0_aar.xml +0 -15
  265. package/android/.idea/libraries/Gradle__com_facebook_fresco_imagepipeline_okhttp3_2_5_0_aar.xml +0 -15
  266. package/android/.idea/libraries/Gradle__com_facebook_fresco_memory_type_ashmem_2_5_0_aar.xml +0 -15
  267. package/android/.idea/libraries/Gradle__com_facebook_fresco_memory_type_java_2_5_0_aar.xml +0 -15
  268. package/android/.idea/libraries/Gradle__com_facebook_fresco_memory_type_native_2_5_0_aar.xml +0 -15
  269. package/android/.idea/libraries/Gradle__com_facebook_fresco_nativeimagefilters_2_5_0_aar.xml +0 -15
  270. package/android/.idea/libraries/Gradle__com_facebook_fresco_nativeimagetranscoder_2_5_0_aar.xml +0 -15
  271. package/android/.idea/libraries/Gradle__com_facebook_fresco_ui_common_2_5_0_aar.xml +0 -15
  272. package/android/.idea/libraries/Gradle__com_facebook_infer_annotation_infer_annotation_0_18_0.xml +0 -13
  273. package/android/.idea/libraries/Gradle__com_facebook_react_react_native_0_71_0_rc_0_debug_aar.xml +0 -14
  274. package/android/.idea/libraries/Gradle__com_facebook_soloader_annotation_0_10_4.xml +0 -13
  275. package/android/.idea/libraries/Gradle__com_facebook_soloader_nativeloader_0_10_4.xml +0 -13
  276. package/android/.idea/libraries/Gradle__com_facebook_soloader_soloader_0_10_4_aar.xml +0 -14
  277. package/android/.idea/libraries/Gradle__com_facebook_yoga_proguard_annotations_1_19_0.xml +0 -13
  278. package/android/.idea/libraries/Gradle__com_github_100mslive_android_sdk_lib_2_5_1_aar.xml +0 -10
  279. package/android/.idea/libraries/Gradle__com_github_100mslive_webrtc_m104_hms_1_3_aar.xml +0 -10
  280. package/android/.idea/libraries/Gradle__com_google_code_findbugs_jsr305_3_0_2.xml +0 -13
  281. package/android/.idea/libraries/Gradle__com_squareup_okhttp3_okhttp_4_9_2.xml +0 -13
  282. package/android/.idea/libraries/Gradle__com_squareup_okhttp3_okhttp_urlconnection_4_9_2.xml +0 -13
  283. package/android/.idea/libraries/Gradle__com_squareup_okio_okio_2_9_0.xml +0 -13
  284. package/android/.idea/libraries/Gradle__javax_inject_javax_inject_1.xml +0 -13
  285. package/android/.idea/libraries/Gradle__org_jetbrains_annotations_13_0.xml +0 -13
  286. package/android/.idea/libraries/Gradle__org_jetbrains_kotlin_kotlin_annotations_jvm_1_3_72.xml +0 -13
  287. package/android/.idea/libraries/Gradle__org_jetbrains_kotlin_kotlin_stdlib_1_6_10.xml +0 -13
  288. package/android/.idea/libraries/Gradle__org_jetbrains_kotlin_kotlin_stdlib_common_1_6_10.xml +0 -13
  289. package/android/.idea/libraries/Gradle__org_jetbrains_kotlin_kotlin_stdlib_jdk7_1_6_10.xml +0 -13
  290. package/android/.idea/libraries/Gradle__org_jetbrains_kotlin_kotlin_stdlib_jdk8_1_6_10.xml +0 -13
  291. package/android/.idea/libraries/Gradle__org_jetbrains_kotlinx_kotlinx_coroutines_android_1_6_0.xml +0 -13
  292. package/android/.idea/libraries/Gradle__org_jetbrains_kotlinx_kotlinx_coroutines_core_jvm_1_6_0.xml +0 -13
  293. package/android/.idea/misc.xml +0 -9
  294. package/android/.idea/modules/android.androidTest.iml +0 -203
  295. package/android/.idea/modules/android.iml +0 -40
  296. package/android/.idea/modules/android.main.iml +0 -199
  297. package/android/.idea/modules/android.unitTest.iml +0 -197
  298. package/android/.idea/modules.xml +0 -11
  299. package/android/.idea/sonarlint/issuestore/3/c/3c46088b6add3088181589d8ed726652742b6221 +0 -5
  300. package/android/.idea/sonarlint/issuestore/index.pb +0 -7
  301. package/android/.idea/vcs.xml +0 -6
  302. package/android/local.properties +0 -8
  303. package/ios/Hmssdk.xcodeproj/project.xcworkspace/contents.xcworkspacedata +0 -7
  304. package/ios/Hmssdk.xcodeproj/project.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist +0 -8
  305. package/ios/Hmssdk.xcodeproj/project.xcworkspace/xcuserdata/yogesh.xcuserdatad/UserInterfaceState.xcuserstate +0 -0
  306. package/ios/Hmssdk.xcodeproj/xcuserdata/yogesh.xcuserdatad/xcschemes/xcschememanagement.plist +0 -14
  307. /package/android/{.idea/sonarlint/issuestore/a/8/a8c9f5ddd88723818e51ae3cf8693d02355a8691 → .gradle/6.7.1/gc.properties} +0 -0
  308. /package/android/{.idea/sonarlint/issuestore/f/0/f07866736216be0ee2aba49e392191aeae700a35 → .gradle/configuration-cache/gc.properties} +0 -0
@@ -0,0 +1,368 @@
1
+ import HMSSDK
2
+ import HMSHLSPlayerSDK
3
+ import AVKit.AVPlayerViewController
4
+
5
+ typealias HmsHlsPlayer = HMSHLSPlayerSDK.HMSHLSPlayer
6
+
7
+ @objc(HMSHLSPlayerManager)
8
+ class HMSHLSPlayerManager: RCTViewManager {
9
+ override func view() -> (HMSHLSPlayer) {
10
+ let view = HMSHLSPlayer()
11
+ let hms = getHmsFromBridge()
12
+
13
+ view.setHms(hms)
14
+
15
+ return view
16
+ }
17
+
18
+ func getHmsFromBridge() -> [String: HMSRNSDK] {
19
+ let collection = (bridge.module(for: HMSManager.classForCoder()) as? HMSManager)?.hmsCollection ?? [String: HMSRNSDK]()
20
+ return collection
21
+ }
22
+
23
+ override class func requiresMainQueueSetup() -> Bool {
24
+ true
25
+ }
26
+
27
+ @objc func play(_ node: NSNumber, url: String? = nil) {
28
+ DispatchQueue.main.async {
29
+ if let component = self.bridge.uiManager.view(forReactTag: node) as? HMSHLSPlayer {
30
+ component.play(url)
31
+ }
32
+ }
33
+ }
34
+
35
+ @objc func stop(_ node: NSNumber) {
36
+ DispatchQueue.main.async {
37
+ if let component = self.bridge.uiManager.view(forReactTag: node) as? HMSHLSPlayer {
38
+ component.stop()
39
+ }
40
+ }
41
+ }
42
+
43
+ @objc func pause(_ node: NSNumber) {
44
+ DispatchQueue.main.async {
45
+ if let component = self.bridge.uiManager.view(forReactTag: node) as? HMSHLSPlayer {
46
+ component.pause()
47
+ }
48
+ }
49
+ }
50
+
51
+ @objc func resume(_ node: NSNumber) {
52
+ DispatchQueue.main.async {
53
+ if let component = self.bridge.uiManager.view(forReactTag: node) as? HMSHLSPlayer {
54
+ component.resume()
55
+ }
56
+ }
57
+ }
58
+
59
+ @objc func seekToLivePosition(_ node: NSNumber) {
60
+ DispatchQueue.main.async {
61
+ if let component = self.bridge.uiManager.view(forReactTag: node) as? HMSHLSPlayer {
62
+ component.seekToLivePosition()
63
+ }
64
+ }
65
+ }
66
+
67
+ @objc func seekForward(_ node: NSNumber, seconds: NSNumber) {
68
+ DispatchQueue.main.async {
69
+ if let component = self.bridge.uiManager.view(forReactTag: node) as? HMSHLSPlayer {
70
+ component.seekForward(Double(truncating: seconds))
71
+ }
72
+ }
73
+ }
74
+
75
+ @objc func seekBackward(_ node: NSNumber, seconds: NSNumber) {
76
+ DispatchQueue.main.async {
77
+ if let component = self.bridge.uiManager.view(forReactTag: node) as? HMSHLSPlayer {
78
+ component.seekBackward(Double(truncating: seconds))
79
+ }
80
+ }
81
+ }
82
+
83
+ @objc func setVolume(_ node: NSNumber, level: NSNumber) {
84
+ DispatchQueue.main.async {
85
+ if let component = self.bridge.uiManager.view(forReactTag: node) as? HMSHLSPlayer {
86
+ component.setVolume(Int(truncating: level))
87
+ }
88
+ }
89
+ }
90
+ }
91
+
92
+ class HMSHLSPlayer: UIView {
93
+ // MARK: class instance properties
94
+ var hlsStatsTimerRef: Timer?
95
+ var eventController: HLSPlaybackEventController?
96
+ var hmsHLSPlayerViewController: AVPlayerViewController?
97
+ lazy var hmsHLSPlayer = HmsHlsPlayer()
98
+
99
+ // MARK: Handle HMSRNSDK Instance in HMSHLSPlayer instance
100
+ var hmsCollection = [String: HMSRNSDK]()
101
+
102
+ func setHms(_ hmsInstance: [String: HMSRNSDK]) {
103
+ hmsCollection = hmsInstance
104
+ }
105
+
106
+ // MARK: Handle HMSHLSPlayer RN Component props
107
+
108
+ @objc var onHmsHlsPlaybackEvent: RCTDirectEventBlock?
109
+
110
+ @objc var onHmsHlsStatsEvent: RCTDirectEventBlock?
111
+
112
+ @objc var url: String? {
113
+ didSet {
114
+ play(url)
115
+ }
116
+ }
117
+
118
+ @objc var enableStats: Bool = false {
119
+ didSet {
120
+ if enableStats == true {
121
+ attachHLSPlayerStatsListener()
122
+ } else {
123
+ // If we have existing Stats Timer, Invalidate it
124
+ if let hlsStatsTimer = hlsStatsTimerRef {
125
+ hlsStatsTimer.invalidate()
126
+ hlsStatsTimerRef = nil
127
+ }
128
+ }
129
+ }
130
+ }
131
+
132
+ @objc var enableControls: Bool = true {
133
+ didSet {
134
+ hmsHLSPlayerViewController?.showsPlaybackControls = enableControls
135
+ }
136
+ }
137
+
138
+ // MARK: Handle HMSHLSPlayer RN Component methods
139
+
140
+ @objc func play(_ url: String?) {
141
+ if let validURLString = url, !validURLString.isEmpty {
142
+ if let urlInstance = URL(string: validURLString) {
143
+ hmsHLSPlayer.play(urlInstance)
144
+ }
145
+ return
146
+ }
147
+
148
+ guard let hlsStreamingState = hmsCollection["12345"]?.hms?.room?.hlsStreamingState else {
149
+ return
150
+ }
151
+
152
+ if hlsStreamingState.running && !hlsStreamingState.variants.isEmpty {
153
+ hmsHLSPlayer.play(hlsStreamingState.variants[0].meetingURL)
154
+ }
155
+ }
156
+
157
+ @objc func stop() {
158
+ hmsHLSPlayer.stop()
159
+ }
160
+
161
+ @objc func pause() {
162
+ hmsHLSPlayer.pause()
163
+ }
164
+
165
+ @objc func resume() {
166
+ hmsHLSPlayer.resume()
167
+ }
168
+
169
+ @objc func seekForward(_ seconds: Double) {
170
+ hmsHLSPlayer.seekForward(seconds: seconds)
171
+ }
172
+
173
+ @objc func seekBackward(_ seconds: Double) {
174
+ hmsHLSPlayer.seekBackward(seconds: seconds)
175
+ }
176
+
177
+ @objc func seekToLivePosition() {
178
+ hmsHLSPlayer.seekToLivePosition()
179
+ }
180
+
181
+ @objc func setVolume(_ level: Int) {
182
+ hmsHLSPlayer.volume = level
183
+ }
184
+
185
+ // MARK: Constructor & Deconstructor
186
+
187
+ override init(frame: CGRect) {
188
+ super.init(frame: frame)
189
+
190
+ // setting properties on current UIView
191
+ self.frame = frame
192
+ self.backgroundColor = UIColor(displayP3Red: 0, green: 0, blue: 0, alpha: 1)
193
+
194
+ // creating 100ms HLS Player and getting player view controller
195
+ let playerViewController = hmsHLSPlayer.videoPlayerViewController(showsPlayerControls: false)
196
+ hmsHLSPlayerViewController = playerViewController
197
+ playerViewController.view.frame = self.bounds
198
+
199
+ // Setting 100ms HLS Player as subview of current UIView
200
+ self.addSubview(playerViewController.view)
201
+
202
+ attachPlayerPlaybackListeners()
203
+ }
204
+
205
+ required init?(coder: NSCoder) {
206
+ fatalError("init(coder:) has not been implemented")
207
+ }
208
+
209
+ deinit {
210
+ cleanup()
211
+ }
212
+
213
+ // MARK: Utility functions
214
+ func cleanup() {
215
+ hmsHLSPlayer.stop()
216
+
217
+ // Remove HLS player playback events
218
+ hmsHLSPlayer.delegate = nil
219
+
220
+ // Remove HLS player stats timer
221
+ hlsStatsTimerRef?.invalidate()
222
+ }
223
+
224
+ private func sendHLSPlaybackEventToJS(_ eventName: String, _ data: [String: Any]) {
225
+ guard let onHmsHlsPlaybackEvent = onHmsHlsPlaybackEvent else { return }
226
+
227
+ onHmsHlsPlaybackEvent(["event": eventName, "data": data])
228
+ }
229
+
230
+ private func sendHLSStatsEventToJS(_ eventName: String, _ data: [String: Any]) {
231
+ guard let onHmsHlsStatsEvent = onHmsHlsStatsEvent else { return }
232
+
233
+ onHmsHlsStatsEvent(["event": eventName, "data": data])
234
+ }
235
+
236
+ private func attachPlayerPlaybackListeners() {
237
+ // Attaching HLS Player Playback Events Listener
238
+ eventController = HLSPlaybackEventController(self)
239
+ hmsHLSPlayer.delegate = eventController
240
+ }
241
+
242
+ private func attachHLSPlayerStatsListener() {
243
+ // Only Attach listener, if there is no previously attached listener
244
+ if hlsStatsTimerRef == nil {
245
+
246
+ // Attaching HLS Player Stats Event Listener
247
+ hlsStatsTimerRef = Timer.scheduledTimer(withTimeInterval: 2.0, repeats: true) { [weak self] _ in
248
+ guard let self = self, self.onHmsHlsStatsEvent != nil else { return }
249
+
250
+ let statsMonitor = self.hmsHLSPlayer.statMonitor
251
+
252
+ var data = [String: Any]()
253
+
254
+ // bandwidth
255
+ data["bandWidthEstimate"] = statsMonitor.estimatedBandwidth
256
+ data["totalBytesLoaded"] = statsMonitor.bytesDownloaded
257
+
258
+ // bufferedDuration
259
+ data["bufferedDuration"] = statsMonitor.bufferedDuration
260
+
261
+ // distanceFromLive
262
+ data["distanceFromLive"] = statsMonitor.distanceFromLiveEdge
263
+
264
+ // frameInfo
265
+ data["droppedFrameCount"] = statsMonitor.droppedFrames
266
+
267
+ // videoInfo
268
+ data["averageBitrate"] = statsMonitor.bitrate
269
+ data["videoHeight"] = statsMonitor.videoSize.height
270
+ data["videoWidth"] = statsMonitor.videoSize.width
271
+
272
+ self.sendHLSStatsEventToJS(HMSHLSPlayerConstants.ON_STATS_EVENT_UPDATE, data)
273
+ }
274
+ }
275
+ }
276
+
277
+ fileprivate func onCue(cue: HMSHLSCue) {
278
+ guard onHmsHlsPlaybackEvent != nil else { return }
279
+
280
+ var data = [String: Any]()
281
+
282
+ data["id"] = cue.id
283
+ data["startDate"] = String(cue.startDate.timeIntervalSince1970)
284
+ if let endDate = cue.endDate {
285
+ data["endDate"] = String(endDate.timeIntervalSince1970)
286
+ }
287
+ if let payload = cue.payload {
288
+ data["payloadval"] = payload
289
+ }
290
+
291
+ sendHLSPlaybackEventToJS(HMSHLSPlayerConstants.ON_PLAYBACK_CUE_EVENT, data)
292
+ }
293
+
294
+ fileprivate func onPlaybackFailure(error: Error) {
295
+ guard onHmsHlsPlaybackEvent != nil else { return }
296
+
297
+ var data = [String: Any]()
298
+
299
+ data["error"] = [
300
+ "errorCode": error.localizedDescription,
301
+ "errorCodeName": error.localizedDescription,
302
+ "message": error.localizedDescription
303
+ ]
304
+
305
+ sendHLSPlaybackEventToJS(HMSHLSPlayerConstants.ON_PLAYBACK_FAILURE_EVENT, data)
306
+ }
307
+
308
+ fileprivate func onPlaybackStateChanged(state: HMSHLSPlaybackState) {
309
+ guard onHmsHlsPlaybackEvent != nil else { return }
310
+
311
+ var data = [String: Any]()
312
+
313
+ data["state"] = state.description
314
+
315
+ sendHLSPlaybackEventToJS(HMSHLSPlayerConstants.ON_PLAYBACK_STATE_CHANGE_EVENT, data)
316
+ }
317
+ }
318
+
319
+ class HLSPlaybackEventController: HMSHLSPlayerDelegate {
320
+ weak var hmsHlsPlayerDelegate: HMSHLSPlayer?
321
+
322
+ init(_ hmsPlayerDelegate: HMSHLSPlayer) {
323
+ self.hmsHlsPlayerDelegate = hmsPlayerDelegate
324
+ }
325
+
326
+ func onPlaybackStateChanged(state: HMSHLSPlaybackState) {
327
+ hmsHlsPlayerDelegate?.onPlaybackStateChanged(state: state)
328
+ }
329
+
330
+ func onCue(cue: HMSHLSCue) {
331
+ hmsHlsPlayerDelegate?.onCue(cue: cue)
332
+ }
333
+
334
+ func onPlaybackFailure(error: Error) {
335
+ hmsHlsPlayerDelegate?.onPlaybackFailure(error: error)
336
+ }
337
+ }
338
+
339
+ enum HMSHLSPlayerConstants {
340
+ // HLS Playback Events
341
+ static let ON_PLAYBACK_CUE_EVENT = "ON_PLAYBACK_CUE_EVENT"
342
+ static let ON_PLAYBACK_FAILURE_EVENT = "ON_PLAYBACK_FAILURE_EVENT"
343
+ static let ON_PLAYBACK_STATE_CHANGE_EVENT = "ON_PLAYBACK_STATE_CHANGE_EVENT"
344
+
345
+ // HLS Playback Stats Events
346
+ static let ON_STATS_EVENT_UPDATE = "ON_STATS_EVENT_UPDATE"
347
+ }
348
+
349
+ extension HMSHLSPlaybackState: CustomStringConvertible {
350
+ public var description: String {
351
+ switch self {
352
+ case .buffering:
353
+ return "buffering"
354
+ case .failed:
355
+ return "failed"
356
+ case .paused:
357
+ return "paused"
358
+ case .playing:
359
+ return "playing"
360
+ case .stopped:
361
+ return "stopped"
362
+ case .unknown:
363
+ return "unknown"
364
+ @unknown default:
365
+ return "unknown"
366
+ }
367
+ }
368
+ }
@@ -139,11 +139,15 @@ class HMSHelper: NSObject {
139
139
  static func getFrameworkInfo(_ frameworkInfo: NSDictionary?) -> HMSFrameworkInfo? {
140
140
  guard let data = frameworkInfo,
141
141
  let version = data.value(forKey: "version") as? String,
142
- let sdkVersion = data.value(forKey: "sdkVersion") as? String
142
+ let sdkVersion = data.value(forKey: "sdkVersion") as? String,
143
+ let isPrebuilt = data["isPrebuilt"] as? Bool
143
144
  else {
144
145
  return nil
145
146
  }
146
- return HMSFrameworkInfo(type: HMSFrameworkType.reactNative, version: version, sdkVersion: sdkVersion)
147
+ return HMSFrameworkInfo(type: HMSFrameworkType.reactNative,
148
+ version: version,
149
+ sdkVersion: sdkVersion,
150
+ isPrebuilt: isPrebuilt)
147
151
  }
148
152
 
149
153
  static func getLocalVideoSettings(_ settings: NSDictionary?) -> HMSVideoTrackSettings? {
package/ios/HMSManager.m CHANGED
@@ -38,6 +38,7 @@ RCT_EXTERN_METHOD(destroy: (NSDictionary) data :(RCTPromiseResolveBlock) resolve
38
38
  RCT_EXTERN_METHOD(startScreenshare: (NSDictionary) data :(RCTPromiseResolveBlock) resolve :(RCTPromiseRejectBlock) reject)
39
39
  RCT_EXTERN_METHOD(stopScreenshare: (NSDictionary) data :(RCTPromiseResolveBlock) resolve :(RCTPromiseRejectBlock) reject)
40
40
  RCT_EXTERN_METHOD(isScreenShared: (NSDictionary) data :(RCTPromiseResolveBlock) resolve :(RCTPromiseRejectBlock) reject)
41
+ RCT_EXTERN_METHOD(switchAudioOutputUsingIOSUI: (NSDictionary) data :(RCTPromiseResolveBlock) resolve :(RCTPromiseRejectBlock) reject)
41
42
  RCT_EXTERN_METHOD(playAudioShare: (NSDictionary) data :(RCTPromiseResolveBlock) resolve :(RCTPromiseRejectBlock) reject)
42
43
  RCT_EXTERN_METHOD(setAudioShareVolume: (NSDictionary) data)
43
44
  RCT_EXTERN_METHOD(stopAudioShare: (NSDictionary) data)
@@ -51,8 +52,6 @@ RCT_EXTERN_METHOD(getRemotePeers: (NSDictionary) data :(RCTPromiseResolveBlock)
51
52
  RCT_EXTERN_METHOD(getRoles: (NSDictionary) data :(RCTPromiseResolveBlock) resolve :(RCTPromiseRejectBlock) reject)
52
53
  RCT_EXTERN_METHOD(enableNetworkQualityUpdates: (NSDictionary) data)
53
54
  RCT_EXTERN_METHOD(disableNetworkQualityUpdates: (NSDictionary) data)
54
- RCT_EXTERN_METHOD(setSessionMetaData: (NSDictionary) data :(RCTPromiseResolveBlock) resolve :(RCTPromiseRejectBlock) reject)
55
- RCT_EXTERN_METHOD(getSessionMetaData: (NSDictionary) data :(RCTPromiseResolveBlock) resolve :(RCTPromiseRejectBlock) reject)
56
55
  RCT_EXTERN_METHOD(changeRoleOfPeer: (NSDictionary) data :(RCTPromiseResolveBlock) resolve :(RCTPromiseRejectBlock) reject)
57
56
  RCT_EXTERN_METHOD(changeRoleOfPeersWithRoles: (NSDictionary) data :(RCTPromiseResolveBlock) resolve :(RCTPromiseRejectBlock) reject)
58
57
 
@@ -80,4 +79,8 @@ RCT_EXTERN_METHOD(setSessionMetadataForKey: (NSDictionary) data :(RCTPromiseReso
80
79
  RCT_EXTERN_METHOD(addKeyChangeListener: (NSDictionary) data :(RCTPromiseResolveBlock) resolve :(RCTPromiseRejectBlock) reject)
81
80
  RCT_EXTERN_METHOD(removeKeyChangeListener: (NSDictionary) data :(RCTPromiseResolveBlock) resolve :(RCTPromiseRejectBlock) reject)
82
81
 
82
+ #pragma mark - Prebuilt
83
+
84
+ RCT_EXTERN_METHOD(getRoomLayout: (NSDictionary) data :(RCTPromiseResolveBlock) resolve :(RCTPromiseRejectBlock) reject)
85
+
83
86
  @end
@@ -1,4 +1,5 @@
1
1
  import HMSSDK
2
+ import AVKit.AVRoutePickerView
2
3
 
3
4
  @objc(HMSManager)
4
5
  class HMSManager: RCTEventEmitter {
@@ -74,6 +75,14 @@ class HMSManager: RCTEventEmitter {
74
75
  resolve?(["success": id + " removed"])
75
76
  }
76
77
 
78
+ // MARK: - Prebuilt
79
+
80
+ @objc
81
+ func getRoomLayout(_ data: NSDictionary, _ resolve: RCTPromiseResolveBlock?, _ reject: RCTPromiseRejectBlock?) {
82
+ let hms = HMSHelper.getHms(data, hmsCollection)
83
+ hms?.getRoomLayout(data, resolve, reject)
84
+ }
85
+
77
86
  // MARK: - Preview
78
87
 
79
88
  @objc
@@ -182,6 +191,27 @@ class HMSManager: RCTEventEmitter {
182
191
  hms?.setVolume(data)
183
192
  }
184
193
 
194
+ @objc
195
+ func switchAudioOutputUsingIOSUI(_ data: NSDictionary, _ resolve: RCTPromiseResolveBlock?, _ reject: RCTPromiseRejectBlock?) {
196
+ DispatchQueue.main.async {
197
+ // Creating RoutePickerView
198
+ // Note:- We will trigger tap event on it without rendering this view in UI.
199
+ let routePickerView = AVRoutePickerView()
200
+
201
+ // Iterating over subviews of AVRoutePickerView
202
+ for view in routePickerView.subviews {
203
+ // Checking if the current subview is UIButton
204
+ if let button = view as? UIButton {
205
+ // Trigger tap event on the button
206
+ // so, that Picker View is shown
207
+ button.sendActions(for: .touchUpInside)
208
+ break
209
+ }
210
+ }
211
+ resolve?(true)
212
+ }
213
+ }
214
+
185
215
  // MARK: - Messaging
186
216
 
187
217
  @objc
@@ -411,15 +441,6 @@ class HMSManager: RCTEventEmitter {
411
441
  hms?.disableNetworkQualityUpdates()
412
442
  }
413
443
 
414
- // MARK: - Session Metadata
415
-
416
- @objc
417
- func setSessionMetaData(_ data: NSDictionary, _ resolve: RCTPromiseResolveBlock?, _ reject: RCTPromiseRejectBlock?) {
418
- let hms = HMSHelper.getHms(data, hmsCollection)
419
-
420
- hms?.setSessionMetaData(data, resolve, reject)
421
- }
422
-
423
444
  // MARK: - Peer & Room Property Getter Functions
424
445
 
425
446
  @objc
@@ -499,13 +520,6 @@ class HMSManager: RCTEventEmitter {
499
520
  hms?.getRoles(resolve)
500
521
  }
501
522
 
502
- @objc
503
- func getSessionMetaData(_ data: NSDictionary, _ resolve: RCTPromiseResolveBlock?, _ reject: RCTPromiseRejectBlock?) {
504
- let hms = HMSHelper.getHms(data, hmsCollection)
505
-
506
- hms?.getSessionMetaData(resolve, reject)
507
- }
508
-
509
523
  @objc
510
524
  func getRemoteVideoTrackFromTrackId(_ data: NSDictionary, _ resolve: RCTPromiseResolveBlock?, _ reject: RCTPromiseRejectBlock?) {
511
525
  let hms = HMSHelper.getHms(data, hmsCollection)