@100mslive/react-native-hms 0.9.92 → 0.9.94

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 (387) hide show
  1. package/README.md +67 -20
  2. package/android/.gradle/6.9/fileHashes/fileHashes.bin +0 -0
  3. package/android/.gradle/6.9/fileHashes/fileHashes.lock +0 -0
  4. package/android/.gradle/buildOutputCleanup/buildOutputCleanup.lock +0 -0
  5. package/android/.gradle/buildOutputCleanup/outputFiles.bin +0 -0
  6. package/android/.gradle/checksums/checksums.lock +0 -0
  7. package/android/.gradle/checksums/md5-checksums.bin +0 -0
  8. package/android/.gradle/checksums/sha1-checksums.bin +0 -0
  9. package/android/.idea/libraries/Gradle__com_facebook_react_react_native_0_70_3_debug_aar.xml +14 -0
  10. package/android/.idea/libraries/Gradle__com_facebook_soloader_annotation_0_10_4.xml +13 -0
  11. package/android/.idea/libraries/Gradle__com_facebook_soloader_nativeloader_0_10_4.xml +13 -0
  12. package/android/.idea/libraries/Gradle__com_facebook_soloader_soloader_0_10_4_aar.xml +14 -0
  13. package/android/.idea/libraries/Gradle__com_github_100mslive_android_sdk_lib_2_5_0_aar.xml +10 -0
  14. package/android/.idea/libraries/Gradle__com_github_100mslive_webrtc_m104_hms_1_2_aar.xml +10 -0
  15. package/android/.idea/modules/android.androidTest.iml +33 -33
  16. package/android/.idea/modules/android.main.iml +34 -33
  17. package/android/.idea/modules/android.unitTest.iml +33 -33
  18. package/android/.idea/sonarlint/issuestore/3/c/3c46088b6add3088181589d8ed726652742b6221 +5 -0
  19. package/android/.idea/sonarlint/issuestore/index.pb +3 -1
  20. package/android/build.gradle +12 -10
  21. package/android/src/main/java/com/reactnativehmssdk/HMSDecoder.kt +8 -25
  22. package/android/src/main/java/com/reactnativehmssdk/HMSHelper.kt +119 -89
  23. package/android/src/main/java/com/reactnativehmssdk/HMSManager.kt +35 -0
  24. package/android/src/main/java/com/reactnativehmssdk/HMSRNSDK.kt +61 -40
  25. package/android/src/main/java/com/reactnativehmssdk/HMSView.kt +1 -1
  26. package/ios/HMSDecoder.swift +31 -37
  27. package/ios/HMSHelper.swift +88 -24
  28. package/ios/HMSManager.m +13 -0
  29. package/ios/HMSManager.swift +118 -36
  30. package/ios/HMSRNSDK.swift +284 -119
  31. package/ios/HMSView.swift +3 -4
  32. package/lib/commonjs/classes/HMSAudioCodec.js +0 -1
  33. package/lib/commonjs/classes/HMSAudioCodec.js.map +1 -1
  34. package/lib/commonjs/classes/HMSAudioDevice.js +0 -1
  35. package/lib/commonjs/classes/HMSAudioDevice.js.map +1 -1
  36. package/lib/commonjs/classes/HMSAudioFilePlayerNode.js +73 -0
  37. package/lib/commonjs/classes/HMSAudioFilePlayerNode.js.map +1 -0
  38. package/lib/commonjs/classes/HMSAudioMixerSource.js +20 -0
  39. package/lib/commonjs/classes/HMSAudioMixerSource.js.map +1 -0
  40. package/lib/commonjs/classes/HMSAudioMixingMode.js +0 -1
  41. package/lib/commonjs/classes/HMSAudioMixingMode.js.map +1 -1
  42. package/lib/commonjs/classes/HMSAudioMode.js +0 -1
  43. package/lib/commonjs/classes/HMSAudioMode.js.map +1 -1
  44. package/lib/commonjs/classes/HMSAudioNode.js +19 -0
  45. package/lib/commonjs/classes/HMSAudioNode.js.map +1 -0
  46. package/lib/commonjs/classes/HMSAudioSettings.js +0 -6
  47. package/lib/commonjs/classes/HMSAudioSettings.js.map +1 -1
  48. package/lib/commonjs/classes/HMSAudioTrack.js +0 -4
  49. package/lib/commonjs/classes/HMSAudioTrack.js.map +1 -1
  50. package/lib/commonjs/classes/HMSAudioTrackSettings.js +9 -13
  51. package/lib/commonjs/classes/HMSAudioTrackSettings.js.map +1 -1
  52. package/lib/commonjs/classes/HMSBrowserRecordingState.js +0 -8
  53. package/lib/commonjs/classes/HMSBrowserRecordingState.js.map +1 -1
  54. package/lib/commonjs/classes/HMSCameraFacing.js +0 -1
  55. package/lib/commonjs/classes/HMSCameraFacing.js.map +1 -1
  56. package/lib/commonjs/classes/HMSChangeTrackStateRequest.js +0 -7
  57. package/lib/commonjs/classes/HMSChangeTrackStateRequest.js.map +1 -1
  58. package/lib/commonjs/classes/HMSConfig.js +0 -9
  59. package/lib/commonjs/classes/HMSConfig.js.map +1 -1
  60. package/lib/commonjs/classes/HMSEncoder.js +13 -87
  61. package/lib/commonjs/classes/HMSEncoder.js.map +1 -1
  62. package/lib/commonjs/classes/HMSException.js +8 -10
  63. package/lib/commonjs/classes/HMSException.js.map +1 -1
  64. package/lib/commonjs/classes/HMSHLSConfig.js +0 -6
  65. package/lib/commonjs/classes/HMSHLSConfig.js.map +1 -1
  66. package/lib/commonjs/classes/HMSHLSMeetingURLVariant.js +0 -6
  67. package/lib/commonjs/classes/HMSHLSMeetingURLVariant.js.map +1 -1
  68. package/lib/commonjs/classes/HMSHLSRecordingConfig.js +0 -6
  69. package/lib/commonjs/classes/HMSHLSRecordingConfig.js.map +1 -1
  70. package/lib/commonjs/classes/HMSHLSRecordingState.js +0 -8
  71. package/lib/commonjs/classes/HMSHLSRecordingState.js.map +1 -1
  72. package/lib/commonjs/classes/HMSHLSStreamingState.js +0 -6
  73. package/lib/commonjs/classes/HMSHLSStreamingState.js.map +1 -1
  74. package/lib/commonjs/classes/HMSHLSVariant.js +0 -8
  75. package/lib/commonjs/classes/HMSHLSVariant.js.map +1 -1
  76. package/lib/commonjs/classes/HMSHelper.js +0 -3
  77. package/lib/commonjs/classes/HMSHelper.js.map +1 -1
  78. package/lib/commonjs/classes/HMSLocalAudioStats.js +0 -7
  79. package/lib/commonjs/classes/HMSLocalAudioStats.js.map +1 -1
  80. package/lib/commonjs/classes/HMSLocalAudioTrack.js +0 -15
  81. package/lib/commonjs/classes/HMSLocalAudioTrack.js.map +1 -1
  82. package/lib/commonjs/classes/HMSLocalPeer.js +0 -14
  83. package/lib/commonjs/classes/HMSLocalPeer.js.map +1 -1
  84. package/lib/commonjs/classes/HMSLocalVideoStats.js +0 -9
  85. package/lib/commonjs/classes/HMSLocalVideoStats.js.map +1 -1
  86. package/lib/commonjs/classes/HMSLocalVideoTrack.js +0 -15
  87. package/lib/commonjs/classes/HMSLocalVideoTrack.js.map +1 -1
  88. package/lib/commonjs/classes/HMSLogAlarmManager.js +14 -0
  89. package/lib/commonjs/classes/HMSLogAlarmManager.js.map +1 -0
  90. package/lib/commonjs/classes/HMSLogLevel.js +0 -1
  91. package/lib/commonjs/classes/HMSLogLevel.js.map +1 -1
  92. package/lib/commonjs/classes/HMSLogSettings.js +19 -0
  93. package/lib/commonjs/classes/HMSLogSettings.js.map +1 -0
  94. package/lib/commonjs/classes/HMSLogger.js +0 -30
  95. package/lib/commonjs/classes/HMSLogger.js.map +1 -1
  96. package/lib/commonjs/classes/HMSMessage.js +1 -9
  97. package/lib/commonjs/classes/HMSMessage.js.map +1 -1
  98. package/lib/commonjs/classes/HMSMessageRecipient.js +0 -7
  99. package/lib/commonjs/classes/HMSMessageRecipient.js.map +1 -1
  100. package/lib/commonjs/classes/HMSMessageRecipientType.js +0 -1
  101. package/lib/commonjs/classes/HMSMessageRecipientType.js.map +1 -1
  102. package/lib/commonjs/classes/HMSMicNode.js +28 -0
  103. package/lib/commonjs/classes/HMSMicNode.js.map +1 -0
  104. package/lib/commonjs/classes/HMSNetworkQuality.js +0 -5
  105. package/lib/commonjs/classes/HMSNetworkQuality.js.map +1 -1
  106. package/lib/commonjs/classes/HMSPeer.js +0 -15
  107. package/lib/commonjs/classes/HMSPeer.js.map +1 -1
  108. package/lib/commonjs/classes/HMSPeerUpdate.js +0 -1
  109. package/lib/commonjs/classes/HMSPeerUpdate.js.map +1 -1
  110. package/lib/commonjs/classes/HMSPermissions.js +0 -12
  111. package/lib/commonjs/classes/HMSPermissions.js.map +1 -1
  112. package/lib/commonjs/classes/HMSPublishSettings.js +0 -11
  113. package/lib/commonjs/classes/HMSPublishSettings.js.map +1 -1
  114. package/lib/commonjs/classes/HMSRTCStats.js +0 -11
  115. package/lib/commonjs/classes/HMSRTCStats.js.map +1 -1
  116. package/lib/commonjs/classes/HMSRTCStatsReport.js +0 -7
  117. package/lib/commonjs/classes/HMSRTCStatsReport.js.map +1 -1
  118. package/lib/commonjs/classes/HMSRTMPConfig.js +0 -8
  119. package/lib/commonjs/classes/HMSRTMPConfig.js.map +1 -1
  120. package/lib/commonjs/classes/HMSRemoteAudioStats.js +0 -9
  121. package/lib/commonjs/classes/HMSRemoteAudioStats.js.map +1 -1
  122. package/lib/commonjs/classes/HMSRemoteAudioTrack.js +0 -10
  123. package/lib/commonjs/classes/HMSRemoteAudioTrack.js.map +1 -1
  124. package/lib/commonjs/classes/HMSRemotePeer.js +0 -14
  125. package/lib/commonjs/classes/HMSRemotePeer.js.map +1 -1
  126. package/lib/commonjs/classes/HMSRemoteVideoStats.js +0 -11
  127. package/lib/commonjs/classes/HMSRemoteVideoStats.js.map +1 -1
  128. package/lib/commonjs/classes/HMSRemoteVideoTrack.js +0 -12
  129. package/lib/commonjs/classes/HMSRemoteVideoTrack.js.map +1 -1
  130. package/lib/commonjs/classes/HMSRole.js +0 -12
  131. package/lib/commonjs/classes/HMSRole.js.map +1 -1
  132. package/lib/commonjs/classes/HMSRoleChangeRequest.js +0 -6
  133. package/lib/commonjs/classes/HMSRoleChangeRequest.js.map +1 -1
  134. package/lib/commonjs/classes/HMSRoom.js +0 -15
  135. package/lib/commonjs/classes/HMSRoom.js.map +1 -1
  136. package/lib/commonjs/classes/HMSRoomUpdate.js +0 -1
  137. package/lib/commonjs/classes/HMSRoomUpdate.js.map +1 -1
  138. package/lib/commonjs/classes/HMSRtmpStreamingState.js +0 -8
  139. package/lib/commonjs/classes/HMSRtmpStreamingState.js.map +1 -1
  140. package/lib/commonjs/classes/HMSRtmpVideoResolution.js +0 -6
  141. package/lib/commonjs/classes/HMSRtmpVideoResolution.js.map +1 -1
  142. package/lib/commonjs/classes/HMSSDK.js +142 -390
  143. package/lib/commonjs/classes/HMSSDK.js.map +1 -1
  144. package/lib/commonjs/classes/HMSScreenBroadcastAudioReceiverNode.js +14 -0
  145. package/lib/commonjs/classes/HMSScreenBroadcastAudioReceiverNode.js.map +1 -0
  146. package/lib/commonjs/classes/HMSServerRecordingState.js +0 -7
  147. package/lib/commonjs/classes/HMSServerRecordingState.js.map +1 -1
  148. package/lib/commonjs/classes/HMSSimulcastLayerSettings.js +0 -8
  149. package/lib/commonjs/classes/HMSSimulcastLayerSettings.js.map +1 -1
  150. package/lib/commonjs/classes/HMSSimulcastSettings.js +0 -6
  151. package/lib/commonjs/classes/HMSSimulcastSettings.js.map +1 -1
  152. package/lib/commonjs/classes/HMSSpeaker.js +0 -7
  153. package/lib/commonjs/classes/HMSSpeaker.js.map +1 -1
  154. package/lib/commonjs/classes/HMSSubscribeSettings.js +2 -9
  155. package/lib/commonjs/classes/HMSSubscribeSettings.js.map +1 -1
  156. package/lib/commonjs/classes/HMSTrack.js +0 -11
  157. package/lib/commonjs/classes/HMSTrack.js.map +1 -1
  158. package/lib/commonjs/classes/HMSTrackSettings.js +0 -9
  159. package/lib/commonjs/classes/HMSTrackSettings.js.map +1 -1
  160. package/lib/commonjs/classes/HMSTrackSettingsInitState.js +13 -0
  161. package/lib/commonjs/classes/HMSTrackSettingsInitState.js.map +1 -0
  162. package/lib/commonjs/classes/HMSTrackSource.js +0 -1
  163. package/lib/commonjs/classes/HMSTrackSource.js.map +1 -1
  164. package/lib/commonjs/classes/HMSTrackType.js +0 -1
  165. package/lib/commonjs/classes/HMSTrackType.js.map +1 -1
  166. package/lib/commonjs/classes/HMSTrackUpdate.js +0 -1
  167. package/lib/commonjs/classes/HMSTrackUpdate.js.map +1 -1
  168. package/lib/commonjs/classes/HMSUpdateListenerActions.js +0 -1
  169. package/lib/commonjs/classes/HMSUpdateListenerActions.js.map +1 -1
  170. package/lib/commonjs/classes/HMSVideoCodec.js +0 -1
  171. package/lib/commonjs/classes/HMSVideoCodec.js.map +1 -1
  172. package/lib/commonjs/classes/HMSVideoResolution.js +0 -6
  173. package/lib/commonjs/classes/HMSVideoResolution.js.map +1 -1
  174. package/lib/commonjs/classes/HMSVideoSettings.js +0 -9
  175. package/lib/commonjs/classes/HMSVideoSettings.js.map +1 -1
  176. package/lib/commonjs/classes/HMSVideoTrack.js +0 -11
  177. package/lib/commonjs/classes/HMSVideoTrack.js.map +1 -1
  178. package/lib/commonjs/classes/HMSVideoTrackSettings.js +11 -23
  179. package/lib/commonjs/classes/HMSVideoTrackSettings.js.map +1 -1
  180. package/lib/commonjs/classes/HMSVideoViewMode.js +0 -1
  181. package/lib/commonjs/classes/HMSVideoViewMode.js.map +1 -1
  182. package/lib/commonjs/classes/HmsView.js +7 -25
  183. package/lib/commonjs/classes/HmsView.js.map +1 -1
  184. package/lib/commonjs/index.js +96 -134
  185. package/lib/commonjs/index.js.map +1 -1
  186. package/lib/module/classes/HMSAudioCodec.js +0 -1
  187. package/lib/module/classes/HMSAudioCodec.js.map +1 -1
  188. package/lib/module/classes/HMSAudioDevice.js +0 -1
  189. package/lib/module/classes/HMSAudioDevice.js.map +1 -1
  190. package/lib/module/classes/HMSAudioFilePlayerNode.js +66 -0
  191. package/lib/module/classes/HMSAudioFilePlayerNode.js.map +1 -0
  192. package/lib/module/classes/HMSAudioMixerSource.js +13 -0
  193. package/lib/module/classes/HMSAudioMixerSource.js.map +1 -0
  194. package/lib/module/classes/HMSAudioMixingMode.js +0 -1
  195. package/lib/module/classes/HMSAudioMixingMode.js.map +1 -1
  196. package/lib/module/classes/HMSAudioMode.js +0 -1
  197. package/lib/module/classes/HMSAudioMode.js.map +1 -1
  198. package/lib/module/classes/HMSAudioNode.js +12 -0
  199. package/lib/module/classes/HMSAudioNode.js.map +1 -0
  200. package/lib/module/classes/HMSAudioSettings.js +0 -4
  201. package/lib/module/classes/HMSAudioSettings.js.map +1 -1
  202. package/lib/module/classes/HMSAudioTrack.js +0 -1
  203. package/lib/module/classes/HMSAudioTrack.js.map +1 -1
  204. package/lib/module/classes/HMSAudioTrackSettings.js +9 -11
  205. package/lib/module/classes/HMSAudioTrackSettings.js.map +1 -1
  206. package/lib/module/classes/HMSBrowserRecordingState.js +0 -6
  207. package/lib/module/classes/HMSBrowserRecordingState.js.map +1 -1
  208. package/lib/module/classes/HMSCameraFacing.js +0 -1
  209. package/lib/module/classes/HMSCameraFacing.js.map +1 -1
  210. package/lib/module/classes/HMSChangeTrackStateRequest.js +0 -5
  211. package/lib/module/classes/HMSChangeTrackStateRequest.js.map +1 -1
  212. package/lib/module/classes/HMSConfig.js +0 -7
  213. package/lib/module/classes/HMSConfig.js.map +1 -1
  214. package/lib/module/classes/HMSEncoder.js +13 -55
  215. package/lib/module/classes/HMSEncoder.js.map +1 -1
  216. package/lib/module/classes/HMSException.js +8 -8
  217. package/lib/module/classes/HMSException.js.map +1 -1
  218. package/lib/module/classes/HMSHLSConfig.js +0 -4
  219. package/lib/module/classes/HMSHLSConfig.js.map +1 -1
  220. package/lib/module/classes/HMSHLSMeetingURLVariant.js +0 -4
  221. package/lib/module/classes/HMSHLSMeetingURLVariant.js.map +1 -1
  222. package/lib/module/classes/HMSHLSRecordingConfig.js +0 -4
  223. package/lib/module/classes/HMSHLSRecordingConfig.js.map +1 -1
  224. package/lib/module/classes/HMSHLSRecordingState.js +0 -6
  225. package/lib/module/classes/HMSHLSRecordingState.js.map +1 -1
  226. package/lib/module/classes/HMSHLSStreamingState.js +0 -4
  227. package/lib/module/classes/HMSHLSStreamingState.js.map +1 -1
  228. package/lib/module/classes/HMSHLSVariant.js +0 -6
  229. package/lib/module/classes/HMSHLSVariant.js.map +1 -1
  230. package/lib/module/classes/HMSHelper.js +0 -1
  231. package/lib/module/classes/HMSHelper.js.map +1 -1
  232. package/lib/module/classes/HMSLocalAudioStats.js +0 -5
  233. package/lib/module/classes/HMSLocalAudioStats.js.map +1 -1
  234. package/lib/module/classes/HMSLocalAudioTrack.js +0 -9
  235. package/lib/module/classes/HMSLocalAudioTrack.js.map +1 -1
  236. package/lib/module/classes/HMSLocalPeer.js +0 -9
  237. package/lib/module/classes/HMSLocalPeer.js.map +1 -1
  238. package/lib/module/classes/HMSLocalVideoStats.js +0 -7
  239. package/lib/module/classes/HMSLocalVideoStats.js.map +1 -1
  240. package/lib/module/classes/HMSLocalVideoTrack.js +0 -9
  241. package/lib/module/classes/HMSLocalVideoTrack.js.map +1 -1
  242. package/lib/module/classes/HMSLogAlarmManager.js +7 -0
  243. package/lib/module/classes/HMSLogAlarmManager.js.map +1 -0
  244. package/lib/module/classes/HMSLogLevel.js +0 -1
  245. package/lib/module/classes/HMSLogLevel.js.map +1 -1
  246. package/lib/module/classes/HMSLogSettings.js +12 -0
  247. package/lib/module/classes/HMSLogSettings.js.map +1 -0
  248. package/lib/module/classes/HMSLogger.js +0 -22
  249. package/lib/module/classes/HMSLogger.js.map +1 -1
  250. package/lib/module/classes/HMSMessage.js +1 -7
  251. package/lib/module/classes/HMSMessage.js.map +1 -1
  252. package/lib/module/classes/HMSMessageRecipient.js +0 -5
  253. package/lib/module/classes/HMSMessageRecipient.js.map +1 -1
  254. package/lib/module/classes/HMSMessageRecipientType.js +0 -1
  255. package/lib/module/classes/HMSMessageRecipientType.js.map +1 -1
  256. package/lib/module/classes/HMSMicNode.js +21 -0
  257. package/lib/module/classes/HMSMicNode.js.map +1 -0
  258. package/lib/module/classes/HMSNetworkQuality.js +0 -3
  259. package/lib/module/classes/HMSNetworkQuality.js.map +1 -1
  260. package/lib/module/classes/HMSPeer.js +0 -13
  261. package/lib/module/classes/HMSPeer.js.map +1 -1
  262. package/lib/module/classes/HMSPeerUpdate.js +0 -1
  263. package/lib/module/classes/HMSPeerUpdate.js.map +1 -1
  264. package/lib/module/classes/HMSPermissions.js +0 -10
  265. package/lib/module/classes/HMSPermissions.js.map +1 -1
  266. package/lib/module/classes/HMSPublishSettings.js +0 -9
  267. package/lib/module/classes/HMSPublishSettings.js.map +1 -1
  268. package/lib/module/classes/HMSRTCStats.js +0 -9
  269. package/lib/module/classes/HMSRTCStats.js.map +1 -1
  270. package/lib/module/classes/HMSRTCStatsReport.js +0 -5
  271. package/lib/module/classes/HMSRTCStatsReport.js.map +1 -1
  272. package/lib/module/classes/HMSRTMPConfig.js +0 -6
  273. package/lib/module/classes/HMSRTMPConfig.js.map +1 -1
  274. package/lib/module/classes/HMSRemoteAudioStats.js +0 -7
  275. package/lib/module/classes/HMSRemoteAudioStats.js.map +1 -1
  276. package/lib/module/classes/HMSRemoteAudioTrack.js +0 -4
  277. package/lib/module/classes/HMSRemoteAudioTrack.js.map +1 -1
  278. package/lib/module/classes/HMSRemotePeer.js +0 -9
  279. package/lib/module/classes/HMSRemotePeer.js.map +1 -1
  280. package/lib/module/classes/HMSRemoteVideoStats.js +0 -9
  281. package/lib/module/classes/HMSRemoteVideoStats.js.map +1 -1
  282. package/lib/module/classes/HMSRemoteVideoTrack.js +0 -6
  283. package/lib/module/classes/HMSRemoteVideoTrack.js.map +1 -1
  284. package/lib/module/classes/HMSRole.js +0 -10
  285. package/lib/module/classes/HMSRole.js.map +1 -1
  286. package/lib/module/classes/HMSRoleChangeRequest.js +0 -4
  287. package/lib/module/classes/HMSRoleChangeRequest.js.map +1 -1
  288. package/lib/module/classes/HMSRoom.js +0 -13
  289. package/lib/module/classes/HMSRoom.js.map +1 -1
  290. package/lib/module/classes/HMSRoomUpdate.js +0 -1
  291. package/lib/module/classes/HMSRoomUpdate.js.map +1 -1
  292. package/lib/module/classes/HMSRtmpStreamingState.js +0 -6
  293. package/lib/module/classes/HMSRtmpStreamingState.js.map +1 -1
  294. package/lib/module/classes/HMSRtmpVideoResolution.js +0 -4
  295. package/lib/module/classes/HMSRtmpVideoResolution.js.map +1 -1
  296. package/lib/module/classes/HMSSDK.js +143 -345
  297. package/lib/module/classes/HMSSDK.js.map +1 -1
  298. package/lib/module/classes/HMSScreenBroadcastAudioReceiverNode.js +7 -0
  299. package/lib/module/classes/HMSScreenBroadcastAudioReceiverNode.js.map +1 -0
  300. package/lib/module/classes/HMSServerRecordingState.js +0 -5
  301. package/lib/module/classes/HMSServerRecordingState.js.map +1 -1
  302. package/lib/module/classes/HMSSimulcastLayerSettings.js +0 -6
  303. package/lib/module/classes/HMSSimulcastLayerSettings.js.map +1 -1
  304. package/lib/module/classes/HMSSimulcastSettings.js +0 -4
  305. package/lib/module/classes/HMSSimulcastSettings.js.map +1 -1
  306. package/lib/module/classes/HMSSpeaker.js +0 -5
  307. package/lib/module/classes/HMSSpeaker.js.map +1 -1
  308. package/lib/module/classes/HMSSubscribeSettings.js +2 -7
  309. package/lib/module/classes/HMSSubscribeSettings.js.map +1 -1
  310. package/lib/module/classes/HMSTrack.js +0 -9
  311. package/lib/module/classes/HMSTrack.js.map +1 -1
  312. package/lib/module/classes/HMSTrackSettings.js +0 -7
  313. package/lib/module/classes/HMSTrackSettings.js.map +1 -1
  314. package/lib/module/classes/HMSTrackSettingsInitState.js +6 -0
  315. package/lib/module/classes/HMSTrackSettingsInitState.js.map +1 -0
  316. package/lib/module/classes/HMSTrackSource.js +0 -1
  317. package/lib/module/classes/HMSTrackSource.js.map +1 -1
  318. package/lib/module/classes/HMSTrackType.js +0 -1
  319. package/lib/module/classes/HMSTrackType.js.map +1 -1
  320. package/lib/module/classes/HMSTrackUpdate.js +0 -1
  321. package/lib/module/classes/HMSTrackUpdate.js.map +1 -1
  322. package/lib/module/classes/HMSUpdateListenerActions.js +0 -1
  323. package/lib/module/classes/HMSUpdateListenerActions.js.map +1 -1
  324. package/lib/module/classes/HMSVideoCodec.js +0 -1
  325. package/lib/module/classes/HMSVideoCodec.js.map +1 -1
  326. package/lib/module/classes/HMSVideoResolution.js +0 -4
  327. package/lib/module/classes/HMSVideoResolution.js.map +1 -1
  328. package/lib/module/classes/HMSVideoSettings.js +0 -7
  329. package/lib/module/classes/HMSVideoSettings.js.map +1 -1
  330. package/lib/module/classes/HMSVideoTrack.js +0 -8
  331. package/lib/module/classes/HMSVideoTrack.js.map +1 -1
  332. package/lib/module/classes/HMSVideoTrackSettings.js +11 -21
  333. package/lib/module/classes/HMSVideoTrackSettings.js.map +1 -1
  334. package/lib/module/classes/HMSVideoViewMode.js +0 -1
  335. package/lib/module/classes/HMSVideoViewMode.js.map +1 -1
  336. package/lib/module/classes/HmsView.js +7 -14
  337. package/lib/module/classes/HmsView.js.map +1 -1
  338. package/lib/module/index.js +8 -0
  339. package/lib/module/index.js.map +1 -1
  340. package/lib/typescript/classes/HMSAudioFilePlayerNode.d.ts +12 -0
  341. package/lib/typescript/classes/HMSAudioMixerSource.d.ts +8 -0
  342. package/lib/typescript/classes/HMSAudioNode.d.ts +6 -0
  343. package/lib/typescript/classes/HMSAudioTrackSettings.d.ts +7 -7
  344. package/lib/typescript/classes/HMSBrowserRecordingState.d.ts +2 -2
  345. package/lib/typescript/classes/HMSEncoder.d.ts +2 -5
  346. package/lib/typescript/classes/HMSException.d.ts +8 -6
  347. package/lib/typescript/classes/HMSLogAlarmManager.d.ts +5 -0
  348. package/lib/typescript/classes/HMSLogSettings.d.ts +12 -0
  349. package/lib/typescript/classes/HMSMicNode.d.ts +5 -0
  350. package/lib/typescript/classes/HMSRtmpStreamingState.d.ts +2 -2
  351. package/lib/typescript/classes/HMSSDK.d.ts +67 -41
  352. package/lib/typescript/classes/HMSScreenBroadcastAudioReceiverNode.d.ts +4 -0
  353. package/lib/typescript/classes/HMSServerRecordingState.d.ts +2 -2
  354. package/lib/typescript/classes/HMSSubscribeSettings.d.ts +2 -2
  355. package/lib/typescript/classes/HMSTrackSettings.d.ts +0 -2
  356. package/lib/typescript/classes/HMSTrackSettingsInitState.d.ts +4 -0
  357. package/lib/typescript/classes/HMSVideoTrack.d.ts +0 -2
  358. package/lib/typescript/classes/HMSVideoTrackSettings.d.ts +10 -15
  359. package/lib/typescript/index.d.ts +8 -0
  360. package/package.json +1 -1
  361. package/react-native-hms.podspec +2 -2
  362. package/src/classes/HMSAudioFilePlayerNode.ts +75 -0
  363. package/src/classes/HMSAudioMixerSource.ts +15 -0
  364. package/src/classes/HMSAudioNode.ts +12 -0
  365. package/src/classes/HMSAudioTrackSettings.ts +11 -10
  366. package/src/classes/HMSBrowserRecordingState.ts +2 -2
  367. package/src/classes/HMSEncoder.ts +12 -20
  368. package/src/classes/HMSException.ts +9 -6
  369. package/src/classes/HMSLogAlarmManager.ts +5 -0
  370. package/src/classes/HMSLogSettings.ts +18 -0
  371. package/src/classes/HMSMicNode.ts +23 -0
  372. package/src/classes/HMSRtmpStreamingState.ts +2 -2
  373. package/src/classes/HMSSDK.tsx +153 -185
  374. package/src/classes/HMSScreenBroadcastAudioReceiverNode.ts +7 -0
  375. package/src/classes/HMSServerRecordingState.ts +2 -2
  376. package/src/classes/HMSSubscribeSettings.ts +3 -3
  377. package/src/classes/HMSTrackSettings.ts +0 -3
  378. package/src/classes/HMSTrackSettingsInitState.ts +4 -0
  379. package/src/classes/HMSVideoTrack.ts +0 -2
  380. package/src/classes/HMSVideoTrackSettings.ts +14 -21
  381. package/src/index.ts +8 -0
  382. package/android/.idea/libraries/Gradle__com_facebook_react_react_native_0_69_1_debug_aar.xml +0 -14
  383. package/android/.idea/libraries/Gradle__com_facebook_soloader_annotation_0_10_3.xml +0 -13
  384. package/android/.idea/libraries/Gradle__com_facebook_soloader_nativeloader_0_10_3.xml +0 -13
  385. package/android/.idea/libraries/Gradle__com_facebook_soloader_soloader_0_10_3_aar.xml +0 -15
  386. package/android/.idea/libraries/Gradle__com_github_100mslive_android_sdk_lib_2_4_7_aar.xml +0 -11
  387. package/android/.idea/libraries/Gradle__com_github_100mslive_webrtc_m97_hms_1_1_aar.xml +0 -11
