@100mslive/react-native-hms 0.8.0 → 0.8.4
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 +37 -39
- package/android/.gradle/6.9/executionHistory/executionHistory.lock +0 -0
- package/android/.gradle/6.9/fileHashes/fileHashes.lock +0 -0
- package/android/.gradle/buildOutputCleanup/buildOutputCleanup.lock +0 -0
- package/android/.gradle/buildOutputCleanup/cache.properties +1 -1
- package/android/.gradle/checksums/checksums.lock +0 -0
- package/android/.gradle/checksums/md5-checksums.bin +0 -0
- package/android/.gradle/checksums/sha1-checksums.bin +0 -0
- package/android/build.gradle +1 -2
- package/android/src/main/java/com/reactnativehmssdk/HmsDecoder.kt +249 -230
- package/android/src/main/java/com/reactnativehmssdk/HmsHelper.kt +145 -13
- package/android/src/main/java/com/reactnativehmssdk/HmsModule.kt +56 -21
- package/android/src/main/java/com/reactnativehmssdk/HmsSDK.kt +463 -247
- package/android/src/main/java/com/reactnativehmssdk/HmsView.kt +15 -18
- package/android/src/main/java/com/reactnativehmssdk/HmssdkPackage.kt +1 -2
- package/android/src/main/java/com/reactnativehmssdk/HmssdkViewManager.kt +4 -10
- package/ios/HmsDecoder.swift +135 -35
- package/ios/HmsHelper.swift +103 -1
- package/ios/HmsManager.m +13 -9
- package/ios/HmsManager.swift +59 -24
- package/ios/HmsSDK.swift +322 -85
- package/ios/HmsView.swift +1 -1
- package/lib/commonjs/classes/HMSAudioTrackSettings.js +3 -0
- package/lib/commonjs/classes/HMSAudioTrackSettings.js.map +1 -1
- package/lib/commonjs/classes/HMSBrowserRecordingState.js +23 -0
- package/lib/commonjs/classes/HMSBrowserRecordingState.js.map +1 -0
- package/lib/commonjs/classes/HMSCameraFacing.js +14 -0
- package/lib/commonjs/classes/HMSCameraFacing.js.map +1 -0
- package/lib/commonjs/classes/HMSChangeTrackStateRequest.js +3 -0
- package/lib/commonjs/classes/HMSChangeTrackStateRequest.js.map +1 -1
- package/lib/commonjs/classes/HMSConfig.js +3 -1
- package/lib/commonjs/classes/HMSConfig.js.map +1 -1
- package/lib/commonjs/classes/HMSEncoder.js +27 -7
- package/lib/commonjs/classes/HMSEncoder.js.map +1 -1
- package/lib/commonjs/classes/HMSException.js +30 -0
- package/lib/commonjs/classes/HMSException.js.map +1 -0
- package/lib/commonjs/classes/HMSHelper.js +2 -2
- package/lib/commonjs/classes/HMSHelper.js.map +1 -1
- package/lib/commonjs/classes/HMSLocalAudioTrack.js +32 -0
- package/lib/commonjs/classes/HMSLocalAudioTrack.js.map +1 -1
- package/lib/commonjs/classes/HMSLocalPeer.js.map +1 -1
- package/lib/commonjs/classes/HMSLocalVideoTrack.js +18 -0
- package/lib/commonjs/classes/HMSLocalVideoTrack.js.map +1 -1
- package/lib/commonjs/classes/HMSLogger.js +28 -1
- package/lib/commonjs/classes/HMSLogger.js.map +1 -1
- package/lib/commonjs/classes/HMSPeer.js +3 -0
- package/lib/commonjs/classes/HMSPeer.js.map +1 -1
- package/lib/commonjs/classes/HMSPeerUpdate.js +1 -0
- package/lib/commonjs/classes/HMSPeerUpdate.js.map +1 -1
- package/lib/commonjs/classes/HMSPermissions.js +6 -0
- package/lib/commonjs/classes/HMSPermissions.js.map +1 -1
- package/lib/commonjs/classes/HMSRTMPConfig.js +26 -0
- package/lib/commonjs/classes/HMSRTMPConfig.js.map +1 -0
- package/lib/commonjs/classes/HMSRemoteAudioTrack.js +19 -0
- package/lib/commonjs/classes/HMSRemoteAudioTrack.js.map +1 -1
- package/lib/commonjs/classes/HMSRemotePeer.js.map +1 -1
- package/lib/commonjs/classes/HMSRemoteVideoTrack.js +19 -0
- package/lib/commonjs/classes/HMSRemoteVideoTrack.js.map +1 -1
- package/lib/commonjs/classes/HMSRoom.js +9 -0
- package/lib/commonjs/classes/HMSRoom.js.map +1 -1
- package/lib/commonjs/classes/HMSRtmpStreamingState.js +23 -0
- package/lib/commonjs/classes/HMSRtmpStreamingState.js.map +1 -0
- package/lib/commonjs/classes/HMSSDK.js +229 -125
- package/lib/commonjs/classes/HMSSDK.js.map +1 -1
- package/lib/commonjs/classes/HMSServerRecordingState.js +23 -0
- package/lib/commonjs/classes/HMSServerRecordingState.js.map +1 -0
- package/lib/commonjs/classes/HMSTrack.js +2 -19
- package/lib/commonjs/classes/HMSTrack.js.map +1 -1
- package/lib/commonjs/classes/HMSTrackSettings.js +3 -0
- package/lib/commonjs/classes/HMSTrackSettings.js.map +1 -1
- package/lib/commonjs/classes/HMSVideoCodec.js +4 -4
- package/lib/commonjs/classes/HMSVideoCodec.js.map +1 -1
- package/lib/commonjs/classes/HMSVideoResolution.js +23 -0
- package/lib/commonjs/classes/HMSVideoResolution.js.map +1 -0
- package/lib/commonjs/classes/HMSVideoSettings.js.map +1 -1
- package/lib/commonjs/classes/HMSVideoTrackSettings.js +0 -3
- package/lib/commonjs/classes/HMSVideoTrackSettings.js.map +1 -1
- package/lib/commonjs/index.js +98 -0
- package/lib/commonjs/index.js.map +1 -1
- package/lib/module/classes/HMSAudioTrackSettings.js +3 -0
- package/lib/module/classes/HMSAudioTrackSettings.js.map +1 -1
- package/lib/module/classes/HMSBrowserRecordingState.js +14 -0
- package/lib/module/classes/HMSBrowserRecordingState.js.map +1 -0
- package/lib/module/classes/HMSCameraFacing.js +7 -0
- package/lib/module/classes/HMSCameraFacing.js.map +1 -0
- package/lib/module/classes/HMSChangeTrackStateRequest.js +3 -0
- package/lib/module/classes/HMSChangeTrackStateRequest.js.map +1 -1
- package/lib/module/classes/HMSConfig.js +3 -1
- package/lib/module/classes/HMSConfig.js.map +1 -1
- package/lib/module/classes/HMSEncoder.js +26 -7
- package/lib/module/classes/HMSEncoder.js.map +1 -1
- package/lib/module/classes/HMSException.js +21 -0
- package/lib/module/classes/HMSException.js.map +1 -0
- package/lib/module/classes/HMSHelper.js +2 -2
- package/lib/module/classes/HMSHelper.js.map +1 -1
- package/lib/module/classes/HMSLocalAudioTrack.js +30 -1
- package/lib/module/classes/HMSLocalAudioTrack.js.map +1 -1
- package/lib/module/classes/HMSLocalPeer.js.map +1 -1
- package/lib/module/classes/HMSLocalVideoTrack.js +15 -0
- package/lib/module/classes/HMSLocalVideoTrack.js.map +1 -1
- package/lib/module/classes/HMSLogger.js +28 -1
- package/lib/module/classes/HMSLogger.js.map +1 -1
- package/lib/module/classes/HMSPeer.js +3 -0
- package/lib/module/classes/HMSPeer.js.map +1 -1
- package/lib/module/classes/HMSPeerUpdate.js +1 -0
- package/lib/module/classes/HMSPeerUpdate.js.map +1 -1
- package/lib/module/classes/HMSPermissions.js +6 -0
- package/lib/module/classes/HMSPermissions.js.map +1 -1
- package/lib/module/classes/HMSRTMPConfig.js +17 -0
- package/lib/module/classes/HMSRTMPConfig.js.map +1 -0
- package/lib/module/classes/HMSRemoteAudioTrack.js +16 -0
- package/lib/module/classes/HMSRemoteAudioTrack.js.map +1 -1
- package/lib/module/classes/HMSRemotePeer.js.map +1 -1
- package/lib/module/classes/HMSRemoteVideoTrack.js +16 -0
- package/lib/module/classes/HMSRemoteVideoTrack.js.map +1 -1
- package/lib/module/classes/HMSRoom.js +9 -0
- package/lib/module/classes/HMSRoom.js.map +1 -1
- package/lib/module/classes/HMSRtmpStreamingState.js +14 -0
- package/lib/module/classes/HMSRtmpStreamingState.js.map +1 -0
- package/lib/module/classes/HMSSDK.js +227 -125
- package/lib/module/classes/HMSSDK.js.map +1 -1
- package/lib/module/classes/HMSServerRecordingState.js +14 -0
- package/lib/module/classes/HMSServerRecordingState.js.map +1 -0
- package/lib/module/classes/HMSTrack.js +2 -17
- package/lib/module/classes/HMSTrack.js.map +1 -1
- package/lib/module/classes/HMSTrackSettings.js +3 -0
- package/lib/module/classes/HMSTrackSettings.js.map +1 -1
- package/lib/module/classes/HMSVideoCodec.js +4 -4
- package/lib/module/classes/HMSVideoCodec.js.map +1 -1
- package/lib/module/classes/HMSVideoResolution.js +14 -0
- package/lib/module/classes/HMSVideoResolution.js.map +1 -0
- package/lib/module/classes/HMSVideoSettings.js.map +1 -1
- package/lib/module/classes/HMSVideoTrackSettings.js +0 -3
- package/lib/module/classes/HMSVideoTrackSettings.js.map +1 -1
- package/lib/module/index.js +7 -0
- package/lib/module/index.js.map +1 -1
- package/lib/typescript/classes/HMSAudioTrackSettings.d.ts +3 -0
- package/lib/typescript/classes/HMSBrowserRecordingState.d.ts +9 -0
- package/lib/typescript/classes/HMSCameraFacing.d.ts +4 -0
- package/lib/typescript/classes/HMSChangeTrackStateRequest.d.ts +2 -0
- package/lib/typescript/classes/HMSConfig.d.ts +2 -0
- package/lib/typescript/classes/HMSEncoder.d.ts +3 -1
- package/lib/typescript/classes/HMSException.d.ts +22 -0
- package/lib/typescript/classes/HMSLocalAudioTrack.d.ts +1 -0
- package/lib/typescript/classes/HMSLocalPeer.d.ts +4 -0
- package/lib/typescript/classes/HMSLogger.d.ts +7 -0
- package/lib/typescript/classes/HMSPeer.d.ts +2 -0
- package/lib/typescript/classes/HMSPeerUpdate.d.ts +1 -0
- package/lib/typescript/classes/HMSPermissions.d.ts +4 -0
- package/lib/typescript/classes/HMSRTMPConfig.d.ts +10 -0
- package/lib/typescript/classes/HMSRemotePeer.d.ts +1 -0
- package/lib/typescript/classes/HMSRoom.d.ts +9 -0
- package/lib/typescript/classes/HMSRtmpStreamingState.d.ts +9 -0
- package/lib/typescript/classes/HMSSDK.d.ts +22 -13
- package/lib/typescript/classes/HMSServerRecordingState.d.ts +9 -0
- package/lib/typescript/classes/HMSTrack.d.ts +1 -1
- package/lib/typescript/classes/HMSTrackSettings.d.ts +2 -0
- package/lib/typescript/classes/HMSVideoCodec.d.ts +4 -4
- package/lib/typescript/classes/HMSVideoResolution.d.ts +8 -0
- package/lib/typescript/classes/HMSVideoSettings.d.ts +3 -3
- package/lib/typescript/classes/HMSVideoTrackSettings.d.ts +13 -10
- package/lib/typescript/index.d.ts +7 -0
- package/package.json +2 -1
- package/src/classes/HMSAudioTrackSettings.ts +9 -1
- package/src/classes/HMSBrowserRecordingState.ts +11 -0
- package/src/classes/HMSCameraFacing.ts +4 -0
- package/src/classes/HMSChangeTrackStateRequest.ts +7 -1
- package/src/classes/HMSConfig.ts +3 -1
- package/src/classes/HMSEncoder.ts +22 -2
- package/src/classes/HMSException.ts +33 -0
- package/src/classes/HMSHelper.ts +2 -2
- package/src/classes/HMSLocalAudioTrack.ts +29 -1
- package/src/classes/HMSLocalPeer.ts +4 -0
- package/src/classes/HMSLocalVideoTrack.ts +15 -0
- package/src/classes/HMSLogger.ts +14 -1
- package/src/classes/HMSPeer.ts +3 -0
- package/src/classes/HMSPeerUpdate.ts +1 -0
- package/src/classes/HMSPermissions.ts +6 -0
- package/src/classes/HMSRTMPConfig.ts +15 -0
- package/src/classes/HMSRemoteAudioTrack.ts +16 -0
- package/src/classes/HMSRemotePeer.ts +1 -0
- package/src/classes/HMSRemoteVideoTrack.ts +16 -0
- package/src/classes/HMSRoom.ts +12 -0
- package/src/classes/HMSRtmpStreamingState.ts +11 -0
- package/src/classes/HMSSDK.tsx +170 -71
- package/src/classes/HMSServerRecordingState.ts +11 -0
- package/src/classes/HMSTrack.ts +2 -15
- package/src/classes/HMSTrackSettings.ts +3 -0
- package/src/classes/HMSVideoCodec.ts +4 -4
- package/src/classes/HMSVideoResolution.ts +9 -0
- package/src/classes/HMSVideoSettings.ts +3 -3
- package/src/classes/HMSVideoTrackSettings.ts +13 -10
- package/src/index.ts +7 -0
- package/android/.gradle/6.9/executionHistory/executionHistory.bin +0 -0
- package/android/.gradle/6.9/fileHashes/fileHashes.bin +0 -0
- package/android/.gradle/6.9/fileHashes/resourceHashesCache.bin +0 -0
- package/android/.gradle/6.9/javaCompile/classAnalysis.bin +0 -0
- package/android/.gradle/6.9/javaCompile/jarAnalysis.bin +0 -0
- package/android/.gradle/6.9/javaCompile/javaCompile.lock +0 -0
- package/android/.gradle/6.9/javaCompile/taskHistory.bin +0 -0
- package/android/.gradle/buildOutputCleanup/outputFiles.bin +0 -0
- package/android/.project +0 -34
|
@@ -2,8 +2,8 @@ package com.reactnativehmssdk
|
|
|
2
2
|
|
|
3
3
|
import com.facebook.react.bridge.*
|
|
4
4
|
import live.hms.video.error.HMSException
|
|
5
|
-
import java.util.*
|
|
6
5
|
import live.hms.video.media.settings.HMSAudioTrackSettings
|
|
6
|
+
import live.hms.video.media.settings.HMSVideoResolution
|
|
7
7
|
import live.hms.video.media.settings.HMSVideoTrackSettings
|
|
8
8
|
import live.hms.video.media.tracks.*
|
|
9
9
|
import live.hms.video.sdk.models.*
|
|
@@ -18,11 +18,21 @@ object HmsDecoder {
|
|
|
18
18
|
room.putString("id", hmsRoom.roomId)
|
|
19
19
|
room.putString("name", hmsRoom.name)
|
|
20
20
|
room.putString("metaData", null)
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
21
|
+
room.putString("startedAt", hmsRoom.startedAt.toString())
|
|
22
|
+
room.putMap(
|
|
23
|
+
"browserRecordingState",
|
|
24
|
+
this.getHMSBrowserRecordingState(hmsRoom.browserRecordingState)
|
|
25
|
+
)
|
|
26
|
+
room.putMap(
|
|
27
|
+
"rtmpHMSRtmpStreamingState",
|
|
28
|
+
this.getHMSRtmpStreamingState(hmsRoom.rtmpHMSRtmpStreamingState)
|
|
29
|
+
)
|
|
30
|
+
room.putMap(
|
|
31
|
+
"serverRecordingState",
|
|
32
|
+
this.getHMSServerRecordingState(hmsRoom.serverRecordingState)
|
|
33
|
+
)
|
|
34
|
+
room.putMap("localPeer", this.getHmsLocalPeer(hmsRoom.localPeer))
|
|
35
|
+
room.putArray("peers", this.getAllPeers(hmsRoom.peerList))
|
|
26
36
|
}
|
|
27
37
|
return room
|
|
28
38
|
}
|
|
@@ -33,29 +43,20 @@ object HmsDecoder {
|
|
|
33
43
|
peer.putString("peerID", hmsPeer.peerID)
|
|
34
44
|
peer.putString("name", hmsPeer.name)
|
|
35
45
|
peer.putBoolean("isLocal", hmsPeer.isLocal)
|
|
36
|
-
peer.putString(
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
)
|
|
40
|
-
peer.
|
|
41
|
-
|
|
42
|
-
if (hmsPeer.customerDescription == null) hmsPeer.customerDescription else ""
|
|
43
|
-
)
|
|
44
|
-
peer.putMap("audioTrack", getHmsAudioTrack(hmsPeer.audioTrack))
|
|
45
|
-
peer.putMap("videoTrack", getHmsVideoTrack(hmsPeer.videoTrack))
|
|
46
|
-
peer.putMap("role", getHmsRole(hmsPeer.hmsRole))
|
|
47
|
-
var auxiliaryTracks: WritableArray = Arguments.createArray()
|
|
48
|
-
for (track in hmsPeer.auxiliaryTracks) {
|
|
49
|
-
auxiliaryTracks.pushMap(getHmsTrack(track))
|
|
50
|
-
}
|
|
51
|
-
peer.putArray("auxiliaryTracks", auxiliaryTracks)
|
|
46
|
+
peer.putString("customerUserID", hmsPeer.customerUserID)
|
|
47
|
+
peer.putString("metadata", hmsPeer.metadata)
|
|
48
|
+
peer.putMap("audioTrack", this.getHmsAudioTrack(hmsPeer.audioTrack))
|
|
49
|
+
peer.putMap("videoTrack", this.getHmsVideoTrack(hmsPeer.videoTrack))
|
|
50
|
+
peer.putMap("role", this.getHmsRole(hmsPeer.hmsRole))
|
|
51
|
+
peer.putArray("auxiliaryTracks", this.getAllTracks(hmsPeer.auxiliaryTracks))
|
|
52
52
|
}
|
|
53
53
|
return peer
|
|
54
54
|
}
|
|
55
55
|
|
|
56
|
-
fun getHmsAudioTrack(hmsAudioTrack: HMSAudioTrack?): WritableMap {
|
|
56
|
+
private fun getHmsAudioTrack(hmsAudioTrack: HMSAudioTrack?): WritableMap {
|
|
57
57
|
val hmsTrack: WritableMap = Arguments.createMap()
|
|
58
58
|
if (hmsAudioTrack != null) {
|
|
59
|
+
hmsTrack.putString("type", hmsAudioTrack.type.name)
|
|
59
60
|
hmsTrack.putString("trackId", hmsAudioTrack.trackId)
|
|
60
61
|
hmsTrack.putString("source", hmsAudioTrack.source)
|
|
61
62
|
hmsTrack.putString("trackDescription", hmsAudioTrack.description)
|
|
@@ -64,9 +65,10 @@ object HmsDecoder {
|
|
|
64
65
|
return hmsTrack
|
|
65
66
|
}
|
|
66
67
|
|
|
67
|
-
fun getHmsVideoTrack(hmsVideoTrack: HMSVideoTrack?): WritableMap {
|
|
68
|
+
private fun getHmsVideoTrack(hmsVideoTrack: HMSVideoTrack?): WritableMap {
|
|
68
69
|
val hmsTrack: WritableMap = Arguments.createMap()
|
|
69
70
|
if (hmsVideoTrack != null) {
|
|
71
|
+
hmsTrack.putString("type", hmsVideoTrack.type.name)
|
|
70
72
|
hmsTrack.putString("trackId", hmsVideoTrack.trackId)
|
|
71
73
|
hmsTrack.putString("source", hmsVideoTrack.source)
|
|
72
74
|
hmsTrack.putString("trackDescription", hmsVideoTrack.description)
|
|
@@ -83,234 +85,182 @@ object HmsDecoder {
|
|
|
83
85
|
hmsTrack.putString("source", track.source)
|
|
84
86
|
hmsTrack.putString("trackDescription", track.description)
|
|
85
87
|
hmsTrack.putBoolean("isMute", track.isMute)
|
|
86
|
-
hmsTrack.putString("type", track.type.
|
|
88
|
+
hmsTrack.putString("type", track.type.name)
|
|
87
89
|
}
|
|
88
90
|
return hmsTrack
|
|
89
91
|
}
|
|
90
92
|
|
|
91
93
|
fun getAllRoles(roles: List<HMSRole>?): WritableArray {
|
|
92
94
|
val decodedRoles: WritableArray = Arguments.createArray()
|
|
93
|
-
|
|
94
95
|
if (roles != null) {
|
|
95
96
|
for (role in roles) {
|
|
96
|
-
val decodedRole = getHmsRole(role)
|
|
97
|
-
|
|
97
|
+
val decodedRole = this.getHmsRole(role)
|
|
98
98
|
decodedRoles.pushMap(decodedRole)
|
|
99
99
|
}
|
|
100
100
|
}
|
|
101
|
-
|
|
102
101
|
return decodedRoles
|
|
103
102
|
}
|
|
104
103
|
|
|
105
|
-
fun getHmsRole(hmsRole: HMSRole?): WritableMap {
|
|
104
|
+
private fun getHmsRole(hmsRole: HMSRole?): WritableMap {
|
|
106
105
|
val role: WritableMap = Arguments.createMap()
|
|
107
|
-
// val emptyMap: WritableArray = Arguments.createMap();
|
|
108
106
|
if (hmsRole != null) {
|
|
109
107
|
role.putString("name", hmsRole.name)
|
|
110
|
-
role.putMap("permissions", getHmsPermissions(hmsRole.permission))
|
|
111
|
-
role.putMap("publishSettings", getHmsPublishSettings(hmsRole.publishParams))
|
|
108
|
+
role.putMap("permissions", this.getHmsPermissions(hmsRole.permission))
|
|
109
|
+
role.putMap("publishSettings", this.getHmsPublishSettings(hmsRole.publishParams))
|
|
110
|
+
role.putMap("subscribeSettings", this.getHmsSubscribeSettings(hmsRole.subscribeParams))
|
|
112
111
|
role.putInt("priority", hmsRole.priority)
|
|
113
|
-
// role.putArray("generalPermissions",
|
|
114
|
-
// if(hmsRole.generalPermissions!=null)hmsRole.generalPermissions else emptyMap);
|
|
115
|
-
// role.putArray("internalPlugins",
|
|
116
|
-
// if(hmsRole.internalPlugins!=null)hmsRole.internalPlugins else emptyMap);
|
|
117
|
-
// role.putArray("externalPlugins",
|
|
118
|
-
// if(hmsRole.externalPlugins!=null)hmsRole.externalPlugins else emptyMap);
|
|
119
112
|
}
|
|
120
113
|
return role
|
|
121
114
|
}
|
|
122
115
|
|
|
123
|
-
fun getHmsPermissions(hmsPermissions: PermissionsParams?): WritableMap {
|
|
116
|
+
private fun getHmsPermissions(hmsPermissions: PermissionsParams?): WritableMap {
|
|
124
117
|
val permissions: WritableMap = Arguments.createMap()
|
|
125
118
|
if (hmsPermissions != null) {
|
|
126
|
-
permissions.putBoolean(
|
|
127
|
-
|
|
128
|
-
|
|
129
|
-
)
|
|
130
|
-
permissions.putBoolean(
|
|
131
|
-
|
|
132
|
-
|
|
133
|
-
)
|
|
134
|
-
permissions.putBoolean(
|
|
135
|
-
"mute",
|
|
136
|
-
if (hmsPermissions.mute != null) hmsPermissions.mute else false
|
|
137
|
-
)
|
|
138
|
-
permissions.putBoolean(
|
|
139
|
-
"changeRoleForce",
|
|
140
|
-
if (hmsPermissions.changeRoleForce != null) hmsPermissions.changeRoleForce else false
|
|
141
|
-
)
|
|
142
|
-
permissions.putBoolean(
|
|
143
|
-
"unmute",
|
|
144
|
-
if (hmsPermissions.unmute != null) hmsPermissions.unmute else false
|
|
145
|
-
)
|
|
146
|
-
permissions.putBoolean(
|
|
147
|
-
"recording",
|
|
148
|
-
if (hmsPermissions.recording != null) hmsPermissions.recording else false
|
|
149
|
-
)
|
|
150
|
-
permissions.putBoolean(
|
|
151
|
-
"rtmp",
|
|
152
|
-
if (hmsPermissions.rtmp != null) hmsPermissions.rtmp else false
|
|
153
|
-
)
|
|
154
|
-
permissions.putBoolean(
|
|
155
|
-
"changeRole",
|
|
156
|
-
if (hmsPermissions.changeRole != null) hmsPermissions.changeRole else false
|
|
157
|
-
)
|
|
119
|
+
permissions.putBoolean("endRoom", hmsPermissions.endRoom)
|
|
120
|
+
permissions.putBoolean("removeOthers", hmsPermissions.removeOthers)
|
|
121
|
+
permissions.putBoolean("mute", hmsPermissions.mute)
|
|
122
|
+
permissions.putBoolean("changeRoleForce", hmsPermissions.changeRoleForce)
|
|
123
|
+
permissions.putBoolean("unmute", hmsPermissions.unmute)
|
|
124
|
+
permissions.putBoolean("recording", hmsPermissions.recording)
|
|
125
|
+
permissions.putBoolean("rtmp", hmsPermissions.rtmp)
|
|
126
|
+
permissions.putBoolean("changeRole", hmsPermissions.changeRole)
|
|
158
127
|
}
|
|
159
128
|
return permissions
|
|
160
129
|
}
|
|
161
130
|
|
|
162
|
-
fun getHmsPublishSettings(hmsPublishSettings: PublishParams?): WritableMap {
|
|
131
|
+
private fun getHmsPublishSettings(hmsPublishSettings: PublishParams?): WritableMap {
|
|
163
132
|
val publishSettings: WritableMap = Arguments.createMap()
|
|
164
|
-
val emptyArray: WritableArray = Arguments.createArray()
|
|
165
133
|
if (hmsPublishSettings != null) {
|
|
166
|
-
publishSettings.putMap("audio", getHmsAudioSettings(hmsPublishSettings.audio))
|
|
167
|
-
publishSettings.putMap("video", getHmsVideoSettings(hmsPublishSettings.video))
|
|
168
|
-
publishSettings.putMap("screen", getHmsVideoSettings(hmsPublishSettings.screen))
|
|
169
|
-
// publishSettings.putMap("videoSimulcastLayers",
|
|
170
|
-
// getHmsSimulcastLayers(hmsPublishSettings.videoSimulcastLayers));
|
|
171
|
-
// publishSettings.putMap("screenSimulcastLayers",
|
|
172
|
-
// getHmsSimulcastLayers(hmsPublishSettings.screenSimulcastLayers));
|
|
134
|
+
publishSettings.putMap("audio", this.getHmsAudioSettings(hmsPublishSettings.audio))
|
|
135
|
+
publishSettings.putMap("video", this.getHmsVideoSettings(hmsPublishSettings.video))
|
|
136
|
+
publishSettings.putMap("screen", this.getHmsVideoSettings(hmsPublishSettings.screen))
|
|
173
137
|
publishSettings.putMap("videoSimulcastLayers", null)
|
|
174
138
|
publishSettings.putMap("screenSimulcastLayers", null)
|
|
175
|
-
|
|
176
|
-
// hmsPublishSettings.allowed as WritableArray else emptyArray);
|
|
139
|
+
publishSettings.putArray("allowed", this.getWriteableArray(hmsPublishSettings.allowed))
|
|
177
140
|
}
|
|
178
141
|
return publishSettings
|
|
179
142
|
}
|
|
180
|
-
|
|
143
|
+
|
|
144
|
+
private fun getWriteableArray(array: List<String>?): WritableArray {
|
|
145
|
+
val decodedArray: WritableArray = Arguments.createArray()
|
|
146
|
+
if (array != null) {
|
|
147
|
+
for (value in array) {
|
|
148
|
+
decodedArray.pushString(value)
|
|
149
|
+
}
|
|
150
|
+
}
|
|
151
|
+
return decodedArray
|
|
152
|
+
}
|
|
153
|
+
|
|
154
|
+
private fun getHmsAudioSettings(hmsAudioSettings: AudioParams?): WritableMap {
|
|
181
155
|
val audioSettings: WritableMap = Arguments.createMap()
|
|
182
156
|
if (hmsAudioSettings != null) {
|
|
183
157
|
audioSettings.putInt("bitRate", hmsAudioSettings.bitRate)
|
|
184
|
-
audioSettings.putString("codec", hmsAudioSettings.codec.
|
|
158
|
+
audioSettings.putString("codec", hmsAudioSettings.codec.name)
|
|
185
159
|
}
|
|
186
160
|
return audioSettings
|
|
187
161
|
}
|
|
188
162
|
|
|
189
|
-
fun getHmsVideoSettings(hmsVideoSettings: VideoParams?): WritableMap {
|
|
163
|
+
private fun getHmsVideoSettings(hmsVideoSettings: VideoParams?): WritableMap {
|
|
190
164
|
val videoSettings: WritableMap = Arguments.createMap()
|
|
191
165
|
if (hmsVideoSettings != null) {
|
|
192
166
|
videoSettings.putInt("bitRate", hmsVideoSettings.bitRate)
|
|
193
167
|
videoSettings.putInt("frameRate", hmsVideoSettings.frameRate)
|
|
194
168
|
videoSettings.putInt("width", hmsVideoSettings.width)
|
|
195
169
|
videoSettings.putInt("height", hmsVideoSettings.height)
|
|
196
|
-
videoSettings.putString("codec", hmsVideoSettings.codec.
|
|
170
|
+
videoSettings.putString("codec", hmsVideoSettings.codec.name)
|
|
197
171
|
}
|
|
198
172
|
return videoSettings
|
|
199
173
|
}
|
|
200
174
|
|
|
201
|
-
// fun getHmsSimulcastLayers(videoSimulcastLayers: HMSSimulcastSettingsPolicy?): WritableMap {
|
|
202
|
-
// val videoLayers: WritableMap = Arguments.createMap();
|
|
203
|
-
// if(videoSimulcastLayers != null) {
|
|
204
|
-
// videoLayers.putInt("width", videoSimulcastLayers.width);
|
|
205
|
-
// videoLayers.putString("height", videoSimulcastLayers.height);
|
|
206
|
-
// videoLayers.putArray("layers",
|
|
207
|
-
// getHmsSimulcastLayerSettingsPolicy(videoSimulcastLayers.layers));
|
|
208
|
-
// }
|
|
209
|
-
// return videoLayers;
|
|
210
|
-
// }
|
|
211
|
-
|
|
212
|
-
// fun getHmsSimulcastLayerSettingsPolicy(layers: HMSSimulcastLayerSettingsPolicy?):
|
|
213
|
-
// WritableArray {
|
|
214
|
-
// val layersSettingsPolicy: WritableArray = Arguments.createArray();
|
|
215
|
-
// val hmsLayersSettingsPolicy: WritableMap = Arguments.createMap();
|
|
216
|
-
// if(layers != null) {
|
|
217
|
-
// hmsLayersSettingsPolicy.putString("rid", layers.rid);
|
|
218
|
-
// hmsLayersSettingsPolicy.putInt("scaleResolutionDownBy", if (layers.scaleResolutionDownBy
|
|
219
|
-
// != null) layers.scaleResolutionDownBy else 0);
|
|
220
|
-
// hmsLayersSettingsPolicy.putInt("maxBitrate", if (layers.maxBitrate != null)
|
|
221
|
-
// layers.maxBitrate else -1);
|
|
222
|
-
// hmsLayersSettingsPolicy.putInt("maxFramerate", if (layers.maxFramerate != null)
|
|
223
|
-
// layers.maxFramerate else -1);
|
|
224
|
-
// }
|
|
225
|
-
// layersSettingsPolicy.pushMap(hmsLayersSettingsPolicy)
|
|
226
|
-
// return layersSettingsPolicy;
|
|
227
|
-
// }
|
|
228
|
-
|
|
229
175
|
fun getHmsLocalPeer(hmsLocalPeer: HMSLocalPeer?): WritableMap {
|
|
230
176
|
val peer: WritableMap = Arguments.createMap()
|
|
231
177
|
if (hmsLocalPeer != null) {
|
|
232
178
|
peer.putString("peerID", hmsLocalPeer.peerID)
|
|
233
179
|
peer.putString("name", hmsLocalPeer.name)
|
|
234
180
|
peer.putBoolean("isLocal", hmsLocalPeer.isLocal)
|
|
235
|
-
peer.putString(
|
|
236
|
-
|
|
237
|
-
|
|
238
|
-
)
|
|
239
|
-
peer.
|
|
240
|
-
|
|
241
|
-
|
|
242
|
-
)
|
|
243
|
-
peer.putMap("audioTrack", getHmsAudioTrack(hmsLocalPeer.audioTrack))
|
|
244
|
-
peer.putMap("videoTrack", getHmsVideoTrack(hmsLocalPeer.videoTrack))
|
|
245
|
-
peer.putMap("role", getHmsRole(hmsLocalPeer.hmsRole))
|
|
246
|
-
|
|
247
|
-
var auxiliaryTracks: WritableArray = Arguments.createArray()
|
|
248
|
-
for (track in hmsLocalPeer.auxiliaryTracks) {
|
|
249
|
-
auxiliaryTracks.pushMap(getHmsTrack(track))
|
|
250
|
-
}
|
|
251
|
-
peer.putArray("auxiliaryTracks", auxiliaryTracks)
|
|
252
|
-
|
|
253
|
-
val localAudioTrack = hmsLocalPeer.audioTrack
|
|
254
|
-
var localAudioTrackData: WritableMap = Arguments.createMap()
|
|
255
|
-
localAudioTrackData.putString("trackId", localAudioTrack?.trackId)
|
|
256
|
-
localAudioTrackData.putString("source", localAudioTrack?.source)
|
|
257
|
-
localAudioTrackData.putString("trackDescription", localAudioTrack?.description)
|
|
258
|
-
localAudioTrackData.putMap("settings", getHmsAudioTrackSettings(localAudioTrack?.settings))
|
|
259
|
-
if (localAudioTrack != null) {
|
|
260
|
-
localAudioTrackData.putBoolean("isMute", localAudioTrack.isMute)
|
|
261
|
-
}
|
|
262
|
-
peer.putMap("localAudioTrackData", localAudioTrackData)
|
|
263
|
-
|
|
264
|
-
val localVideoTrack = hmsLocalPeer.videoTrack
|
|
265
|
-
var localVideoTrackData: WritableMap = Arguments.createMap()
|
|
266
|
-
localVideoTrackData.putString("trackId", localVideoTrack?.trackId)
|
|
267
|
-
localVideoTrackData.putString("source", localVideoTrack?.source)
|
|
268
|
-
localVideoTrackData.putString("trackDescription", localVideoTrack?.description)
|
|
269
|
-
localVideoTrackData.putMap("settings", getHmsVideoTrackSettings(localVideoTrack?.settings))
|
|
270
|
-
if (localVideoTrack != null) {
|
|
271
|
-
localVideoTrackData.putBoolean("isMute", localVideoTrack.isMute)
|
|
272
|
-
}
|
|
273
|
-
peer.putMap("localVideoTrackData", localVideoTrackData)
|
|
181
|
+
peer.putString("customerUserID", hmsLocalPeer.customerUserID)
|
|
182
|
+
peer.putString("metadata", hmsLocalPeer.metadata)
|
|
183
|
+
peer.putMap("audioTrack", this.getHmsAudioTrack(hmsLocalPeer.audioTrack))
|
|
184
|
+
peer.putMap("videoTrack", this.getHmsVideoTrack(hmsLocalPeer.videoTrack))
|
|
185
|
+
peer.putMap("role", this.getHmsRole(hmsLocalPeer.hmsRole))
|
|
186
|
+
peer.putArray("auxiliaryTracks", this.getAllTracks(hmsLocalPeer.auxiliaryTracks))
|
|
187
|
+
peer.putMap("localAudioTrackData", this.getHmsLocalAudioTrack(hmsLocalPeer.audioTrack))
|
|
188
|
+
peer.putMap("localVideoTrackData", this.getHmsLocalVideoTrack(hmsLocalPeer.videoTrack))
|
|
274
189
|
}
|
|
275
190
|
return peer
|
|
276
191
|
}
|
|
277
192
|
|
|
278
|
-
fun
|
|
193
|
+
private fun getHmsLocalAudioTrack(track: HMSLocalAudioTrack?): WritableMap {
|
|
194
|
+
val hmsTrack: WritableMap = Arguments.createMap()
|
|
195
|
+
if (track != null) {
|
|
196
|
+
hmsTrack.putDouble("volume", track.volume)
|
|
197
|
+
hmsTrack.putMap("settings", this.getHmsAudioTrackSettings(track.settings))
|
|
198
|
+
hmsTrack.putString("trackId", track.trackId)
|
|
199
|
+
hmsTrack.putString("source", track.source)
|
|
200
|
+
hmsTrack.putString("trackDescription", track.description)
|
|
201
|
+
hmsTrack.putBoolean("isMute", track.isMute)
|
|
202
|
+
hmsTrack.putString("type", track.type.name)
|
|
203
|
+
}
|
|
204
|
+
return hmsTrack
|
|
205
|
+
}
|
|
206
|
+
|
|
207
|
+
private fun getHmsLocalVideoTrack(track: HMSLocalVideoTrack?): WritableMap {
|
|
208
|
+
val hmsTrack: WritableMap = Arguments.createMap()
|
|
209
|
+
if (track != null) {
|
|
210
|
+
hmsTrack.putBoolean("isDegraded", track.isDegraded)
|
|
211
|
+
hmsTrack.putMap("settings", this.getHmsVideoTrackSettings(track.settings))
|
|
212
|
+
hmsTrack.putString("trackId", track.trackId)
|
|
213
|
+
hmsTrack.putString("source", track.source)
|
|
214
|
+
hmsTrack.putString("trackDescription", track.description)
|
|
215
|
+
hmsTrack.putBoolean("isMute", track.isMute)
|
|
216
|
+
hmsTrack.putString("type", track.type.name)
|
|
217
|
+
}
|
|
218
|
+
return hmsTrack
|
|
219
|
+
}
|
|
220
|
+
|
|
221
|
+
private fun getHmsAudioTrackSettings(hmsAudioTrackSettings: HMSAudioTrackSettings?): WritableMap {
|
|
279
222
|
val settings: WritableMap = Arguments.createMap()
|
|
280
223
|
if (hmsAudioTrackSettings != null) {
|
|
281
224
|
settings.putInt("maxBitrate", hmsAudioTrackSettings.maxBitrate)
|
|
282
|
-
|
|
225
|
+
settings.putDouble("volume", hmsAudioTrackSettings.volume)
|
|
226
|
+
settings.putBoolean(
|
|
227
|
+
"useHardwareAcousticEchoCanceler",
|
|
228
|
+
hmsAudioTrackSettings.useHardwareAcousticEchoCanceler
|
|
229
|
+
)
|
|
230
|
+
settings.putString("codec", hmsAudioTrackSettings.codec.name)
|
|
283
231
|
settings.putString("trackDescription", "")
|
|
284
232
|
}
|
|
285
233
|
return settings
|
|
286
234
|
}
|
|
287
235
|
|
|
288
|
-
fun getHmsVideoTrackSettings(hmsVideoTrackSettings: HMSVideoTrackSettings?): WritableMap {
|
|
236
|
+
private fun getHmsVideoTrackSettings(hmsVideoTrackSettings: HMSVideoTrackSettings?): WritableMap {
|
|
289
237
|
val settings: WritableMap = Arguments.createMap()
|
|
290
238
|
if (hmsVideoTrackSettings != null) {
|
|
291
|
-
settings.
|
|
292
|
-
|
|
293
|
-
val resolution: WritableMap = Arguments.createMap()
|
|
294
|
-
resolution.putInt("height", hmsVideoTrackSettings.resolution.height)
|
|
295
|
-
resolution.putInt("width", hmsVideoTrackSettings.resolution.width)
|
|
296
|
-
settings.putMap("resolution", resolution)
|
|
297
|
-
|
|
239
|
+
settings.putString("codec", hmsVideoTrackSettings.codec.name)
|
|
298
240
|
settings.putInt("maxBitrate", hmsVideoTrackSettings.maxBitRate)
|
|
299
241
|
settings.putInt("maxFrameRate", hmsVideoTrackSettings.maxFrameRate)
|
|
300
|
-
settings.
|
|
301
|
-
|
|
302
|
-
|
|
303
|
-
|
|
304
|
-
|
|
242
|
+
settings.putString("cameraFacing", hmsVideoTrackSettings.cameraFacing.name)
|
|
243
|
+
settings.putString("trackDescription", hmsVideoTrackSettings.codec.name)
|
|
244
|
+
settings.putMap(
|
|
245
|
+
"resolution",
|
|
246
|
+
this.getHmsVideoTrackResolution(hmsVideoTrackSettings.resolution)
|
|
247
|
+
)
|
|
305
248
|
}
|
|
306
249
|
return settings
|
|
307
250
|
}
|
|
308
251
|
|
|
252
|
+
private fun getHmsVideoTrackResolution(hmsResolution: HMSVideoResolution): WritableMap {
|
|
253
|
+
val resolution: WritableMap = Arguments.createMap()
|
|
254
|
+
resolution.putInt("height", hmsResolution.height)
|
|
255
|
+
resolution.putInt("width", hmsResolution.width)
|
|
256
|
+
return resolution
|
|
257
|
+
}
|
|
258
|
+
|
|
309
259
|
fun getHmsRemotePeers(remotePeers: Array<HMSRemotePeer>?): WritableArray {
|
|
310
260
|
val peers: WritableArray = Arguments.createArray()
|
|
311
261
|
if (remotePeers != null) {
|
|
312
262
|
for (peer in remotePeers) {
|
|
313
|
-
peers.pushMap(getHmsRemotePeer(peer))
|
|
263
|
+
peers.pushMap(this.getHmsRemotePeer(peer))
|
|
314
264
|
}
|
|
315
265
|
}
|
|
316
266
|
return peers
|
|
@@ -322,73 +272,54 @@ object HmsDecoder {
|
|
|
322
272
|
peer.putString("peerID", hmsRemotePeer.peerID)
|
|
323
273
|
peer.putString("name", hmsRemotePeer.name)
|
|
324
274
|
peer.putBoolean("isLocal", hmsRemotePeer.isLocal)
|
|
325
|
-
peer.putString(
|
|
326
|
-
|
|
327
|
-
|
|
328
|
-
)
|
|
329
|
-
peer.
|
|
330
|
-
|
|
331
|
-
|
|
332
|
-
)
|
|
333
|
-
peer.putMap("audioTrack", getHmsAudioTrack(hmsRemotePeer.audioTrack))
|
|
334
|
-
peer.putMap("videoTrack", getHmsVideoTrack(hmsRemotePeer.videoTrack))
|
|
335
|
-
peer.putMap("role", getHmsRole(hmsRemotePeer.hmsRole))
|
|
336
|
-
|
|
337
|
-
var auxiliaryTracks: WritableArray = Arguments.createArray()
|
|
338
|
-
for (track in hmsRemotePeer.auxiliaryTracks) {
|
|
339
|
-
auxiliaryTracks.pushMap(getHmsTrack(track))
|
|
340
|
-
}
|
|
341
|
-
peer.putArray("auxiliaryTracks", auxiliaryTracks)
|
|
342
|
-
|
|
343
|
-
val remoteAudioTrack = hmsRemotePeer.audioTrack
|
|
344
|
-
var remoteAudioTrackData: WritableMap = Arguments.createMap()
|
|
345
|
-
remoteAudioTrackData.putString("trackId", remoteAudioTrack?.trackId)
|
|
346
|
-
remoteAudioTrackData.putString("source", remoteAudioTrack?.source)
|
|
347
|
-
remoteAudioTrackData.putString("trackDescription", remoteAudioTrack?.description)
|
|
348
|
-
if (remoteAudioTrack != null) {
|
|
349
|
-
remoteAudioTrackData.putBoolean("playbackAllowed", remoteAudioTrack.isPlaybackAllowed)
|
|
350
|
-
remoteAudioTrackData.putBoolean("isMute", remoteAudioTrack.isMute)
|
|
351
|
-
}
|
|
352
|
-
// remoteAudioTrackData.putMap("settings",
|
|
353
|
-
// getHmsAudioTrackSettings(remoteAudioTrack.settings));
|
|
354
|
-
remoteAudioTrackData.putMap("settings", null)
|
|
355
|
-
peer.putMap("remoteAudioTrackData", remoteAudioTrackData)
|
|
356
|
-
|
|
357
|
-
val remoteVideoTrack = hmsRemotePeer.videoTrack
|
|
358
|
-
var remoteVideoTrackData: WritableMap = Arguments.createMap()
|
|
359
|
-
remoteVideoTrackData.putString("trackId", remoteVideoTrack?.trackId)
|
|
360
|
-
remoteVideoTrackData.putString("source", remoteVideoTrack?.source)
|
|
361
|
-
remoteVideoTrackData.putString("trackDescription", remoteVideoTrack?.description)
|
|
362
|
-
if (remoteVideoTrack != null) {
|
|
363
|
-
remoteVideoTrackData.putBoolean("playbackAllowed", remoteVideoTrack.isPlaybackAllowed)
|
|
364
|
-
remoteVideoTrackData.putBoolean("isMute", remoteVideoTrack.isMute)
|
|
365
|
-
}
|
|
366
|
-
// remoteVideoTrackData.putMap("settings",
|
|
367
|
-
// getHmsVideoTrackSettings(remoteVideoTrack.settings));
|
|
368
|
-
remoteVideoTrackData.putMap("settings", null)
|
|
369
|
-
peer.putMap("remoteVideoTrackData", remoteVideoTrackData)
|
|
275
|
+
peer.putString("customerUserID", hmsRemotePeer.customerUserID)
|
|
276
|
+
peer.putString("metadata", hmsRemotePeer.metadata)
|
|
277
|
+
peer.putMap("audioTrack", this.getHmsAudioTrack(hmsRemotePeer.audioTrack))
|
|
278
|
+
peer.putMap("videoTrack", this.getHmsVideoTrack(hmsRemotePeer.videoTrack))
|
|
279
|
+
peer.putMap("role", this.getHmsRole(hmsRemotePeer.hmsRole))
|
|
280
|
+
peer.putArray("auxiliaryTracks", this.getAllTracks(hmsRemotePeer.auxiliaryTracks))
|
|
281
|
+
peer.putMap("remoteAudioTrackData", this.getHmsRemoteAudioTrack(hmsRemotePeer.audioTrack))
|
|
282
|
+
peer.putMap("remoteVideoTrackData", this.getHmsRemoteVideoTrack(hmsRemotePeer.videoTrack))
|
|
370
283
|
}
|
|
371
284
|
return peer
|
|
372
285
|
}
|
|
373
286
|
|
|
287
|
+
private fun getHmsRemoteAudioTrack(track: HMSRemoteAudioTrack?): WritableMap {
|
|
288
|
+
val hmsTrack: WritableMap = Arguments.createMap()
|
|
289
|
+
if (track != null) {
|
|
290
|
+
hmsTrack.putBoolean("isPlaybackAllowed", track.isPlaybackAllowed)
|
|
291
|
+
hmsTrack.putString("trackId", track.trackId)
|
|
292
|
+
hmsTrack.putString("source", track.source)
|
|
293
|
+
hmsTrack.putString("trackDescription", track.description)
|
|
294
|
+
hmsTrack.putBoolean("isMute", track.isMute)
|
|
295
|
+
hmsTrack.putString("type", track.type.name)
|
|
296
|
+
}
|
|
297
|
+
return hmsTrack
|
|
298
|
+
}
|
|
299
|
+
|
|
300
|
+
private fun getHmsRemoteVideoTrack(track: HMSRemoteVideoTrack?): WritableMap {
|
|
301
|
+
val hmsTrack: WritableMap = Arguments.createMap()
|
|
302
|
+
if (track != null) {
|
|
303
|
+
hmsTrack.putBoolean("isDegraded", track.isDegraded)
|
|
304
|
+
hmsTrack.putBoolean("isPlaybackAllowed", track.isPlaybackAllowed)
|
|
305
|
+
hmsTrack.putString("trackId", track.trackId)
|
|
306
|
+
hmsTrack.putString("source", track.source)
|
|
307
|
+
hmsTrack.putString("trackDescription", track.description)
|
|
308
|
+
hmsTrack.putBoolean("isMute", track.isMute)
|
|
309
|
+
hmsTrack.putString("type", track.type.name)
|
|
310
|
+
}
|
|
311
|
+
return hmsTrack
|
|
312
|
+
}
|
|
313
|
+
|
|
374
314
|
fun getPreviewTracks(tracks: Array<HMSTrack>?): WritableMap {
|
|
375
315
|
val hmsTracks: WritableMap = Arguments.createMap()
|
|
376
316
|
if (tracks != null) {
|
|
377
317
|
for (track: HMSTrack in tracks) {
|
|
378
318
|
if (track is HMSLocalVideoTrack) {
|
|
379
|
-
|
|
380
|
-
localVideoTrackData.putString("trackId", track.trackId)
|
|
381
|
-
localVideoTrackData.putString("source", track.source)
|
|
382
|
-
localVideoTrackData.putString("trackDescription", track.description)
|
|
383
|
-
localVideoTrackData.putMap("settings", getHmsVideoTrackSettings(track.settings))
|
|
384
|
-
hmsTracks.putMap("videoTrack", localVideoTrackData)
|
|
319
|
+
hmsTracks.putMap("videoTrack", this.getHmsLocalVideoTrack(track))
|
|
385
320
|
}
|
|
386
321
|
if (track is HMSLocalAudioTrack) {
|
|
387
|
-
|
|
388
|
-
localAudioTrackData.putString("trackId", track.trackId)
|
|
389
|
-
localAudioTrackData.putString("source", track.source)
|
|
390
|
-
localAudioTrackData.putMap("settings", getHmsAudioTrackSettings(track.settings))
|
|
391
|
-
hmsTracks.putMap("audioTrack", localAudioTrackData)
|
|
322
|
+
hmsTracks.putMap("audioTrack", this.getHmsLocalAudioTrack(track))
|
|
392
323
|
}
|
|
393
324
|
}
|
|
394
325
|
}
|
|
@@ -398,19 +329,21 @@ object HmsDecoder {
|
|
|
398
329
|
fun getHmsRoleChangeRequest(request: HMSRoleChangeRequest, id: String?): WritableMap {
|
|
399
330
|
val roleChangeRequest: WritableMap = Arguments.createMap()
|
|
400
331
|
if (id != null) {
|
|
401
|
-
roleChangeRequest.putMap("requestedBy", getHmsPeer(request.requestedBy))
|
|
402
|
-
roleChangeRequest.putMap("suggestedRole", getHmsRole(request.suggestedRole))
|
|
332
|
+
roleChangeRequest.putMap("requestedBy", this.getHmsPeer(request.requestedBy))
|
|
333
|
+
roleChangeRequest.putMap("suggestedRole", this.getHmsRole(request.suggestedRole))
|
|
403
334
|
roleChangeRequest.putString("id", id)
|
|
404
335
|
return roleChangeRequest
|
|
405
336
|
}
|
|
406
337
|
return roleChangeRequest
|
|
407
338
|
}
|
|
408
339
|
|
|
409
|
-
fun getHmsChangeTrackStateRequest(request: HMSChangeTrackStateRequest): WritableMap {
|
|
340
|
+
fun getHmsChangeTrackStateRequest(request: HMSChangeTrackStateRequest, id: String): WritableMap {
|
|
410
341
|
val changeTrackStateRequest: WritableMap = Arguments.createMap()
|
|
411
342
|
|
|
412
|
-
changeTrackStateRequest.putMap("requestedBy", getHmsPeer(request.requestedBy))
|
|
343
|
+
changeTrackStateRequest.putMap("requestedBy", this.getHmsPeer(request.requestedBy))
|
|
413
344
|
changeTrackStateRequest.putString("trackType", request.track.type.name)
|
|
345
|
+
changeTrackStateRequest.putBoolean("mute", request.mute)
|
|
346
|
+
changeTrackStateRequest.putString("id", id)
|
|
414
347
|
|
|
415
348
|
return changeTrackStateRequest
|
|
416
349
|
}
|
|
@@ -427,4 +360,90 @@ object HmsDecoder {
|
|
|
427
360
|
|
|
428
361
|
return decodedError
|
|
429
362
|
}
|
|
363
|
+
|
|
364
|
+
private fun getHMSBrowserRecordingState(data: HMSBrowserRecordingState?): ReadableMap {
|
|
365
|
+
val input = Arguments.createMap()
|
|
366
|
+
if (data !== null) {
|
|
367
|
+
input.putBoolean("running", data.running)
|
|
368
|
+
input.putMap("error", data.error?.let { this.getError(it) })
|
|
369
|
+
}
|
|
370
|
+
return input
|
|
371
|
+
}
|
|
372
|
+
|
|
373
|
+
private fun getHMSRtmpStreamingState(data: HMSRtmpStreamingState?): ReadableMap {
|
|
374
|
+
val input = Arguments.createMap()
|
|
375
|
+
if (data !== null) {
|
|
376
|
+
input.putBoolean("running", data.running)
|
|
377
|
+
input.putMap("error", data.error?.let { this.getError(it) })
|
|
378
|
+
}
|
|
379
|
+
return input
|
|
380
|
+
}
|
|
381
|
+
|
|
382
|
+
private fun getHMSServerRecordingState(data: HMSServerRecordingState?): ReadableMap {
|
|
383
|
+
val input = Arguments.createMap()
|
|
384
|
+
if (data !== null) {
|
|
385
|
+
input.putBoolean("running", data.running)
|
|
386
|
+
input.putMap("error", data.error?.let { this.getError(it) })
|
|
387
|
+
}
|
|
388
|
+
return input
|
|
389
|
+
}
|
|
390
|
+
|
|
391
|
+
private fun getHmsSubscribeSettings(hmsSubscribeSettings: SubscribeParams?): WritableMap {
|
|
392
|
+
val subscribeSettings: WritableMap = Arguments.createMap()
|
|
393
|
+
if (hmsSubscribeSettings != null) {
|
|
394
|
+
subscribeSettings.putInt("maxSubsBitRate", hmsSubscribeSettings.maxSubsBitRate)
|
|
395
|
+
subscribeSettings.putMap(
|
|
396
|
+
"subscribeDegradationParam",
|
|
397
|
+
this.getHmsSubscribeDegradationSettings(hmsSubscribeSettings.subscribeDegradationParam)
|
|
398
|
+
)
|
|
399
|
+
subscribeSettings.putArray(
|
|
400
|
+
"subscribeTo",
|
|
401
|
+
this.getWriteableArray(hmsSubscribeSettings.subscribeTo)
|
|
402
|
+
)
|
|
403
|
+
}
|
|
404
|
+
return subscribeSettings
|
|
405
|
+
}
|
|
406
|
+
|
|
407
|
+
private fun getHmsSubscribeDegradationSettings(
|
|
408
|
+
hmsSubscribeDegradationParams: SubscribeDegradationParams?
|
|
409
|
+
): WritableMap {
|
|
410
|
+
val subscribeDegradationParams: WritableMap = Arguments.createMap()
|
|
411
|
+
if (hmsSubscribeDegradationParams != null) {
|
|
412
|
+
subscribeDegradationParams.putString(
|
|
413
|
+
"degradeGracePeriodSeconds",
|
|
414
|
+
hmsSubscribeDegradationParams.degradeGracePeriodSeconds.toString()
|
|
415
|
+
)
|
|
416
|
+
subscribeDegradationParams.putString(
|
|
417
|
+
"packetLossThreshold",
|
|
418
|
+
hmsSubscribeDegradationParams.packetLossThreshold.toString()
|
|
419
|
+
)
|
|
420
|
+
subscribeDegradationParams.putString(
|
|
421
|
+
"recoverGracePeriodSeconds",
|
|
422
|
+
hmsSubscribeDegradationParams.recoverGracePeriodSeconds.toString()
|
|
423
|
+
)
|
|
424
|
+
}
|
|
425
|
+
return subscribeDegradationParams
|
|
426
|
+
}
|
|
427
|
+
|
|
428
|
+
private fun getAllPeers(peers: Array<HMSPeer>?): WritableArray {
|
|
429
|
+
val decodedPeers: WritableArray = Arguments.createArray()
|
|
430
|
+
if (peers != null) {
|
|
431
|
+
for (peer in peers) {
|
|
432
|
+
val decodedPeer = this.getHmsPeer(peer)
|
|
433
|
+
decodedPeers.pushMap(decodedPeer)
|
|
434
|
+
}
|
|
435
|
+
}
|
|
436
|
+
return decodedPeers
|
|
437
|
+
}
|
|
438
|
+
|
|
439
|
+
private fun getAllTracks(tracks: MutableList<HMSTrack>?): WritableArray {
|
|
440
|
+
val decodedTracks: WritableArray = Arguments.createArray()
|
|
441
|
+
if (tracks != null) {
|
|
442
|
+
for (track in tracks) {
|
|
443
|
+
val decodedTrack = this.getHmsTrack(track)
|
|
444
|
+
decodedTracks.pushMap(decodedTrack)
|
|
445
|
+
}
|
|
446
|
+
}
|
|
447
|
+
return decodedTracks
|
|
448
|
+
}
|
|
430
449
|
}
|