@100mslive/react-native-hms 0.9.3 → 0.9.6

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 (212) hide show
  1. package/README.md +1 -2
  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/build.gradle +1 -1
  10. package/android/src/main/java/com/reactnativehmssdk/{HmsDecoder.kt → HMSDecoder.kt} +38 -34
  11. package/android/src/main/java/com/reactnativehmssdk/{HmsHelper.kt → HMSHelper.kt} +113 -4
  12. package/android/src/main/java/com/reactnativehmssdk/{HmsModule.kt → HMSManager.kt} +51 -41
  13. package/android/src/main/java/com/reactnativehmssdk/{HmsSDK.kt → HMSRNSDK.kt} +170 -157
  14. package/android/src/main/java/com/reactnativehmssdk/HMSSDKViewManager.kt +90 -0
  15. package/android/src/main/java/com/reactnativehmssdk/{HmsView.kt → HMSView.kt} +18 -3
  16. package/android/src/main/java/com/reactnativehmssdk/HmsScreenshareActivity.kt +17 -13
  17. package/android/src/main/java/com/reactnativehmssdk/HmssdkPackage.kt +2 -2
  18. package/ios/{HmsDecoder.swift → HMSDecoder.swift} +26 -25
  19. package/ios/{HmsHelper.swift → HMSHelper.swift} +13 -7
  20. package/ios/{HmsManager.m → HMSManager.m} +2 -1
  21. package/ios/{HmsManager.swift → HMSManager.swift} +46 -38
  22. package/ios/{HmsSDK.swift → HMSRNSDK.swift} +127 -127
  23. package/ios/{HmsView.m → HMSView.m} +1 -1
  24. package/ios/{HmsView.swift → HMSView.swift} +9 -20
  25. package/lib/commonjs/classes/HMSAudioCodec.js.map +1 -1
  26. package/lib/commonjs/classes/HMSAudioSettings.js.map +1 -1
  27. package/lib/commonjs/classes/HMSAudioTrack.js.map +1 -1
  28. package/lib/commonjs/classes/HMSAudioTrackSettings.js.map +1 -1
  29. package/lib/commonjs/classes/HMSBrowserRecordingState.js.map +1 -1
  30. package/lib/commonjs/classes/HMSCameraFacing.js.map +1 -1
  31. package/lib/commonjs/classes/HMSChangeTrackStateRequest.js.map +1 -1
  32. package/lib/commonjs/classes/HMSConfig.js.map +1 -1
  33. package/lib/commonjs/classes/HMSEncoder.js +16 -7
  34. package/lib/commonjs/classes/HMSEncoder.js.map +1 -1
  35. package/lib/commonjs/classes/HMSException.js.map +1 -1
  36. package/lib/commonjs/classes/HMSHLSConfig.js.map +1 -1
  37. package/lib/commonjs/classes/HMSHLSMeetingURLVariant.js.map +1 -1
  38. package/lib/commonjs/classes/HMSHLSRecordingConfig.js.map +1 -1
  39. package/lib/commonjs/classes/HMSHLSRecordingState.js.map +1 -1
  40. package/lib/commonjs/classes/HMSHLSStreamingState.js.map +1 -1
  41. package/lib/commonjs/classes/HMSHLSVariant.js.map +1 -1
  42. package/lib/commonjs/classes/HMSHelper.js.map +1 -1
  43. package/lib/commonjs/classes/HMSLocalAudioStats.js.map +1 -1
  44. package/lib/commonjs/classes/HMSLocalAudioTrack.js +6 -8
  45. package/lib/commonjs/classes/HMSLocalAudioTrack.js.map +1 -1
  46. package/lib/commonjs/classes/HMSLocalPeer.js.map +1 -1
  47. package/lib/commonjs/classes/HMSLocalVideoStats.js.map +1 -1
  48. package/lib/commonjs/classes/HMSLocalVideoTrack.js +6 -8
  49. package/lib/commonjs/classes/HMSLocalVideoTrack.js.map +1 -1
  50. package/lib/commonjs/classes/HMSLogLevel.js.map +1 -1
  51. package/lib/commonjs/classes/HMSLogger.js +19 -1
  52. package/lib/commonjs/classes/HMSLogger.js.map +1 -1
  53. package/lib/commonjs/classes/HMSMessage.js +1 -1
  54. package/lib/commonjs/classes/HMSMessage.js.map +1 -1
  55. package/lib/commonjs/classes/HMSMessageRecipient.js.map +1 -1
  56. package/lib/commonjs/classes/HMSMessageRecipientType.js.map +1 -1
  57. package/lib/commonjs/classes/HMSNetworkQuality.js.map +1 -1
  58. package/lib/commonjs/classes/HMSPeer.js.map +1 -1
  59. package/lib/commonjs/classes/HMSPeerUpdate.js.map +1 -1
  60. package/lib/commonjs/classes/HMSPermissions.js.map +1 -1
  61. package/lib/commonjs/classes/HMSPublishSettings.js.map +1 -1
  62. package/lib/commonjs/classes/HMSRTCStats.js.map +1 -1
  63. package/lib/commonjs/classes/HMSRTCStatsReport.js.map +1 -1
  64. package/lib/commonjs/classes/HMSRTMPConfig.js.map +1 -1
  65. package/lib/commonjs/classes/HMSRemoteAudioStats.js.map +1 -1
  66. package/lib/commonjs/classes/HMSRemoteAudioTrack.js +6 -8
  67. package/lib/commonjs/classes/HMSRemoteAudioTrack.js.map +1 -1
  68. package/lib/commonjs/classes/HMSRemotePeer.js.map +1 -1
  69. package/lib/commonjs/classes/HMSRemoteVideoStats.js.map +1 -1
  70. package/lib/commonjs/classes/HMSRemoteVideoTrack.js +6 -8
  71. package/lib/commonjs/classes/HMSRemoteVideoTrack.js.map +1 -1
  72. package/lib/commonjs/classes/HMSRole.js.map +1 -1
  73. package/lib/commonjs/classes/HMSRoleChangeRequest.js.map +1 -1
  74. package/lib/commonjs/classes/HMSRoom.js +3 -0
  75. package/lib/commonjs/classes/HMSRoom.js.map +1 -1
  76. package/lib/commonjs/classes/HMSRoomUpdate.js +1 -3
  77. package/lib/commonjs/classes/HMSRoomUpdate.js.map +1 -1
  78. package/lib/commonjs/classes/HMSRtmpStreamingState.js.map +1 -1
  79. package/lib/commonjs/classes/HMSSDK.js +118 -235
  80. package/lib/commonjs/classes/HMSSDK.js.map +1 -1
  81. package/lib/commonjs/classes/HMSServerRecordingState.js.map +1 -1
  82. package/lib/commonjs/classes/HMSSimulcastLayerSettings.js.map +1 -1
  83. package/lib/commonjs/classes/HMSSimulcastSettings.js.map +1 -1
  84. package/lib/commonjs/classes/HMSSpeaker.js.map +1 -1
  85. package/lib/commonjs/classes/HMSSpeakerUpdate.js.map +1 -1
  86. package/lib/commonjs/classes/HMSSubscribeSettings.js.map +1 -1
  87. package/lib/commonjs/classes/HMSTrack.js.map +1 -1
  88. package/lib/commonjs/classes/HMSTrackSettings.js.map +1 -1
  89. package/lib/commonjs/classes/HMSTrackSource.js +15 -0
  90. package/lib/commonjs/classes/HMSTrackSource.js.map +1 -0
  91. package/lib/commonjs/classes/HMSTrackType.js.map +1 -1
  92. package/lib/commonjs/classes/HMSTrackUpdate.js.map +1 -1
  93. package/lib/commonjs/classes/HMSUpdateListenerActions.js.map +1 -1
  94. package/lib/commonjs/classes/HMSVideoCodec.js.map +1 -1
  95. package/lib/commonjs/classes/HMSVideoResolution.js.map +1 -1
  96. package/lib/commonjs/classes/HMSVideoSettings.js.map +1 -1
  97. package/lib/commonjs/classes/HMSVideoTrack.js.map +1 -1
  98. package/lib/commonjs/classes/HMSVideoTrackSettings.js.map +1 -1
  99. package/lib/commonjs/classes/HMSVideoViewMode.js.map +1 -1
  100. package/lib/commonjs/classes/HmsView.js +69 -17
  101. package/lib/commonjs/classes/HmsView.js.map +1 -1
  102. package/lib/commonjs/index.js +14 -14
  103. package/lib/commonjs/index.js.map +1 -1
  104. package/lib/module/classes/HMSAudioCodec.js.map +1 -1
  105. package/lib/module/classes/HMSAudioSettings.js.map +1 -1
  106. package/lib/module/classes/HMSAudioTrack.js.map +1 -1
  107. package/lib/module/classes/HMSAudioTrackSettings.js.map +1 -1
  108. package/lib/module/classes/HMSBrowserRecordingState.js.map +1 -1
  109. package/lib/module/classes/HMSCameraFacing.js.map +1 -1
  110. package/lib/module/classes/HMSChangeTrackStateRequest.js.map +1 -1
  111. package/lib/module/classes/HMSConfig.js.map +1 -1
  112. package/lib/module/classes/HMSEncoder.js +6 -1
  113. package/lib/module/classes/HMSEncoder.js.map +1 -1
  114. package/lib/module/classes/HMSException.js.map +1 -1
  115. package/lib/module/classes/HMSHLSConfig.js.map +1 -1
  116. package/lib/module/classes/HMSHLSMeetingURLVariant.js.map +1 -1
  117. package/lib/module/classes/HMSHLSRecordingConfig.js.map +1 -1
  118. package/lib/module/classes/HMSHLSRecordingState.js.map +1 -1
  119. package/lib/module/classes/HMSHLSStreamingState.js.map +1 -1
  120. package/lib/module/classes/HMSHLSVariant.js.map +1 -1
  121. package/lib/module/classes/HMSHelper.js.map +1 -1
  122. package/lib/module/classes/HMSLocalAudioStats.js.map +1 -1
  123. package/lib/module/classes/HMSLocalAudioTrack.js +6 -6
  124. package/lib/module/classes/HMSLocalAudioTrack.js.map +1 -1
  125. package/lib/module/classes/HMSLocalPeer.js.map +1 -1
  126. package/lib/module/classes/HMSLocalVideoStats.js.map +1 -1
  127. package/lib/module/classes/HMSLocalVideoTrack.js +6 -6
  128. package/lib/module/classes/HMSLocalVideoTrack.js.map +1 -1
  129. package/lib/module/classes/HMSLogLevel.js.map +1 -1
  130. package/lib/module/classes/HMSLogger.js +10 -0
  131. package/lib/module/classes/HMSLogger.js.map +1 -1
  132. package/lib/module/classes/HMSMessage.js +1 -1
  133. package/lib/module/classes/HMSMessage.js.map +1 -1
  134. package/lib/module/classes/HMSMessageRecipient.js.map +1 -1
  135. package/lib/module/classes/HMSMessageRecipientType.js.map +1 -1
  136. package/lib/module/classes/HMSNetworkQuality.js.map +1 -1
  137. package/lib/module/classes/HMSPeer.js.map +1 -1
  138. package/lib/module/classes/HMSPeerUpdate.js.map +1 -1
  139. package/lib/module/classes/HMSPermissions.js.map +1 -1
  140. package/lib/module/classes/HMSPublishSettings.js.map +1 -1
  141. package/lib/module/classes/HMSRTCStats.js.map +1 -1
  142. package/lib/module/classes/HMSRTCStatsReport.js.map +1 -1
  143. package/lib/module/classes/HMSRTMPConfig.js.map +1 -1
  144. package/lib/module/classes/HMSRemoteAudioStats.js.map +1 -1
  145. package/lib/module/classes/HMSRemoteAudioTrack.js +6 -6
  146. package/lib/module/classes/HMSRemoteAudioTrack.js.map +1 -1
  147. package/lib/module/classes/HMSRemotePeer.js.map +1 -1
  148. package/lib/module/classes/HMSRemoteVideoStats.js.map +1 -1
  149. package/lib/module/classes/HMSRemoteVideoTrack.js +6 -6
  150. package/lib/module/classes/HMSRemoteVideoTrack.js.map +1 -1
  151. package/lib/module/classes/HMSRole.js.map +1 -1
  152. package/lib/module/classes/HMSRoleChangeRequest.js.map +1 -1
  153. package/lib/module/classes/HMSRoom.js +3 -0
  154. package/lib/module/classes/HMSRoom.js.map +1 -1
  155. package/lib/module/classes/HMSRoomUpdate.js +1 -3
  156. package/lib/module/classes/HMSRoomUpdate.js.map +1 -1
  157. package/lib/module/classes/HMSRtmpStreamingState.js.map +1 -1
  158. package/lib/module/classes/HMSSDK.js +118 -235
  159. package/lib/module/classes/HMSSDK.js.map +1 -1
  160. package/lib/module/classes/HMSServerRecordingState.js.map +1 -1
  161. package/lib/module/classes/HMSSimulcastLayerSettings.js.map +1 -1
  162. package/lib/module/classes/HMSSimulcastSettings.js.map +1 -1
  163. package/lib/module/classes/HMSSpeaker.js.map +1 -1
  164. package/lib/module/classes/HMSSpeakerUpdate.js.map +1 -1
  165. package/lib/module/classes/HMSSubscribeSettings.js.map +1 -1
  166. package/lib/module/classes/HMSTrack.js.map +1 -1
  167. package/lib/module/classes/HMSTrackSettings.js.map +1 -1
  168. package/lib/module/classes/HMSTrackSource.js +8 -0
  169. package/lib/module/classes/HMSTrackSource.js.map +1 -0
  170. package/lib/module/classes/HMSTrackType.js.map +1 -1
  171. package/lib/module/classes/HMSTrackUpdate.js.map +1 -1
  172. package/lib/module/classes/HMSUpdateListenerActions.js.map +1 -1
  173. package/lib/module/classes/HMSVideoCodec.js.map +1 -1
  174. package/lib/module/classes/HMSVideoResolution.js.map +1 -1
  175. package/lib/module/classes/HMSVideoSettings.js.map +1 -1
  176. package/lib/module/classes/HMSVideoTrack.js.map +1 -1
  177. package/lib/module/classes/HMSVideoTrackSettings.js.map +1 -1
  178. package/lib/module/classes/HMSVideoViewMode.js.map +1 -1
  179. package/lib/module/classes/HmsView.js +67 -17
  180. package/lib/module/classes/HmsView.js.map +1 -1
  181. package/lib/module/index.js +1 -1
  182. package/lib/module/index.js.map +1 -1
  183. package/lib/typescript/classes/HMSBrowserRecordingState.d.ts +2 -2
  184. package/lib/typescript/classes/HMSEncoder.d.ts +5 -1
  185. package/lib/typescript/classes/HMSLogger.d.ts +3 -0
  186. package/lib/typescript/classes/HMSRoom.d.ts +2 -0
  187. package/lib/typescript/classes/HMSRoomUpdate.d.ts +1 -3
  188. package/lib/typescript/classes/HMSRtmpStreamingState.d.ts +2 -2
  189. package/lib/typescript/classes/HMSSDK.d.ts +9 -11
  190. package/lib/typescript/classes/HMSServerRecordingState.d.ts +2 -2
  191. package/lib/typescript/classes/HMSTrackSource.d.ts +5 -0
  192. package/lib/typescript/classes/HmsView.d.ts +7 -7
  193. package/lib/typescript/index.d.ts +1 -1
  194. package/package.json +2 -2
  195. package/react-native-hms.podspec +2 -2
  196. package/src/classes/HMSBrowserRecordingState.ts +2 -2
  197. package/src/classes/HMSEncoder.ts +6 -9
  198. package/src/classes/HMSLocalAudioTrack.ts +6 -6
  199. package/src/classes/HMSLocalVideoTrack.ts +6 -6
  200. package/src/classes/HMSLogger.ts +11 -0
  201. package/src/classes/HMSMessage.ts +1 -1
  202. package/src/classes/HMSRemoteAudioTrack.ts +6 -6
  203. package/src/classes/HMSRemoteVideoTrack.ts +6 -6
  204. package/src/classes/HMSRoom.ts +3 -0
  205. package/src/classes/HMSRoomUpdate.ts +1 -3
  206. package/src/classes/HMSRtmpStreamingState.ts +2 -2
  207. package/src/classes/HMSSDK.tsx +57 -63
  208. package/src/classes/HMSServerRecordingState.ts +2 -2
  209. package/src/classes/HMSTrackSource.ts +5 -0
  210. package/src/classes/HmsView.tsx +102 -44
  211. package/src/index.ts +1 -1
  212. package/android/src/main/java/com/reactnativehmssdk/HmssdkViewManager.kt +0 -54