@@ -139,12 +139,12 @@ class HMSDecoder: NSObject {
139
139
 
140
140
  return ["peerID": peerID, "name": name, "isLocal": isLocal, "customerUserID": customerUserID, "customerDescription": customerDescription, "metadata": metadata, "audioTrack": audioTrack, "videoTrack": videoTrack, "auxiliaryTracks": auxiliaryTracks, "localAudioTrackData": localAudioTrackData, "localVideoTrackData": localVideoTrackData, "role": role, "networkQuality": networkQuality]
141
141
  }
142
-
142
+
143
143
  static func getHmsLocalAudioTrack(_ localAudio: HMSLocalAudioTrack) -> [String: Any] {
144
144
  let type = HMSHelper.getHmsTrackType(localAudio.kind) ?? ""
145
145
  return ["trackId": localAudio.trackId, "source": localAudio.source, "trackDescription": localAudio.trackDescription, "settings": getHmsAudioTrackSettings(localAudio.settings), "isMute": localAudio.isMute(), "type": type, "kind": type]
146
146
  }
147
-
147
+
148
148
  static func getHmsLocalVideoTrack(_ localVideo: HMSLocalVideoTrack) -> [String: Any] {
149
149
  let type = HMSHelper.getHmsTrackType(localVideo.kind) ?? ""
150
150
  return ["trackId": localVideo.trackId, "source": localVideo.source, "trackDescription": localVideo.trackDescription, "settings": getHmsVideoTrackSettings(localVideo.settings), "isMute": localVideo.isMute(), "type": type, "kind": type]
@@ -154,22 +154,19 @@ class HMSDecoder: NSObject {
154
154
 
155
155
  guard let settings = hmsAudioTrackSettings else { return [:] }
156
156
 
157
- let maxBitrate = settings.maxBitrate
158
- let trackDescription = settings.trackDescription ?? ""
157
+ // TODO: parsing not done for audioSource
158
+ let audioSource = settings.audioSource
159
+ let initialState = HMSHelper.getHMSTrackInitState(settings.initialMuteState)
159
160
 
160
- return ["maxBitrate": maxBitrate, "trackDescription": trackDescription]
161
+ return ["audioSource": audioSource, "initialState": initialState]
161
162
  }
162
163
 
163
164
  static func getHmsVideoTrackSettings(_ hmsVideoTrackSettings: HMSVideoTrackSettings?) -> [String: Any] {
164
165
 
165
166
  guard let settings = hmsVideoTrackSettings else { return [:] }
166
167
 
167
- let codec = getHmsVideoTrackCodec(settings.codec)
168
- let resolution = getHmsVideoResolution(settings.resolution)
169
- let maxBitrate = settings.maxBitrate
170
- let maxFrameRate = settings.maxFrameRate
171
168
  let cameraFacing = getHmsVideoTrackCameraFacing(settings.cameraFacing)
172
- let trackDescription = settings.trackDescription ?? ""
169
+ let initialState = HMSHelper.getHMSTrackInitState(settings.initialMuteState)
173
170
 
174
171
  var simulcastSettingsData = [[String: Any]]()
175
172
  if let simulcastSettings = settings.simulcastSettings {
@@ -182,7 +179,7 @@ class HMSDecoder: NSObject {
182
179
  }
183
180
  }
184
181
 
185
- return ["codec": codec, "resolution": resolution, "maxBitrate": maxBitrate, "maxFrameRate": maxFrameRate, "cameraFacing": cameraFacing, "trackDescription": trackDescription, "simulcastSettings": simulcastSettingsData]
182
+ return ["initialState": initialState, "cameraFacing": cameraFacing, "simulcastSettings": simulcastSettingsData]
186
183
  }
187
184
 
188
185
  static func getHmsVideoTrackCodec(_ codec: HMSCodec) -> String {
@@ -259,32 +256,32 @@ class HMSDecoder: NSObject {
259
256
 
260
257
  return ["peerID": peerID, "name": name, "isLocal": isLocal, "customerUserID": customerUserID, "customerDescription": customerDescription, "metadata": metadata, "audioTrack": audioTrack, "videoTrack": videoTrack, "auxiliaryTracks": auxiliaryTracks, "remoteAudioTrackData": remoteAudioTrackData, "remoteVideoTrackData": remoteVideoTrackData, "role": role, "networkQuality": networkQuality]
261
258
  }
262
-
259
+
263
260
  static func getHMSRemoteAudioTrack(_ remoteAudio: HMSRemoteAudioTrack) -> [String: Any] {
264
261
  let type = HMSHelper.getHmsTrackType(remoteAudio.kind) ?? ""
265
262
  return ["trackId": remoteAudio.trackId, "source": remoteAudio.source, "trackDescription": remoteAudio.trackDescription, "playbackAllowed": remoteAudio.isPlaybackAllowed(), "isMute": remoteAudio.isMute(), "type": type, "kind": type]
266
263
  }
267
-
264
+
268
265
  static func getHMSRemoteVideoTrack(_ remoteVideo: HMSRemoteVideoTrack) -> [String: Any] {
269
266
  let type = HMSHelper.getHmsTrackType(remoteVideo.kind) ?? ""
270
267
  return ["trackId": remoteVideo.trackId, "source": remoteVideo.source, "trackDescription": remoteVideo.trackDescription, "layer": remoteVideo.layer.rawValue, "playbackAllowed": remoteVideo.isPlaybackAllowed(), "isMute": remoteVideo.isMute(), "isDegraded": remoteVideo.isDegraded(), "type": type, "kind": type]
271
268
  }
272
269
 
273
- static func getPreviewTracks(_ tracks: [HMSTrack]) -> [String: Any] {
270
+ static func getPreviewTracks(_ tracks: [HMSTrack]) -> [[String: Any]] {
274
271
 
275
- var hmsTracks = [String: Any]()
272
+ var hmsTracks = [[String: Any]]()
276
273
 
277
274
  for track in tracks {
278
275
  if let localVideo = track as? HMSLocalVideoTrack {
279
276
  let type = HMSHelper.getHmsTrackType(localVideo.kind) ?? ""
280
277
  let localVideoTrackData: [String: Any] = ["trackId": localVideo.trackId, "source": localVideo.source, "trackDescription": localVideo.trackDescription, "settings": getHmsVideoTrackSettings(localVideo.settings), "isMute": localVideo.isMute(), "kind": type, "type": type]
281
- hmsTracks["videoTrack"] = localVideoTrackData
278
+ hmsTracks.append(localVideoTrackData)
282
279
  }
283
280
 
284
281
  if let localAudio = track as? HMSLocalAudioTrack {
285
282
  let type = HMSHelper.getHmsTrackType(localAudio.kind) ?? ""
286
283
  let localAudioTrackData: [String: Any] = ["trackId": localAudio.trackId, "source": localAudio.source, "trackDescription": localAudio.trackDescription, "settings": getHmsAudioTrackSettings(localAudio.settings), "isMute": localAudio.isMute(), "kind": type, "type": type]
287
- hmsTracks["audioTrack"] = localAudioTrackData
284
+ hmsTracks.append(localAudioTrackData)
288
285
  }
289
286
  }
290
287
  return hmsTracks
@@ -478,17 +475,14 @@ class HMSDecoder: NSObject {
478
475
  return request
479
476
  }
480
477
 
481
- static func getError(_ errorObj: HMSError?) -> [String: Any]? {
482
- if let error = errorObj {
483
- let code = error.code.rawValue
484
- let description = error.description
485
- let message = error.message
486
- let name = error.id
487
- let id = error.id
488
- let action = error.action
489
- let isTerminal = false
478
+ static func getError(_ errorObj: Error?) -> [String: Any]? {
479
+ if let error = errorObj as? HMSError {
480
+ let code = error.errorCode
481
+ let description = error.localizedDescription
482
+ let isTerminal = error.userInfo[HMSIsTerminalUserInfoKey] as? Bool ?? false
483
+ let canRetry = error.userInfo[HMSCanRetryUserInfoKey] as? Bool ?? false
490
484
 
491
- return ["code": code, "description": description, "message": message, "name": name, "action": action, "id": id, "isTerminal": isTerminal]
485
+ return ["code": code, "description": description, "isTerminal": isTerminal, "canRetry": canRetry]
492
486
  } else {
493
487
  return nil
494
488
  }
@@ -540,7 +534,7 @@ class HMSDecoder: NSObject {
540
534
  return [:]
541
535
  }
542
536
  }
543
-
537
+
544
538
  static func getHlsRecordingState(_ data: HMSHLSRecordingState?) -> [String: Any] {
545
539
  if let recordingState = data {
546
540
  let running = recordingState.running
@@ -570,37 +564,37 @@ class HMSDecoder: NSObject {
570
564
  }
571
565
  return variants
572
566
  }
573
-
567
+
574
568
  static func getHMSRTCStats(_ data: HMSRTCStats) -> [String: Any] {
575
569
  return ["bitrateReceived": data.bitrateReceived, "bitrateSent": data.bitrateSent, "bytesReceived": data.bytesReceived, "bytesSent": data.bytesSent, "packetsLost": data.packetsLost, "packetsReceived": data.packetsReceived, "roundTripTime": data.roundTripTime]
576
570
  }
577
-
571
+
578
572
  static func getLocalAudioStats(_ data: HMSLocalAudioStats) -> [String: Any] {
579
573
  return ["roundTripTime": data.roundTripTime, "bytesSent": data.bytesSent, "bitrate": data.bitrate]
580
574
  }
581
-
575
+
582
576
  static func getLocalVideoStats(_ data: HMSLocalVideoStats) -> [String: Any] {
583
577
  return ["roundTripTime": data.roundTripTime, "bytesSent": data.bytesSent, "bitrate": data.bitrate, "resolution": HMSDecoder.getHmsVideoResolution(data.resolution), "frameRate": data.frameRate]
584
578
  }
585
-
579
+
586
580
  static func getRemoteAudioStats(_ data: HMSRemoteAudioStats) -> [String: Any] {
587
581
  return ["bitrate": data.bitrate, "packetsReceived": data.packetsReceived, "packetsLost": data.packetsLost, "bytesReceived": data.bytesReceived, "jitter": data.jitter]
588
582
  }
589
-
583
+
590
584
  static func getRemoteVideoStats(_ data: HMSRemoteVideoStats) -> [String: Any] {
591
585
  return ["bitrate": data.bitrate, "packetsReceived": data.packetsReceived, "packetsLost": data.packetsLost, "bytesReceived": data.bytesReceived, "jitter": data.jitter, "resolution": HMSDecoder.getHmsVideoResolution(data.resolution), "frameRate": data.frameRate]
592
586
  }
593
-
587
+
594
588
  static func getHmsMessageRecipient(_ recipient: HMSMessageRecipient) -> [String: Any] {
595
589
  return ["recipientPeer": getHmsPeer(recipient.peerRecipient), "recipientRoles": getAllRoles(recipient.rolesRecipient), "recipientType": self.getRecipientType(from: recipient.type)]
596
590
  }
597
-
591
+
598
592
  static func getHmsNetworkQuality(_ hmsNetworkQuality: HMSNetworkQuality?) -> [String: Any] {
599
593
  guard let networkQuality = hmsNetworkQuality else { return [:] }
600
-
594
+
601
595
  return ["downlinkQuality": networkQuality.downlinkQuality]
602
596
  }
603
-
597
+
604
598
  static private func getRecipientType(from recipientType: HMSMessageRecipientType) -> String {
605
599
  switch recipientType {
606
600
  case .broadcast:
@@ -2,14 +2,15 @@ import HMSSDK
2
2
  import Foundation
3
3
 
4
4
  class HMSHelper: NSObject {
5
+ static var audioMixerSourceHashMap: [String: HMSAudioNode]?
5
6
 
6
7
  static func getUnavailableRequiredKey(_ data: NSDictionary, _ requiredKeys: [String]) -> String {
7
8
  for (key) in requiredKeys {
8
9
  let value = data.object(forKey: key)
9
- if (value == nil) {
10
+ if value == nil {
10
11
  return key + "_Is_Required"
11
12
  }
12
- if (value is NSNull) {
13
+ if value is NSNull {
13
14
  return key + "_Is_Null"
14
15
  }
15
16
  }
@@ -135,39 +136,80 @@ class HMSHelper: NSObject {
135
136
  return hms
136
137
  }
137
138
 
138
- static func getLocalVideoSettings(_ settings: NSDictionary?) -> HMSVideoTrackSettings? {
139
- guard let data = settings,
140
- let codec = data.value(forKey: "codec") as? String,
141
- let resolution = data.value(forKey: "resolution") as? [String: Double]?,
142
- let maxBitrate = data.value(forKey: "maxBitrate") as? Int,
143
- let maxFrameRate = data.value(forKey: "maxFrameRate") as? Int,
144
- let cameraFacing = data.value(forKey: "cameraFacing") as? String,
145
- let trackDescription = data.value(forKey: "trackDescription") as? String?,
146
- let resolutionObj = HMSHelper.getVideoResolution(resolution ?? [:])
139
+ static func getFrameworkInfo(_ frameworkInfo: NSDictionary?) -> HMSFrameworkInfo? {
140
+ guard let data = frameworkInfo,
141
+ let version = data.value(forKey: "version") as? String,
142
+ let sdkVersion = data.value(forKey: "sdkVersion") as? String
147
143
  else {
148
144
  return nil
149
145
  }
150
- let codecEncoded = HMSHelper.getVideoCodec(codec)
146
+ return HMSFrameworkInfo(type: HMSFrameworkType.reactNative, version: version, sdkVersion: sdkVersion)
147
+ }
148
+
149
+ static func getLocalVideoSettings(_ settings: NSDictionary?) -> HMSVideoTrackSettings? {
150
+ if (settings === nil) {
151
+ return nil
152
+ }
153
+ let codec = HMSCodec.VP8
154
+ let resolution = HMSVideoResolution.init(width: 320, height: 180)
155
+ let maxBitrate = 512
156
+ let maxFrameRate = 25
157
+ let trackDescription = "video track description"
158
+ let cameraFacing = settings?.value(forKey: "cameraFacing") as? String
151
159
  let cameraFacingEncoded = HMSHelper.getCameraFacing(cameraFacing)
152
- let hmsTrackSettings = HMSVideoTrackSettings(codec: codecEncoded,
153
- resolution: resolutionObj,
160
+ let initialState = settings?.value(forKey: "initialState") as? String
161
+ let initialStateEncoded = HMSHelper.getHMSTrackSettingsInitState(initialState)
162
+ let hmsTrackSettings = HMSVideoTrackSettings(codec: codec,
163
+ resolution: resolution,
154
164
  maxBitrate: maxBitrate,
155
165
  maxFrameRate: maxFrameRate,
156
166
  cameraFacing: cameraFacingEncoded,
167
+ simulcastSettings: nil,
157
168
  trackDescription: trackDescription,
169
+ initialMuteState: initialStateEncoded,
158
170
  videoPlugins: nil)
159
171
  return hmsTrackSettings
160
172
  }
161
173
 
162
- static func getLocalAudioSettings(_ settings: NSDictionary?) -> HMSAudioTrackSettings? {
163
- guard let data = settings,
164
- let maxBitrate = data.value(forKey: "maxBitrate") as? Int,
165
- let trackDescription = data.value(forKey: "trackDescription") as? String?
166
- else {
174
+ static func getLocalAudioSettings(_ settings: NSDictionary?, _ hms: HMSSDK?, _ delegate: HMSManager?, _ id: String) -> HMSAudioTrackSettings? {
175
+ if (settings === nil) {
167
176
  return nil
168
177
  }
169
- let hmsTrackSettings = HMSAudioTrackSettings(maxBitrate: maxBitrate, trackDescription: trackDescription)
170
- return hmsTrackSettings
178
+ let initialState = settings?.value(forKey: "initialState") as? String
179
+ let initialStateEncoded = HMSHelper.getHMSTrackSettingsInitState(initialState)
180
+ if #available(iOS 13.0, *) {
181
+ var audioMixerSourceMap = [String: HMSAudioNode]()
182
+ if let playerNode = settings?.value(forKey: "audioSource") as? [String] {
183
+ for node in playerNode {
184
+ if audioMixerSourceMap[node] == nil {
185
+ if node == "mic_node" {
186
+ audioMixerSourceMap["mic_node"] = HMSMicNode()
187
+ } else if node == "screen_broadcast_audio_receiver_node" {
188
+ do {
189
+ audioMixerSourceMap["screen_broadcast_audio_receiver_node"] = try hms?.screenBroadcastAudioReceiverNode()
190
+ } catch {
191
+ delegate?.emitEvent("ON_ERROR", ["error": ["code": 6002, "description": error.localizedDescription, "isTerminal": false, "canRetry": true, "params": ["function": #function]], "id": id])
192
+ }
193
+ } else {
194
+ audioMixerSourceMap[node] = HMSAudioFilePlayerNode()
195
+ }
196
+ }
197
+ }
198
+ }
199
+ do {
200
+ self.audioMixerSourceHashMap = audioMixerSourceMap
201
+ let audioMixerSource = try HMSAudioMixerSource(nodes: audioMixerSourceMap.values.map {$0})
202
+ return HMSAudioTrackSettings(maxBitrate: 32, trackDescription: "audio track description", initialMuteState: initialStateEncoded, audioSource: audioMixerSource)
203
+ } catch {
204
+ delegate?.emitEvent("ON_ERROR", ["error": ["code": 6002, "description": error.localizedDescription, "isTerminal": false, "canRetry": true, "params": ["function": #function]], "id": id])
205
+ return nil
206
+ }
207
+ }
208
+ return HMSAudioTrackSettings(maxBitrate: 32, trackDescription: "audio track description", initialMuteState: initialStateEncoded, audioSource: nil)
209
+ }
210
+
211
+ static func getAudioMixerSourceMap() -> [String: HMSAudioNode]? {
212
+ return self.audioMixerSourceHashMap
171
213
  }
172
214
 
173
215
  static func getVideoResolution(_ data: [String: Double]) -> HMSVideoResolution? {
@@ -191,7 +233,7 @@ class HMSHelper: NSObject {
191
233
  }
192
234
  }
193
235
 
194
- static func getCameraFacing(_ cameraFacing: String) -> HMSCameraFacing {
236
+ static func getCameraFacing(_ cameraFacing: String?) -> HMSCameraFacing {
195
237
  switch cameraFacing {
196
238
  case "FRONT":
197
239
  return HMSCameraFacing.front
@@ -201,6 +243,28 @@ class HMSHelper: NSObject {
201
243
  return HMSCameraFacing.front
202
244
  }
203
245
  }
246
+
247
+ static func getHMSTrackSettingsInitState(_ initState: String?) -> HMSTrackMuteState {
248
+ switch initState {
249
+ case "MUTED":
250
+ return HMSTrackMuteState.mute
251
+ case "UNMUTED":
252
+ return HMSTrackMuteState.unmute
253
+ default:
254
+ return HMSTrackMuteState.unmute
255
+ }
256
+ }
257
+
258
+ static func getHMSTrackInitState(_ initState: HMSTrackMuteState?) -> String {
259
+ switch initState {
260
+ case .mute:
261
+ return "MUTED"
262
+ case .unmute:
263
+ return "UNMUTED"
264
+ default:
265
+ return "UNMUTED"
266
+ }
267
+ }
204
268
 
205
269
  static func getRtmpUrls(_ strings: [String]?) -> [URL]? {
206
270
  if let extractedStrings = strings {
@@ -227,7 +291,7 @@ class HMSHelper: NSObject {
227
291
  }
228
292
  return hlsVariants
229
293
  }
230
-
294
+
231
295
  static func getHlsRecordingConfig(_ config: NSDictionary?) -> HMSHLSRecordingConfig? {
232
296
  guard let hlsRecordingConfig = config
233
297
  else {
@@ -235,7 +299,7 @@ class HMSHelper: NSObject {
235
299
  }
236
300
  let singleFilePerLayer = hlsRecordingConfig.value(forKey: "singleFilePerLayer") as? Bool
237
301
  let videoOnDemand = hlsRecordingConfig.value(forKey: "videoOnDemand") as? Bool
238
-
302
+
239
303
  return HMSHLSRecordingConfig(singleFilePerLayer: singleFilePerLayer ?? false, enableVOD: videoOnDemand ?? false)
240
304
  }
241
305
 
package/ios/HMSManager.m CHANGED
@@ -40,4 +40,17 @@ RCT_EXTERN_METHOD(destroy: (NSDictionary) data :(RCTPromiseResolveBlock) resolve
40
40
  RCT_EXTERN_METHOD(startScreenshare: (NSDictionary) data :(RCTPromiseResolveBlock) resolve :(RCTPromiseRejectBlock) reject)
41
41
  RCT_EXTERN_METHOD(stopScreenshare: (NSDictionary) data :(RCTPromiseResolveBlock) resolve :(RCTPromiseRejectBlock) reject)
42
42
  RCT_EXTERN_METHOD(isScreenShared: (NSDictionary) data :(RCTPromiseResolveBlock) resolve :(RCTPromiseRejectBlock) reject)
43
+ RCT_EXTERN_METHOD(playAudioShare: (NSDictionary) data :(RCTPromiseResolveBlock) resolve :(RCTPromiseRejectBlock) reject)
44
+ RCT_EXTERN_METHOD(setAudioShareVolume: (NSDictionary) data)
45
+ RCT_EXTERN_METHOD(stopAudioShare: (NSDictionary) data)
46
+ RCT_EXTERN_METHOD(resumeAudioShare: (NSDictionary) data)
47
+ RCT_EXTERN_METHOD(pauseAudioShare: (NSDictionary) data)
48
+ RCT_EXTERN_METHOD(audioShareIsPlaying: (NSDictionary) data :(RCTPromiseResolveBlock) resolve :(RCTPromiseRejectBlock) reject)
49
+ RCT_EXTERN_METHOD(audioShareCurrentTime: (NSDictionary) data :(RCTPromiseResolveBlock) resolve :(RCTPromiseRejectBlock) reject)
50
+ RCT_EXTERN_METHOD(audioShareDuration: (NSDictionary) data :(RCTPromiseResolveBlock) resolve :(RCTPromiseRejectBlock) reject)
51
+ RCT_EXTERN_METHOD(getLocalPeer: (NSDictionary) data :(RCTPromiseResolveBlock) resolve :(RCTPromiseRejectBlock) reject)
52
+ RCT_EXTERN_METHOD(getRemotePeers: (NSDictionary) data :(RCTPromiseResolveBlock) resolve :(RCTPromiseRejectBlock) reject)
53
+ RCT_EXTERN_METHOD(getRoles: (NSDictionary) data :(RCTPromiseResolveBlock) resolve :(RCTPromiseRejectBlock) reject)
54
+ RCT_EXTERN_METHOD(enableNetworkQualityUpdates: (NSDictionary) data)
55
+ RCT_EXTERN_METHOD(disableNetworkQualityUpdates: (NSDictionary) data)
43
56
  @end
@@ -30,11 +30,11 @@ class HMSManager: RCTEventEmitter {
30
30
  override init() {
31
31
  super.init()
32
32
  }
33
-
33
+
34
34
  override class func requiresMainQueueSetup() -> Bool {
35
35
  true
36
36
  }
37
-
37
+
38
38
  override func supportedEvents() -> [String]! {
39
39
  return [ON_JOIN, ON_PREVIEW, ON_ROOM_UPDATE, ON_PEER_UPDATE, ON_TRACK_UPDATE, ON_ERROR, ON_MESSAGE, ON_SPEAKER, RECONNECTING, RECONNECTED, ON_ROLE_CHANGE_REQUEST, ON_CHANGE_TRACK_STATE_REQUEST, ON_REMOVED_FROM_ROOM, ON_RTC_STATS, ON_LOCAL_AUDIO_STATS, ON_LOCAL_VIDEO_STATS, ON_REMOTE_AUDIO_STATS, ON_REMOTE_VIDEO_STATS, ON_AUDIO_DEVICE_CHANGED]
40
40
  }
@@ -67,18 +67,18 @@ class HMSManager: RCTEventEmitter {
67
67
  let hms = HMSHelper.getHms(credentials, hmsCollection)
68
68
  hms?.preview(credentials)
69
69
  }
70
-
70
+
71
71
  @objc
72
72
  func previewForRole(_ data: NSDictionary, _ resolve: RCTPromiseResolveBlock?, _ reject: RCTPromiseRejectBlock?) {
73
73
  let hms = HMSHelper.getHms(data, hmsCollection)
74
74
 
75
75
  hms?.previewForRole(data, resolve, reject)
76
76
  }
77
-
77
+
78
78
  @objc
79
79
  func cancelPreview(_ data: NSDictionary) {
80
80
  let hms = HMSHelper.getHms(data, hmsCollection)
81
-
81
+
82
82
  hms?.cancelPreview()
83
83
  }
84
84
 
@@ -204,27 +204,13 @@ class HMSManager: RCTEventEmitter {
204
204
  hms?.isPlaybackAllowed(data, resolve, reject)
205
205
  }
206
206
 
207
- @objc
208
- func getRoom(_ data: NSDictionary, _ resolve: RCTPromiseResolveBlock?, _ reject: RCTPromiseRejectBlock?) {
209
- let hms = HMSHelper.getHms(data, hmsCollection)
210
-
211
- hms?.getRoom(data, resolve, reject)
212
- }
213
-
214
- // MARK: - HMS SDK Delegate Callbacks
215
- func emitEvent(_ name: String, _ data: [String: Any]) {
216
- self.sendEvent(withName: name, body: data)
217
- }
218
-
219
- // MARK: Helper Functions
220
-
221
207
  @objc
222
208
  func setPlaybackForAllAudio(_ data: NSDictionary) {
223
209
  let hms = HMSHelper.getHms(data, hmsCollection)
224
210
 
225
211
  hms?.setPlaybackForAllAudio(data)
226
212
  }
227
-
213
+
228
214
  @objc
229
215
  func remoteMuteAllAudio(_ data: NSDictionary, _ resolve: RCTPromiseResolveBlock?, _ reject: RCTPromiseRejectBlock?) {
230
216
  let hms = HMSHelper.getHms(data, hmsCollection)
@@ -273,25 +259,25 @@ class HMSManager: RCTEventEmitter {
273
259
 
274
260
  hms?.stopHLSStreaming(resolve, reject)
275
261
  }
276
-
262
+
277
263
  @objc
278
264
  func changeName(_ data: NSDictionary, _ resolve: RCTPromiseResolveBlock?, _ reject: RCTPromiseRejectBlock?) {
279
265
  let hms = HMSHelper.getHms(data, hmsCollection)
280
266
 
281
267
  hms?.changeName(data, resolve, reject)
282
268
  }
283
-
269
+
284
270
  @objc
285
271
  func enableRTCStats(_ data: NSDictionary) {
286
272
  let hms = HMSHelper.getHms(data, hmsCollection)
287
-
273
+
288
274
  hms?.enableRTCStats()
289
275
  }
290
-
276
+
291
277
  @objc
292
278
  func disableRTCStats(_ data: NSDictionary) {
293
279
  let hms = HMSHelper.getHms(data, hmsCollection)
294
-
280
+
295
281
  hms?.disableRTCStats()
296
282
  }
297
283
 
@@ -308,26 +294,122 @@ class HMSManager: RCTEventEmitter {
308
294
 
309
295
  hms?.startScreenshare(resolve, reject)
310
296
  }
311
-
297
+
312
298
  @objc
313
299
  func stopScreenshare(_ data: NSDictionary, _ resolve: RCTPromiseResolveBlock?, _ reject: RCTPromiseRejectBlock?) {
314
300
  let hms = HMSHelper.getHms(data, hmsCollection)
315
-
301
+
316
302
  hms?.stopScreenshare(resolve, reject)
317
303
  }
318
-
304
+
319
305
  @objc
320
306
  func isScreenShared(_ data: NSDictionary, _ resolve: RCTPromiseResolveBlock?, _ reject: RCTPromiseRejectBlock?) {
321
307
  let hms = HMSHelper.getHms(data, hmsCollection)
322
-
308
+
323
309
  hms?.isScreenShared(resolve, reject)
324
310
  }
325
311
 
326
- // @objc
327
- // func setLocalVideoSettings(_ data: NSDictionary) {
328
- // let hms = HMSHelper.getHms(data, hmsCollection)
329
- //
330
- // hms?.setLocalVideoSettings(data)
331
- // }
332
- }
312
+ @objc
313
+ func playAudioShare(_ data: NSDictionary, _ resolve: RCTPromiseResolveBlock?, _ reject: RCTPromiseRejectBlock?) {
314
+ let hms = HMSHelper.getHms(data, hmsCollection)
315
+
316
+ hms?.playAudioShare(data, resolve, reject)
317
+ }
318
+
319
+ @objc
320
+ func setAudioShareVolume(_ data: NSDictionary) {
321
+ let hms = HMSHelper.getHms(data, hmsCollection)
322
+
323
+ hms?.setAudioShareVolume(data)
324
+ }
325
+
326
+ @objc
327
+ func stopAudioShare(_ data: NSDictionary) {
328
+ let hms = HMSHelper.getHms(data, hmsCollection)
329
+
330
+ hms?.stopAudioShare(data)
331
+ }
332
+
333
+ @objc
334
+ func resumeAudioShare(_ data: NSDictionary) {
335
+ let hms = HMSHelper.getHms(data, hmsCollection)
336
+
337
+ hms?.resumeAudioShare(data)
338
+ }
339
+
340
+ @objc
341
+ func pauseAudioShare(_ data: NSDictionary) {
342
+ let hms = HMSHelper.getHms(data, hmsCollection)
343
+
344
+ hms?.pauseAudioShare(data)
345
+ }
333
346
 
347
+ @objc
348
+ func audioShareIsPlaying(_ data: NSDictionary, _ resolve: RCTPromiseResolveBlock?, _ reject: RCTPromiseRejectBlock?) {
349
+ let hms = HMSHelper.getHms(data, hmsCollection)
350
+
351
+ hms?.audioShareIsPlaying(data, resolve, reject)
352
+ }
353
+
354
+ @objc
355
+ func audioShareCurrentTime(_ data: NSDictionary, _ resolve: RCTPromiseResolveBlock?, _ reject: RCTPromiseRejectBlock?) {
356
+ let hms = HMSHelper.getHms(data, hmsCollection)
357
+
358
+ hms?.audioShareCurrentTime(data, resolve, reject)
359
+ }
360
+
361
+ @objc
362
+ func audioShareDuration(_ data: NSDictionary, _ resolve: RCTPromiseResolveBlock?, _ reject: RCTPromiseRejectBlock?) {
363
+ let hms = HMSHelper.getHms(data, hmsCollection)
364
+
365
+ hms?.audioShareDuration(data, resolve, reject)
366
+ }
367
+
368
+ @objc
369
+ func enableNetworkQualityUpdates(_ data: NSDictionary) {
370
+ let hms = HMSHelper.getHms(data, hmsCollection)
371
+
372
+ hms?.enableNetworkQualityUpdates()
373
+ }
374
+
375
+ @objc
376
+ func disableNetworkQualityUpdates(_ data: NSDictionary) {
377
+ let hms = HMSHelper.getHms(data, hmsCollection)
378
+
379
+ hms?.disableNetworkQualityUpdates()
380
+ }
381
+
382
+ // MARK: - HMS SDK Get APIs
383
+ @objc
384
+ func getRoom(_ data: NSDictionary, _ resolve: RCTPromiseResolveBlock?, _ reject: RCTPromiseRejectBlock?) {
385
+ let hms = HMSHelper.getHms(data, hmsCollection)
386
+
387
+ hms?.getRoom(resolve)
388
+ }
389
+
390
+ @objc
391
+ func getLocalPeer(_ data: NSDictionary, _ resolve: RCTPromiseResolveBlock?, _ reject: RCTPromiseRejectBlock?) {
392
+ let hms = HMSHelper.getHms(data, hmsCollection)
393
+
394
+ hms?.getLocalPeer(resolve)
395
+ }
396
+
397
+ @objc
398
+ func getRemotePeers(_ data: NSDictionary, _ resolve: RCTPromiseResolveBlock?, _ reject: RCTPromiseRejectBlock?) {
399
+ let hms = HMSHelper.getHms(data, hmsCollection)
400
+
401
+ hms?.getRemotePeers(resolve)
402
+ }
403
+
404
+ @objc
405
+ func getRoles(_ data: NSDictionary, _ resolve: RCTPromiseResolveBlock?, _ reject: RCTPromiseRejectBlock?) {
406
+ let hms = HMSHelper.getHms(data, hmsCollection)
407
+
408
+ hms?.getRoles(resolve)
409
+ }
410
+
411
+ // MARK: - HMS SDK Delegate Callbacks
412
+ func emitEvent(_ name: String, _ data: [String: Any]) {
413
+ self.sendEvent(withName: name, body: data)
414
+ }
415
+ }