@100mslive/react-native-hms 0.9.0 → 0.9.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.
- package/README.md +10 -2
- package/android/.idea/gradle.xml +13 -0
- package/android/.idea/misc.xml +9 -0
- package/android/.idea/modules/android.iml +18 -0
- package/android/.idea/modules.xml +8 -0
- package/android/.idea/sonarlint/issuestore/f/0/f07866736216be0ee2aba49e392191aeae700a35 +0 -0
- package/android/.idea/sonarlint/issuestore/index.pb +3 -0
- package/android/.idea/vcs.xml +6 -0
- package/android/build.gradle +2 -2
- package/android/local.properties +8 -0
- package/android/src/main/java/com/reactnativehmssdk/HmsDecoder.kt +31 -4
- package/android/src/main/java/com/reactnativehmssdk/HmsHelper.kt +16 -64
- package/android/src/main/java/com/reactnativehmssdk/HmsModule.kt +17 -3
- package/android/src/main/java/com/reactnativehmssdk/HmsSDK.kt +97 -32
- package/android/src/main/java/com/reactnativehmssdk/HmsView.kt +1 -1
- package/ios/HmsDecoder.swift +173 -135
- package/ios/HmsHelper.swift +38 -41
- package/ios/HmsManager.m +7 -1
- package/ios/HmsManager.swift +111 -68
- package/ios/HmsSDK.swift +335 -199
- package/ios/HmsView.swift +45 -31
- package/ios/VideoCollectionViewCell.swift +4 -4
- package/lib/commonjs/classes/HMSBrowserRecordingState.js +6 -0
- package/lib/commonjs/classes/HMSBrowserRecordingState.js.map +1 -1
- package/lib/commonjs/classes/HMSEncoder.js +164 -4
- package/lib/commonjs/classes/HMSEncoder.js.map +1 -1
- package/lib/commonjs/classes/HMSHLSVariant.js.map +1 -1
- package/lib/commonjs/classes/HMSLocalAudioStats.js +26 -0
- package/lib/commonjs/classes/HMSLocalAudioStats.js.map +1 -0
- package/lib/commonjs/classes/HMSLocalVideoStats.js +32 -0
- package/lib/commonjs/classes/HMSLocalVideoStats.js.map +1 -0
- package/lib/commonjs/classes/HMSPeerUpdate.js +2 -0
- package/lib/commonjs/classes/HMSPeerUpdate.js.map +1 -1
- package/lib/commonjs/classes/HMSPermissions.js +2 -2
- package/lib/commonjs/classes/HMSPermissions.js.map +1 -1
- package/lib/commonjs/classes/HMSRTCStats.js +38 -0
- package/lib/commonjs/classes/HMSRTCStats.js.map +1 -0
- package/lib/commonjs/classes/HMSRTCStatsReport.js +26 -0
- package/lib/commonjs/classes/HMSRTCStatsReport.js.map +1 -0
- package/lib/commonjs/classes/HMSRemoteAudioStats.js +32 -0
- package/lib/commonjs/classes/HMSRemoteAudioStats.js.map +1 -0
- package/lib/commonjs/classes/HMSRemoteVideoStats.js +38 -0
- package/lib/commonjs/classes/HMSRemoteVideoStats.js.map +1 -0
- package/lib/commonjs/classes/HMSRoom.js +3 -0
- package/lib/commonjs/classes/HMSRoom.js.map +1 -1
- package/lib/commonjs/classes/HMSRoomUpdate.js +1 -0
- package/lib/commonjs/classes/HMSRoomUpdate.js.map +1 -1
- package/lib/commonjs/classes/HMSRtmpStreamingState.js +6 -0
- package/lib/commonjs/classes/HMSRtmpStreamingState.js.map +1 -1
- package/lib/commonjs/classes/HMSSDK.js +365 -111
- package/lib/commonjs/classes/HMSSDK.js.map +1 -1
- package/lib/commonjs/classes/HMSServerRecordingState.js +3 -0
- package/lib/commonjs/classes/HMSServerRecordingState.js.map +1 -1
- package/lib/commonjs/classes/HMSUpdateListenerActions.js +5 -0
- package/lib/commonjs/classes/HMSUpdateListenerActions.js.map +1 -1
- package/lib/commonjs/index.js +84 -0
- package/lib/commonjs/index.js.map +1 -1
- package/lib/module/classes/HMSBrowserRecordingState.js +6 -0
- package/lib/module/classes/HMSBrowserRecordingState.js.map +1 -1
- package/lib/module/classes/HMSEncoder.js +157 -4
- package/lib/module/classes/HMSEncoder.js.map +1 -1
- package/lib/module/classes/HMSHLSVariant.js.map +1 -1
- package/lib/module/classes/HMSLocalAudioStats.js +17 -0
- package/lib/module/classes/HMSLocalAudioStats.js.map +1 -0
- package/lib/module/classes/HMSLocalVideoStats.js +23 -0
- package/lib/module/classes/HMSLocalVideoStats.js.map +1 -0
- package/lib/module/classes/HMSPeerUpdate.js +2 -0
- package/lib/module/classes/HMSPeerUpdate.js.map +1 -1
- package/lib/module/classes/HMSPermissions.js +2 -2
- package/lib/module/classes/HMSPermissions.js.map +1 -1
- package/lib/module/classes/HMSRTCStats.js +29 -0
- package/lib/module/classes/HMSRTCStats.js.map +1 -0
- package/lib/module/classes/HMSRTCStatsReport.js +17 -0
- package/lib/module/classes/HMSRTCStatsReport.js.map +1 -0
- package/lib/module/classes/HMSRemoteAudioStats.js +23 -0
- package/lib/module/classes/HMSRemoteAudioStats.js.map +1 -0
- package/lib/module/classes/HMSRemoteVideoStats.js +29 -0
- package/lib/module/classes/HMSRemoteVideoStats.js.map +1 -0
- package/lib/module/classes/HMSRoom.js +3 -0
- package/lib/module/classes/HMSRoom.js.map +1 -1
- package/lib/module/classes/HMSRoomUpdate.js +1 -0
- package/lib/module/classes/HMSRoomUpdate.js.map +1 -1
- package/lib/module/classes/HMSRtmpStreamingState.js +6 -0
- package/lib/module/classes/HMSRtmpStreamingState.js.map +1 -1
- package/lib/module/classes/HMSSDK.js +352 -111
- package/lib/module/classes/HMSSDK.js.map +1 -1
- package/lib/module/classes/HMSServerRecordingState.js +3 -0
- package/lib/module/classes/HMSServerRecordingState.js.map +1 -1
- package/lib/module/classes/HMSUpdateListenerActions.js +5 -0
- package/lib/module/classes/HMSUpdateListenerActions.js.map +1 -1
- package/lib/module/index.js +6 -0
- package/lib/module/index.js.map +1 -1
- package/lib/typescript/classes/HMSBrowserRecordingState.d.ts +4 -0
- package/lib/typescript/classes/HMSEncoder.d.ts +21 -0
- package/lib/typescript/classes/HMSHLSVariant.d.ts +8 -8
- package/lib/typescript/classes/HMSLocalAudioStats.d.ts +10 -0
- package/lib/typescript/classes/HMSLocalVideoStats.d.ts +15 -0
- package/lib/typescript/classes/HMSPeerUpdate.d.ts +3 -1
- package/lib/typescript/classes/HMSPermissions.d.ts +2 -2
- package/lib/typescript/classes/HMSRTCStats.d.ts +18 -0
- package/lib/typescript/classes/HMSRTCStatsReport.d.ts +11 -0
- package/lib/typescript/classes/HMSRemoteAudioStats.d.ts +14 -0
- package/lib/typescript/classes/HMSRemoteVideoStats.d.ts +19 -0
- package/lib/typescript/classes/HMSRoom.d.ts +2 -0
- package/lib/typescript/classes/HMSRoomUpdate.d.ts +2 -1
- package/lib/typescript/classes/HMSRtmpStreamingState.d.ts +4 -0
- package/lib/typescript/classes/HMSSDK.d.ts +16 -1
- package/lib/typescript/classes/HMSServerRecordingState.d.ts +2 -0
- package/lib/typescript/classes/HMSUpdateListenerActions.d.ts +6 -1
- package/lib/typescript/index.d.ts +6 -0
- package/package.json +1 -1
- package/react-native-hms.podspec +1 -1
- package/src/classes/HMSBrowserRecordingState.ts +10 -1
- package/src/classes/HMSEncoder.ts +162 -4
- package/src/classes/HMSHLSVariant.ts +8 -8
- package/src/classes/HMSLocalAudioStats.ts +15 -0
- package/src/classes/HMSLocalVideoStats.ts +23 -0
- package/src/classes/HMSPeerUpdate.ts +2 -0
- package/src/classes/HMSPermissions.ts +3 -3
- package/src/classes/HMSRTCStats.ts +27 -0
- package/src/classes/HMSRTCStatsReport.ts +17 -0
- package/src/classes/HMSRemoteAudioStats.ts +21 -0
- package/src/classes/HMSRemoteVideoStats.ts +29 -0
- package/src/classes/HMSRoom.ts +3 -0
- package/src/classes/HMSRoomUpdate.ts +1 -0
- package/src/classes/HMSRtmpStreamingState.ts +10 -1
- package/src/classes/HMSSDK.tsx +233 -10
- package/src/classes/HMSServerRecordingState.ts +7 -1
- package/src/classes/HMSUpdateListenerActions.ts +5 -0
- package/src/index.ts +6 -0
package/src/classes/HMSSDK.tsx
CHANGED
|
@@ -24,6 +24,10 @@ import { HMSVideoViewMode } from './HMSVideoViewMode';
|
|
|
24
24
|
import type { HMSTrackSettings } from './HMSTrackSettings';
|
|
25
25
|
import type { HMSRTMPConfig } from './HMSRTMPConfig';
|
|
26
26
|
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';
|
|
27
31
|
|
|
28
32
|
interface HmsComponentProps {
|
|
29
33
|
trackId: string;
|
|
@@ -69,6 +73,11 @@ export class HMSSDK {
|
|
|
69
73
|
onRoleChangeRequestDelegate?: any;
|
|
70
74
|
onChangeTrackStateRequestDelegate?: any;
|
|
71
75
|
onRemovedFromRoomDelegate?: any;
|
|
76
|
+
onRtcStatsDelegate?: any;
|
|
77
|
+
onLocalAudioStatsDelegate?: any;
|
|
78
|
+
onLocalVideoStatsDelegate?: any;
|
|
79
|
+
onRemoteAudioStatsDelegate?: any;
|
|
80
|
+
onRemoteVideoStatsDelegate?: any;
|
|
72
81
|
|
|
73
82
|
constructor(id: string) {
|
|
74
83
|
this.id = id;
|
|
@@ -170,6 +179,31 @@ export class HMSSDK {
|
|
|
170
179
|
HMSUpdateListenerActions.ON_REMOVED_FROM_ROOM,
|
|
171
180
|
this.onRemovedFromRoomListener
|
|
172
181
|
);
|
|
182
|
+
|
|
183
|
+
HmsEventEmitter.addListener(
|
|
184
|
+
HMSUpdateListenerActions.ON_RTC_STATS,
|
|
185
|
+
this.RTCStatsListener
|
|
186
|
+
);
|
|
187
|
+
|
|
188
|
+
HmsEventEmitter.addListener(
|
|
189
|
+
HMSUpdateListenerActions.ON_LOCAL_AUDIO_STATS,
|
|
190
|
+
this.onLocalAudioStatsListener
|
|
191
|
+
);
|
|
192
|
+
|
|
193
|
+
HmsEventEmitter.addListener(
|
|
194
|
+
HMSUpdateListenerActions.ON_LOCAL_VIDEO_STATS,
|
|
195
|
+
this.onLocalVideoStatsListener
|
|
196
|
+
);
|
|
197
|
+
|
|
198
|
+
HmsEventEmitter.addListener(
|
|
199
|
+
HMSUpdateListenerActions.ON_REMOTE_AUDIO_STATS,
|
|
200
|
+
this.onRemoteAudioStatsListener
|
|
201
|
+
);
|
|
202
|
+
|
|
203
|
+
HmsEventEmitter.addListener(
|
|
204
|
+
HMSUpdateListenerActions.ON_REMOTE_VIDEO_STATS,
|
|
205
|
+
this.onRemoteVideoStatsListener
|
|
206
|
+
);
|
|
173
207
|
};
|
|
174
208
|
|
|
175
209
|
removeListeners = () => {
|
|
@@ -232,6 +266,31 @@ export class HMSSDK {
|
|
|
232
266
|
HMSUpdateListenerActions.ON_REMOVED_FROM_ROOM,
|
|
233
267
|
this.onRemovedFromRoomListener
|
|
234
268
|
);
|
|
269
|
+
|
|
270
|
+
HmsEventEmitter.removeListener(
|
|
271
|
+
HMSUpdateListenerActions.ON_RTC_STATS,
|
|
272
|
+
this.RTCStatsListener
|
|
273
|
+
);
|
|
274
|
+
|
|
275
|
+
HmsEventEmitter.removeListener(
|
|
276
|
+
HMSUpdateListenerActions.ON_LOCAL_AUDIO_STATS,
|
|
277
|
+
this.onLocalAudioStatsListener
|
|
278
|
+
);
|
|
279
|
+
|
|
280
|
+
HmsEventEmitter.removeListener(
|
|
281
|
+
HMSUpdateListenerActions.ON_LOCAL_VIDEO_STATS,
|
|
282
|
+
this.onLocalVideoStatsListener
|
|
283
|
+
);
|
|
284
|
+
|
|
285
|
+
HmsEventEmitter.removeListener(
|
|
286
|
+
HMSUpdateListenerActions.ON_REMOTE_AUDIO_STATS,
|
|
287
|
+
this.onRemoteAudioStatsListener
|
|
288
|
+
);
|
|
289
|
+
|
|
290
|
+
HmsEventEmitter.removeListener(
|
|
291
|
+
HMSUpdateListenerActions.ON_REMOTE_VIDEO_STATS,
|
|
292
|
+
this.onRemoteVideoStatsListener
|
|
293
|
+
);
|
|
235
294
|
};
|
|
236
295
|
|
|
237
296
|
/**
|
|
@@ -252,6 +311,19 @@ export class HMSSDK {
|
|
|
252
311
|
HmsManager.preview({ ...config, id: this.id });
|
|
253
312
|
};
|
|
254
313
|
|
|
314
|
+
previewForRole = async (role: HMSRole) => {
|
|
315
|
+
logger?.verbose('#Function previewForRole', {
|
|
316
|
+
role,
|
|
317
|
+
id: this.id,
|
|
318
|
+
});
|
|
319
|
+
if (Platform.OS === 'ios') {
|
|
320
|
+
return await HmsManager.previewForRole({ role: role?.name, id: this.id });
|
|
321
|
+
} else {
|
|
322
|
+
console.log('API currently not available for android');
|
|
323
|
+
return 'API currently not available for android';
|
|
324
|
+
}
|
|
325
|
+
};
|
|
326
|
+
|
|
255
327
|
HmsView = ({
|
|
256
328
|
sink,
|
|
257
329
|
trackId,
|
|
@@ -457,15 +529,30 @@ export class HMSSDK {
|
|
|
457
529
|
return await HmsManager.endRoom(data);
|
|
458
530
|
};
|
|
459
531
|
|
|
532
|
+
changeName = async (name: string) => {
|
|
533
|
+
logger?.verbose('#Function changeName', { name, id: this.id });
|
|
534
|
+
const data = {
|
|
535
|
+
name,
|
|
536
|
+
id: this.id,
|
|
537
|
+
};
|
|
538
|
+
|
|
539
|
+
return await HmsManager.changeName(data);
|
|
540
|
+
};
|
|
541
|
+
|
|
460
542
|
acceptRoleChange = async () => {
|
|
461
543
|
logger?.verbose('#Function acceptRoleChange', { id: this.id });
|
|
462
544
|
return await HmsManager.acceptRoleChange({ id: this.id });
|
|
463
545
|
};
|
|
464
546
|
|
|
465
|
-
|
|
466
|
-
logger?.verbose('#Function
|
|
547
|
+
setPlaybackForAllAudio = (mute: boolean) => {
|
|
548
|
+
logger?.verbose('#Function setPlaybackForAllAudio', { mute, id: this.id });
|
|
467
549
|
this.muteStatus = mute;
|
|
468
|
-
HmsManager.
|
|
550
|
+
HmsManager.setPlaybackForAllAudio({ mute, id: this.id });
|
|
551
|
+
};
|
|
552
|
+
|
|
553
|
+
remoteMuteAllAudio = () => {
|
|
554
|
+
logger?.verbose('#Function remoteMuteAllAudio', { id: this.id });
|
|
555
|
+
HmsManager.remoteMuteAllAudio({ id: this.id });
|
|
469
556
|
};
|
|
470
557
|
|
|
471
558
|
getRoom = async () => {
|
|
@@ -514,7 +601,7 @@ export class HMSSDK {
|
|
|
514
601
|
if (Platform.OS === 'android') {
|
|
515
602
|
HmsManager.startScreenshare({ id: this.id });
|
|
516
603
|
} else {
|
|
517
|
-
console.log('API currently not
|
|
604
|
+
console.log('API currently not available for iOS');
|
|
518
605
|
}
|
|
519
606
|
};
|
|
520
607
|
|
|
@@ -523,8 +610,8 @@ export class HMSSDK {
|
|
|
523
610
|
if (Platform.OS === 'android') {
|
|
524
611
|
return await HmsManager.isScreenShared({ id: this.id });
|
|
525
612
|
} else {
|
|
526
|
-
console.log('API currently not
|
|
527
|
-
return 'API currently not
|
|
613
|
+
console.log('API currently not available for iOS');
|
|
614
|
+
return 'API currently not available for iOS';
|
|
528
615
|
}
|
|
529
616
|
};
|
|
530
617
|
|
|
@@ -533,8 +620,26 @@ export class HMSSDK {
|
|
|
533
620
|
if (Platform.OS === 'android') {
|
|
534
621
|
return await HmsManager.stopScreenshare({ id: this.id });
|
|
535
622
|
} else {
|
|
536
|
-
console.log('API currently not
|
|
537
|
-
return 'API currently not
|
|
623
|
+
console.log('API currently not available for iOS');
|
|
624
|
+
return 'API currently not available for iOS';
|
|
625
|
+
}
|
|
626
|
+
};
|
|
627
|
+
|
|
628
|
+
enableRTCStats = () => {
|
|
629
|
+
logger?.verbose('#Function enableRTCStats', { id: this.id });
|
|
630
|
+
if (Platform.OS === 'ios') {
|
|
631
|
+
HmsManager.enableRTCStats({ id: this.id });
|
|
632
|
+
} else {
|
|
633
|
+
console.log('API currently not avaialble for android');
|
|
634
|
+
}
|
|
635
|
+
};
|
|
636
|
+
|
|
637
|
+
disableRTCStats = () => {
|
|
638
|
+
logger?.verbose('#Function disableRTCStats', { id: this.id });
|
|
639
|
+
if (Platform.OS === 'ios') {
|
|
640
|
+
HmsManager.disableRTCStats({ id: this.id });
|
|
641
|
+
} else {
|
|
642
|
+
console.log('API currently not avaialble for android');
|
|
538
643
|
}
|
|
539
644
|
};
|
|
540
645
|
|
|
@@ -591,6 +696,21 @@ export class HMSSDK {
|
|
|
591
696
|
case HMSUpdateListenerActions.ON_REMOVED_FROM_ROOM:
|
|
592
697
|
this.onRemovedFromRoomDelegate = callback;
|
|
593
698
|
break;
|
|
699
|
+
case HMSUpdateListenerActions.ON_RTC_STATS:
|
|
700
|
+
this.onRtcStatsDelegate = callback;
|
|
701
|
+
break;
|
|
702
|
+
case HMSUpdateListenerActions.ON_LOCAL_AUDIO_STATS:
|
|
703
|
+
this.onLocalAudioStatsDelegate = callback;
|
|
704
|
+
break;
|
|
705
|
+
case HMSUpdateListenerActions.ON_LOCAL_VIDEO_STATS:
|
|
706
|
+
this.onLocalVideoStatsDelegate = callback;
|
|
707
|
+
break;
|
|
708
|
+
case HMSUpdateListenerActions.ON_REMOTE_AUDIO_STATS:
|
|
709
|
+
this.onRemoteAudioStatsDelegate = callback;
|
|
710
|
+
break;
|
|
711
|
+
case HMSUpdateListenerActions.ON_REMOTE_VIDEO_STATS:
|
|
712
|
+
this.onRemoteVideoStatsDelegate = callback;
|
|
713
|
+
break;
|
|
594
714
|
default:
|
|
595
715
|
}
|
|
596
716
|
};
|
|
@@ -645,6 +765,21 @@ export class HMSSDK {
|
|
|
645
765
|
case HMSUpdateListenerActions.ON_REMOVED_FROM_ROOM:
|
|
646
766
|
this.onRemovedFromRoomDelegate = null;
|
|
647
767
|
break;
|
|
768
|
+
case HMSUpdateListenerActions.ON_RTC_STATS:
|
|
769
|
+
this.onRtcStatsDelegate = null;
|
|
770
|
+
break;
|
|
771
|
+
case HMSUpdateListenerActions.ON_LOCAL_AUDIO_STATS:
|
|
772
|
+
this.onLocalAudioStatsDelegate = null;
|
|
773
|
+
break;
|
|
774
|
+
case HMSUpdateListenerActions.ON_LOCAL_VIDEO_STATS:
|
|
775
|
+
this.onLocalVideoStatsDelegate = null;
|
|
776
|
+
break;
|
|
777
|
+
case HMSUpdateListenerActions.ON_REMOTE_AUDIO_STATS:
|
|
778
|
+
this.onRemoteAudioStatsDelegate = null;
|
|
779
|
+
break;
|
|
780
|
+
case HMSUpdateListenerActions.ON_REMOTE_VIDEO_STATS:
|
|
781
|
+
this.onRemoteVideoStatsDelegate = null;
|
|
782
|
+
break;
|
|
648
783
|
default:
|
|
649
784
|
}
|
|
650
785
|
};
|
|
@@ -799,7 +934,7 @@ export class HMSSDK {
|
|
|
799
934
|
this.id
|
|
800
935
|
);
|
|
801
936
|
if (this.muteStatus && data?.type === 'TRACK_ADDED') {
|
|
802
|
-
this.
|
|
937
|
+
this.setPlaybackForAllAudio(this.muteStatus);
|
|
803
938
|
}
|
|
804
939
|
this.room = room;
|
|
805
940
|
this.localPeer = localPeer;
|
|
@@ -836,7 +971,7 @@ export class HMSSDK {
|
|
|
836
971
|
logger?.verbose('#Listener ON_SPEAKER', data);
|
|
837
972
|
if (this.onSpeakerDelegate) {
|
|
838
973
|
logger?.verbose('#Listener ON_SPEAKER_LISTENER_CALL', data);
|
|
839
|
-
this.onSpeakerDelegate(data);
|
|
974
|
+
this.onSpeakerDelegate(HMSEncoder.encodeHmsSpeakerUpdate(data, this.id));
|
|
840
975
|
}
|
|
841
976
|
};
|
|
842
977
|
|
|
@@ -929,4 +1064,92 @@ export class HMSSDK {
|
|
|
929
1064
|
this.onReconnectedDelegate(data);
|
|
930
1065
|
}
|
|
931
1066
|
};
|
|
1067
|
+
|
|
1068
|
+
RTCStatsListener = (data: any) => {
|
|
1069
|
+
if (data.id !== this.id) {
|
|
1070
|
+
return;
|
|
1071
|
+
}
|
|
1072
|
+
|
|
1073
|
+
logger?.verbose('#Listener RTCStatsListener', data);
|
|
1074
|
+
|
|
1075
|
+
let rtcStats = HMSEncoder.encodeRTCStats(data);
|
|
1076
|
+
|
|
1077
|
+
if (this.onRtcStatsDelegate) {
|
|
1078
|
+
this.onRtcStatsDelegate({ rtcStats });
|
|
1079
|
+
}
|
|
1080
|
+
};
|
|
1081
|
+
|
|
1082
|
+
onLocalAudioStatsListener = (data: any) => {
|
|
1083
|
+
if (data.id !== this.id) {
|
|
1084
|
+
return;
|
|
1085
|
+
}
|
|
1086
|
+
|
|
1087
|
+
logger?.verbose('#Listener onLocalAudioStatsListener', data);
|
|
1088
|
+
|
|
1089
|
+
let localAudioStats = new HMSLocalAudioStats(data.localAudioStats);
|
|
1090
|
+
let peer = HMSEncoder.encodeHmsPeer(data.peer, this.id);
|
|
1091
|
+
let track = HMSEncoder.encodeHmsLocalAudioTrack(data.track, this.id);
|
|
1092
|
+
|
|
1093
|
+
if (this.onLocalAudioStatsDelegate) {
|
|
1094
|
+
this.onLocalAudioStatsDelegate({ ...data, localAudioStats, peer, track });
|
|
1095
|
+
}
|
|
1096
|
+
};
|
|
1097
|
+
|
|
1098
|
+
onLocalVideoStatsListener = (data: any) => {
|
|
1099
|
+
if (data.id !== this.id) {
|
|
1100
|
+
return;
|
|
1101
|
+
}
|
|
1102
|
+
|
|
1103
|
+
logger?.verbose('#Listener onLocalVideoStatsListener', data);
|
|
1104
|
+
|
|
1105
|
+
let localVideoStats = new HMSLocalVideoStats(data.localVideoStats);
|
|
1106
|
+
let peer = HMSEncoder.encodeHmsPeer(data.peer, this.id);
|
|
1107
|
+
let track = HMSEncoder.encodeHmsLocalVideoTrack(data.track, this.id);
|
|
1108
|
+
|
|
1109
|
+
if (this.onLocalVideoStatsDelegate) {
|
|
1110
|
+
this.onLocalVideoStatsDelegate({ ...data, localVideoStats, peer, track });
|
|
1111
|
+
}
|
|
1112
|
+
};
|
|
1113
|
+
|
|
1114
|
+
onRemoteAudioStatsListener = (data: any) => {
|
|
1115
|
+
if (data.id !== this.id) {
|
|
1116
|
+
return;
|
|
1117
|
+
}
|
|
1118
|
+
|
|
1119
|
+
logger?.verbose('#Listener onRemoteAudioStatsListener', data);
|
|
1120
|
+
|
|
1121
|
+
let remoteAudioStats = new HMSRemoteAudioStats(data.remoteAudioStats);
|
|
1122
|
+
let peer = HMSEncoder.encodeHmsPeer(data.peer, this.id);
|
|
1123
|
+
let track = HMSEncoder.encodeHmsRemoteAudioTrack(data.track, this.id);
|
|
1124
|
+
|
|
1125
|
+
if (this.onRemoteAudioStatsDelegate) {
|
|
1126
|
+
this.onRemoteAudioStatsDelegate({
|
|
1127
|
+
...data,
|
|
1128
|
+
remoteAudioStats,
|
|
1129
|
+
peer,
|
|
1130
|
+
track,
|
|
1131
|
+
});
|
|
1132
|
+
}
|
|
1133
|
+
};
|
|
1134
|
+
|
|
1135
|
+
onRemoteVideoStatsListener = (data: any) => {
|
|
1136
|
+
if (data.id !== this.id) {
|
|
1137
|
+
return;
|
|
1138
|
+
}
|
|
1139
|
+
|
|
1140
|
+
logger?.verbose('#Listener onRemoteVideoStatsListener', data);
|
|
1141
|
+
|
|
1142
|
+
let remoteVideoStats = new HMSRemoteVideoStats(data.remoteVideoStats);
|
|
1143
|
+
let peer = HMSEncoder.encodeHmsPeer(data.peer, this.id);
|
|
1144
|
+
let track = HMSEncoder.encodeHmsRemoteVideoTrack(data.track, this.id);
|
|
1145
|
+
|
|
1146
|
+
if (this.onRemoteVideoStatsDelegate) {
|
|
1147
|
+
this.onRemoteVideoStatsDelegate({
|
|
1148
|
+
...data,
|
|
1149
|
+
remoteVideoStats,
|
|
1150
|
+
peer,
|
|
1151
|
+
track,
|
|
1152
|
+
});
|
|
1153
|
+
}
|
|
1154
|
+
};
|
|
932
1155
|
}
|
|
@@ -3,9 +3,15 @@ import type { HMSException } from './HMSException';
|
|
|
3
3
|
export class HMSServerRecordingState {
|
|
4
4
|
running: string;
|
|
5
5
|
error: HMSException;
|
|
6
|
+
startedAt: Date;
|
|
6
7
|
|
|
7
|
-
constructor(params: {
|
|
8
|
+
constructor(params: {
|
|
9
|
+
running: string;
|
|
10
|
+
error: HMSException;
|
|
11
|
+
startedAt: Date;
|
|
12
|
+
}) {
|
|
8
13
|
this.running = params.running;
|
|
9
14
|
this.error = params.error;
|
|
15
|
+
this.startedAt = params.startedAt;
|
|
10
16
|
}
|
|
11
17
|
}
|
|
@@ -12,4 +12,9 @@ export enum HMSUpdateListenerActions {
|
|
|
12
12
|
ON_ROLE_CHANGE_REQUEST = 'ON_ROLE_CHANGE_REQUEST',
|
|
13
13
|
ON_CHANGE_TRACK_STATE_REQUEST = 'ON_CHANGE_TRACK_STATE_REQUEST',
|
|
14
14
|
ON_REMOVED_FROM_ROOM = 'ON_REMOVED_FROM_ROOM',
|
|
15
|
+
ON_RTC_STATS = 'ON_RTC_STATS',
|
|
16
|
+
ON_LOCAL_AUDIO_STATS = 'ON_LOCAL_AUDIO_STATS',
|
|
17
|
+
ON_LOCAL_VIDEO_STATS = 'ON_LOCAL_VIDEO_STATS',
|
|
18
|
+
ON_REMOTE_AUDIO_STATS = 'ON_REMOTE_AUDIO_STATS',
|
|
19
|
+
ON_REMOTE_VIDEO_STATS = 'ON_REMOTE_VIDEO_STATS',
|
|
15
20
|
}
|
package/src/index.ts
CHANGED
|
@@ -51,6 +51,12 @@ export * from './classes/HMSHLSMeetingURLVariant';
|
|
|
51
51
|
export * from './classes/HMSHLSVariant';
|
|
52
52
|
export * from './classes/HMSHLSStreamingState';
|
|
53
53
|
export * from './classes/HMSVideoResolution';
|
|
54
|
+
export * from './classes/HMSLocalAudioStats';
|
|
55
|
+
export * from './classes/HMSLocalVideoStats';
|
|
56
|
+
export * from './classes/HMSRTCStats';
|
|
57
|
+
export * from './classes/HMSRTCStatsReport';
|
|
58
|
+
export * from './classes/HMSRemoteAudioStats';
|
|
59
|
+
export * from './classes/HMSRemoteVideoStats';
|
|
54
60
|
|
|
55
61
|
import { HMSSDK as HmsManager } from './classes/HMSSDK';
|
|
56
62
|
export default HmsManager;
|