@100mslive/react-native-hms 0.7.4 → 0.8.3
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/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/.project +8 -2
- package/android/build.gradle +1 -2
- package/android/src/main/java/com/reactnativehmssdk/HmsDecoder.kt +268 -232
- package/android/src/main/java/com/reactnativehmssdk/HmsHelper.kt +122 -12
- package/android/src/main/java/com/reactnativehmssdk/HmsModule.kt +143 -519
- package/android/src/main/java/com/reactnativehmssdk/HmsSDK.kt +940 -0
- package/android/src/main/java/com/reactnativehmssdk/HmsView.kt +34 -22
- package/android/src/main/java/com/reactnativehmssdk/HmssdkPackage.kt +1 -2
- package/android/src/main/java/com/reactnativehmssdk/HmssdkViewManager.kt +9 -13
- package/ios/HmsDecoder.swift +168 -33
- package/ios/HmsHelper.swift +121 -1
- package/ios/HmsManager.m +20 -14
- package/ios/HmsManager.swift +125 -398
- package/ios/HmsSDK.swift +784 -0
- package/ios/HmsView.swift +16 -8
- package/lib/commonjs/classes/HMSAudioTrack.js.map +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/HMSConfig.js +3 -7
- package/lib/commonjs/classes/HMSConfig.js.map +1 -1
- package/lib/commonjs/classes/HMSEncoder.js +65 -35
- 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 +39 -1
- package/lib/commonjs/classes/HMSLocalAudioTrack.js.map +1 -1
- package/lib/commonjs/classes/HMSLocalPeer.js.map +1 -1
- package/lib/commonjs/classes/HMSLocalVideoTrack.js +28 -2
- 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 +21 -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 +21 -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 +399 -150
- 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 +8 -18
- 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/HMSTrackType.js +14 -0
- package/lib/commonjs/classes/HMSTrackType.js.map +1 -0
- 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/HMSVideoTrack.js +2 -0
- package/lib/commonjs/classes/HMSVideoTrack.js.map +1 -1
- package/lib/commonjs/classes/HMSVideoTrackSettings.js +0 -3
- package/lib/commonjs/classes/HMSVideoTrackSettings.js.map +1 -1
- package/lib/commonjs/classes/HmsView.js +10 -7
- package/lib/commonjs/classes/HmsView.js.map +1 -1
- package/lib/commonjs/index.js +112 -0
- package/lib/commonjs/index.js.map +1 -1
- package/lib/module/classes/HMSAudioTrack.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/HMSConfig.js +3 -7
- package/lib/module/classes/HMSConfig.js.map +1 -1
- package/lib/module/classes/HMSEncoder.js +64 -35
- 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 +37 -2
- package/lib/module/classes/HMSLocalAudioTrack.js.map +1 -1
- package/lib/module/classes/HMSLocalPeer.js.map +1 -1
- package/lib/module/classes/HMSLocalVideoTrack.js +25 -2
- 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 +18 -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 +18 -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 +388 -150
- 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 +8 -16
- 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/HMSTrackType.js +7 -0
- package/lib/module/classes/HMSTrackType.js.map +1 -0
- 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/HMSVideoTrack.js +2 -0
- package/lib/module/classes/HMSVideoTrack.js.map +1 -1
- package/lib/module/classes/HMSVideoTrackSettings.js +0 -3
- package/lib/module/classes/HMSVideoTrackSettings.js.map +1 -1
- package/lib/module/classes/HmsView.js +10 -7
- package/lib/module/classes/HmsView.js.map +1 -1
- package/lib/module/index.js +8 -0
- package/lib/module/index.js.map +1 -1
- package/lib/typescript/classes/HMSAudioTrack.d.ts +3 -0
- 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/HMSConfig.d.ts +2 -4
- package/lib/typescript/classes/HMSEncoder.d.ts +14 -12
- package/lib/typescript/classes/HMSException.d.ts +22 -0
- package/lib/typescript/classes/HMSLocalAudioTrack.d.ts +5 -0
- package/lib/typescript/classes/HMSLocalPeer.d.ts +6 -0
- package/lib/typescript/classes/HMSLocalVideoTrack.d.ts +4 -0
- package/lib/typescript/classes/HMSLogger.d.ts +11 -4
- 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/HMSRemoteAudioTrack.d.ts +4 -0
- package/lib/typescript/classes/HMSRemotePeer.d.ts +3 -0
- package/lib/typescript/classes/HMSRemoteVideoTrack.d.ts +4 -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 +40 -11
- package/lib/typescript/classes/HMSServerRecordingState.d.ts +9 -0
- package/lib/typescript/classes/HMSTrack.d.ts +6 -1
- package/lib/typescript/classes/HMSTrackSettings.d.ts +2 -0
- package/lib/typescript/classes/HMSTrackType.d.ts +4 -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/HMSVideoTrack.d.ts +5 -1
- package/lib/typescript/classes/HMSVideoTrackSettings.d.ts +13 -10
- package/lib/typescript/classes/HmsView.d.ts +2 -1
- package/lib/typescript/index.d.ts +8 -0
- package/package.json +1 -1
- package/src/classes/HMSAudioTrack.ts +3 -0
- package/src/classes/HMSAudioTrackSettings.ts +9 -1
- package/src/classes/HMSBrowserRecordingState.ts +11 -0
- package/src/classes/HMSCameraFacing.ts +4 -0
- package/src/classes/HMSConfig.ts +3 -7
- package/src/classes/HMSEncoder.ts +64 -28
- package/src/classes/HMSException.ts +33 -0
- package/src/classes/HMSHelper.ts +2 -2
- package/src/classes/HMSLocalAudioTrack.ts +35 -2
- package/src/classes/HMSLocalPeer.ts +6 -0
- package/src/classes/HMSLocalVideoTrack.ts +22 -2
- package/src/classes/HMSLogger.ts +19 -6
- 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 +29 -2
- package/src/classes/HMSRemotePeer.ts +3 -0
- package/src/classes/HMSRemoteVideoTrack.ts +29 -2
- package/src/classes/HMSRoom.ts +12 -0
- package/src/classes/HMSRtmpStreamingState.ts +11 -0
- package/src/classes/{HMSSDK.ts → HMSSDK.tsx} +332 -98
- package/src/classes/HMSServerRecordingState.ts +11 -0
- package/src/classes/HMSTrack.ts +9 -15
- package/src/classes/HMSTrackSettings.ts +3 -0
- package/src/classes/HMSTrackType.ts +4 -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/HMSVideoTrack.ts +6 -1
- package/src/classes/HMSVideoTrackSettings.ts +13 -10
- package/src/classes/HmsView.tsx +4 -0
- package/src/index.ts +8 -0
- package/ios/Hmssdk.m +0 -8
- package/ios/Hmssdk.swift +0 -8
package/ios/HmsManager.m
CHANGED
|
@@ -5,21 +5,27 @@
|
|
|
5
5
|
|
|
6
6
|
RCT_EXTERN_METHOD(join: (NSDictionary) credentials)
|
|
7
7
|
RCT_EXTERN_METHOD(preview: (NSDictionary) credentials)
|
|
8
|
-
RCT_EXTERN_METHOD(setLocalMute: (
|
|
9
|
-
RCT_EXTERN_METHOD(setLocalVideoMute: (
|
|
10
|
-
RCT_EXTERN_METHOD(sendBroadcastMessage: (NSDictionary) data)
|
|
11
|
-
RCT_EXTERN_METHOD(sendGroupMessage: (NSDictionary) data)
|
|
12
|
-
RCT_EXTERN_METHOD(sendDirectMessage: (NSDictionary) data)
|
|
8
|
+
RCT_EXTERN_METHOD(setLocalMute: (NSDictionary) isMute)
|
|
9
|
+
RCT_EXTERN_METHOD(setLocalVideoMute: (NSDictionary) isMute)
|
|
10
|
+
RCT_EXTERN_METHOD(sendBroadcastMessage: (NSDictionary) data :(RCTPromiseResolveBlock) resolve :(RCTPromiseRejectBlock) reject)
|
|
11
|
+
RCT_EXTERN_METHOD(sendGroupMessage: (NSDictionary) data :(RCTPromiseResolveBlock) resolve :(RCTPromiseRejectBlock) reject)
|
|
12
|
+
RCT_EXTERN_METHOD(sendDirectMessage: (NSDictionary) data :(RCTPromiseResolveBlock) resolve :(RCTPromiseRejectBlock) reject)
|
|
13
13
|
RCT_EXTERN_METHOD(setPlaybackAllowed: (NSDictionary) data)
|
|
14
|
-
RCT_EXTERN_METHOD(removePeer: (NSDictionary) data)
|
|
15
|
-
RCT_EXTERN_METHOD(endRoom: (NSDictionary) data)
|
|
16
|
-
RCT_EXTERN_METHOD(changeRole: (NSDictionary) data)
|
|
17
|
-
RCT_EXTERN_METHOD(changeTrackState: (NSDictionary) data)
|
|
18
|
-
RCT_EXTERN_METHOD(
|
|
14
|
+
RCT_EXTERN_METHOD(removePeer: (NSDictionary) data :(RCTPromiseResolveBlock) resolve :(RCTPromiseRejectBlock) reject)
|
|
15
|
+
RCT_EXTERN_METHOD(endRoom: (NSDictionary) data :(RCTPromiseResolveBlock) resolve :(RCTPromiseRejectBlock) reject)
|
|
16
|
+
RCT_EXTERN_METHOD(changeRole: (NSDictionary) data :(RCTPromiseResolveBlock) resolve :(RCTPromiseRejectBlock) reject)
|
|
17
|
+
RCT_EXTERN_METHOD(changeTrackState: (NSDictionary) data :(RCTPromiseResolveBlock) resolve :(RCTPromiseRejectBlock) reject)
|
|
18
|
+
RCT_EXTERN_METHOD(changeTrackStateRoles: (NSDictionary) data :(RCTPromiseResolveBlock) resolve :(RCTPromiseRejectBlock) reject)
|
|
19
|
+
RCT_EXTERN_METHOD(acceptRoleChange: (NSDictionary) data)
|
|
19
20
|
RCT_EXTERN_METHOD(isMute: (NSDictionary) data :(RCTPromiseResolveBlock) resolve :(RCTPromiseRejectBlock) reject)
|
|
21
|
+
RCT_EXTERN_METHOD(getRoom: (NSDictionary) data :(RCTPromiseResolveBlock) resolve :(RCTPromiseRejectBlock) reject)
|
|
22
|
+
RCT_EXTERN_METHOD(switchCamera: (NSDictionary) data)
|
|
23
|
+
RCT_EXTERN_METHOD(setVolume: (NSDictionary) data)
|
|
24
|
+
RCT_EXTERN_METHOD(build : (NSDictionary) data :(RCTPromiseResolveBlock) resolve :(RCTPromiseRejectBlock) reject)
|
|
25
|
+
RCT_EXTERN_METHOD(leave: (NSDictionary) data :(RCTPromiseResolveBlock) resolve :(RCTPromiseRejectBlock) reject)
|
|
26
|
+
RCT_EXTERN_METHOD(muteAllPeersAudio: (NSDictionary) mute)
|
|
20
27
|
RCT_EXTERN_METHOD(isPlaybackAllowed: (NSDictionary) data :(RCTPromiseResolveBlock) resolve :(RCTPromiseRejectBlock) reject)
|
|
21
|
-
RCT_EXTERN_METHOD(
|
|
22
|
-
RCT_EXTERN_METHOD(
|
|
23
|
-
RCT_EXTERN_METHOD(
|
|
24
|
-
RCT_EXTERN_METHOD(muteAllPeersAudio: (BOOL) mute)
|
|
28
|
+
RCT_EXTERN_METHOD(changeMetadata: (NSDictionary) data :(RCTPromiseResolveBlock) resolve :(RCTPromiseRejectBlock) reject)
|
|
29
|
+
RCT_EXTERN_METHOD(startRTMPOrRecording: (NSDictionary) data :(RCTPromiseResolveBlock) resolve :(RCTPromiseRejectBlock) reject)
|
|
30
|
+
RCT_EXTERN_METHOD(stopRtmpAndRecording: (NSDictionary) data :(RCTPromiseResolveBlock) resolve :(RCTPromiseRejectBlock) reject)
|
|
25
31
|
@end
|
package/ios/HmsManager.swift
CHANGED
|
@@ -2,12 +2,9 @@
|
|
|
2
2
|
import HMSSDK
|
|
3
3
|
|
|
4
4
|
@objc(HmsManager)
|
|
5
|
-
class HmsManager: RCTEventEmitter
|
|
5
|
+
class HmsManager: RCTEventEmitter{
|
|
6
6
|
|
|
7
|
-
var
|
|
8
|
-
var config: HMSConfig?
|
|
9
|
-
var recentRoleChangeRequest: HMSRoleChangeRequest?
|
|
10
|
-
var recentChangeTrackStateRequest: HMSChangeTrackStateRequest?
|
|
7
|
+
var hmsCollection: [String: HmsSDK] = [:]
|
|
11
8
|
|
|
12
9
|
let ON_PREVIEW = "ON_PREVIEW"
|
|
13
10
|
let ON_JOIN = "ON_JOIN"
|
|
@@ -29,9 +26,9 @@ class HmsManager: RCTEventEmitter, HMSUpdateListener, HMSPreviewListener {
|
|
|
29
26
|
super.init()
|
|
30
27
|
}
|
|
31
28
|
|
|
32
|
-
override class func requiresMainQueueSetup() -> Bool {
|
|
33
|
-
true
|
|
34
|
-
}
|
|
29
|
+
// override class func requiresMainQueueSetup() -> Bool {
|
|
30
|
+
// true
|
|
31
|
+
// }
|
|
35
32
|
|
|
36
33
|
override func supportedEvents() -> [String]! {
|
|
37
34
|
return [ON_JOIN, ON_PREVIEW, ON_ROOM_UPDATE, ON_PEER_UPDATE, ON_TRACK_UPDATE, ON_ERROR, ON_MESSAGE, ON_SPEAKER, RECONNECTING, RECONNECTED, ON_ROLE_CHANGE_REQUEST, ON_CHANGE_TRACK_STATE_REQUEST, ON_REMOVED_FROM_ROOM]
|
|
@@ -41,479 +38,209 @@ class HmsManager: RCTEventEmitter, HMSUpdateListener, HMSPreviewListener {
|
|
|
41
38
|
// MARK: - HMS SDK Actions
|
|
42
39
|
|
|
43
40
|
@objc
|
|
44
|
-
func build() {
|
|
41
|
+
func build(_ data: NSDictionary, _ resolve: RCTPromiseResolveBlock?, _ reject: RCTPromiseRejectBlock?) {
|
|
45
42
|
DispatchQueue.main.async { [weak self] in
|
|
46
|
-
|
|
43
|
+
let hasItem = self?.hmsCollection.index(forKey: "12345")
|
|
44
|
+
|
|
45
|
+
if let _ = hasItem {
|
|
46
|
+
let id = UUID().uuidString
|
|
47
|
+
let hms = HmsSDK(data: data, delegate: self, uid: id)
|
|
48
|
+
self?.hmsCollection[id] = hms
|
|
49
|
+
|
|
50
|
+
resolve?(id)
|
|
51
|
+
} else {
|
|
52
|
+
let id = "12345"
|
|
53
|
+
let hms = HmsSDK(data: data, delegate: self, uid: id)
|
|
54
|
+
self?.hmsCollection[id] = hms
|
|
55
|
+
|
|
56
|
+
resolve?(id)
|
|
57
|
+
}
|
|
47
58
|
}
|
|
48
59
|
}
|
|
49
60
|
|
|
50
61
|
@objc
|
|
51
62
|
func preview(_ credentials: NSDictionary) {
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
let user = credentials.value(forKey: "userID") as? String,
|
|
55
|
-
let room = credentials.value(forKey: "roomID") as? String
|
|
56
|
-
else {
|
|
57
|
-
return
|
|
58
|
-
}
|
|
59
|
-
|
|
60
|
-
DispatchQueue.main.async { [weak self] in
|
|
61
|
-
guard let strongSelf = self else { return }
|
|
62
|
-
if let endpoint = credentials.value(forKey: "endpoint") as? String {
|
|
63
|
-
strongSelf.config = HMSConfig(userName: user, userID: UUID().uuidString, roomID: room, authToken: authToken, endpoint: endpoint)
|
|
64
|
-
strongSelf.hms?.preview(config: strongSelf.config!, delegate: strongSelf)
|
|
65
|
-
} else {
|
|
66
|
-
strongSelf.config = HMSConfig(userName: user, userID: UUID().uuidString, roomID: room, authToken: authToken)
|
|
67
|
-
strongSelf.hms?.preview(config: strongSelf.config!, delegate: strongSelf)
|
|
68
|
-
}
|
|
69
|
-
}
|
|
63
|
+
let hms = HmsHelper.getHms(credentials, hmsCollection)
|
|
64
|
+
hms?.preview(credentials)
|
|
70
65
|
}
|
|
71
66
|
|
|
72
67
|
@objc
|
|
73
68
|
func join(_ credentials: NSDictionary) {
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
let user = credentials.value(forKey: "username") as? String,
|
|
77
|
-
let room = credentials.value(forKey: "roomID") as? String
|
|
78
|
-
else {
|
|
79
|
-
return
|
|
80
|
-
}
|
|
81
|
-
|
|
82
|
-
DispatchQueue.main.async { [weak self] in
|
|
83
|
-
guard let strongSelf = self else { return }
|
|
84
|
-
if let config = strongSelf.config {
|
|
85
|
-
do{
|
|
86
|
-
try strongSelf.hms?.join(config: config, delegate: strongSelf)
|
|
87
|
-
}catch let error{
|
|
88
|
-
strongSelf.sendEvent(withName: strongSelf.ON_ERROR, body: ["event": strongSelf.ON_ERROR, "error": error.localizedDescription])
|
|
89
|
-
}
|
|
90
|
-
} else {
|
|
91
|
-
if let endpoint = credentials.value(forKey: "endpoint") as? String {
|
|
92
|
-
do{
|
|
93
|
-
strongSelf.config = HMSConfig(userName: user, userID: UUID().uuidString, roomID: room, authToken: authToken, endpoint: endpoint)
|
|
94
|
-
try strongSelf.hms?.join(config: strongSelf.config!, delegate: strongSelf)
|
|
95
|
-
}catch let error{
|
|
96
|
-
strongSelf.sendEvent(withName: strongSelf.ON_ERROR, body: ["event": strongSelf.ON_ERROR, "error": error.localizedDescription])
|
|
97
|
-
}
|
|
98
|
-
} else {
|
|
99
|
-
do{
|
|
100
|
-
strongSelf.config = HMSConfig(userName: user, userID: UUID().uuidString, roomID: room, authToken: authToken)
|
|
101
|
-
try strongSelf.hms?.join(config: strongSelf.config!, delegate: strongSelf)
|
|
102
|
-
}catch let error{
|
|
103
|
-
strongSelf.sendEvent(withName: strongSelf.ON_ERROR, body: ["event": strongSelf.ON_ERROR, "error": error.localizedDescription])
|
|
104
|
-
}
|
|
105
|
-
}
|
|
106
|
-
}
|
|
107
|
-
}
|
|
69
|
+
let hms = HmsHelper.getHms(credentials, hmsCollection)
|
|
70
|
+
hms?.join(credentials)
|
|
108
71
|
}
|
|
109
72
|
|
|
110
73
|
@objc
|
|
111
|
-
func setLocalMute(_
|
|
112
|
-
|
|
113
|
-
|
|
114
|
-
|
|
74
|
+
func setLocalMute(_ data: NSDictionary) {
|
|
75
|
+
let hms = HmsHelper.getHms(data, hmsCollection)
|
|
76
|
+
|
|
77
|
+
hms?.setLocalMute(data)
|
|
115
78
|
}
|
|
116
79
|
|
|
117
80
|
@objc
|
|
118
|
-
func setLocalVideoMute(_
|
|
119
|
-
|
|
120
|
-
|
|
121
|
-
|
|
81
|
+
func setLocalVideoMute(_ data: NSDictionary) {
|
|
82
|
+
let hms = HmsHelper.getHms(data, hmsCollection)
|
|
83
|
+
|
|
84
|
+
hms?.setLocalVideoMute(data)
|
|
122
85
|
}
|
|
123
86
|
|
|
124
87
|
@objc
|
|
125
|
-
func switchCamera() {
|
|
126
|
-
|
|
127
|
-
|
|
128
|
-
|
|
88
|
+
func switchCamera(_ data: NSDictionary) {
|
|
89
|
+
let hms = HmsHelper.getHms(data, hmsCollection)
|
|
90
|
+
|
|
91
|
+
hms?.switchCamera()
|
|
129
92
|
}
|
|
130
93
|
|
|
131
94
|
@objc
|
|
132
|
-
func leave() {
|
|
133
|
-
|
|
134
|
-
|
|
135
|
-
|
|
136
|
-
self?.recentChangeTrackStateRequest = nil
|
|
137
|
-
self?.hms?.leave();
|
|
138
|
-
}
|
|
95
|
+
func leave(_ data: NSDictionary, _ resolve: RCTPromiseResolveBlock?, _ reject: RCTPromiseRejectBlock?) {
|
|
96
|
+
let hms = HmsHelper.getHms(data, hmsCollection)
|
|
97
|
+
|
|
98
|
+
hms?.leave(resolve, reject)
|
|
139
99
|
}
|
|
140
100
|
|
|
141
101
|
@objc
|
|
142
|
-
func sendBroadcastMessage(_ data: NSDictionary) {
|
|
143
|
-
|
|
144
|
-
|
|
145
|
-
|
|
146
|
-
}
|
|
147
|
-
let type = data.value(forKey: "type") as? String ?? "chat"
|
|
148
|
-
DispatchQueue.main.async { [weak self] in
|
|
149
|
-
self?.hms?.sendBroadcastMessage(type: type, message: message)
|
|
150
|
-
}
|
|
102
|
+
func sendBroadcastMessage(_ data: NSDictionary, _ resolve: RCTPromiseResolveBlock?, _ reject: RCTPromiseRejectBlock?) {
|
|
103
|
+
let hms = HmsHelper.getHms(data, hmsCollection)
|
|
104
|
+
|
|
105
|
+
hms?.sendBroadcastMessage(data, resolve, reject)
|
|
151
106
|
}
|
|
152
107
|
|
|
153
108
|
@objc
|
|
154
|
-
func sendGroupMessage(_ data: NSDictionary) {
|
|
155
|
-
|
|
156
|
-
|
|
157
|
-
|
|
158
|
-
return
|
|
159
|
-
}
|
|
160
|
-
let type = data.value(forKey: "type") as? String ?? "chat"
|
|
161
|
-
DispatchQueue.main.async { [weak self] in
|
|
162
|
-
let encodedTargetedRoles = HmsHelper.getRolesFromRoleNames(targetedRoles, roles: self?.hms?.roles)
|
|
163
|
-
self?.hms?.sendGroupMessage(type: type, message: message, roles: encodedTargetedRoles)
|
|
164
|
-
}
|
|
109
|
+
func sendGroupMessage(_ data: NSDictionary, _ resolve: RCTPromiseResolveBlock?, _ reject: RCTPromiseRejectBlock?) {
|
|
110
|
+
let hms = HmsHelper.getHms(data, hmsCollection)
|
|
111
|
+
|
|
112
|
+
hms?.sendGroupMessage(data, resolve, reject)
|
|
165
113
|
}
|
|
166
114
|
|
|
167
115
|
@objc
|
|
168
|
-
func sendDirectMessage(_ data: NSDictionary) {
|
|
169
|
-
|
|
170
|
-
|
|
171
|
-
|
|
172
|
-
return
|
|
173
|
-
}
|
|
174
|
-
let type = data.value(forKey: "type") as? String ?? "chat"
|
|
175
|
-
DispatchQueue.main.async { [weak self] in
|
|
176
|
-
guard let peer = HmsHelper.getPeerFromPeerId(peerId, remotePeers: self?.hms?.remotePeers) else { return }
|
|
177
|
-
self?.hms?.sendDirectMessage(type: type, message: message, peer: peer)
|
|
178
|
-
}
|
|
116
|
+
func sendDirectMessage(_ data: NSDictionary, _ resolve: RCTPromiseResolveBlock?, _ reject: RCTPromiseRejectBlock?) {
|
|
117
|
+
let hms = HmsHelper.getHms(data, hmsCollection)
|
|
118
|
+
|
|
119
|
+
hms?.sendDirectMessage(data, resolve, reject)
|
|
179
120
|
}
|
|
180
121
|
|
|
181
122
|
@objc
|
|
182
|
-
func acceptRoleChange() {
|
|
123
|
+
func acceptRoleChange(_ data: NSDictionary) {
|
|
124
|
+
let hms = HmsHelper.getHms(data, hmsCollection)
|
|
183
125
|
|
|
184
|
-
|
|
185
|
-
|
|
186
|
-
guard let request = self?.recentRoleChangeRequest else { return }
|
|
187
|
-
|
|
188
|
-
self?.hms?.accept(changeRole: request)
|
|
189
|
-
|
|
190
|
-
self?.recentRoleChangeRequest = nil
|
|
191
|
-
}
|
|
126
|
+
hms?.acceptRoleChange()
|
|
192
127
|
}
|
|
193
128
|
|
|
194
129
|
@objc
|
|
195
|
-
func changeRole(_ data: NSDictionary) {
|
|
196
|
-
|
|
197
|
-
guard let peerId = data.value(forKey: "peerId") as? String,
|
|
198
|
-
let role = data.value(forKey: "role") as? String
|
|
199
|
-
else {
|
|
200
|
-
return
|
|
201
|
-
}
|
|
202
|
-
|
|
203
|
-
let force = data.value(forKey: "force") as? Bool ?? false
|
|
204
|
-
|
|
205
|
-
DispatchQueue.main.async { [weak self] in
|
|
206
|
-
guard let peer = HmsHelper.getPeerFromPeerId(peerId, remotePeers: self?.hms?.remotePeers),
|
|
207
|
-
let role = HmsHelper.getRoleFromRoleName(role, roles: self?.hms?.roles)
|
|
208
|
-
else { return }
|
|
130
|
+
func changeRole(_ data: NSDictionary, _ resolve: RCTPromiseResolveBlock?, _ reject: RCTPromiseRejectBlock?) {
|
|
131
|
+
let hms = HmsHelper.getHms(data, hmsCollection)
|
|
209
132
|
|
|
210
|
-
|
|
211
|
-
}
|
|
133
|
+
hms?.changeRole(data, resolve, reject)
|
|
212
134
|
}
|
|
213
135
|
|
|
214
136
|
@objc
|
|
215
|
-
func changeTrackState(_ data: NSDictionary) {
|
|
216
|
-
|
|
217
|
-
guard let trackId = data.value(forKey: "trackId") as? String
|
|
218
|
-
else {
|
|
219
|
-
return
|
|
220
|
-
}
|
|
221
|
-
|
|
222
|
-
let mute = data.value(forKey: "mute") as? Bool ?? true
|
|
137
|
+
func changeTrackState(_ data: NSDictionary, _ resolve: RCTPromiseResolveBlock?, _ reject: RCTPromiseRejectBlock?) {
|
|
138
|
+
let hms = HmsHelper.getHms(data, hmsCollection)
|
|
223
139
|
|
|
224
|
-
|
|
225
|
-
guard let remotePeers = self?.hms?.remotePeers,
|
|
226
|
-
let track = HmsHelper.getTrackFromTrackId(trackId, remotePeers)
|
|
227
|
-
else { return }
|
|
228
|
-
|
|
229
|
-
self?.hms?.changeTrackState(for: track, mute: mute)
|
|
230
|
-
}
|
|
140
|
+
hms?.changeTrackState(data, resolve, reject)
|
|
231
141
|
}
|
|
232
142
|
|
|
233
143
|
@objc
|
|
234
|
-
func
|
|
235
|
-
|
|
236
|
-
else {
|
|
237
|
-
reject?(nil, "NOT_FOUND", nil)
|
|
238
|
-
return
|
|
239
|
-
}
|
|
144
|
+
func changeTrackStateRoles(_ data: NSDictionary, _ resolve: RCTPromiseResolveBlock?, _ reject: RCTPromiseRejectBlock?) {
|
|
145
|
+
let hms = HmsHelper.getHms(data, hmsCollection)
|
|
240
146
|
|
|
241
|
-
|
|
242
|
-
guard let localPeer = self?.hms?.localPeer,
|
|
243
|
-
let localTrack = HmsHelper.getLocalTrackFromTrackId(trackId, localPeer: localPeer)
|
|
244
|
-
else {
|
|
245
|
-
guard let remotePeers = self?.hms?.remotePeers,
|
|
246
|
-
let track = HmsHelper.getTrackFromTrackId(trackId, remotePeers)
|
|
247
|
-
else {
|
|
248
|
-
reject?(nil, "NOT_FOUND", nil)
|
|
249
|
-
return
|
|
250
|
-
}
|
|
251
|
-
let mute = track.isMute()
|
|
252
|
-
resolve?(mute)
|
|
253
|
-
return
|
|
254
|
-
}
|
|
255
|
-
let mute = localTrack.isMute()
|
|
256
|
-
resolve?(mute)
|
|
257
|
-
}
|
|
147
|
+
hms?.changeTrackStateRoles(data, resolve, reject)
|
|
258
148
|
}
|
|
259
149
|
|
|
260
150
|
@objc
|
|
261
|
-
func
|
|
262
|
-
|
|
263
|
-
|
|
264
|
-
|
|
151
|
+
func isMute(_ data: NSDictionary, _ resolve: RCTPromiseResolveBlock?, _ reject: RCTPromiseRejectBlock?) {
|
|
152
|
+
let hms = HmsHelper.getHms(data, hmsCollection)
|
|
153
|
+
if let hmsInstance = hms {
|
|
154
|
+
hmsInstance.isMute(data, resolve, reject)
|
|
155
|
+
} else {
|
|
156
|
+
reject?(nil, "NO_INSTANCE", nil)
|
|
265
157
|
return
|
|
266
|
-
}
|
|
267
|
-
DispatchQueue.main.async { [weak self] in
|
|
268
|
-
guard let remotePeers = self?.hms?.remotePeers
|
|
269
|
-
else {
|
|
270
|
-
reject?(nil, "NOT_FOUND", nil)
|
|
271
|
-
return
|
|
272
|
-
}
|
|
273
|
-
let remoteAudioTrack = HmsHelper.getRemoteAudioTrackFromTrackId(trackId, remotePeers)
|
|
274
|
-
let remoteVideoTrack = HmsHelper.getRemoteVideoTrackFromTrackId(trackId, remotePeers)
|
|
275
|
-
if (remoteAudioTrack != nil) {
|
|
276
|
-
let isPlaybackAllowed = remoteAudioTrack?.isPlaybackAllowed()
|
|
277
|
-
resolve?(isPlaybackAllowed)
|
|
278
|
-
return
|
|
279
|
-
} else if (remoteVideoTrack != nil) {
|
|
280
|
-
let isPlaybackAllowed = remoteVideoTrack?.isPlaybackAllowed()
|
|
281
|
-
resolve?(isPlaybackAllowed)
|
|
282
|
-
return
|
|
283
|
-
} else {
|
|
284
|
-
reject?(nil, "NOT_FOUND",nil)
|
|
285
|
-
return
|
|
286
|
-
}
|
|
287
|
-
}
|
|
158
|
+
}
|
|
288
159
|
}
|
|
289
160
|
|
|
290
|
-
@objc
|
|
291
|
-
func setPlaybackAllowed(_ data: NSDictionary) {
|
|
292
|
-
guard let trackId = data.value(forKey: "trackId") as? String
|
|
293
|
-
else {
|
|
294
|
-
return
|
|
295
|
-
}
|
|
296
|
-
guard let playbackAllowed = data.value(forKey: "playbackAllowed") as? Bool
|
|
297
|
-
else {
|
|
298
|
-
return
|
|
299
|
-
}
|
|
300
|
-
DispatchQueue.main.async { [weak self] in
|
|
301
|
-
guard let remotePeers = self?.hms?.remotePeers
|
|
302
|
-
else {
|
|
303
|
-
return
|
|
304
|
-
}
|
|
305
|
-
let remoteAudioTrack = HmsHelper.getRemoteAudioTrackFromTrackId(trackId, remotePeers)
|
|
306
|
-
let remoteVideoTrack = HmsHelper.getRemoteVideoTrackFromTrackId(trackId, remotePeers)
|
|
307
|
-
if (remoteAudioTrack != nil) {
|
|
308
|
-
if(playbackAllowed){
|
|
309
|
-
remoteAudioTrack?.setPlaybackAllowed(playbackAllowed)
|
|
310
|
-
}else {
|
|
311
|
-
remoteAudioTrack?.setPlaybackAllowed(playbackAllowed)
|
|
312
|
-
}
|
|
313
|
-
} else if (remoteVideoTrack != nil) {
|
|
314
|
-
remoteVideoTrack?.setPlaybackAllowed(playbackAllowed)
|
|
315
|
-
}
|
|
316
|
-
}
|
|
317
|
-
}
|
|
318
161
|
|
|
319
162
|
@objc
|
|
320
|
-
func removePeer(_ data: NSDictionary) {
|
|
321
|
-
|
|
322
|
-
|
|
323
|
-
|
|
324
|
-
guard let peerId = data.value(forKey: "peerId") as? String
|
|
325
|
-
else {
|
|
326
|
-
return
|
|
327
|
-
}
|
|
328
|
-
|
|
329
|
-
let reason = data.value(forKey: "reason") as? String
|
|
163
|
+
func removePeer(_ data: NSDictionary, _ resolve: RCTPromiseResolveBlock?, _ reject: RCTPromiseRejectBlock?) {
|
|
164
|
+
let hms = HmsHelper.getHms(data, hmsCollection)
|
|
330
165
|
|
|
331
|
-
|
|
332
|
-
|
|
333
|
-
guard let remotePeers = self?.hms?.remotePeers,
|
|
334
|
-
let peer = HmsHelper.getPeerFromPeerId(peerId, remotePeers: remotePeers)
|
|
335
|
-
else { return }
|
|
336
|
-
|
|
337
|
-
self?.hms?.removePeer(peer, reason: reason ?? "Removed from room")
|
|
338
|
-
}
|
|
166
|
+
hms?.removePeer(data, resolve, reject)
|
|
339
167
|
}
|
|
340
168
|
|
|
341
169
|
|
|
342
170
|
@objc
|
|
343
|
-
func endRoom(_ data: NSDictionary) {
|
|
344
|
-
|
|
345
|
-
let lock = data.value(forKey: "lock") as? Bool
|
|
346
|
-
let reason = data.value(forKey: "reason") as? String
|
|
171
|
+
func endRoom(_ data: NSDictionary, _ resolve: RCTPromiseResolveBlock?, _ reject: RCTPromiseRejectBlock?) {
|
|
172
|
+
let hms = HmsHelper.getHms(data, hmsCollection)
|
|
347
173
|
|
|
348
|
-
|
|
349
|
-
self?.hms?.endRoom(lock: lock ?? false, reason: reason ?? "Room was ended")
|
|
350
|
-
}
|
|
174
|
+
hms?.endRoom(data, resolve, reject)
|
|
351
175
|
}
|
|
352
|
-
|
|
353
|
-
|
|
354
|
-
|
|
355
|
-
|
|
356
|
-
// Callback from join action
|
|
357
|
-
let roomData = HmsDecoder.getHmsRoom(room)
|
|
358
|
-
let localPeerData = HmsDecoder.getHmsLocalPeer(hms?.localPeer)
|
|
359
|
-
let remotePeerData = HmsDecoder.getHmsRemotePeers(hms?.remotePeers)
|
|
360
|
-
|
|
361
|
-
let decodedRoles = HmsDecoder.getAllRoles(hms?.roles)
|
|
362
|
-
|
|
363
|
-
self.sendEvent(withName: ON_JOIN, body: ["event": ON_JOIN, "room": roomData, "localPeer": localPeerData, "remotePeers": remotePeerData, "roles": decodedRoles])
|
|
364
|
-
}
|
|
365
|
-
|
|
366
|
-
func onPreview(room: HMSRoom, localTracks: [HMSTrack]) {
|
|
367
|
-
let previewTracks = HmsDecoder.getPreviewTracks(localTracks)
|
|
368
|
-
let hmsRoom = HmsDecoder.getHmsRoom(room)
|
|
369
|
-
let localPeerData = HmsDecoder.getHmsLocalPeer(hms?.localPeer)
|
|
370
|
-
|
|
371
|
-
self.sendEvent(withName: ON_PREVIEW, body: ["event": ON_PREVIEW, "room": hmsRoom, "previewTracks": previewTracks, "localPeer": localPeerData])
|
|
372
|
-
}
|
|
373
|
-
|
|
374
|
-
func on(room: HMSRoom, update: HMSRoomUpdate) {
|
|
375
|
-
// Listener for any updation in room
|
|
376
|
-
let roomData = HmsDecoder.getHmsRoom(room)
|
|
377
|
-
let type = getString(from: update)
|
|
378
|
-
|
|
379
|
-
let localPeerData = HmsDecoder.getHmsLocalPeer(hms?.localPeer)
|
|
380
|
-
let remotePeerData = HmsDecoder.getHmsRemotePeers(hms?.remotePeers)
|
|
176
|
+
|
|
177
|
+
@objc
|
|
178
|
+
func setPlaybackAllowed(_ data: NSDictionary) {
|
|
179
|
+
let hms = HmsHelper.getHms(data, hmsCollection)
|
|
381
180
|
|
|
382
|
-
|
|
181
|
+
hms?.setPlaybackAllowed(data)
|
|
383
182
|
}
|
|
384
183
|
|
|
385
|
-
|
|
386
|
-
|
|
387
|
-
let
|
|
388
|
-
let type = getString(from: update)
|
|
184
|
+
@objc
|
|
185
|
+
func isPlaybackAllowed(_ data: NSDictionary, _ resolve: RCTPromiseResolveBlock?, _ reject: RCTPromiseRejectBlock?) {
|
|
186
|
+
let hms = HmsHelper.getHms(data, hmsCollection)
|
|
389
187
|
|
|
390
|
-
|
|
391
|
-
let remotePeerData = HmsDecoder.getHmsRemotePeers(hms?.remotePeers)
|
|
392
|
-
|
|
393
|
-
self.sendEvent(withName: ON_PEER_UPDATE, body: ["event": ON_PEER_UPDATE, "type": type, "room": roomData, "localPeer": localPeerData, "remotePeers": remotePeerData])
|
|
188
|
+
hms?.isPlaybackAllowed(data, resolve, reject)
|
|
394
189
|
}
|
|
395
190
|
|
|
396
|
-
|
|
397
|
-
|
|
398
|
-
let
|
|
399
|
-
let type = getString(from: update)
|
|
400
|
-
|
|
401
|
-
let localPeerData = HmsDecoder.getHmsLocalPeer(hms?.localPeer)
|
|
402
|
-
let remotePeerData = HmsDecoder.getHmsRemotePeers(hms?.remotePeers)
|
|
191
|
+
@objc
|
|
192
|
+
func getRoom(_ data: NSDictionary, _ resolve: RCTPromiseResolveBlock?, _ reject: RCTPromiseRejectBlock?) {
|
|
193
|
+
let hms = HmsHelper.getHms(data, hmsCollection)
|
|
403
194
|
|
|
404
|
-
|
|
405
|
-
}
|
|
406
|
-
|
|
407
|
-
func on(error: HMSError) {
|
|
408
|
-
self.sendEvent(withName: ON_ERROR, body: ["event": ON_ERROR, "error": error.description, "code": error.code.rawValue, "id": error.id, "message": error.message])
|
|
409
|
-
}
|
|
410
|
-
|
|
411
|
-
func on(message: HMSMessage) {
|
|
412
|
-
self.sendEvent(withName: ON_MESSAGE, body: ["event": ON_MESSAGE, "sender": message.sender?.name ?? "", "time": message.time, "message": message.message, "type": message.type])
|
|
413
|
-
}
|
|
414
|
-
|
|
415
|
-
func on(updated speakers: [HMSSpeaker]) {
|
|
416
|
-
var speakerPeerIds: [[String : Any]] = []
|
|
417
|
-
for speaker in speakers {
|
|
418
|
-
speakerPeerIds.append(["peer": HmsDecoder.getHmsPeer(speaker.peer), "level": speaker.level, "track": HmsDecoder.getHmsTrack(speaker.track)])
|
|
419
|
-
}
|
|
420
|
-
self.sendEvent(withName: ON_SPEAKER, body: ["event": ON_SPEAKER, "count": speakers.count, "peers" :speakerPeerIds])
|
|
421
|
-
}
|
|
422
|
-
|
|
423
|
-
func onReconnecting() {
|
|
424
|
-
self.sendEvent(withName: RECONNECTING, body: ["event": RECONNECTING])
|
|
195
|
+
hms?.getRoom(data, resolve, reject)
|
|
425
196
|
}
|
|
426
197
|
|
|
427
|
-
|
|
428
|
-
|
|
198
|
+
// MARK: - HMS SDK Delegate Callbacks
|
|
199
|
+
func emitEvent(_ name: String, _ data: [String: Any]) {
|
|
200
|
+
self.sendEvent(withName: name, body: data)
|
|
429
201
|
}
|
|
430
202
|
|
|
431
|
-
|
|
432
|
-
let decodedRoleChangeRequest = HmsDecoder.getHmsRoleChangeRequest(roleChangeRequest)
|
|
433
|
-
recentRoleChangeRequest = roleChangeRequest
|
|
434
|
-
self.sendEvent(withName: ON_ROLE_CHANGE_REQUEST, body: decodedRoleChangeRequest)
|
|
435
|
-
}
|
|
203
|
+
// MARK: Helper Functions
|
|
436
204
|
|
|
437
|
-
|
|
438
|
-
|
|
439
|
-
|
|
440
|
-
|
|
205
|
+
@objc
|
|
206
|
+
func muteAllPeersAudio(_ data: NSDictionary) {
|
|
207
|
+
let hms = HmsHelper.getHms(data, hmsCollection)
|
|
208
|
+
|
|
209
|
+
hms?.muteAllPeersAudio(data)
|
|
441
210
|
}
|
|
442
211
|
|
|
443
|
-
|
|
444
|
-
|
|
445
|
-
let
|
|
446
|
-
|
|
447
|
-
|
|
448
|
-
self.sendEvent(withName: ON_REMOVED_FROM_ROOM, body: ["event": ON_REMOVED_FROM_ROOM, "requestedBy": decodedRequestedBy, "reason": reason, "roomEnded": roomEnded ])
|
|
212
|
+
@objc
|
|
213
|
+
func changeMetadata(_ data: NSDictionary, _ resolve: RCTPromiseResolveBlock?, _ reject: RCTPromiseRejectBlock?) {
|
|
214
|
+
let hms = HmsHelper.getHms(data, hmsCollection)
|
|
215
|
+
|
|
216
|
+
hms?.changeMetadata(data, resolve, reject)
|
|
449
217
|
}
|
|
450
|
-
|
|
451
|
-
|
|
452
|
-
// MARK: Helper Functions
|
|
453
|
-
|
|
218
|
+
|
|
454
219
|
@objc
|
|
455
|
-
func
|
|
456
|
-
|
|
457
|
-
let remotePeers = self?.hms?.remotePeers
|
|
458
|
-
for peer in remotePeers ?? [] {
|
|
459
|
-
peer.remoteAudioTrack()?.setPlaybackAllowed(!mute)
|
|
460
|
-
}
|
|
461
|
-
}
|
|
462
|
-
let roomData = HmsDecoder.getHmsRoom(hms?.room)
|
|
463
|
-
let localPeerData = HmsDecoder.getHmsLocalPeer(hms?.localPeer)
|
|
464
|
-
let remotePeerData = HmsDecoder.getHmsRemotePeers(hms?.remotePeers)
|
|
220
|
+
func setVolume(_ data: NSDictionary) {
|
|
221
|
+
let hms = HmsHelper.getHms(data, hmsCollection)
|
|
465
222
|
|
|
466
|
-
|
|
223
|
+
hms?.setVolume(data)
|
|
467
224
|
}
|
|
468
225
|
|
|
469
|
-
|
|
470
|
-
|
|
471
|
-
|
|
472
|
-
|
|
473
|
-
|
|
474
|
-
return "PEER_LEFT"
|
|
475
|
-
case .roleUpdated:
|
|
476
|
-
return "ROLE_CHANGED"
|
|
477
|
-
default:
|
|
478
|
-
return ""
|
|
479
|
-
}
|
|
226
|
+
@objc
|
|
227
|
+
func startRTMPOrRecording(_ data: NSDictionary, _ resolve: RCTPromiseResolveBlock?, _ reject: RCTPromiseRejectBlock?) {
|
|
228
|
+
let hms = HmsHelper.getHms(data, hmsCollection)
|
|
229
|
+
|
|
230
|
+
hms?.startRTMPOrRecording(data, resolve, reject)
|
|
480
231
|
}
|
|
481
232
|
|
|
482
|
-
|
|
483
|
-
|
|
484
|
-
|
|
485
|
-
|
|
486
|
-
|
|
487
|
-
return "TRACK_REMOVED"
|
|
488
|
-
case .trackMuted:
|
|
489
|
-
return "TRACK_MUTED"
|
|
490
|
-
case .trackUnmuted:
|
|
491
|
-
return "TRACK_UNMUTED"
|
|
492
|
-
case .trackDescriptionChanged:
|
|
493
|
-
return "TRACK_DESCRIPTION_CHANGED"
|
|
494
|
-
case .trackDegraded:
|
|
495
|
-
return "TRACK_DEGRADED"
|
|
496
|
-
case .trackRestored:
|
|
497
|
-
return "TRACK_RESTORED"
|
|
498
|
-
default:
|
|
499
|
-
return ""
|
|
500
|
-
}
|
|
233
|
+
@objc
|
|
234
|
+
func stopRtmpAndRecording(_ data: NSDictionary, _ resolve: RCTPromiseResolveBlock?, _ reject: RCTPromiseRejectBlock?) {
|
|
235
|
+
let hms = HmsHelper.getHms(data, hmsCollection)
|
|
236
|
+
|
|
237
|
+
hms?.stopRtmpAndRecording(resolve, reject)
|
|
501
238
|
}
|
|
502
239
|
|
|
503
|
-
|
|
504
|
-
|
|
505
|
-
|
|
506
|
-
|
|
507
|
-
|
|
508
|
-
|
|
509
|
-
case .browserRecordingStateUpdated:
|
|
510
|
-
return "BROWSER_RECORDING_STATE_UPDATED"
|
|
511
|
-
case .rtmpStreamingStateUpdated:
|
|
512
|
-
return "RTMP_STREAMING_STATE_UPDATED"
|
|
513
|
-
case.serverRecordingStateUpdated:
|
|
514
|
-
return "SERVER_RECORDING_STATE_UPDATED"
|
|
515
|
-
default:
|
|
516
|
-
return ""
|
|
517
|
-
}
|
|
518
|
-
}
|
|
240
|
+
// @objc
|
|
241
|
+
// func setLocalVideoSettings(_ data: NSDictionary) {
|
|
242
|
+
// let hms = HmsHelper.getHms(data, hmsCollection)
|
|
243
|
+
//
|
|
244
|
+
// hms?.setLocalVideoSettings(data)
|
|
245
|
+
// }
|
|
519
246
|
}
|