@@ -1,5 +1,5 @@
1
1
  import { NativeModules } from 'react-native';
2
- import { HMSSDK } from './HMSSDK';
2
+ import { getLogger } from './HMSLogger';
3
3
  import type { HMSTrackType } from './HMSTrackType';
4
4
  import { HMSAudioTrack } from './HMSAudioTrack';
5
5
 
@@ -7,7 +7,7 @@ const {
7
7
  /**
8
8
  * @ignore
9
9
  */
10
- HmsManager,
10
+ HMSManager,
11
11
  } = NativeModules;
12
12
 
13
13
  export class HMSRemoteAudioTrack extends HMSAudioTrack {
@@ -18,7 +18,7 @@ export class HMSRemoteAudioTrack extends HMSAudioTrack {
18
18
  * @memberof HMSRemoteAudioTrack
19
19
  */
20
20
  setPlaybackAllowed(playbackAllowed: boolean) {
21
- const logger = HMSSDK.getLogger();
21
+ const logger = getLogger();
22
22
  logger?.verbose('#Function setPlaybackAllowed', {
23
23
  trackId: this.trackId,
24
24
  id: this.id,
@@ -26,7 +26,7 @@ export class HMSRemoteAudioTrack extends HMSAudioTrack {
26
26
  type: this.type,
27
27
  playbackAllowed,
28
28
  });
29
- HmsManager.setPlaybackAllowed({
29
+ HMSManager.setPlaybackAllowed({
30
30
  id: this.id,
31
31
  trackId: this.trackId,
32
32
  playbackAllowed,
@@ -35,14 +35,14 @@ export class HMSRemoteAudioTrack extends HMSAudioTrack {
35
35
 
36
36
  isPlaybackAllowed = async () => {
37
37
  try {
38
- const logger = HMSSDK.getLogger();
38
+ const logger = getLogger();
39
39
  logger?.verbose('#Function isPlaybackAllowed', {
40
40
  trackId: this.trackId,
41
41
  id: this.id,
42
42
  source: this.source,
43
43
  type: this.type,
44
44
  });
45
- const val = await HmsManager.isPlaybackAllowed({
45
+ const val = await HMSManager.isPlaybackAllowed({
46
46
  id: this.id,
47
47
  trackId: this.trackId,
48
48
  });
@@ -1,5 +1,5 @@
1
1
  import { NativeModules } from 'react-native';
2
- import { HMSSDK } from './HMSSDK';
2
+ import { getLogger } from './HMSLogger';
3
3
  import { HMSVideoTrack } from './HMSVideoTrack';
4
4
  import type { HMSTrackType } from './HMSTrackType';
5
5
 
@@ -7,7 +7,7 @@ const {
7
7
  /**
8
8
  * @ignore
9
9
  */
10
- HmsManager,
10
+ HMSManager,
11
11
  } = NativeModules;
12
12
 
13
13
  export class HMSRemoteVideoTrack extends HMSVideoTrack {
@@ -20,7 +20,7 @@ export class HMSRemoteVideoTrack extends HMSVideoTrack {
20
20
  * @memberof HMSRemoteVideoTrack
21
21
  */
22
22
  setPlaybackAllowed(playbackAllowed: boolean) {
23
- const logger = HMSSDK.getLogger();
23
+ const logger = getLogger();
24
24
  logger?.verbose('#Function setPlaybackAllowed', {
25
25
  trackId: this.trackId,
26
26
  id: this.id,
@@ -28,7 +28,7 @@ export class HMSRemoteVideoTrack extends HMSVideoTrack {
28
28
  type: this.type,
29
29
  playbackAllowed,
30
30
  });
31
- HmsManager.setPlaybackAllowed({
31
+ HMSManager.setPlaybackAllowed({
32
32
  id: this.id,
33
33
  trackId: this.trackId,
34
34
  playbackAllowed,
@@ -37,14 +37,14 @@ export class HMSRemoteVideoTrack extends HMSVideoTrack {
37
37
 
38
38
  isPlaybackAllowed = async () => {
39
39
  try {
40
- const logger = HMSSDK.getLogger();
40
+ const logger = getLogger();
41
41
  logger?.verbose('#Function isPlaybackAllowed', {
42
42
  trackId: this.trackId,
43
43
  id: this.id,
44
44
  source: this.source,
45
45
  type: this.type,
46
46
  });
47
- const val = await HmsManager.isPlaybackAllowed({
47
+ const val = await HMSManager.isPlaybackAllowed({
48
48
  id: this.id,
49
49
  trackId: this.trackId,
50
50
  });
@@ -7,6 +7,7 @@ import type { HMSHLSRecordingState } from './HMSHLSRecordingState';
7
7
 
8
8
  export class HMSRoom {
9
9
  id: string;
10
+ sessionId: string;
10
11
  name: string;
11
12
  metaData?: string;
12
13
  peers: HMSPeer[];
@@ -19,6 +20,7 @@ export class HMSRoom {
19
20
 
20
21
  constructor(params: {
21
22
  id: string;
23
+ sessionId: string;
22
24
  name: string;
23
25
  metaData?: string;
24
26
  peers: HMSPeer[];
@@ -30,6 +32,7 @@ export class HMSRoom {
30
32
  peerCount: number;
31
33
  }) {
32
34
  this.id = params.id;
35
+ this.sessionId = params.sessionId;
33
36
  this.name = params.name;
34
37
  this.metaData = params.metaData;
35
38
  this.peers = params.peers;
@@ -1,11 +1,9 @@
1
1
  export enum HMSRoomUpdate {
2
2
  ROOM_MUTED = 'ROOM_MUTED',
3
3
  ROOM_UNMUTED = 'ROOM_UNMUTED',
4
- ROOM_TYPE_CHANGED = 'ROOM_TYPE_CHANGED',
5
- META_DATA_CHANGED = 'META_DATA_CHANGED',
6
4
  SERVER_RECORDING_STATE_UPDATED = 'SERVER_RECORDING_STATE_UPDATED',
7
5
  RTMP_STREAMING_STATE_UPDATED = 'RTMP_STREAMING_STATE_UPDATED',
8
6
  BROWSER_RECORDING_STATE_UPDATED = 'BROWSER_RECORDING_STATE_UPDATED',
9
7
  HLS_STREAMING_STATE_UPDATED = 'HLS_STREAMING_STATE_UPDATED',
10
- ROOM_ID_UPDATED = 'ROOM_ID_UPDATED',
8
+ HLS_RECORDING_STATE_UPDATED = 'HLS_RECORDING_STATE_UPDATED',
11
9
  }
@@ -2,13 +2,13 @@ import type { HMSException } from './HMSException';
2
2
 
3
3
  export class HMSRtmpStreamingState {
4
4
  running: string;
5
- error: HMSException;
5
+ error?: HMSException;
6
6
  startedAt: Date;
7
7
  stoppedAt: Date;
8
8
 
9
9
  constructor(params: {
10
10
  running: string;
11
- error: HMSException;
11
+ error?: HMSException;
12
12
  startedAt: Date;
13
13
  stoppedAt: Date;
14
14
  }) {
@@ -7,50 +7,48 @@ import {
7
7
  AppState,
8
8
  } from 'react-native';
9
9
  import { HMSUpdateListenerActions } from './HMSUpdateListenerActions';
10
+ import { HMSEncoder } from './HMSEncoder';
11
+ import { HMSMessage } from './HMSMessage';
12
+ import { HMSHelper } from './HMSHelper';
13
+ import { HmsViewComponent } from './HmsView';
14
+ import { HMSLocalAudioStats } from './HMSLocalAudioStats';
15
+ import { HMSLocalVideoStats } from './HMSLocalVideoStats';
16
+ import { HMSRemoteVideoStats } from './HMSRemoteVideoStats';
17
+ import { HMSRemoteAudioStats } from './HMSRemoteAudioStats';
18
+ import { logger, getLogger, setLogger } from './HMSLogger';
10
19
  import type { HMSConfig } from './HMSConfig';
11
20
  import type { HMSLocalPeer } from './HMSLocalPeer';
12
21
  import type { HMSRemotePeer } from './HMSRemotePeer';
13
22
  import type { HMSRoom } from './HMSRoom';
14
23
  import type { HMSRole } from './HMSRole';
15
- import { HMSEncoder } from './HMSEncoder';
16
- import { HMSMessage } from './HMSMessage';
17
- import { HMSHelper } from './HMSHelper';
18
24
  import type { HMSTrack } from './HMSTrack';
19
25
  import type { HMSTrackType } from './HMSTrackType';
20
26
  import type { HMSLogger } from './HMSLogger';
21
27
  import type { HMSPeer } from './HMSPeer';
22
- import { HmsView as HMSViewComponent } from './HmsView';
23
- import { HMSVideoViewMode } from './HMSVideoViewMode';
28
+ import type { HMSVideoViewMode } from './HMSVideoViewMode';
24
29
  import type { HMSTrackSettings } from './HMSTrackSettings';
25
30
  import type { HMSRTMPConfig } from './HMSRTMPConfig';
26
31
  import type { HMSHLSConfig } from './HMSHLSConfig';
27
- import { HMSLocalAudioStats } from './HMSLocalAudioStats';
28
- import { HMSLocalVideoStats } from './HMSLocalVideoStats';
29
- import { HMSRemoteVideoStats } from './HMSRemoteVideoStats';
30
- import { HMSRemoteAudioStats } from './HMSRemoteAudioStats';
31
32
 
32
- interface HmsComponentProps {
33
+ interface HmsViewProps {
33
34
  trackId: string;
34
- sink: boolean;
35
- style: ViewStyle;
35
+ style?: ViewStyle;
36
36
  mirror?: boolean;
37
- scaleType: HMSVideoViewMode;
38
- id?: string | null;
37
+ scaleType?: HMSVideoViewMode;
38
+ setZOrderMediaOverlay?: boolean;
39
39
  }
40
40
 
41
41
  const {
42
42
  /**
43
43
  * @ignore
44
44
  */
45
- HmsManager,
45
+ HMSManager,
46
46
  } = NativeModules;
47
47
 
48
- const HmsEventEmitter = new NativeEventEmitter(HmsManager);
48
+ const HmsEventEmitter = new NativeEventEmitter(HMSManager);
49
49
 
50
50
  let HmsSdk: HMSSDK | undefined;
51
51
 
52
- let logger: HMSLogger | undefined;
53
-
54
52
  export class HMSSDK {
55
53
  room?: HMSRoom;
56
54
  localPeer?: HMSLocalPeer;
@@ -92,7 +90,7 @@ export class HMSSDK {
92
90
  * @memberof HMSSDK
93
91
  */
94
92
  static async build(params?: { trackSettings: HMSTrackSettings }) {
95
- let id = await HmsManager.build(params?.trackSettings || {});
93
+ let id = await HMSManager.build(params?.trackSettings || {});
96
94
  HmsSdk = new HMSSDK(id);
97
95
  HmsSdk.attachPreviewListener();
98
96
  HmsSdk.attachListeners();
@@ -105,7 +103,7 @@ export class HMSSDK {
105
103
  * @memberof HMSSDK
106
104
  */
107
105
  static getLogger() {
108
- return logger;
106
+ return getLogger();
109
107
  }
110
108
 
111
109
  /**
@@ -114,8 +112,7 @@ export class HMSSDK {
114
112
  * @memberof HMSSDK
115
113
  */
116
114
  setLogger = (hmsLogger: HMSLogger) => {
117
- logger = hmsLogger;
118
- hmsLogger.verbose('#Function setLogger', { id: this.id });
115
+ setLogger(hmsLogger, this.id);
119
116
  };
120
117
 
121
118
  /**
@@ -123,8 +120,10 @@ export class HMSSDK {
123
120
  *
124
121
  * @memberof HMSSDK
125
122
  */
126
- destroy = () => {
123
+ destroy = async () => {
124
+ logger?.verbose('#Function destroy', { id: this.id });
127
125
  this.removeListeners();
126
+ return await HMSManager.destroy({ id: this.id });
128
127
  };
129
128
 
130
129
  /**
@@ -336,7 +335,7 @@ export class HMSSDK {
336
335
  join = async (config: HMSConfig) => {
337
336
  logger?.verbose('#Function join', { config, id: this.id });
338
337
  this.addAppStateListener();
339
- await HmsManager.join({ ...config, id: this.id });
338
+ await HMSManager.join({ ...config, id: this.id });
340
339
  };
341
340
 
342
341
  /**
@@ -350,7 +349,7 @@ export class HMSSDK {
350
349
  */
351
350
  preview = (config: HMSConfig) => {
352
351
  logger?.verbose('#Function preview', { config, id: this.id });
353
- HmsManager.preview({ ...config, id: this.id });
352
+ HMSManager.preview({ ...config, id: this.id });
354
353
  };
355
354
 
356
355
  /**
@@ -370,7 +369,7 @@ export class HMSSDK {
370
369
  id: this.id,
371
370
  });
372
371
  if (Platform.OS === 'ios') {
373
- return await HmsManager.previewForRole({ role: role?.name, id: this.id });
372
+ return await HMSManager.previewForRole({ role: role?.name, id: this.id });
374
373
  } else {
375
374
  console.log('API currently not available for android');
376
375
  return 'API currently not available for android';
@@ -380,7 +379,6 @@ export class HMSSDK {
380
379
  /**
381
380
  * - HmsView is react component that takes one track and starts showing that track on a tile.
382
381
  * - The appearance of tile is completely customizable with style prop.
383
- * - setting sink true or false for a video tile will add or remove sink for a video.
384
382
  * - scale type can determine how the incoming video will fit in the canvas check {@link HMSVideoViewMode} for more information.
385
383
  *
386
384
  * checkout {@link https://www.100ms.live/docs/react-native/v2/features/render-video} for more info
@@ -388,24 +386,20 @@ export class HMSSDK {
388
386
  * @param {HmsComponentProps}
389
387
  * @memberof HMSSDK
390
388
  */
391
- HmsView = ({
392
- sink,
393
- trackId,
394
- style,
395
- mirror,
396
- scaleType = HMSVideoViewMode.ASPECT_FIT,
397
- }: HmsComponentProps) => {
389
+ HmsView = React.forwardRef<any, HmsViewProps>((props, ref) => {
390
+ const { trackId, style, mirror, scaleType, setZOrderMediaOverlay } = props;
398
391
  return (
399
- <HMSViewComponent
400
- sink={sink}
392
+ <HmsViewComponent
393
+ ref={ref}
401
394
  trackId={trackId}
402
395
  style={style}
396
+ setZOrderMediaOverlay={setZOrderMediaOverlay}
403
397
  mirror={mirror}
404
398
  scaleType={scaleType}
405
399
  id={this.id}
406
400
  />
407
401
  );
408
- };
402
+ });
409
403
 
410
404
  /**
411
405
  * Calls leave function of native sdk and session of current user is invalidated.
@@ -420,7 +414,7 @@ export class HMSSDK {
420
414
  id: this.id,
421
415
  };
422
416
 
423
- const op = await HmsManager.leave(data);
417
+ const op = await HMSManager.leave(data);
424
418
  this.muteStatus = undefined;
425
419
  this.localPeer = undefined;
426
420
  this.remotePeers = undefined;
@@ -444,7 +438,7 @@ export class HMSSDK {
444
438
  type: type || null,
445
439
  id: this.id,
446
440
  });
447
- return await HmsManager.sendBroadcastMessage({
441
+ return await HMSManager.sendBroadcastMessage({
448
442
  message,
449
443
  type: type || null,
450
444
  id: this.id,
@@ -470,7 +464,7 @@ export class HMSSDK {
470
464
  id: this.id,
471
465
  type: type || null,
472
466
  });
473
- return await HmsManager.sendGroupMessage({
467
+ return await HMSManager.sendGroupMessage({
474
468
  message,
475
469
  roles: HMSHelper.getRoleNames(roles),
476
470
  id: this.id,
@@ -497,7 +491,7 @@ export class HMSSDK {
497
491
  id: this.id,
498
492
  type: type || null,
499
493
  });
500
- return await HmsManager.sendDirectMessage({
494
+ return await HMSManager.sendDirectMessage({
501
495
  message,
502
496
  peerId: peer.peerID,
503
497
  id: this.id,
@@ -519,7 +513,7 @@ export class HMSSDK {
519
513
  */
520
514
  changeMetadata = (metadata: string) => {
521
515
  logger?.verbose('#Function changeMetadata', { metadata, id: this.id });
522
- HmsManager.changeMetadata({ metadata, id: this.id });
516
+ HMSManager.changeMetadata({ metadata, id: this.id });
523
517
  };
524
518
 
525
519
  /**
@@ -537,7 +531,7 @@ export class HMSSDK {
537
531
  id: this.id,
538
532
  });
539
533
 
540
- const op = await HmsManager.startRTMPOrRecording({ ...data, id: this.id });
534
+ const op = await HMSManager.startRTMPOrRecording({ ...data, id: this.id });
541
535
  return op;
542
536
  };
543
537
 
@@ -551,7 +545,7 @@ export class HMSSDK {
551
545
  */
552
546
  stopRtmpAndRecording = async () => {
553
547
  logger?.verbose('#Function stopRtmpAndRecording', {});
554
- const op = await HmsManager.stopRtmpAndRecording({ id: this.id });
548
+ const op = await HMSManager.stopRtmpAndRecording({ id: this.id });
555
549
  return op;
556
550
  };
557
551
 
@@ -569,7 +563,7 @@ export class HMSSDK {
569
563
  ...data,
570
564
  id: this.id,
571
565
  });
572
- return await HmsManager.startHLSStreaming({ ...data, id: this.id });
566
+ return await HMSManager.startHLSStreaming({ ...data, id: this.id });
573
567
  };
574
568
 
575
569
  /**
@@ -582,7 +576,7 @@ export class HMSSDK {
582
576
  */
583
577
  stopHLSStreaming = async () => {
584
578
  logger?.verbose('#Function stopHLSStreaming', {});
585
- return await HmsManager.stopHLSStreaming({ id: this.id });
579
+ return await HMSManager.stopHLSStreaming({ id: this.id });
586
580
  };
587
581
 
588
582
  /**
@@ -607,7 +601,7 @@ export class HMSSDK {
607
601
  id: this.id,
608
602
  };
609
603
  logger?.verbose('#Function changeRole', data);
610
- return await HmsManager.changeRole(data);
604
+ return await HMSManager.changeRole(data);
611
605
  };
612
606
 
613
607
  /**
@@ -631,7 +625,7 @@ export class HMSSDK {
631
625
  id: this.id,
632
626
  };
633
627
 
634
- return await HmsManager.changeTrackState(data);
628
+ return await HMSManager.changeTrackState(data);
635
629
  };
636
630
 
637
631
  /**
@@ -667,7 +661,7 @@ export class HMSSDK {
667
661
  id: this.id,
668
662
  };
669
663
 
670
- return await HmsManager.changeTrackStateForRoles(data);
664
+ return await HMSManager.changeTrackStateForRoles(data);
671
665
  };
672
666
 
673
667
  /**
@@ -690,7 +684,7 @@ export class HMSSDK {
690
684
  id: this.id,
691
685
  };
692
686
 
693
- return await HmsManager.removePeer(data);
687
+ return await HMSManager.removePeer(data);
694
688
  };
695
689
 
696
690
  /**
@@ -710,7 +704,7 @@ export class HMSSDK {
710
704
  id: this.id,
711
705
  };
712
706
 
713
- return await HmsManager.endRoom(data);
707
+ return await HMSManager.endRoom(data);
714
708
  };
715
709
 
716
710
  /**
@@ -727,7 +721,7 @@ export class HMSSDK {
727
721
  id: this.id,
728
722
  };
729
723
 
730
- return await HmsManager.changeName(data);
724
+ return await HMSManager.changeName(data);
731
725
  };
732
726
 
733
727
  /**
@@ -739,7 +733,7 @@ export class HMSSDK {
739
733
  */
740
734
  acceptRoleChange = async () => {
741
735
  logger?.verbose('#Function acceptRoleChange', { id: this.id });
742
- return await HmsManager.acceptRoleChange({ id: this.id });
736
+ return await HMSManager.acceptRoleChange({ id: this.id });
743
737
  };
744
738
 
745
739
  /**
@@ -753,7 +747,7 @@ export class HMSSDK {
753
747
  setPlaybackForAllAudio = (mute: boolean) => {
754
748
  logger?.verbose('#Function setPlaybackForAllAudio', { mute, id: this.id });
755
749
  this.muteStatus = mute;
756
- HmsManager.setPlaybackForAllAudio({ mute, id: this.id });
750
+ HMSManager.setPlaybackForAllAudio({ mute, id: this.id });
757
751
  };
758
752
 
759
753
  /**
@@ -763,7 +757,7 @@ export class HMSSDK {
763
757
  */
764
758
  remoteMuteAllAudio = () => {
765
759
  logger?.verbose('#Function remoteMuteAllAudio', { id: this.id });
766
- HmsManager.remoteMuteAllAudio({ id: this.id });
760
+ HMSManager.remoteMuteAllAudio({ id: this.id });
767
761
  };
768
762
 
769
763
  /**
@@ -780,7 +774,7 @@ export class HMSSDK {
780
774
  roomID: this.room?.id,
781
775
  id: this.id,
782
776
  });
783
- const hmsRoom = await HmsManager.getRoom({ id: this.id });
777
+ const hmsRoom = await HMSManager.getRoom({ id: this.id });
784
778
 
785
779
  const encodedHmsRoom = HMSEncoder.encodeHmsRoom(hmsRoom, this.id);
786
780
  return encodedHmsRoom;
@@ -799,7 +793,7 @@ export class HMSSDK {
799
793
  volume,
800
794
  id: this.id,
801
795
  });
802
- HmsManager.setVolume({
796
+ HMSManager.setVolume({
803
797
  id: this.id,
804
798
  trackId: track.trackId,
805
799
  volume,
@@ -808,7 +802,7 @@ export class HMSSDK {
808
802
 
809
803
  resetVolume = () => {
810
804
  logger?.verbose('#Function resetVolume', { id: this.id });
811
- if (Platform.OS === 'android') HmsManager.resetVolume({ id: this.id });
805
+ if (Platform.OS === 'android') HMSManager.resetVolume({ id: this.id });
812
806
  };
813
807
 
814
808
  /**
@@ -840,7 +834,7 @@ export class HMSSDK {
840
834
  startScreenshare = async () => {
841
835
  logger?.verbose('#Function startScreenshare', { id: this.id });
842
836
  if (Platform.OS === 'android') {
843
- return await HmsManager.startScreenshare({ id: this.id });
837
+ return await HMSManager.startScreenshare({ id: this.id });
844
838
  } else {
845
839
  console.log('API currently not available for iOS');
846
840
  return 'API currently not available for iOS';
@@ -857,7 +851,7 @@ export class HMSSDK {
857
851
  isScreenShared = async () => {
858
852
  logger?.verbose('#Function isScreenShared', { id: this.id });
859
853
  if (Platform.OS === 'android') {
860
- return await HmsManager.isScreenShared({ id: this.id });
854
+ return await HMSManager.isScreenShared({ id: this.id });
861
855
  } else {
862
856
  console.log('API currently not available for iOS');
863
857
  return 'API currently not available for iOS';
@@ -874,7 +868,7 @@ export class HMSSDK {
874
868
  stopScreenshare = async () => {
875
869
  logger?.verbose('#Function stopScreenshare', { id: this.id });
876
870
  if (Platform.OS === 'android') {
877
- return await HmsManager.stopScreenshare({ id: this.id });
871
+ return await HMSManager.stopScreenshare({ id: this.id });
878
872
  } else {
879
873
  console.log('API currently not available for iOS');
880
874
  return 'API currently not available for iOS';
@@ -896,7 +890,7 @@ export class HMSSDK {
896
890
  enableRTCStats = () => {
897
891
  logger?.verbose('#Function enableRTCStats', { id: this.id });
898
892
  if (Platform.OS === 'ios') {
899
- HmsManager.enableRTCStats({ id: this.id });
893
+ HMSManager.enableRTCStats({ id: this.id });
900
894
  } else {
901
895
  console.log('API currently not avaialble for android');
902
896
  }
@@ -913,7 +907,7 @@ export class HMSSDK {
913
907
  disableRTCStats = () => {
914
908
  logger?.verbose('#Function disableRTCStats', { id: this.id });
915
909
  if (Platform.OS === 'ios') {
916
- HmsManager.disableRTCStats({ id: this.id });
910
+ HMSManager.disableRTCStats({ id: this.id });
917
911
  } else {
918
912
  console.log('API currently not avaialble for android');
919
913
  }
@@ -2,12 +2,12 @@ import type { HMSException } from './HMSException';
2
2
 
3
3
  export class HMSServerRecordingState {
4
4
  running: string;
5
- error: HMSException;
5
+ error?: HMSException;
6
6
  startedAt: Date;
7
7
 
8
8
  constructor(params: {
9
9
  running: string;
10
- error: HMSException;
10
+ error?: HMSException;
11
11
  startedAt: Date;
12
12
  }) {
13
13
  this.running = params.running;
@@ -0,0 +1,5 @@
1
+ export enum HMSTrackSource {
2
+ PLUGIN = 'plugin',
3
+ REGULAR = 'regular',
4
+ SCREEN = 'screen',
5
+ }