@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
|
@@ -1,6 +1,13 @@
|
|
|
1
1
|
package com.reactnativehmssdk
|
|
2
2
|
|
|
3
|
+
import com.facebook.react.bridge.ReadableArray
|
|
3
4
|
import com.facebook.react.bridge.ReadableMap
|
|
5
|
+
import live.hms.video.media.codec.HMSAudioCodec
|
|
6
|
+
import live.hms.video.media.codec.HMSVideoCodec
|
|
7
|
+
import live.hms.video.media.settings.HMSAudioTrackSettings
|
|
8
|
+
import live.hms.video.media.settings.HMSTrackSettings
|
|
9
|
+
import live.hms.video.media.settings.HMSVideoResolution
|
|
10
|
+
import live.hms.video.media.settings.HMSVideoTrackSettings
|
|
4
11
|
import live.hms.video.media.tracks.*
|
|
5
12
|
import live.hms.video.sdk.models.*
|
|
6
13
|
import live.hms.video.sdk.models.role.*
|
|
@@ -22,21 +29,11 @@ object HmsHelper {
|
|
|
22
29
|
return false
|
|
23
30
|
}
|
|
24
31
|
}
|
|
25
|
-
"Boolean" -> {
|
|
26
|
-
if (map.getBoolean(key) == null) {
|
|
27
|
-
return false
|
|
28
|
-
}
|
|
29
|
-
}
|
|
30
32
|
"Array" -> {
|
|
31
33
|
if (map.getArray(key) == null) {
|
|
32
34
|
return false
|
|
33
35
|
}
|
|
34
36
|
}
|
|
35
|
-
"Int" -> {
|
|
36
|
-
if (map.getInt(key) == null) {
|
|
37
|
-
return false
|
|
38
|
-
}
|
|
39
|
-
}
|
|
40
37
|
"Map" -> {
|
|
41
38
|
if (map.getMap(key) == null) {
|
|
42
39
|
return false
|
|
@@ -163,13 +160,148 @@ object HmsHelper {
|
|
|
163
160
|
return null
|
|
164
161
|
}
|
|
165
162
|
|
|
163
|
+
fun getTrackSettings(data: ReadableMap?): HMSTrackSettings? {
|
|
164
|
+
if (data == null) {
|
|
165
|
+
return null
|
|
166
|
+
}
|
|
167
|
+
|
|
168
|
+
var useHardwareEchoCancellation = false
|
|
169
|
+
val requiredKeysUseHardwareEchoCancellation =
|
|
170
|
+
this.areAllRequiredKeysAvailable(
|
|
171
|
+
data,
|
|
172
|
+
arrayOf(Pair("useHardwareEchoCancellation", "Boolean"))
|
|
173
|
+
)
|
|
174
|
+
if (requiredKeysUseHardwareEchoCancellation) {
|
|
175
|
+
useHardwareEchoCancellation = data.getBoolean("useHardwareEchoCancellation")
|
|
176
|
+
}
|
|
177
|
+
|
|
178
|
+
var video: ReadableMap? = null
|
|
179
|
+
val requiredKeysVideo = this.areAllRequiredKeysAvailable(data, arrayOf(Pair("video", "Map")))
|
|
180
|
+
if (requiredKeysVideo) {
|
|
181
|
+
video = data.getMap("video")
|
|
182
|
+
}
|
|
183
|
+
|
|
184
|
+
var audio: ReadableMap? = null
|
|
185
|
+
val requiredKeysAudio = this.areAllRequiredKeysAvailable(data, arrayOf(Pair("audio", "Map")))
|
|
186
|
+
if (requiredKeysAudio) {
|
|
187
|
+
audio = data.getMap("audio")
|
|
188
|
+
}
|
|
189
|
+
|
|
190
|
+
if (video == null && audio == null && !useHardwareEchoCancellation) {
|
|
191
|
+
return null
|
|
192
|
+
}
|
|
193
|
+
|
|
194
|
+
val videoSettings = this.getVideoTrackSettings(video)
|
|
195
|
+
val audioSettings = this.getAudioTrackSettings(audio, useHardwareEchoCancellation)
|
|
196
|
+
val trackSettingsBuilder = HMSTrackSettings.Builder()
|
|
197
|
+
return trackSettingsBuilder.audio(audioSettings).video(videoSettings).build()
|
|
198
|
+
}
|
|
199
|
+
|
|
200
|
+
private fun getAudioTrackSettings(
|
|
201
|
+
data: ReadableMap?,
|
|
202
|
+
useHardwareEchoCancellation: Boolean
|
|
203
|
+
): HMSAudioTrackSettings {
|
|
204
|
+
val builder =
|
|
205
|
+
HMSAudioTrackSettings.Builder()
|
|
206
|
+
.setUseHardwareAcousticEchoCanceler(useHardwareEchoCancellation)
|
|
207
|
+
|
|
208
|
+
if (data != null) {
|
|
209
|
+
val maxBitrate = data.getInt("maxBitrate")
|
|
210
|
+
val codec = getAudioCodec(data.getString("codec"))
|
|
211
|
+
|
|
212
|
+
builder.maxBitrate(maxBitrate)
|
|
213
|
+
builder.codec(codec)
|
|
214
|
+
}
|
|
215
|
+
|
|
216
|
+
return builder.build()
|
|
217
|
+
}
|
|
218
|
+
|
|
219
|
+
// TODO: find out a way to set settings required to create HMSVideoTrackSettings
|
|
220
|
+
|
|
221
|
+
private fun getVideoTrackSettings(data: ReadableMap?): HMSVideoTrackSettings {
|
|
222
|
+
val builder = HMSVideoTrackSettings.Builder()
|
|
223
|
+
if (data != null) {
|
|
224
|
+
val codec = getVideoCodec(data.getString("codec"))
|
|
225
|
+
val resolution = getVideoResolution(data.getMap("resolution"))
|
|
226
|
+
val maxBitrate = data.getInt("maxBitrate")
|
|
227
|
+
val maxFrameRate = data.getInt("maxFrameRate")
|
|
228
|
+
val cameraFacing = getCameraFacing(data.getString("cameraFacing"))
|
|
229
|
+
|
|
230
|
+
builder.codec(codec)
|
|
231
|
+
builder.cameraFacing(cameraFacing)
|
|
232
|
+
if (resolution != null) {
|
|
233
|
+
builder.resolution(resolution)
|
|
234
|
+
}
|
|
235
|
+
builder.maxBitrate(maxBitrate)
|
|
236
|
+
builder.maxFrameRate(maxFrameRate)
|
|
237
|
+
}
|
|
238
|
+
return builder.build()
|
|
239
|
+
}
|
|
240
|
+
|
|
241
|
+
private fun getVideoResolution(map: ReadableMap?): HMSVideoResolution? {
|
|
242
|
+
val width = map?.getDouble("width")
|
|
243
|
+
val height = map?.getDouble("height")
|
|
244
|
+
|
|
245
|
+
return if (width != null && height != null) {
|
|
246
|
+
HMSVideoResolution(width = width.toInt(), height = height.toInt())
|
|
247
|
+
} else {
|
|
248
|
+
null
|
|
249
|
+
}
|
|
250
|
+
}
|
|
251
|
+
|
|
252
|
+
private fun getAudioCodec(codecString: String?): HMSAudioCodec {
|
|
253
|
+
when (codecString) {
|
|
254
|
+
"opus" -> {
|
|
255
|
+
return HMSAudioCodec.OPUS
|
|
256
|
+
}
|
|
257
|
+
}
|
|
258
|
+
return HMSAudioCodec.OPUS
|
|
259
|
+
}
|
|
260
|
+
|
|
261
|
+
private fun getVideoCodec(codecString: String?): HMSVideoCodec {
|
|
262
|
+
when (codecString) {
|
|
263
|
+
"H264" -> {
|
|
264
|
+
return HMSVideoCodec.H264
|
|
265
|
+
}
|
|
266
|
+
"VP8" -> {
|
|
267
|
+
return HMSVideoCodec.VP8
|
|
268
|
+
}
|
|
269
|
+
"VP9" -> {
|
|
270
|
+
return HMSVideoCodec.VP9
|
|
271
|
+
}
|
|
272
|
+
}
|
|
273
|
+
return HMSVideoCodec.H264
|
|
274
|
+
}
|
|
275
|
+
|
|
276
|
+
private fun getCameraFacing(cameraFacing: String?): HMSVideoTrackSettings.CameraFacing {
|
|
277
|
+
when (cameraFacing) {
|
|
278
|
+
"FRONT" -> {
|
|
279
|
+
return HMSVideoTrackSettings.CameraFacing.FRONT
|
|
280
|
+
}
|
|
281
|
+
"BACK" -> {
|
|
282
|
+
return HMSVideoTrackSettings.CameraFacing.BACK
|
|
283
|
+
}
|
|
284
|
+
}
|
|
285
|
+
return HMSVideoTrackSettings.CameraFacing.FRONT
|
|
286
|
+
}
|
|
287
|
+
|
|
166
288
|
fun getHms(credentials: ReadableMap, hmsCollection: MutableMap<String, HmsSDK>): HmsSDK? {
|
|
167
289
|
val id = credentials.getString("id")
|
|
168
290
|
|
|
169
|
-
if (id != null) {
|
|
170
|
-
|
|
291
|
+
return if (id != null) {
|
|
292
|
+
hmsCollection[id]
|
|
171
293
|
} else {
|
|
172
|
-
|
|
294
|
+
null
|
|
295
|
+
}
|
|
296
|
+
}
|
|
297
|
+
|
|
298
|
+
fun getRtmpUrls(rtmpURLsList: ReadableArray?): List<String> {
|
|
299
|
+
val rtmpURLs = mutableListOf<String>()
|
|
300
|
+
if (rtmpURLsList !== null) {
|
|
301
|
+
for (rtmpURL in rtmpURLsList.toArrayList()) {
|
|
302
|
+
rtmpURLs.add(rtmpURL as String)
|
|
303
|
+
}
|
|
173
304
|
}
|
|
305
|
+
return rtmpURLs
|
|
174
306
|
}
|
|
175
307
|
}
|
|
@@ -23,19 +23,19 @@ class HmsModule(reactContext: ReactApplicationContext) : ReactContextBaseJavaMod
|
|
|
23
23
|
// Example method
|
|
24
24
|
// See https://reactnative.dev/docs/native-modules-android
|
|
25
25
|
@ReactMethod
|
|
26
|
-
fun build(callback: Promise?) {
|
|
26
|
+
fun build(data: ReadableMap?, callback: Promise?) {
|
|
27
27
|
val hasItem = hmsCollection.containsKey("12345")
|
|
28
28
|
if (hasItem) {
|
|
29
29
|
val uuid = UUID.randomUUID()
|
|
30
30
|
val randomUUIDString = uuid.toString()
|
|
31
|
-
val sdkInstance
|
|
31
|
+
val sdkInstance = HmsSDK(data, this, randomUUIDString, reactApplicationContext)
|
|
32
32
|
|
|
33
33
|
hmsCollection[randomUUIDString] = sdkInstance
|
|
34
34
|
|
|
35
35
|
callback?.resolve(randomUUIDString)
|
|
36
36
|
} else {
|
|
37
37
|
val randomUUIDString = "12345"
|
|
38
|
-
val sdkInstance
|
|
38
|
+
val sdkInstance = HmsSDK(data, this, randomUUIDString, reactApplicationContext)
|
|
39
39
|
|
|
40
40
|
hmsCollection[randomUUIDString] = sdkInstance
|
|
41
41
|
|
|
@@ -86,45 +86,45 @@ class HmsModule(reactContext: ReactApplicationContext) : ReactContextBaseJavaMod
|
|
|
86
86
|
}
|
|
87
87
|
|
|
88
88
|
@ReactMethod
|
|
89
|
-
fun sendBroadcastMessage(data: ReadableMap) {
|
|
89
|
+
fun sendBroadcastMessage(data: ReadableMap, callback: Promise?) {
|
|
90
90
|
val hms = HmsHelper.getHms(data, hmsCollection)
|
|
91
91
|
|
|
92
|
-
hms?.sendBroadcastMessage(data)
|
|
92
|
+
hms?.sendBroadcastMessage(data, callback)
|
|
93
93
|
}
|
|
94
94
|
|
|
95
95
|
@ReactMethod
|
|
96
|
-
fun sendGroupMessage(data: ReadableMap) {
|
|
96
|
+
fun sendGroupMessage(data: ReadableMap, callback: Promise?) {
|
|
97
97
|
val hms = HmsHelper.getHms(data, hmsCollection)
|
|
98
98
|
|
|
99
|
-
hms?.sendGroupMessage(data)
|
|
99
|
+
hms?.sendGroupMessage(data, callback)
|
|
100
100
|
}
|
|
101
101
|
|
|
102
102
|
@ReactMethod
|
|
103
|
-
fun sendDirectMessage(data: ReadableMap) {
|
|
103
|
+
fun sendDirectMessage(data: ReadableMap, callback: Promise?) {
|
|
104
104
|
val hms = HmsHelper.getHms(data, hmsCollection)
|
|
105
105
|
|
|
106
|
-
hms?.sendDirectMessage(data)
|
|
106
|
+
hms?.sendDirectMessage(data, callback)
|
|
107
107
|
}
|
|
108
108
|
|
|
109
109
|
@ReactMethod
|
|
110
|
-
fun changeRole(data: ReadableMap) {
|
|
110
|
+
fun changeRole(data: ReadableMap, callback: Promise?) {
|
|
111
111
|
val hms = HmsHelper.getHms(data, hmsCollection)
|
|
112
112
|
|
|
113
|
-
hms?.changeRole(data)
|
|
113
|
+
hms?.changeRole(data, callback)
|
|
114
114
|
}
|
|
115
115
|
|
|
116
116
|
@ReactMethod
|
|
117
|
-
fun changeTrackState(data: ReadableMap) {
|
|
117
|
+
fun changeTrackState(data: ReadableMap, callback: Promise?) {
|
|
118
118
|
val hms = HmsHelper.getHms(data, hmsCollection)
|
|
119
119
|
|
|
120
|
-
hms?.changeTrackState(data)
|
|
120
|
+
hms?.changeTrackState(data, callback)
|
|
121
121
|
}
|
|
122
122
|
|
|
123
123
|
@ReactMethod
|
|
124
|
-
fun changeTrackStateRoles(data: ReadableMap) {
|
|
124
|
+
fun changeTrackStateRoles(data: ReadableMap, callback: Promise?) {
|
|
125
125
|
val hms = HmsHelper.getHms(data, hmsCollection)
|
|
126
126
|
|
|
127
|
-
hms?.changeTrackStateRoles(data)
|
|
127
|
+
hms?.changeTrackStateRoles(data, callback)
|
|
128
128
|
}
|
|
129
129
|
|
|
130
130
|
@ReactMethod
|
|
@@ -135,10 +135,10 @@ class HmsModule(reactContext: ReactApplicationContext) : ReactContextBaseJavaMod
|
|
|
135
135
|
}
|
|
136
136
|
|
|
137
137
|
@ReactMethod
|
|
138
|
-
fun removePeer(data: ReadableMap) {
|
|
138
|
+
fun removePeer(data: ReadableMap, callback: Promise?) {
|
|
139
139
|
val hms = HmsHelper.getHms(data, hmsCollection)
|
|
140
140
|
|
|
141
|
-
hms?.removePeer(data)
|
|
141
|
+
hms?.removePeer(data, callback)
|
|
142
142
|
}
|
|
143
143
|
|
|
144
144
|
@ReactMethod
|
|
@@ -163,17 +163,31 @@ class HmsModule(reactContext: ReactApplicationContext) : ReactContextBaseJavaMod
|
|
|
163
163
|
}
|
|
164
164
|
|
|
165
165
|
@ReactMethod
|
|
166
|
-
fun endRoom(data: ReadableMap) {
|
|
166
|
+
fun endRoom(data: ReadableMap, callback: Promise?) {
|
|
167
167
|
val hms = HmsHelper.getHms(data, hmsCollection)
|
|
168
168
|
|
|
169
|
-
hms?.endRoom(data)
|
|
169
|
+
hms?.endRoom(data, callback)
|
|
170
170
|
}
|
|
171
171
|
|
|
172
172
|
@ReactMethod
|
|
173
|
-
fun acceptRoleChange(data: ReadableMap) {
|
|
173
|
+
fun acceptRoleChange(data: ReadableMap, callback: Promise?) {
|
|
174
174
|
val hms = HmsHelper.getHms(data, hmsCollection)
|
|
175
175
|
|
|
176
|
-
hms?.acceptRoleChange()
|
|
176
|
+
hms?.acceptRoleChange(callback)
|
|
177
|
+
}
|
|
178
|
+
|
|
179
|
+
@ReactMethod
|
|
180
|
+
fun setVolume(data: ReadableMap) {
|
|
181
|
+
val hms = HmsHelper.getHms(data, hmsCollection)
|
|
182
|
+
|
|
183
|
+
hms?.setVolume(data)
|
|
184
|
+
}
|
|
185
|
+
|
|
186
|
+
@ReactMethod
|
|
187
|
+
fun getVolume(data: ReadableMap, callback: Promise?) {
|
|
188
|
+
val hms = HmsHelper.getHms(data, hmsCollection)
|
|
189
|
+
|
|
190
|
+
hms?.getVolume(data, callback)
|
|
177
191
|
}
|
|
178
192
|
|
|
179
193
|
@ReactMethod
|
|
@@ -183,6 +197,27 @@ class HmsModule(reactContext: ReactApplicationContext) : ReactContextBaseJavaMod
|
|
|
183
197
|
hms?.muteAllPeersAudio(data)
|
|
184
198
|
}
|
|
185
199
|
|
|
200
|
+
@ReactMethod
|
|
201
|
+
fun changeMetadata(data: ReadableMap, callback: Promise?) {
|
|
202
|
+
val hms = HmsHelper.getHms(data, hmsCollection)
|
|
203
|
+
|
|
204
|
+
hms?.changeMetadata(data, callback)
|
|
205
|
+
}
|
|
206
|
+
|
|
207
|
+
@ReactMethod
|
|
208
|
+
fun startRTMPOrRecording(data: ReadableMap, callback: Promise?) {
|
|
209
|
+
val hms = HmsHelper.getHms(data, hmsCollection)
|
|
210
|
+
|
|
211
|
+
hms?.startRTMPOrRecording(data, callback)
|
|
212
|
+
}
|
|
213
|
+
|
|
214
|
+
@ReactMethod
|
|
215
|
+
fun stopRtmpAndRecording(data: ReadableMap, callback: Promise?) {
|
|
216
|
+
val hms = HmsHelper.getHms(data, hmsCollection)
|
|
217
|
+
|
|
218
|
+
hms?.stopRtmpAndRecording(callback)
|
|
219
|
+
}
|
|
220
|
+
|
|
186
221
|
fun emitEvent(event: String, data: WritableMap) {
|
|
187
222
|
reactApplicationContext
|
|
188
223
|
.getJSModule(DeviceEventManagerModule.RCTDeviceEventEmitter::class.java)
|