@100mslive/react-native-hms 0.8.1 → 0.8.2
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/android/build.gradle +1 -2
- package/android/src/main/java/com/reactnativehmssdk/HmsDecoder.kt +198 -254
- package/android/src/main/java/com/reactnativehmssdk/HmsHelper.kt +18 -30
- package/android/src/main/java/com/reactnativehmssdk/HmsModule.kt +18 -18
- package/android/src/main/java/com/reactnativehmssdk/HmsSDK.kt +182 -146
- package/android/src/main/java/com/reactnativehmssdk/HmsView.kt +15 -21
- 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 +33 -20
- package/ios/HmsHelper.swift +13 -3
- package/ios/HmsManager.m +8 -8
- package/ios/HmsManager.swift +16 -16
- package/ios/HmsSDK.swift +97 -29
- package/lib/commonjs/classes/HMSEncoder.js +6 -4
- package/lib/commonjs/classes/HMSEncoder.js.map +1 -1
- package/lib/commonjs/classes/HMSLocalAudioTrack.js +20 -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/HMSRemoteAudioTrack.js +19 -0
- package/lib/commonjs/classes/HMSRemoteAudioTrack.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/HMSSDK.js +179 -134
- package/lib/commonjs/classes/HMSSDK.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/index.js +14 -0
- package/lib/commonjs/index.js.map +1 -1
- package/lib/module/classes/HMSEncoder.js +6 -4
- package/lib/module/classes/HMSEncoder.js.map +1 -1
- package/lib/module/classes/HMSLocalAudioTrack.js +17 -0
- 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/HMSRemoteAudioTrack.js +16 -0
- package/lib/module/classes/HMSRemoteAudioTrack.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/HMSSDK.js +176 -134
- package/lib/module/classes/HMSSDK.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/index.js +1 -0
- package/lib/module/index.js.map +1 -1
- package/lib/typescript/classes/HMSLocalPeer.d.ts +3 -0
- package/lib/typescript/classes/HMSLogger.d.ts +7 -0
- package/lib/typescript/classes/HMSSDK.d.ts +11 -11
- package/lib/typescript/classes/HMSTrackSettings.d.ts +2 -0
- package/lib/typescript/classes/HMSVideoCodec.d.ts +4 -4
- package/lib/typescript/index.d.ts +1 -0
- package/package.json +1 -1
- package/src/classes/HMSEncoder.ts +3 -1
- package/src/classes/HMSLocalAudioTrack.ts +16 -0
- package/src/classes/HMSLocalPeer.ts +3 -0
- package/src/classes/HMSLocalVideoTrack.ts +15 -0
- package/src/classes/HMSLogger.ts +14 -1
- package/src/classes/HMSRemoteAudioTrack.ts +16 -0
- package/src/classes/HMSRemoteVideoTrack.ts +16 -0
- package/src/classes/HMSSDK.tsx +134 -73
- package/src/classes/HMSTrackSettings.ts +3 -0
- package/src/classes/HMSVideoCodec.ts +4 -4
- package/src/index.ts +1 -0
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["HMSSDK.tsx"],"names":["React","NativeEventEmitter","NativeModules","HMSUpdateListenerActions","HMSEncoder","HMSMessage","HMSHelper","HmsView","HMSViewComponent","HMSVideoViewMode","HmsManager","HmsEventEmitter","HmsSdk","HMSSDK","constructor","id","removeListeners","addListener","ON_PREVIEW","onPreviewListener","ON_JOIN","onJoinListener","ON_ROOM_UPDATE","onRoomListener","ON_PEER_UPDATE","onPeerListener","ON_TRACK_UPDATE","onTrackListener","ON_ERROR","onErrorListener","ON_MESSAGE","onMessageListener","ON_SPEAKER","onSpeakerListener","RECONNECTING","reconnectingListener","RECONNECTED","reconnectedListener","ON_ROLE_CHANGE_REQUEST","onRoleChangeRequestListener","ON_CHANGE_TRACK_STATE_REQUEST","onChangeTrackStateRequestListener","ON_REMOVED_FROM_ROOM","onRemovedFromRoomListener","removeListener","config","logger","verbose","join","preview","sink","trackId","style","mirror","scaleType","ASPECT_FIT","data","leave","muteStatus","undefined","localPeer","remotePeers","room","knownRoles","message","type","sendBroadcastMessage","roles","sendGroupMessage","getRoleNames","peerId","sendDirectMessage","metadata","changeMetadata","op","startRTMPOrRecording","stopRtmpAndRecording","peer","role","force","peerID","name","changeRole","track","mute","changeTrackState","source","changeTrackStateRoles","reason","removePeer","lock","endRoom","acceptRoleChange","muteAllPeersAudio","roomID","hmsRoom","getRoom","encodedHmsRoom","encodeHmsRoom","volume","setVolume","action","callback","onPreviewDelegate","onJoinDelegate","onRoomDelegate","onPeerDelegate","onTrackDelegate","onErrorDelegate","onMessageDelegate","onSpeakerDelegate","onReconnectingDelegate","onReconnectedDelegate","onRoleChangeRequestDelegate","onChangeTrackStateRequestDelegate","onRemovedFromRoomDelegate","hmsLogger","encodeHmsLocalPeer","previewTracks","encodeHmsPreviewTracks","encodeHmsRemotePeers","encodeHmsRoles","warn","encodedRoleChangeRequest","encodeHmsRoleChangeRequest","encodeHmsChangeTrackStateRequest","requestedBy","encodeHmsPeer","roomEnded","build","params","trackSettings","attachPreviewListener","attachListeners"],"mappings":"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","sourcesContent":["import React from 'react';\nimport { NativeEventEmitter, NativeModules, ViewStyle } from 'react-native';\nimport { HMSUpdateListenerActions } from './HMSUpdateListenerActions';\nimport type { HMSConfig } from './HMSConfig';\nimport type { HMSLocalPeer } from './HMSLocalPeer';\nimport type { HMSRemotePeer } from './HMSRemotePeer';\nimport type { HMSRoom } from './HMSRoom';\nimport type { HMSRole } from './HMSRole';\nimport { HMSEncoder } from './HMSEncoder';\nimport { HMSMessage } from './HMSMessage';\nimport { HMSHelper } from './HMSHelper';\nimport type { HMSTrack } from './HMSTrack';\nimport type { HMSTrackType } from './HMSTrackType';\nimport type { HMSLogger } from './HMSLogger';\nimport type { HMSPeer } from './HMSPeer';\nimport { HmsView as HMSViewComponent } from './HmsView';\nimport { HMSVideoViewMode } from './HMSVideoViewMode';\nimport type { HMSTrackSettings } from './HMSTrackSettings';\nimport type { HMSRTMPConfig } from './HMSRTMPConfig';\n\ninterface HmsComponentProps {\n trackId: string;\n sink: boolean;\n style: ViewStyle;\n mirror?: boolean;\n scaleType: HMSVideoViewMode;\n id?: string | null;\n}\n\nconst {\n /**\n * @ignore\n */\n HmsManager,\n} = NativeModules;\n\nconst HmsEventEmitter = new NativeEventEmitter(HmsManager);\n\nlet HmsSdk: HMSSDK | undefined;\n\nexport class HMSSDK {\n room?: HMSRoom;\n localPeer?: HMSLocalPeer;\n remotePeers?: HMSRemotePeer[];\n knownRoles?: HMSRole[];\n logger?: HMSLogger;\n id: string;\n private muteStatus: boolean | undefined;\n\n onPreviewDelegate?: any;\n onJoinDelegate?: any;\n onRoomDelegate?: any;\n onPeerDelegate?: any;\n onTrackDelegate?: any;\n onErrorDelegate?: any;\n onMessageDelegate?: any;\n onSpeakerDelegate?: any;\n onReconnectingDelegate?: any;\n onReconnectedDelegate?: any;\n onRoleChangeRequestDelegate?: any;\n onChangeTrackStateRequestDelegate?: any;\n onRemovedFromRoomDelegate?: any;\n\n constructor(id: string) {\n this.id = id;\n }\n\n /**\n * - Returns an instance of [HMSSDK]{@link HMSSDK}\n * - This function must be called to get an instance of HMSSDK class and only then user can interact with its methods\n *\n * @static\n * @returns\n * @memberof HMSSDK\n */\n static async build(params?: { trackSettings?: HMSTrackSettings }) {\n let id = await HmsManager.build(params?.trackSettings || {});\n HmsSdk = new HMSSDK(id);\n HmsSdk.attachPreviewListener();\n HmsSdk.attachListeners();\n return HmsSdk;\n }\n\n destroy = () => {\n this.removeListeners();\n };\n\n attachPreviewListener = () => {\n HmsEventEmitter.addListener(\n HMSUpdateListenerActions.ON_PREVIEW,\n this.onPreviewListener\n );\n };\n\n attachListeners = () => {\n HmsEventEmitter.addListener(\n HMSUpdateListenerActions.ON_JOIN,\n this.onJoinListener\n );\n\n HmsEventEmitter.addListener(\n HMSUpdateListenerActions.ON_ROOM_UPDATE,\n this.onRoomListener\n );\n\n HmsEventEmitter.addListener(\n HMSUpdateListenerActions.ON_PEER_UPDATE,\n this.onPeerListener\n );\n\n HmsEventEmitter.addListener(\n HMSUpdateListenerActions.ON_TRACK_UPDATE,\n this.onTrackListener\n );\n\n HmsEventEmitter.addListener(\n HMSUpdateListenerActions.ON_ERROR,\n this.onErrorListener\n );\n\n HmsEventEmitter.addListener(\n HMSUpdateListenerActions.ON_MESSAGE,\n this.onMessageListener\n );\n\n HmsEventEmitter.addListener(\n HMSUpdateListenerActions.ON_SPEAKER,\n this.onSpeakerListener\n );\n\n HmsEventEmitter.addListener(\n HMSUpdateListenerActions.RECONNECTING,\n this.reconnectingListener\n );\n\n HmsEventEmitter.addListener(\n HMSUpdateListenerActions.RECONNECTED,\n this.reconnectedListener\n );\n\n HmsEventEmitter.addListener(\n HMSUpdateListenerActions.ON_ROLE_CHANGE_REQUEST,\n this.onRoleChangeRequestListener\n );\n\n HmsEventEmitter.addListener(\n HMSUpdateListenerActions.ON_CHANGE_TRACK_STATE_REQUEST,\n this.onChangeTrackStateRequestListener\n );\n\n HmsEventEmitter.addListener(\n HMSUpdateListenerActions.ON_REMOVED_FROM_ROOM,\n this.onRemovedFromRoomListener\n );\n };\n\n removeListeners = () => {\n HmsEventEmitter.removeListener(\n HMSUpdateListenerActions.ON_JOIN,\n this.onJoinListener\n );\n\n HmsEventEmitter.removeListener(\n HMSUpdateListenerActions.ON_ROOM_UPDATE,\n this.onRoomListener\n );\n\n HmsEventEmitter.removeListener(\n HMSUpdateListenerActions.ON_PEER_UPDATE,\n this.onPeerListener\n );\n\n HmsEventEmitter.removeListener(\n HMSUpdateListenerActions.ON_TRACK_UPDATE,\n this.onTrackListener\n );\n\n HmsEventEmitter.removeListener(\n HMSUpdateListenerActions.ON_ERROR,\n this.onErrorListener\n );\n\n HmsEventEmitter.removeListener(\n HMSUpdateListenerActions.ON_MESSAGE,\n this.onMessageListener\n );\n\n HmsEventEmitter.removeListener(\n HMSUpdateListenerActions.ON_SPEAKER,\n this.onSpeakerListener\n );\n\n HmsEventEmitter.removeListener(\n HMSUpdateListenerActions.RECONNECTING,\n this.reconnectingListener\n );\n\n HmsEventEmitter.removeListener(\n HMSUpdateListenerActions.RECONNECTED,\n this.reconnectedListener\n );\n\n HmsEventEmitter.removeListener(\n HMSUpdateListenerActions.ON_ROLE_CHANGE_REQUEST,\n this.onRoleChangeRequestListener\n );\n\n HmsEventEmitter.removeListener(\n HMSUpdateListenerActions.ON_CHANGE_TRACK_STATE_REQUEST,\n this.onChangeTrackStateRequestListener\n );\n\n HmsEventEmitter.removeListener(\n HMSUpdateListenerActions.ON_REMOVED_FROM_ROOM,\n this.onRemovedFromRoomListener\n );\n };\n\n /**\n * takes an instance of [HMSConfig]{@link HMSConfig} and joins the room\n * after joining the room user will start receiving the events and updates of the room\n *\n * @param {HMSConfig} config\n * @memberof HMSSDK\n */\n join = async (config: HMSConfig) => {\n this.logger?.verbose('JOIN', { config });\n await HmsManager.join({ ...config, id: this.id });\n };\n\n preview = (config: HMSConfig) => {\n this.logger?.verbose('PREVIEW', { config });\n HmsManager.preview({ ...config, id: this.id });\n };\n\n HmsView = ({\n sink,\n trackId,\n style,\n mirror,\n scaleType = HMSVideoViewMode.ASPECT_FIT,\n }: HmsComponentProps) => {\n return (\n <HMSViewComponent\n sink={sink}\n trackId={trackId}\n style={style}\n mirror={mirror}\n scaleType={scaleType}\n id={this.id}\n />\n );\n };\n\n /**\n * Calls leave function of native sdk and session of current user is invalidated\n *\n * @memberof HMSSDK\n */\n leave = async () => {\n this.logger?.verbose('LEAVE', {});\n const data = {\n id: this.id,\n };\n\n await HmsManager.leave(data);\n this.muteStatus = undefined;\n this.localPeer = undefined;\n this.remotePeers = undefined;\n this.room = undefined;\n this.knownRoles = undefined;\n };\n\n sendBroadcastMessage = (message: string, type?: string) => {\n this.logger?.verbose('SEND_BROADCAST_MESSAGE', { message });\n HmsManager.sendBroadcastMessage({\n message,\n type: type || null,\n id: this.id,\n });\n };\n\n sendGroupMessage = (message: string, roles: HMSRole[], type?: string) => {\n this.logger?.verbose('SEND_GROUP_MESSAGE', { message, roles });\n HmsManager.sendGroupMessage({\n message,\n roles: HMSHelper.getRoleNames(roles),\n id: this.id,\n type: type || null,\n });\n };\n\n sendDirectMessage = (message: string, peerId: string, type?: string) => {\n this.logger?.verbose('SEND_DIRECT_MESSAGE', { message, peerId });\n HmsManager.sendDirectMessage({\n message,\n peerId,\n id: this.id,\n type: type || null,\n });\n };\n\n changeMetadata = (metadata: string) => {\n this.logger?.verbose('CHANGE_METADATA', { metadata });\n HmsManager.changeMetadata({ metadata, id: this.id });\n };\n\n startRTMPOrRecording = async (data: HMSRTMPConfig) => {\n this.logger?.verbose('START_RTMP_OR_RECORDING', { data });\n\n const op = await HmsManager.startRTMPOrRecording({ ...data, id: this.id });\n return op;\n };\n\n stopRtmpAndRecording = async () => {\n this.logger?.verbose('STOP_RTMP_OR_RECORDING', {});\n const op = await HmsManager.stopRtmpAndRecording({ id: this.id });\n return op;\n };\n\n changeRole = (peer: HMSPeer, role: HMSRole, force: boolean = false) => {\n const data = {\n peerId: peer?.peerID,\n role: role?.name,\n force: force,\n id: this.id,\n };\n this.logger?.verbose('CHANGE_ROLE', data);\n HmsManager.changeRole(data);\n };\n\n changeTrackState = (track: HMSTrack, mute: boolean) => {\n this.logger?.verbose('CHANGE_TRACK_STATE', { track, mute });\n const data = {\n trackId: track.trackId,\n mute,\n id: this.id,\n };\n\n HmsManager.changeTrackState(data);\n };\n\n changeTrackStateRoles = (\n type: HMSTrackType,\n mute: boolean,\n source: string,\n roles: Array<HMSRole>\n ) => {\n this.logger?.verbose('CHANGE_TRACK_STATE_ROLES', {\n source,\n mute,\n type,\n roles,\n });\n const data = {\n source,\n mute,\n type,\n roles: HMSHelper.getRoleNames(roles),\n id: this.id,\n };\n\n HmsManager.changeTrackStateRoles(data);\n };\n\n removePeer = (peerId: string, reason: string) => {\n this.logger?.verbose('REMOVE_PEER', { peerId, reason });\n const data = {\n peerId,\n reason,\n id: this.id,\n };\n\n HmsManager.removePeer(data);\n };\n\n endRoom = (lock: boolean, reason: string) => {\n this.logger?.verbose('END_ROOM', { lock, reason });\n const data = {\n lock,\n reason,\n id: this.id,\n };\n\n HmsManager.endRoom(data);\n };\n\n acceptRoleChange = () => {\n this.logger?.verbose('ACCEPT_ROLE_CHANGE', {});\n HmsManager.acceptRoleChange({ id: this.id });\n };\n\n muteAllPeersAudio = (mute: boolean) => {\n this.logger?.verbose('ON_MUTE_ALL_PEERS', { mute });\n this.muteStatus = mute;\n HmsManager.muteAllPeersAudio({ mute, id: this.id });\n };\n\n getRoom = async () => {\n this.logger?.verbose('GET_ROOM_API_CALL', { roomID: this.id });\n const hmsRoom = await HmsManager.getRoom({ id: this.id });\n\n const encodedHmsRoom = HMSEncoder.encodeHmsRoom(hmsRoom, this.id);\n return encodedHmsRoom;\n };\n\n setVolume = (track: HMSTrack, volume: number) => {\n this.logger?.verbose('SET_VOLUME_CALL', { track, volume });\n HmsManager.setVolume({\n id: this.id,\n trackId: track.trackId,\n volume,\n });\n return;\n };\n\n /**\n * - This is a prototype event listener that takes action and listens for updates related to that particular action\n * - This method will be @deprecated in future and event listener will be passed in join method\n *\n * @param {string} action\n * @param {*} callback\n * @memberof HMSSDK\n */\n addEventListener = (action: HMSUpdateListenerActions, callback: any) => {\n this.logger?.verbose('ON_ATTACH_EVENT_LISTENER', { action });\n switch (action) {\n case HMSUpdateListenerActions.ON_PREVIEW:\n this.onPreviewDelegate = callback;\n break;\n case HMSUpdateListenerActions.ON_JOIN:\n this.onJoinDelegate = callback;\n break;\n case HMSUpdateListenerActions.ON_ROOM_UPDATE:\n this.onRoomDelegate = callback;\n break;\n case HMSUpdateListenerActions.ON_PEER_UPDATE:\n this.onPeerDelegate = callback;\n break;\n case HMSUpdateListenerActions.ON_TRACK_UPDATE:\n this.onTrackDelegate = callback;\n break;\n case HMSUpdateListenerActions.ON_ERROR:\n this.onErrorDelegate = callback;\n break;\n case HMSUpdateListenerActions.ON_MESSAGE:\n this.onMessageDelegate = callback;\n break;\n case HMSUpdateListenerActions.ON_SPEAKER:\n this.onSpeakerDelegate = callback;\n break;\n case HMSUpdateListenerActions.RECONNECTING:\n this.onReconnectingDelegate = callback;\n break;\n case HMSUpdateListenerActions.RECONNECTED:\n this.onReconnectedDelegate = callback;\n break;\n case HMSUpdateListenerActions.ON_ROLE_CHANGE_REQUEST:\n this.onRoleChangeRequestDelegate = callback;\n break;\n case HMSUpdateListenerActions.ON_CHANGE_TRACK_STATE_REQUEST:\n this.onChangeTrackStateRequestDelegate = callback;\n break;\n case HMSUpdateListenerActions.ON_REMOVED_FROM_ROOM:\n this.onRemovedFromRoomDelegate = callback;\n break;\n default:\n }\n };\n\n /**\n * - This is a prototype event listener that takes action and listens for updates related to that particular action\n * - This method will be @deprecated in future and event listener will be passed in join method\n *\n * @param {string} action\n * @param {*} callback\n * @memberof HMSSDK\n */\n removeEventListener = (action: HMSUpdateListenerActions) => {\n this.logger?.verbose('ON_REMOVE_LISTENER', { action });\n switch (action) {\n case HMSUpdateListenerActions.ON_PREVIEW:\n this.onPreviewDelegate = null;\n break;\n case HMSUpdateListenerActions.ON_JOIN:\n this.onJoinDelegate = null;\n break;\n case HMSUpdateListenerActions.ON_ROOM_UPDATE:\n this.onRoomDelegate = null;\n break;\n case HMSUpdateListenerActions.ON_PEER_UPDATE:\n this.onPeerDelegate = null;\n break;\n case HMSUpdateListenerActions.ON_TRACK_UPDATE:\n this.onTrackDelegate = null;\n break;\n case HMSUpdateListenerActions.ON_ERROR:\n this.onErrorDelegate = null;\n break;\n case HMSUpdateListenerActions.ON_MESSAGE:\n this.onMessageDelegate = null;\n break;\n case HMSUpdateListenerActions.ON_SPEAKER:\n this.onSpeakerDelegate = null;\n break;\n case HMSUpdateListenerActions.RECONNECTING:\n this.onReconnectingDelegate = null;\n break;\n case HMSUpdateListenerActions.RECONNECTED:\n this.onReconnectedDelegate = null;\n break;\n case HMSUpdateListenerActions.ON_ROLE_CHANGE_REQUEST:\n this.onRoleChangeRequestDelegate = null;\n break;\n case HMSUpdateListenerActions.ON_CHANGE_TRACK_STATE_REQUEST:\n this.onChangeTrackStateRequestDelegate = null;\n break;\n case HMSUpdateListenerActions.ON_REMOVED_FROM_ROOM:\n this.onRemovedFromRoomDelegate = null;\n break;\n default:\n }\n };\n\n /**\n * removes all the listeners\n *\n * @memberof HMSSDK\n */\n removeAllListeners = () => {\n this.onPreviewDelegate = null;\n this.onJoinDelegate = null;\n this.onRoomDelegate = null;\n this.onPeerDelegate = null;\n this.onTrackDelegate = null;\n this.onErrorDelegate = null;\n this.onMessageDelegate = null;\n this.onSpeakerDelegate = null;\n this.onReconnectingDelegate = null;\n this.onReconnectedDelegate = null;\n this.onRoleChangeRequestDelegate = null;\n this.onChangeTrackStateRequestDelegate = null;\n this.onRemovedFromRoomDelegate = null;\n\n this.logger?.verbose('REMOVE_ALL_LISTENER', {});\n };\n\n setLogger = (hmsLogger: HMSLogger) => {\n this.logger = hmsLogger;\n hmsLogger.verbose('UPDATE_LOGGER', { hmsLogger });\n };\n\n onPreviewListener = (data: any) => {\n if (data.id !== this.id) {\n return;\n }\n this.logger?.verbose('ON_PREVIEW', data);\n const room: HMSRoom = HMSEncoder.encodeHmsRoom(data.room, this.id);\n const localPeer: HMSLocalPeer = HMSEncoder.encodeHmsLocalPeer(\n data.localPeer,\n this.id\n );\n\n const previewTracks = HMSEncoder.encodeHmsPreviewTracks(data.previewTracks);\n\n this.localPeer = localPeer;\n this.room = room;\n if (this.onPreviewDelegate) {\n this.logger?.verbose('ON_PREVIEW_LISTENER_CALL', {\n ...data,\n room,\n localPeer,\n previewTracks,\n });\n this.onPreviewDelegate({ ...data, room, localPeer, previewTracks });\n }\n };\n\n onJoinListener = (data: any) => {\n if (data.id !== this.id) {\n return;\n }\n this.logger?.verbose('ON_JOIN', data);\n // Preprocessing\n const room: HMSRoom = HMSEncoder.encodeHmsRoom(data.room, this.id);\n const localPeer: HMSLocalPeer = HMSEncoder.encodeHmsLocalPeer(\n data.localPeer,\n this.id\n );\n const remotePeers: HMSRemotePeer[] = HMSEncoder.encodeHmsRemotePeers(\n data.remotePeers,\n this.id\n );\n const roles: HMSRole[] = HMSEncoder.encodeHmsRoles(data.roles);\n this.room = room;\n this.localPeer = localPeer;\n this.remotePeers = remotePeers;\n this.knownRoles = roles;\n if (this.onJoinDelegate) {\n this.logger?.verbose('ON_JOIN_LISTENER_CALL', {\n ...data,\n room,\n localPeer,\n remotePeers,\n });\n this.onJoinDelegate({ ...data, room, localPeer, remotePeers });\n }\n };\n\n onRoomListener = (data: any) => {\n if (data.id !== this.id) {\n return;\n }\n this.logger?.verbose('ON_ROOM', data);\n const room: HMSRoom = HMSEncoder.encodeHmsRoom(data.room, this.id);\n const localPeer: HMSLocalPeer = HMSEncoder.encodeHmsLocalPeer(\n data.localPeer,\n this.id\n );\n const remotePeers: HMSRemotePeer[] = HMSEncoder.encodeHmsRemotePeers(\n data.remotePeers,\n this.id\n );\n this.room = room;\n this.localPeer = localPeer;\n this.remotePeers = remotePeers;\n if (this.onRoomDelegate) {\n this.logger?.verbose('ON_ROOM_LISTENER_CALL', {\n ...data,\n room,\n localPeer,\n remotePeers,\n });\n this.onRoomDelegate({ ...data, room, localPeer, remotePeers });\n }\n };\n\n onPeerListener = (data: any) => {\n if (data.id !== this.id) {\n return;\n }\n this.logger?.verbose('ON_PEER', data);\n const room: HMSRoom = HMSEncoder.encodeHmsRoom(data.room, this.id);\n const localPeer: HMSLocalPeer = HMSEncoder.encodeHmsLocalPeer(\n data.localPeer,\n this.id\n );\n const remotePeers: HMSRemotePeer[] = HMSEncoder.encodeHmsRemotePeers(\n data.remotePeers,\n this.id\n );\n // this.room = room;\n this.localPeer = localPeer;\n this.remotePeers = remotePeers;\n this.room = room;\n if (this.onPeerDelegate) {\n this.logger?.verbose('ON_PEER_LISTENER_CALL', data);\n this.onPeerDelegate({ ...data, localPeer, remotePeers, room });\n }\n };\n\n onTrackListener = (data: any) => {\n if (data.id !== this.id) {\n return;\n }\n this.logger?.verbose('ON_TRACK', data);\n const room: HMSRoom = HMSEncoder.encodeHmsRoom(data.room, this.id);\n const localPeer: HMSLocalPeer = HMSEncoder.encodeHmsLocalPeer(\n data.localPeer,\n this.id\n );\n const remotePeers: HMSRemotePeer[] = HMSEncoder.encodeHmsRemotePeers(\n data.remotePeers,\n this.id\n );\n if (this.muteStatus && data?.type === 'TRACK_ADDED') {\n this.muteAllPeersAudio(this.muteStatus);\n }\n this.room = room;\n this.localPeer = localPeer;\n this.remotePeers = remotePeers;\n if (this.onTrackDelegate) {\n this.logger?.verbose('ON_TRACK_LISTENER_CALL', data);\n this.onTrackDelegate({ ...data, localPeer, remotePeers, room });\n }\n };\n\n onMessageListener = (data: any) => {\n if (data.id !== this.id) {\n return;\n }\n this.logger?.verbose('ON_MESSAGE', data);\n const message = new HMSMessage(data);\n if (this.onMessageDelegate) {\n this.logger?.verbose('ON_MESSAGE_LISTENER_CALL', message);\n this.onMessageDelegate(message);\n }\n };\n\n onSpeakerListener = (data: any) => {\n if (data.id !== this.id) {\n return;\n }\n this.logger?.verbose('ON_SPEAKER', data);\n if (this.onSpeakerDelegate) {\n this.onSpeakerDelegate(data);\n }\n };\n\n onErrorListener = (data: any) => {\n if (data.id !== this.id) {\n return;\n }\n this.logger?.warn('ON_ERROR', data);\n this.logger?.verbose('ON_ERROR', data);\n if (this.onErrorDelegate) {\n this.logger?.verbose('ON_ERROR_LISTENER_CALL', data);\n this.logger?.warn('ON_ERROR_LISTENER_CALL', data);\n this.onErrorDelegate(data);\n }\n };\n\n onRoleChangeRequestListener = (data: any) => {\n if (data.id !== this.id) {\n return;\n }\n this.logger?.verbose('ON_ROLE_CHANGE_REQUEST', data);\n if (this.onRoleChangeRequestDelegate) {\n const encodedRoleChangeRequest = HMSEncoder.encodeHmsRoleChangeRequest(\n data,\n this.id\n );\n this.logger?.verbose(\n 'ON_ROLE_CHANGE_LISTENER_CALL',\n encodedRoleChangeRequest\n );\n this.onRoleChangeRequestDelegate(encodedRoleChangeRequest);\n }\n };\n\n onChangeTrackStateRequestListener = (data: any) => {\n this.logger?.verbose('ON_CHANGE_TRACK_STATE_REQUEST', data);\n if (this.onChangeTrackStateRequestDelegate) {\n const encodedRoleChangeRequest =\n HMSEncoder.encodeHmsChangeTrackStateRequest(data, this.id);\n this.logger?.verbose(\n 'ON_CHANGE_TRACK_STATE_REQUEST_LISTENER_CALL',\n encodedRoleChangeRequest\n );\n this.onChangeTrackStateRequestDelegate(encodedRoleChangeRequest);\n }\n };\n\n onRemovedFromRoomListener = (data: any) => {\n if (data.id !== this.id) {\n return;\n }\n this.logger?.verbose('ON_REMOVED_FROM_ROOM', data);\n if (this.onRemovedFromRoomDelegate) {\n let requestedBy = null;\n if (data.requestedBy) {\n requestedBy = HMSEncoder.encodeHmsPeer(data.requestedBy, this.id);\n }\n const reason = data.reason;\n const roomEnded = data.roomEnded;\n\n this.logger?.verbose('ON_REMOVED_FROM_ROOM_LISTENER_CALL', {\n requestedBy,\n reason,\n roomEnded,\n });\n this.onRemovedFromRoomDelegate({ requestedBy, reason, roomEnded });\n }\n };\n\n reconnectingListener = (data: any) => {\n if (data.id !== this.id) {\n return;\n }\n this.logger?.verbose('ON_RECONNECTING', data);\n if (this.onReconnectingDelegate) {\n this.onReconnectingDelegate(data);\n }\n };\n\n reconnectedListener = (data: any) => {\n if (data.id !== this.id) {\n return;\n }\n this.logger?.verbose('ON_RECONNECTED', data);\n if (this.onReconnectedDelegate) {\n this.onReconnectedDelegate(data);\n }\n };\n}\n"]}
|
|
1
|
+
{"version":3,"sources":["HMSSDK.tsx"],"names":["React","NativeEventEmitter","NativeModules","HMSUpdateListenerActions","HMSEncoder","HMSMessage","HMSHelper","HmsView","HMSViewComponent","HMSVideoViewMode","HmsManager","HmsEventEmitter","HmsSdk","logger","HMSSDK","constructor","id","hmsLogger","verbose","removeListeners","addListener","ON_PREVIEW","onPreviewListener","ON_JOIN","onJoinListener","ON_ROOM_UPDATE","onRoomListener","ON_PEER_UPDATE","onPeerListener","ON_TRACK_UPDATE","onTrackListener","ON_ERROR","onErrorListener","ON_MESSAGE","onMessageListener","ON_SPEAKER","onSpeakerListener","RECONNECTING","reconnectingListener","RECONNECTED","reconnectedListener","ON_ROLE_CHANGE_REQUEST","onRoleChangeRequestListener","ON_CHANGE_TRACK_STATE_REQUEST","onChangeTrackStateRequestListener","ON_REMOVED_FROM_ROOM","onRemovedFromRoomListener","removeListener","config","join","preview","sink","trackId","style","mirror","scaleType","ASPECT_FIT","data","op","leave","muteStatus","undefined","localPeer","remotePeers","room","knownRoles","message","type","sendBroadcastMessage","roles","sendGroupMessage","getRoleNames","peerId","sendDirectMessage","metadata","changeMetadata","startRTMPOrRecording","stopRtmpAndRecording","peer","role","force","peerID","name","changeRole","track","mute","changeTrackState","source","changeTrackStateRoles","reason","removePeer","lock","endRoom","acceptRoleChange","muteAllPeersAudio","roomID","hmsRoom","getRoom","encodedHmsRoom","encodeHmsRoom","volume","setVolume","action","callback","onPreviewDelegate","onJoinDelegate","onRoomDelegate","onPeerDelegate","onTrackDelegate","onErrorDelegate","onMessageDelegate","onSpeakerDelegate","onReconnectingDelegate","onReconnectedDelegate","onRoleChangeRequestDelegate","onChangeTrackStateRequestDelegate","onRemovedFromRoomDelegate","encodeHmsLocalPeer","previewTracks","encodeHmsPreviewTracks","encodeHmsRemotePeers","encodeHmsRoles","encodeHmsPeer","encodeHmsTrack","warn","encodedRoleChangeRequest","encodeHmsRoleChangeRequest","encodeHmsChangeTrackStateRequest","requestedBy","roomEnded","build","params","trackSettings","attachPreviewListener","attachListeners","getLogger"],"mappings":"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","sourcesContent":["import React from 'react';\nimport { NativeEventEmitter, NativeModules, ViewStyle } from 'react-native';\nimport { HMSUpdateListenerActions } from './HMSUpdateListenerActions';\nimport type { HMSConfig } from './HMSConfig';\nimport type { HMSLocalPeer } from './HMSLocalPeer';\nimport type { HMSRemotePeer } from './HMSRemotePeer';\nimport type { HMSRoom } from './HMSRoom';\nimport type { HMSRole } from './HMSRole';\nimport { HMSEncoder } from './HMSEncoder';\nimport { HMSMessage } from './HMSMessage';\nimport { HMSHelper } from './HMSHelper';\nimport type { HMSTrack } from './HMSTrack';\nimport type { HMSTrackType } from './HMSTrackType';\nimport type { HMSLogger } from './HMSLogger';\nimport type { HMSPeer } from './HMSPeer';\nimport { HmsView as HMSViewComponent } from './HmsView';\nimport { HMSVideoViewMode } from './HMSVideoViewMode';\nimport type { HMSTrackSettings } from './HMSTrackSettings';\nimport type { HMSRTMPConfig } from './HMSRTMPConfig';\n\ninterface HmsComponentProps {\n trackId: string;\n sink: boolean;\n style: ViewStyle;\n mirror?: boolean;\n scaleType: HMSVideoViewMode;\n id?: string | null;\n}\n\nconst {\n /**\n * @ignore\n */\n HmsManager,\n} = NativeModules;\n\nconst HmsEventEmitter = new NativeEventEmitter(HmsManager);\n\nlet HmsSdk: HMSSDK | undefined;\n\nlet logger: HMSLogger | undefined;\n\nexport class HMSSDK {\n room?: HMSRoom;\n localPeer?: HMSLocalPeer;\n remotePeers?: HMSRemotePeer[];\n knownRoles?: HMSRole[];\n id: string;\n private muteStatus: boolean | undefined;\n\n onPreviewDelegate?: any;\n onJoinDelegate?: any;\n onRoomDelegate?: any;\n onPeerDelegate?: any;\n onTrackDelegate?: any;\n onErrorDelegate?: any;\n onMessageDelegate?: any;\n onSpeakerDelegate?: any;\n onReconnectingDelegate?: any;\n onReconnectedDelegate?: any;\n onRoleChangeRequestDelegate?: any;\n onChangeTrackStateRequestDelegate?: any;\n onRemovedFromRoomDelegate?: any;\n\n constructor(id: string) {\n this.id = id;\n }\n\n /**\n * - Returns an instance of [HMSSDK]{@link HMSSDK}\n * - This function must be called to get an instance of HMSSDK class and only then user can interact with its methods\n *\n * @static\n * @returns\n * @memberof HMSSDK\n */\n static async build(params?: { trackSettings?: HMSTrackSettings }) {\n let id = await HmsManager.build(params?.trackSettings || {});\n HmsSdk = new HMSSDK(id);\n HmsSdk.attachPreviewListener();\n HmsSdk.attachListeners();\n return HmsSdk;\n }\n\n static getLogger() {\n return logger;\n }\n\n setLogger = (hmsLogger: HMSLogger) => {\n logger = hmsLogger;\n hmsLogger.verbose('#Function setLogger', { id: this.id });\n };\n\n destroy = () => {\n this.removeListeners();\n };\n\n attachPreviewListener = () => {\n HmsEventEmitter.addListener(\n HMSUpdateListenerActions.ON_PREVIEW,\n this.onPreviewListener\n );\n };\n\n attachListeners = () => {\n HmsEventEmitter.addListener(\n HMSUpdateListenerActions.ON_JOIN,\n this.onJoinListener\n );\n\n HmsEventEmitter.addListener(\n HMSUpdateListenerActions.ON_ROOM_UPDATE,\n this.onRoomListener\n );\n\n HmsEventEmitter.addListener(\n HMSUpdateListenerActions.ON_PEER_UPDATE,\n this.onPeerListener\n );\n\n HmsEventEmitter.addListener(\n HMSUpdateListenerActions.ON_TRACK_UPDATE,\n this.onTrackListener\n );\n\n HmsEventEmitter.addListener(\n HMSUpdateListenerActions.ON_ERROR,\n this.onErrorListener\n );\n\n HmsEventEmitter.addListener(\n HMSUpdateListenerActions.ON_MESSAGE,\n this.onMessageListener\n );\n\n HmsEventEmitter.addListener(\n HMSUpdateListenerActions.ON_SPEAKER,\n this.onSpeakerListener\n );\n\n HmsEventEmitter.addListener(\n HMSUpdateListenerActions.RECONNECTING,\n this.reconnectingListener\n );\n\n HmsEventEmitter.addListener(\n HMSUpdateListenerActions.RECONNECTED,\n this.reconnectedListener\n );\n\n HmsEventEmitter.addListener(\n HMSUpdateListenerActions.ON_ROLE_CHANGE_REQUEST,\n this.onRoleChangeRequestListener\n );\n\n HmsEventEmitter.addListener(\n HMSUpdateListenerActions.ON_CHANGE_TRACK_STATE_REQUEST,\n this.onChangeTrackStateRequestListener\n );\n\n HmsEventEmitter.addListener(\n HMSUpdateListenerActions.ON_REMOVED_FROM_ROOM,\n this.onRemovedFromRoomListener\n );\n };\n\n removeListeners = () => {\n HmsEventEmitter.removeListener(\n HMSUpdateListenerActions.ON_JOIN,\n this.onJoinListener\n );\n\n HmsEventEmitter.removeListener(\n HMSUpdateListenerActions.ON_ROOM_UPDATE,\n this.onRoomListener\n );\n\n HmsEventEmitter.removeListener(\n HMSUpdateListenerActions.ON_PEER_UPDATE,\n this.onPeerListener\n );\n\n HmsEventEmitter.removeListener(\n HMSUpdateListenerActions.ON_TRACK_UPDATE,\n this.onTrackListener\n );\n\n HmsEventEmitter.removeListener(\n HMSUpdateListenerActions.ON_ERROR,\n this.onErrorListener\n );\n\n HmsEventEmitter.removeListener(\n HMSUpdateListenerActions.ON_MESSAGE,\n this.onMessageListener\n );\n\n HmsEventEmitter.removeListener(\n HMSUpdateListenerActions.ON_SPEAKER,\n this.onSpeakerListener\n );\n\n HmsEventEmitter.removeListener(\n HMSUpdateListenerActions.RECONNECTING,\n this.reconnectingListener\n );\n\n HmsEventEmitter.removeListener(\n HMSUpdateListenerActions.RECONNECTED,\n this.reconnectedListener\n );\n\n HmsEventEmitter.removeListener(\n HMSUpdateListenerActions.ON_ROLE_CHANGE_REQUEST,\n this.onRoleChangeRequestListener\n );\n\n HmsEventEmitter.removeListener(\n HMSUpdateListenerActions.ON_CHANGE_TRACK_STATE_REQUEST,\n this.onChangeTrackStateRequestListener\n );\n\n HmsEventEmitter.removeListener(\n HMSUpdateListenerActions.ON_REMOVED_FROM_ROOM,\n this.onRemovedFromRoomListener\n );\n };\n\n /**\n * takes an instance of [HMSConfig]{@link HMSConfig} and joins the room\n * after joining the room user will start receiving the events and updates of the room\n *\n * @param {HMSConfig} config\n * @memberof HMSSDK\n */\n join = async (config: HMSConfig) => {\n logger?.verbose('#Function join', { config, id: this.id });\n await HmsManager.join({ ...config, id: this.id });\n };\n\n preview = (config: HMSConfig) => {\n logger?.verbose('#Function preview', { config, id: this.id });\n HmsManager.preview({ ...config, id: this.id });\n };\n\n HmsView = ({\n sink,\n trackId,\n style,\n mirror,\n scaleType = HMSVideoViewMode.ASPECT_FIT,\n }: HmsComponentProps) => {\n return (\n <HMSViewComponent\n sink={sink}\n trackId={trackId}\n style={style}\n mirror={mirror}\n scaleType={scaleType}\n id={this.id}\n />\n );\n };\n\n /**\n * Calls leave function of native sdk and session of current user is invalidated\n *\n * @memberof HMSSDK\n */\n leave = async () => {\n logger?.verbose('#Function leave', { id: this.id });\n const data = {\n id: this.id,\n };\n\n const op = await HmsManager.leave(data);\n this.muteStatus = undefined;\n this.localPeer = undefined;\n this.remotePeers = undefined;\n this.room = undefined;\n this.knownRoles = undefined;\n return op;\n };\n\n sendBroadcastMessage = async (message: string, type?: string) => {\n logger?.verbose('#Function sendBroadcastMessage', {\n message,\n type: type || null,\n id: this.id,\n });\n return await HmsManager.sendBroadcastMessage({\n message,\n type: type || null,\n id: this.id,\n });\n };\n\n sendGroupMessage = async (\n message: string,\n roles: HMSRole[],\n type?: string\n ) => {\n logger?.verbose('#Function sendGroupMessage', {\n message,\n roles,\n id: this.id,\n type: type || null,\n });\n return await HmsManager.sendGroupMessage({\n message,\n roles: HMSHelper.getRoleNames(roles),\n id: this.id,\n type: type || null,\n });\n };\n\n sendDirectMessage = async (\n message: string,\n peerId: string,\n type?: string\n ) => {\n logger?.verbose('#Function sendDirectMessage', {\n message,\n peerId,\n id: this.id,\n type: type || null,\n });\n return await HmsManager.sendDirectMessage({\n message,\n peerId,\n id: this.id,\n type: type || null,\n });\n };\n\n changeMetadata = (metadata: string) => {\n logger?.verbose('#Function changeMetadata', { metadata, id: this.id });\n HmsManager.changeMetadata({ metadata, id: this.id });\n };\n\n startRTMPOrRecording = async (data: HMSRTMPConfig) => {\n logger?.verbose('#Function startRTMPOrRecording', {\n ...data,\n id: this.id,\n });\n\n const op = await HmsManager.startRTMPOrRecording({ ...data, id: this.id });\n return op;\n };\n\n stopRtmpAndRecording = async () => {\n logger?.verbose('#Function stopRtmpAndRecording', {});\n const op = await HmsManager.stopRtmpAndRecording({ id: this.id });\n return op;\n };\n\n changeRole = async (peer: HMSPeer, role: HMSRole, force: boolean = false) => {\n const data = {\n peerId: peer?.peerID,\n role: role?.name,\n force: force,\n id: this.id,\n };\n logger?.verbose('#Function changeRole', data);\n return await HmsManager.changeRole(data);\n };\n\n changeTrackState = async (track: HMSTrack, mute: boolean) => {\n logger?.verbose('#Function changeTrackState', {\n track,\n mute,\n id: this.id,\n });\n const data = {\n trackId: track.trackId,\n mute,\n id: this.id,\n };\n\n return await HmsManager.changeTrackState(data);\n };\n\n changeTrackStateRoles = async (\n type: HMSTrackType,\n mute: boolean,\n source: string,\n roles: Array<HMSRole>\n ) => {\n logger?.verbose('#Function changeTrackStateRoles', {\n source,\n mute,\n type,\n roles,\n id: this.id,\n });\n const data = {\n source,\n mute,\n type,\n roles: HMSHelper.getRoleNames(roles),\n id: this.id,\n };\n\n return await HmsManager.changeTrackStateRoles(data);\n };\n\n removePeer = async (peerId: string, reason: string) => {\n logger?.verbose('#Function removePeer', { peerId, reason, id: this.id });\n const data = {\n peerId,\n reason,\n id: this.id,\n };\n\n return await HmsManager.removePeer(data);\n };\n\n endRoom = async (lock: boolean, reason: string) => {\n logger?.verbose('#Function endRoom', { lock, reason, id: this.id });\n const data = {\n lock,\n reason,\n id: this.id,\n };\n\n return await HmsManager.endRoom(data);\n };\n\n acceptRoleChange = () => {\n logger?.verbose('#Function acceptRoleChange', { id: this.id });\n HmsManager.acceptRoleChange({ id: this.id });\n };\n\n muteAllPeersAudio = (mute: boolean) => {\n logger?.verbose('#Function muteAllPeersAudio', { mute, id: this.id });\n this.muteStatus = mute;\n HmsManager.muteAllPeersAudio({ mute, id: this.id });\n };\n\n getRoom = async () => {\n logger?.verbose('#Function getRoom', {\n roomID: this.room?.id,\n id: this.id,\n });\n const hmsRoom = await HmsManager.getRoom({ id: this.id });\n\n const encodedHmsRoom = HMSEncoder.encodeHmsRoom(hmsRoom, this.id);\n return encodedHmsRoom;\n };\n\n setVolume = (track: HMSTrack, volume: number) => {\n logger?.verbose('#Function setVolume', {\n track,\n volume,\n id: this.id,\n });\n HmsManager.setVolume({\n id: this.id,\n trackId: track.trackId,\n volume,\n });\n return;\n };\n\n /**\n * - This is a prototype event listener that takes action and listens for updates related to that particular action\n * - This method will be @deprecated in future and event listener will be passed in join method\n *\n * @param {string} action\n * @param {*} callback\n * @memberof HMSSDK\n */\n addEventListener = (action: HMSUpdateListenerActions, callback: any) => {\n logger?.verbose('#Function addEventListener', {\n action,\n id: this.id,\n });\n switch (action) {\n case HMSUpdateListenerActions.ON_PREVIEW:\n this.onPreviewDelegate = callback;\n break;\n case HMSUpdateListenerActions.ON_JOIN:\n this.onJoinDelegate = callback;\n break;\n case HMSUpdateListenerActions.ON_ROOM_UPDATE:\n this.onRoomDelegate = callback;\n break;\n case HMSUpdateListenerActions.ON_PEER_UPDATE:\n this.onPeerDelegate = callback;\n break;\n case HMSUpdateListenerActions.ON_TRACK_UPDATE:\n this.onTrackDelegate = callback;\n break;\n case HMSUpdateListenerActions.ON_ERROR:\n this.onErrorDelegate = callback;\n break;\n case HMSUpdateListenerActions.ON_MESSAGE:\n this.onMessageDelegate = callback;\n break;\n case HMSUpdateListenerActions.ON_SPEAKER:\n this.onSpeakerDelegate = callback;\n break;\n case HMSUpdateListenerActions.RECONNECTING:\n this.onReconnectingDelegate = callback;\n break;\n case HMSUpdateListenerActions.RECONNECTED:\n this.onReconnectedDelegate = callback;\n break;\n case HMSUpdateListenerActions.ON_ROLE_CHANGE_REQUEST:\n this.onRoleChangeRequestDelegate = callback;\n break;\n case HMSUpdateListenerActions.ON_CHANGE_TRACK_STATE_REQUEST:\n this.onChangeTrackStateRequestDelegate = callback;\n break;\n case HMSUpdateListenerActions.ON_REMOVED_FROM_ROOM:\n this.onRemovedFromRoomDelegate = callback;\n break;\n default:\n }\n };\n\n /**\n * - This is a prototype event listener that takes action and listens for updates related to that particular action\n * - This method will be @deprecated in future and event listener will be passed in join method\n *\n * @param {string} action\n * @param {*} callback\n * @memberof HMSSDK\n */\n removeEventListener = (action: HMSUpdateListenerActions) => {\n logger?.verbose('#Function removeEventListener', { action, id: this.id });\n switch (action) {\n case HMSUpdateListenerActions.ON_PREVIEW:\n this.onPreviewDelegate = null;\n break;\n case HMSUpdateListenerActions.ON_JOIN:\n this.onJoinDelegate = null;\n break;\n case HMSUpdateListenerActions.ON_ROOM_UPDATE:\n this.onRoomDelegate = null;\n break;\n case HMSUpdateListenerActions.ON_PEER_UPDATE:\n this.onPeerDelegate = null;\n break;\n case HMSUpdateListenerActions.ON_TRACK_UPDATE:\n this.onTrackDelegate = null;\n break;\n case HMSUpdateListenerActions.ON_ERROR:\n this.onErrorDelegate = null;\n break;\n case HMSUpdateListenerActions.ON_MESSAGE:\n this.onMessageDelegate = null;\n break;\n case HMSUpdateListenerActions.ON_SPEAKER:\n this.onSpeakerDelegate = null;\n break;\n case HMSUpdateListenerActions.RECONNECTING:\n this.onReconnectingDelegate = null;\n break;\n case HMSUpdateListenerActions.RECONNECTED:\n this.onReconnectedDelegate = null;\n break;\n case HMSUpdateListenerActions.ON_ROLE_CHANGE_REQUEST:\n this.onRoleChangeRequestDelegate = null;\n break;\n case HMSUpdateListenerActions.ON_CHANGE_TRACK_STATE_REQUEST:\n this.onChangeTrackStateRequestDelegate = null;\n break;\n case HMSUpdateListenerActions.ON_REMOVED_FROM_ROOM:\n this.onRemovedFromRoomDelegate = null;\n break;\n default:\n }\n };\n\n /**\n * removes all the listeners\n *\n * @memberof HMSSDK\n */\n removeAllListeners = () => {\n this.onPreviewDelegate = null;\n this.onJoinDelegate = null;\n this.onRoomDelegate = null;\n this.onPeerDelegate = null;\n this.onTrackDelegate = null;\n this.onErrorDelegate = null;\n this.onMessageDelegate = null;\n this.onSpeakerDelegate = null;\n this.onReconnectingDelegate = null;\n this.onReconnectedDelegate = null;\n this.onRoleChangeRequestDelegate = null;\n this.onChangeTrackStateRequestDelegate = null;\n this.onRemovedFromRoomDelegate = null;\n\n logger?.verbose('#Function REMOVE_ALL_LISTENER', { id: this.id });\n };\n\n onPreviewListener = (data: any) => {\n if (data.id !== this.id) {\n return;\n }\n logger?.verbose('#Listener ON_PREVIEW', data);\n const room: HMSRoom = HMSEncoder.encodeHmsRoom(data.room, this.id);\n const localPeer: HMSLocalPeer = HMSEncoder.encodeHmsLocalPeer(\n data.localPeer,\n this.id\n );\n\n const previewTracks = HMSEncoder.encodeHmsPreviewTracks(data.previewTracks);\n\n this.localPeer = localPeer;\n this.room = room;\n if (this.onPreviewDelegate) {\n logger?.verbose('#Listener ON_PREVIEW_LISTENER_CALL', {\n ...data,\n room,\n localPeer,\n previewTracks,\n });\n this.onPreviewDelegate({ ...data, room, localPeer, previewTracks });\n }\n };\n\n onJoinListener = (data: any) => {\n if (data.id !== this.id) {\n return;\n }\n logger?.verbose('#LISTENER ON_JOIN', data);\n // Preprocessing\n const room: HMSRoom = HMSEncoder.encodeHmsRoom(data.room, this.id);\n const localPeer: HMSLocalPeer = HMSEncoder.encodeHmsLocalPeer(\n data.localPeer,\n this.id\n );\n const remotePeers: HMSRemotePeer[] = HMSEncoder.encodeHmsRemotePeers(\n data.remotePeers,\n this.id\n );\n const roles: HMSRole[] = HMSEncoder.encodeHmsRoles(data.roles);\n this.room = room;\n this.localPeer = localPeer;\n this.remotePeers = remotePeers;\n this.knownRoles = roles;\n if (this.onJoinDelegate) {\n logger?.verbose('#Listener ON_JOIN_LISTENER_CALL', {\n ...data,\n room,\n localPeer,\n remotePeers,\n });\n this.onJoinDelegate({ ...data, room, localPeer, remotePeers });\n }\n };\n\n onRoomListener = (data: any) => {\n if (data.id !== this.id) {\n return;\n }\n logger?.verbose('#Listener ON_ROOM', data);\n const room: HMSRoom = HMSEncoder.encodeHmsRoom(data.room, this.id);\n const localPeer: HMSLocalPeer = HMSEncoder.encodeHmsLocalPeer(\n data.localPeer,\n this.id\n );\n const remotePeers: HMSRemotePeer[] = HMSEncoder.encodeHmsRemotePeers(\n data.remotePeers,\n this.id\n );\n this.room = room;\n this.localPeer = localPeer;\n this.remotePeers = remotePeers;\n if (this.onRoomDelegate) {\n logger?.verbose('#Listener ON_ROOM_LISTENER_CALL', {\n ...data,\n room,\n localPeer,\n remotePeers,\n });\n this.onRoomDelegate({ ...data, room, localPeer, remotePeers });\n }\n };\n\n onPeerListener = (data: any) => {\n if (data.id !== this.id) {\n return;\n }\n logger?.verbose('#Listener ON_PEER', data);\n const peer: HMSPeer = HMSEncoder.encodeHmsPeer(data.peer, this.id);\n const room: HMSRoom = HMSEncoder.encodeHmsRoom(data.room, this.id);\n const localPeer: HMSLocalPeer = HMSEncoder.encodeHmsLocalPeer(\n data.localPeer,\n this.id\n );\n const remotePeers: HMSRemotePeer[] = HMSEncoder.encodeHmsRemotePeers(\n data.remotePeers,\n this.id\n );\n // this.room = room;\n this.localPeer = localPeer;\n this.remotePeers = remotePeers;\n this.room = room;\n if (this.onPeerDelegate) {\n logger?.verbose('#Listener ON_PEER_LISTENER_CALL', data);\n this.onPeerDelegate({ ...data, localPeer, remotePeers, room, peer });\n }\n };\n\n onTrackListener = (data: any) => {\n if (data.id !== this.id) {\n return;\n }\n logger?.verbose('#Listener ON_TRACK', data);\n const track: HMSTrack = HMSEncoder.encodeHmsTrack(data.track, this.id);\n const peer: HMSPeer = HMSEncoder.encodeHmsPeer(data.peer, this.id);\n const room: HMSRoom = HMSEncoder.encodeHmsRoom(data.room, this.id);\n const localPeer: HMSLocalPeer = HMSEncoder.encodeHmsLocalPeer(\n data.localPeer,\n this.id\n );\n const remotePeers: HMSRemotePeer[] = HMSEncoder.encodeHmsRemotePeers(\n data.remotePeers,\n this.id\n );\n if (this.muteStatus && data?.type === 'TRACK_ADDED') {\n this.muteAllPeersAudio(this.muteStatus);\n }\n this.room = room;\n this.localPeer = localPeer;\n this.remotePeers = remotePeers;\n if (this.onTrackDelegate) {\n logger?.verbose('#Listener ON_TRACK_LISTENER_CALL', data);\n this.onTrackDelegate({\n ...data,\n localPeer,\n remotePeers,\n room,\n peer,\n track,\n });\n }\n };\n\n onMessageListener = (data: any) => {\n if (data.id !== this.id) {\n return;\n }\n logger?.verbose('#Listener ON_MESSAGE', data);\n const message = new HMSMessage(data);\n if (this.onMessageDelegate) {\n logger?.verbose('#Listener ON_MESSAGE_LISTENER_CALL', message);\n this.onMessageDelegate(message);\n }\n };\n\n onSpeakerListener = (data: any) => {\n if (data.id !== this.id) {\n return;\n }\n logger?.verbose('#Listener ON_SPEAKER', data);\n if (this.onSpeakerDelegate) {\n logger?.verbose('#Listener ON_SPEAKER_LISTENER_CALL', data);\n this.onSpeakerDelegate(data);\n }\n };\n\n onErrorListener = (data: any) => {\n if (data.id !== this.id) {\n return;\n }\n logger?.warn('#Listener ON_ERROR', data);\n logger?.verbose('#Listener ON_ERROR', data);\n if (this.onErrorDelegate) {\n logger?.verbose('#Listener ON_ERROR_LISTENER_CALL', data);\n logger?.warn('#Listener ON_ERROR_LISTENER_CALL', data);\n this.onErrorDelegate(data);\n }\n };\n\n onRoleChangeRequestListener = (data: any) => {\n if (data.id !== this.id) {\n return;\n }\n logger?.verbose('#Listener ON_ROLE_CHANGE_REQUEST', data);\n if (this.onRoleChangeRequestDelegate) {\n const encodedRoleChangeRequest = HMSEncoder.encodeHmsRoleChangeRequest(\n data,\n this.id\n );\n logger?.verbose(\n '#Listener ON_ROLE_CHANGE_LISTENER_CALL',\n encodedRoleChangeRequest\n );\n this.onRoleChangeRequestDelegate(encodedRoleChangeRequest);\n }\n };\n\n onChangeTrackStateRequestListener = (data: any) => {\n if (data.id !== this.id) {\n return;\n }\n logger?.verbose('#Listener ON_CHANGE_TRACK_STATE_REQUEST', data);\n if (this.onChangeTrackStateRequestDelegate) {\n const encodedRoleChangeRequest =\n HMSEncoder.encodeHmsChangeTrackStateRequest(data, this.id);\n logger?.verbose(\n '#Listener ON_CHANGE_TRACK_STATE_REQUEST_LISTENER_CALL',\n encodedRoleChangeRequest\n );\n this.onChangeTrackStateRequestDelegate(encodedRoleChangeRequest);\n }\n };\n\n onRemovedFromRoomListener = (data: any) => {\n if (data.id !== this.id) {\n return;\n }\n logger?.verbose('#Listener ON_REMOVED_FROM_ROOM', data);\n if (this.onRemovedFromRoomDelegate) {\n let requestedBy = null;\n if (data.requestedBy) {\n requestedBy = HMSEncoder.encodeHmsPeer(data.requestedBy, this.id);\n }\n const reason = data.reason;\n const roomEnded = data.roomEnded;\n\n logger?.verbose('#Listener ON_REMOVED_FROM_ROOM_LISTENER_CALL', {\n requestedBy,\n reason,\n roomEnded,\n id: this.id,\n });\n this.onRemovedFromRoomDelegate({ requestedBy, reason, roomEnded });\n }\n };\n\n reconnectingListener = (data: any) => {\n if (data.id !== this.id) {\n return;\n }\n logger?.verbose('#Listener ON_RECONNECTING', data);\n if (this.onReconnectingDelegate) {\n this.onReconnectingDelegate(data);\n }\n };\n\n reconnectedListener = (data: any) => {\n if (data.id !== this.id) {\n return;\n }\n logger?.verbose('#Listener ON_RECONNECTED', data);\n if (this.onReconnectedDelegate) {\n this.onReconnectedDelegate(data);\n }\n };\n}\n"]}
|
|
@@ -6,9 +6,12 @@ export class HMSTrackSettings {
|
|
|
6
6
|
|
|
7
7
|
_defineProperty(this, "audio", void 0);
|
|
8
8
|
|
|
9
|
+
_defineProperty(this, "useHardwareEchoCancellation", void 0);
|
|
10
|
+
|
|
9
11
|
if (params) {
|
|
10
12
|
this.video = params.video;
|
|
11
13
|
this.audio = params.audio;
|
|
14
|
+
this.useHardwareEchoCancellation = params.useHardwareEchoCancellation;
|
|
12
15
|
}
|
|
13
16
|
}
|
|
14
17
|
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["HMSTrackSettings.ts"],"names":["HMSTrackSettings","constructor","params","video","audio"],"mappings":";;AAGA,OAAO,MAAMA,gBAAN,CAAuB;
|
|
1
|
+
{"version":3,"sources":["HMSTrackSettings.ts"],"names":["HMSTrackSettings","constructor","params","video","audio","useHardwareEchoCancellation"],"mappings":";;AAGA,OAAO,MAAMA,gBAAN,CAAuB;AAK5BC,EAAAA,WAAW,CAACC,MAAD,EAIR;AAAA;;AAAA;;AAAA;;AACD,QAAIA,MAAJ,EAAY;AACV,WAAKC,KAAL,GAAaD,MAAM,CAACC,KAApB;AACA,WAAKC,KAAL,GAAaF,MAAM,CAACE,KAApB;AACA,WAAKC,2BAAL,GAAmCH,MAAM,CAACG,2BAA1C;AACD;AACF;;AAf2B","sourcesContent":["import type { HMSAudioTrackSettings } from './HMSAudioTrackSettings';\nimport type { HMSVideoTrackSettings } from './HMSVideoTrackSettings';\n\nexport class HMSTrackSettings {\n video?: HMSVideoTrackSettings;\n audio?: HMSAudioTrackSettings;\n useHardwareEchoCancellation?: boolean;\n\n constructor(params?: {\n video?: HMSVideoTrackSettings;\n audio?: HMSAudioTrackSettings;\n useHardwareEchoCancellation?: boolean;\n }) {\n if (params) {\n this.video = params.video;\n this.audio = params.audio;\n this.useHardwareEchoCancellation = params.useHardwareEchoCancellation;\n }\n }\n}\n"]}
|
|
@@ -1,9 +1,9 @@
|
|
|
1
1
|
export let HMSVideoCodec;
|
|
2
2
|
|
|
3
3
|
(function (HMSVideoCodec) {
|
|
4
|
-
HMSVideoCodec["
|
|
5
|
-
HMSVideoCodec["
|
|
6
|
-
HMSVideoCodec["
|
|
7
|
-
HMSVideoCodec["
|
|
4
|
+
HMSVideoCodec["H264"] = "H264";
|
|
5
|
+
HMSVideoCodec["VP8"] = "VP8";
|
|
6
|
+
HMSVideoCodec["VP9"] = "VP9";
|
|
7
|
+
HMSVideoCodec["H265"] = "H265";
|
|
8
8
|
})(HMSVideoCodec || (HMSVideoCodec = {}));
|
|
9
9
|
//# sourceMappingURL=HMSVideoCodec.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["HMSVideoCodec.ts"],"names":["HMSVideoCodec"],"mappings":"AAAA,WAAYA,aAAZ;;WAAYA,a;AAAAA,EAAAA,a;AAAAA,EAAAA,a;AAAAA,EAAAA,a;AAAAA,EAAAA,a;GAAAA,a,KAAAA,a","sourcesContent":["export enum HMSVideoCodec {\n
|
|
1
|
+
{"version":3,"sources":["HMSVideoCodec.ts"],"names":["HMSVideoCodec"],"mappings":"AAAA,WAAYA,aAAZ;;WAAYA,a;AAAAA,EAAAA,a;AAAAA,EAAAA,a;AAAAA,EAAAA,a;AAAAA,EAAAA,a;GAAAA,a,KAAAA,a","sourcesContent":["export enum HMSVideoCodec {\n H264 = 'H264',\n VP8 = 'VP8',\n VP9 = 'VP9',\n H265 = 'H265',\n}\n"]}
|
package/lib/module/index.js
CHANGED
|
@@ -46,6 +46,7 @@ export * from './classes/HMSRtmpStreamingState';
|
|
|
46
46
|
export * from './classes/HMSServerRecordingState';
|
|
47
47
|
export * from './classes/HMSBrowserRecordingState';
|
|
48
48
|
export * from './classes/HMSRTMPConfig';
|
|
49
|
+
export * from './classes/HMSVideoResolution';
|
|
49
50
|
import { HMSSDK as HmsManager } from './classes/HMSSDK';
|
|
50
51
|
export default HmsManager;
|
|
51
52
|
//# sourceMappingURL=index.js.map
|
package/lib/module/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["index.ts"],"names":["HMSSDK","HmsManager"],"mappings":"AAAA,cAAc,qBAAd;AACA,cAAc,oCAAd;AACA,cAAc,sBAAd;AACA,cAAc,mBAAd;AACA,cAAc,iCAAd;AACA,cAAc,yBAAd;AACA,cAAc,4BAAd;AACA,cAAc,yBAAd;AACA,cAAc,4BAAd;AACA,cAAc,oBAAd;AACA,cAAc,wBAAd;AACA,cAAc,gCAAd;AACA,cAAc,gCAAd;AACA,cAAc,qCAAd;AACA,cAAc,kBAAd;AACA,cAAc,mBAAd;AACA,cAAc,gCAAd;AACA,cAAc,mBAAd;AACA,cAAc,+BAAd;AACA,cAAc,yBAAd;AACA,cAAc,+BAAd;AACA,cAAc,8BAAd;AACA,cAAc,0BAAd;AACA,cAAc,mBAAd;AACA,cAAc,8BAAd;AACA,cAAc,wBAAd;AACA,cAAc,8BAAd;AACA,cAAc,qBAAd;AACA,cAAc,sBAAd;AACA,cAAc,iCAAd;AACA,cAAc,yBAAd;AACA,cAAc,4BAAd;AACA,cAAc,yBAAd;AACA,cAAc,yBAAd;AACA,cAAc,yBAAd;AACA,cAAc,0BAAd;AACA,cAAc,qBAAd;AACA,cAAc,uBAAd;AACA,cAAc,4BAAd;AACA,cAAc,sCAAd;AACA,cAAc,sBAAd;AACA,cAAc,4BAAd;AACA,cAAc,2BAAd;AACA,cAAc,wBAAd;AACA,cAAc,iCAAd;AACA,cAAc,mCAAd;AACA,cAAc,oCAAd;AACA,cAAc,yBAAd;AAEA,SAASA,MAAM,IAAIC,UAAnB,QAAqC,kBAArC;AACA,eAAeA,UAAf","sourcesContent":["export * from './classes/HMSConfig';\nexport * from './classes/HMSUpdateListenerActions';\nexport * from './classes/HMSMessage';\nexport * from './classes/HmsView';\nexport * from './classes/HMSVideoTrackSettings';\nexport * from './classes/HMSVideoTrack';\nexport * from './classes/HMSVideoSettings';\nexport * from './classes/HMSVideoCodec';\nexport * from './classes/HMSTrackSettings';\nexport * from './classes/HMSTrack';\nexport * from './classes/HMSTrackType';\nexport * from './classes/HMSSubscribeSettings';\nexport * from './classes/HMSSimulcastSettings';\nexport * from './classes/HMSSimulcastLayerSettings';\nexport * from './classes/HMSSDK';\nexport * from './classes/HMSRoom';\nexport * from './classes/HMSRoleChangeRequest';\nexport * from './classes/HMSRole';\nexport * from './classes/HMSRemoteVideoTrack';\nexport * from './classes/HMSRemotePeer';\nexport * from './classes/HMSRemoteAudioTrack';\nexport * from './classes/HMSPublishSettings';\nexport * from './classes/HMSPermissions';\nexport * from './classes/HMSPeer';\nexport * from './classes/HMSLocalVideoTrack';\nexport * from './classes/HMSLocalPeer';\nexport * from './classes/HMSLocalAudioTrack';\nexport * from './classes/HMSHelper';\nexport * from './classes/HMSEncoder';\nexport * from './classes/HMSAudioTrackSettings';\nexport * from './classes/HMSAudioTrack';\nexport * from './classes/HMSAudioSettings';\nexport * from './classes/HMSAudioCodec';\nexport * from './classes/HMSPeerUpdate';\nexport * from './classes/HMSRoomUpdate';\nexport * from './classes/HMSTrackUpdate';\nexport * from './classes/HMSLogger';\nexport * from './classes/HMSLogLevel';\nexport * from './classes/HMSVideoViewMode';\nexport * from './classes/HMSChangeTrackStateRequest';\nexport * from './classes/HMSSpeaker';\nexport * from './classes/HMSSpeakerUpdate';\nexport * from './classes/HMSCameraFacing';\nexport * from './classes/HMSException';\nexport * from './classes/HMSRtmpStreamingState';\nexport * from './classes/HMSServerRecordingState';\nexport * from './classes/HMSBrowserRecordingState';\nexport * from './classes/HMSRTMPConfig';\n\nimport { HMSSDK as HmsManager } from './classes/HMSSDK';\nexport default HmsManager;\n"]}
|
|
1
|
+
{"version":3,"sources":["index.ts"],"names":["HMSSDK","HmsManager"],"mappings":"AAAA,cAAc,qBAAd;AACA,cAAc,oCAAd;AACA,cAAc,sBAAd;AACA,cAAc,mBAAd;AACA,cAAc,iCAAd;AACA,cAAc,yBAAd;AACA,cAAc,4BAAd;AACA,cAAc,yBAAd;AACA,cAAc,4BAAd;AACA,cAAc,oBAAd;AACA,cAAc,wBAAd;AACA,cAAc,gCAAd;AACA,cAAc,gCAAd;AACA,cAAc,qCAAd;AACA,cAAc,kBAAd;AACA,cAAc,mBAAd;AACA,cAAc,gCAAd;AACA,cAAc,mBAAd;AACA,cAAc,+BAAd;AACA,cAAc,yBAAd;AACA,cAAc,+BAAd;AACA,cAAc,8BAAd;AACA,cAAc,0BAAd;AACA,cAAc,mBAAd;AACA,cAAc,8BAAd;AACA,cAAc,wBAAd;AACA,cAAc,8BAAd;AACA,cAAc,qBAAd;AACA,cAAc,sBAAd;AACA,cAAc,iCAAd;AACA,cAAc,yBAAd;AACA,cAAc,4BAAd;AACA,cAAc,yBAAd;AACA,cAAc,yBAAd;AACA,cAAc,yBAAd;AACA,cAAc,0BAAd;AACA,cAAc,qBAAd;AACA,cAAc,uBAAd;AACA,cAAc,4BAAd;AACA,cAAc,sCAAd;AACA,cAAc,sBAAd;AACA,cAAc,4BAAd;AACA,cAAc,2BAAd;AACA,cAAc,wBAAd;AACA,cAAc,iCAAd;AACA,cAAc,mCAAd;AACA,cAAc,oCAAd;AACA,cAAc,yBAAd;AACA,cAAc,8BAAd;AAEA,SAASA,MAAM,IAAIC,UAAnB,QAAqC,kBAArC;AACA,eAAeA,UAAf","sourcesContent":["export * from './classes/HMSConfig';\nexport * from './classes/HMSUpdateListenerActions';\nexport * from './classes/HMSMessage';\nexport * from './classes/HmsView';\nexport * from './classes/HMSVideoTrackSettings';\nexport * from './classes/HMSVideoTrack';\nexport * from './classes/HMSVideoSettings';\nexport * from './classes/HMSVideoCodec';\nexport * from './classes/HMSTrackSettings';\nexport * from './classes/HMSTrack';\nexport * from './classes/HMSTrackType';\nexport * from './classes/HMSSubscribeSettings';\nexport * from './classes/HMSSimulcastSettings';\nexport * from './classes/HMSSimulcastLayerSettings';\nexport * from './classes/HMSSDK';\nexport * from './classes/HMSRoom';\nexport * from './classes/HMSRoleChangeRequest';\nexport * from './classes/HMSRole';\nexport * from './classes/HMSRemoteVideoTrack';\nexport * from './classes/HMSRemotePeer';\nexport * from './classes/HMSRemoteAudioTrack';\nexport * from './classes/HMSPublishSettings';\nexport * from './classes/HMSPermissions';\nexport * from './classes/HMSPeer';\nexport * from './classes/HMSLocalVideoTrack';\nexport * from './classes/HMSLocalPeer';\nexport * from './classes/HMSLocalAudioTrack';\nexport * from './classes/HMSHelper';\nexport * from './classes/HMSEncoder';\nexport * from './classes/HMSAudioTrackSettings';\nexport * from './classes/HMSAudioTrack';\nexport * from './classes/HMSAudioSettings';\nexport * from './classes/HMSAudioCodec';\nexport * from './classes/HMSPeerUpdate';\nexport * from './classes/HMSRoomUpdate';\nexport * from './classes/HMSTrackUpdate';\nexport * from './classes/HMSLogger';\nexport * from './classes/HMSLogLevel';\nexport * from './classes/HMSVideoViewMode';\nexport * from './classes/HMSChangeTrackStateRequest';\nexport * from './classes/HMSSpeaker';\nexport * from './classes/HMSSpeakerUpdate';\nexport * from './classes/HMSCameraFacing';\nexport * from './classes/HMSException';\nexport * from './classes/HMSRtmpStreamingState';\nexport * from './classes/HMSServerRecordingState';\nexport * from './classes/HMSBrowserRecordingState';\nexport * from './classes/HMSRTMPConfig';\nexport * from './classes/HMSVideoResolution';\n\nimport { HMSSDK as HmsManager } from './classes/HMSSDK';\nexport default HmsManager;\n"]}
|
|
@@ -7,6 +7,7 @@ import type { HMSAudioTrackSettings } from './HMSAudioTrackSettings';
|
|
|
7
7
|
import { HMSLocalAudioTrack } from './HMSLocalAudioTrack';
|
|
8
8
|
import { HMSLocalVideoTrack } from './HMSLocalVideoTrack';
|
|
9
9
|
import type { HMSRole } from './HMSRole';
|
|
10
|
+
import type { HMSTrackType } from './HMSTrackType';
|
|
10
11
|
export declare class HMSLocalPeer extends HMSPeer {
|
|
11
12
|
private localAudio?;
|
|
12
13
|
private localVideo?;
|
|
@@ -30,6 +31,7 @@ export declare class HMSLocalPeer extends HMSPeer {
|
|
|
30
31
|
trackDescription?: string;
|
|
31
32
|
isMute?: boolean;
|
|
32
33
|
settings?: HMSAudioTrackSettings;
|
|
34
|
+
type: HMSTrackType;
|
|
33
35
|
};
|
|
34
36
|
localVideoTrackData?: {
|
|
35
37
|
id: string;
|
|
@@ -38,6 +40,7 @@ export declare class HMSLocalPeer extends HMSPeer {
|
|
|
38
40
|
trackDescription?: string;
|
|
39
41
|
isMute?: boolean;
|
|
40
42
|
settings?: HMSVideoTrackSettings;
|
|
43
|
+
type: HMSTrackType;
|
|
41
44
|
};
|
|
42
45
|
});
|
|
43
46
|
}
|
|
@@ -3,6 +3,7 @@ export declare class HMSLogger {
|
|
|
3
3
|
private _verbose;
|
|
4
4
|
private _warning;
|
|
5
5
|
private _error;
|
|
6
|
+
private logs;
|
|
6
7
|
constructor(params?: {
|
|
7
8
|
verbose: boolean;
|
|
8
9
|
warning: boolean;
|
|
@@ -11,5 +12,11 @@ export declare class HMSLogger {
|
|
|
11
12
|
verbose(message: string, data: any): void;
|
|
12
13
|
warn(message: string, data: any): void;
|
|
13
14
|
error(message: string, data: any): void;
|
|
15
|
+
getLogs(): {
|
|
16
|
+
type: "verbose" | "warn" | "error";
|
|
17
|
+
message: string;
|
|
18
|
+
data: any;
|
|
19
|
+
id: string;
|
|
20
|
+
}[];
|
|
14
21
|
updateLogLevel(level: HMSLogLevel, value: boolean): void;
|
|
15
22
|
}
|
|
@@ -26,7 +26,6 @@ export declare class HMSSDK {
|
|
|
26
26
|
localPeer?: HMSLocalPeer;
|
|
27
27
|
remotePeers?: HMSRemotePeer[];
|
|
28
28
|
knownRoles?: HMSRole[];
|
|
29
|
-
logger?: HMSLogger;
|
|
30
29
|
id: string;
|
|
31
30
|
private muteStatus;
|
|
32
31
|
onPreviewDelegate?: any;
|
|
@@ -54,6 +53,8 @@ export declare class HMSSDK {
|
|
|
54
53
|
static build(params?: {
|
|
55
54
|
trackSettings?: HMSTrackSettings;
|
|
56
55
|
}): Promise<HMSSDK>;
|
|
56
|
+
static getLogger(): HMSLogger | undefined;
|
|
57
|
+
setLogger: (hmsLogger: HMSLogger) => void;
|
|
57
58
|
destroy: () => void;
|
|
58
59
|
attachPreviewListener: () => void;
|
|
59
60
|
attachListeners: () => void;
|
|
@@ -73,18 +74,18 @@ export declare class HMSSDK {
|
|
|
73
74
|
*
|
|
74
75
|
* @memberof HMSSDK
|
|
75
76
|
*/
|
|
76
|
-
leave: () => Promise<
|
|
77
|
-
sendBroadcastMessage: (message: string, type?: string | undefined) =>
|
|
78
|
-
sendGroupMessage: (message: string, roles: HMSRole[], type?: string | undefined) =>
|
|
79
|
-
sendDirectMessage: (message: string, peerId: string, type?: string | undefined) =>
|
|
77
|
+
leave: () => Promise<any>;
|
|
78
|
+
sendBroadcastMessage: (message: string, type?: string | undefined) => Promise<any>;
|
|
79
|
+
sendGroupMessage: (message: string, roles: HMSRole[], type?: string | undefined) => Promise<any>;
|
|
80
|
+
sendDirectMessage: (message: string, peerId: string, type?: string | undefined) => Promise<any>;
|
|
80
81
|
changeMetadata: (metadata: string) => void;
|
|
81
82
|
startRTMPOrRecording: (data: HMSRTMPConfig) => Promise<any>;
|
|
82
83
|
stopRtmpAndRecording: () => Promise<any>;
|
|
83
|
-
changeRole: (peer: HMSPeer, role: HMSRole, force?: boolean) =>
|
|
84
|
-
changeTrackState: (track: HMSTrack, mute: boolean) =>
|
|
85
|
-
changeTrackStateRoles: (type: HMSTrackType, mute: boolean, source: string, roles: Array<HMSRole>) =>
|
|
86
|
-
removePeer: (peerId: string, reason: string) =>
|
|
87
|
-
endRoom: (lock: boolean, reason: string) =>
|
|
84
|
+
changeRole: (peer: HMSPeer, role: HMSRole, force?: boolean) => Promise<any>;
|
|
85
|
+
changeTrackState: (track: HMSTrack, mute: boolean) => Promise<any>;
|
|
86
|
+
changeTrackStateRoles: (type: HMSTrackType, mute: boolean, source: string, roles: Array<HMSRole>) => Promise<any>;
|
|
87
|
+
removePeer: (peerId: string, reason: string) => Promise<any>;
|
|
88
|
+
endRoom: (lock: boolean, reason: string) => Promise<any>;
|
|
88
89
|
acceptRoleChange: () => void;
|
|
89
90
|
muteAllPeersAudio: (mute: boolean) => void;
|
|
90
91
|
getRoom: () => Promise<HMSRoom>;
|
|
@@ -113,7 +114,6 @@ export declare class HMSSDK {
|
|
|
113
114
|
* @memberof HMSSDK
|
|
114
115
|
*/
|
|
115
116
|
removeAllListeners: () => void;
|
|
116
|
-
setLogger: (hmsLogger: HMSLogger) => void;
|
|
117
117
|
onPreviewListener: (data: any) => void;
|
|
118
118
|
onJoinListener: (data: any) => void;
|
|
119
119
|
onRoomListener: (data: any) => void;
|
|
@@ -3,8 +3,10 @@ import type { HMSVideoTrackSettings } from './HMSVideoTrackSettings';
|
|
|
3
3
|
export declare class HMSTrackSettings {
|
|
4
4
|
video?: HMSVideoTrackSettings;
|
|
5
5
|
audio?: HMSAudioTrackSettings;
|
|
6
|
+
useHardwareEchoCancellation?: boolean;
|
|
6
7
|
constructor(params?: {
|
|
7
8
|
video?: HMSVideoTrackSettings;
|
|
8
9
|
audio?: HMSAudioTrackSettings;
|
|
10
|
+
useHardwareEchoCancellation?: boolean;
|
|
9
11
|
});
|
|
10
12
|
}
|
|
@@ -46,5 +46,6 @@ export * from './classes/HMSRtmpStreamingState';
|
|
|
46
46
|
export * from './classes/HMSServerRecordingState';
|
|
47
47
|
export * from './classes/HMSBrowserRecordingState';
|
|
48
48
|
export * from './classes/HMSRTMPConfig';
|
|
49
|
+
export * from './classes/HMSVideoResolution';
|
|
49
50
|
import { HMSSDK as HmsManager } from './classes/HMSSDK';
|
|
50
51
|
export default HmsManager;
|
package/package.json
CHANGED
|
@@ -48,7 +48,7 @@ export class HMSEncoder {
|
|
|
48
48
|
role: HMSEncoder.encodeHmsRole(peer?.role),
|
|
49
49
|
customerUserID: peer?.customerUserID,
|
|
50
50
|
customerDescription: peer?.customerDescription,
|
|
51
|
-
metadata: peer
|
|
51
|
+
metadata: peer?.metadata,
|
|
52
52
|
audioTrack: HMSEncoder.encodeHmsAudioTrack(peer?.audioTrack, id),
|
|
53
53
|
videoTrack: HMSEncoder.encodeHmsVideoTrack(peer?.videoTrack, id),
|
|
54
54
|
auxiliaryTracks: HMSEncoder.encodeHmsAuxiliaryTracks(
|
|
@@ -132,6 +132,7 @@ export class HMSEncoder {
|
|
|
132
132
|
settings: HMSEncoder.encodeHmsAudioTrackSettings(
|
|
133
133
|
peer?.localAudioTrackData?.settings
|
|
134
134
|
),
|
|
135
|
+
type: peer?.localAudioTrackData?.type,
|
|
135
136
|
},
|
|
136
137
|
localVideoTrackData: {
|
|
137
138
|
id: id,
|
|
@@ -142,6 +143,7 @@ export class HMSEncoder {
|
|
|
142
143
|
settings: HMSEncoder.encodeHmsVideoTrackSettings(
|
|
143
144
|
peer?.localVideoTrackData?.settings
|
|
144
145
|
),
|
|
146
|
+
type: peer?.localVideoTrackData?.type,
|
|
145
147
|
},
|
|
146
148
|
};
|
|
147
149
|
|
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
import { NativeModules, Platform } from 'react-native';
|
|
2
2
|
import { HMSAudioTrack } from './HMSAudioTrack';
|
|
3
|
+
import { HMSSDK } from './HMSSDK';
|
|
3
4
|
import type { HMSAudioTrackSettings } from './HMSAudioTrackSettings';
|
|
4
5
|
import type { HMSTrackType } from './HMSTrackType';
|
|
5
6
|
|
|
@@ -21,10 +22,25 @@ export class HMSLocalAudioTrack extends HMSAudioTrack {
|
|
|
21
22
|
* @memberof HMSLocalAudioTrack
|
|
22
23
|
*/
|
|
23
24
|
setMute(isMute: boolean) {
|
|
25
|
+
const logger = HMSSDK.getLogger();
|
|
26
|
+
logger?.verbose('#Function setMute', {
|
|
27
|
+
trackId: this.trackId,
|
|
28
|
+
id: this.id,
|
|
29
|
+
source: this.source,
|
|
30
|
+
type: this.type,
|
|
31
|
+
isMute,
|
|
32
|
+
});
|
|
24
33
|
HmsManager.setLocalMute({ isMute, id: this.id });
|
|
25
34
|
}
|
|
26
35
|
|
|
27
36
|
getVolume = async () => {
|
|
37
|
+
const logger = HMSSDK.getLogger();
|
|
38
|
+
logger?.verbose('#Function getVolume', {
|
|
39
|
+
trackId: this.trackId,
|
|
40
|
+
id: this.id,
|
|
41
|
+
source: this.source,
|
|
42
|
+
type: this.type,
|
|
43
|
+
});
|
|
28
44
|
if (Platform.OS === 'ios') {
|
|
29
45
|
return 'This API not available for IOS';
|
|
30
46
|
}
|
|
@@ -7,6 +7,7 @@ import type { HMSAudioTrackSettings } from './HMSAudioTrackSettings';
|
|
|
7
7
|
import { HMSLocalAudioTrack } from './HMSLocalAudioTrack';
|
|
8
8
|
import { HMSLocalVideoTrack } from './HMSLocalVideoTrack';
|
|
9
9
|
import type { HMSRole } from './HMSRole';
|
|
10
|
+
import type { HMSTrackType } from './HMSTrackType';
|
|
10
11
|
|
|
11
12
|
export class HMSLocalPeer extends HMSPeer {
|
|
12
13
|
private localAudio?: HMSLocalAudioTrack;
|
|
@@ -37,6 +38,7 @@ export class HMSLocalPeer extends HMSPeer {
|
|
|
37
38
|
trackDescription?: string;
|
|
38
39
|
isMute?: boolean;
|
|
39
40
|
settings?: HMSAudioTrackSettings;
|
|
41
|
+
type: HMSTrackType;
|
|
40
42
|
};
|
|
41
43
|
localVideoTrackData?: {
|
|
42
44
|
id: string;
|
|
@@ -45,6 +47,7 @@ export class HMSLocalPeer extends HMSPeer {
|
|
|
45
47
|
trackDescription?: string;
|
|
46
48
|
isMute?: boolean;
|
|
47
49
|
settings?: HMSVideoTrackSettings;
|
|
50
|
+
type: HMSTrackType;
|
|
48
51
|
};
|
|
49
52
|
}) {
|
|
50
53
|
super(params);
|
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
import { NativeModules } from 'react-native';
|
|
2
2
|
import { HMSVideoTrack } from './HMSVideoTrack';
|
|
3
|
+
import { HMSSDK } from './HMSSDK';
|
|
3
4
|
import type { HMSVideoTrackSettings } from './HMSVideoTrackSettings';
|
|
4
5
|
import type { HMSTrackType } from './HMSTrackType';
|
|
5
6
|
|
|
@@ -22,6 +23,13 @@ export class HMSLocalVideoTrack extends HMSVideoTrack {
|
|
|
22
23
|
* @memberof HMSSDK
|
|
23
24
|
*/
|
|
24
25
|
switchCamera = () => {
|
|
26
|
+
const logger = HMSSDK.getLogger();
|
|
27
|
+
logger?.verbose('#Function switchCamera', {
|
|
28
|
+
trackId: this.trackId,
|
|
29
|
+
source: this.source,
|
|
30
|
+
type: this.type,
|
|
31
|
+
id: this.id,
|
|
32
|
+
});
|
|
25
33
|
HmsManager.switchCamera({ id: this.id });
|
|
26
34
|
};
|
|
27
35
|
|
|
@@ -32,6 +40,13 @@ export class HMSLocalVideoTrack extends HMSVideoTrack {
|
|
|
32
40
|
* @memberof HMSLocalVideoTrack
|
|
33
41
|
*/
|
|
34
42
|
setMute(isMute: boolean) {
|
|
43
|
+
const logger = HMSSDK.getLogger();
|
|
44
|
+
logger?.verbose('#Function setMute', {
|
|
45
|
+
trackId: this.trackId,
|
|
46
|
+
source: this.source,
|
|
47
|
+
type: this.type,
|
|
48
|
+
id: this.id,
|
|
49
|
+
});
|
|
35
50
|
HmsManager.setLocalVideoMute({ isMute, id: this.id });
|
|
36
51
|
}
|
|
37
52
|
|
package/src/classes/HMSLogger.ts
CHANGED
|
@@ -4,6 +4,12 @@ export class HMSLogger {
|
|
|
4
4
|
private _verbose: boolean = false;
|
|
5
5
|
private _warning: boolean = false;
|
|
6
6
|
private _error: boolean = false;
|
|
7
|
+
private logs: {
|
|
8
|
+
type: 'verbose' | 'warn' | 'error';
|
|
9
|
+
message: string;
|
|
10
|
+
data: any;
|
|
11
|
+
id: string;
|
|
12
|
+
}[] = [];
|
|
7
13
|
|
|
8
14
|
constructor(params?: { verbose: boolean; warning: boolean; error: boolean }) {
|
|
9
15
|
if (params) {
|
|
@@ -14,21 +20,28 @@ export class HMSLogger {
|
|
|
14
20
|
}
|
|
15
21
|
|
|
16
22
|
verbose(message: string, data: any) {
|
|
17
|
-
if (this._verbose
|
|
23
|
+
if (this._verbose) {
|
|
18
24
|
console.log(message, data);
|
|
19
25
|
}
|
|
26
|
+
this.logs.push({ type: 'verbose', message, data, id: data?.id });
|
|
20
27
|
}
|
|
21
28
|
|
|
22
29
|
warn(message: string, data: any) {
|
|
23
30
|
if (this._warning) {
|
|
24
31
|
console.warn(message, data);
|
|
25
32
|
}
|
|
33
|
+
this.logs.push({ type: 'warn', message, data, id: data?.id });
|
|
26
34
|
}
|
|
27
35
|
|
|
28
36
|
error(message: string, data: any) {
|
|
29
37
|
if (this._error) {
|
|
30
38
|
console.error(message, data);
|
|
31
39
|
}
|
|
40
|
+
this.logs.push({ type: 'error', message, data, id: data?.id });
|
|
41
|
+
}
|
|
42
|
+
|
|
43
|
+
getLogs() {
|
|
44
|
+
return this.logs;
|
|
32
45
|
}
|
|
33
46
|
|
|
34
47
|
updateLogLevel(level: HMSLogLevel, value: boolean) {
|
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
import { NativeModules } from 'react-native';
|
|
2
|
+
import { HMSSDK } from './HMSSDK';
|
|
2
3
|
import type { HMSTrackType } from './HMSTrackType';
|
|
3
4
|
import { HMSAudioTrack } from './HMSAudioTrack';
|
|
4
5
|
|
|
@@ -17,6 +18,14 @@ export class HMSRemoteAudioTrack extends HMSAudioTrack {
|
|
|
17
18
|
* @memberof HMSRemoteAudioTrack
|
|
18
19
|
*/
|
|
19
20
|
setPlaybackAllowed(playbackAllowed: boolean) {
|
|
21
|
+
const logger = HMSSDK.getLogger();
|
|
22
|
+
logger?.verbose('#Function setPlaybackAllowed', {
|
|
23
|
+
trackId: this.trackId,
|
|
24
|
+
id: this.id,
|
|
25
|
+
source: this.source,
|
|
26
|
+
type: this.type,
|
|
27
|
+
playbackAllowed,
|
|
28
|
+
});
|
|
20
29
|
HmsManager.setPlaybackAllowed({
|
|
21
30
|
id: this.id,
|
|
22
31
|
trackId: this.trackId,
|
|
@@ -26,6 +35,13 @@ export class HMSRemoteAudioTrack extends HMSAudioTrack {
|
|
|
26
35
|
|
|
27
36
|
isPlaybackAllowed = async () => {
|
|
28
37
|
try {
|
|
38
|
+
const logger = HMSSDK.getLogger();
|
|
39
|
+
logger?.verbose('#Function isPlaybackAllowed', {
|
|
40
|
+
trackId: this.trackId,
|
|
41
|
+
id: this.id,
|
|
42
|
+
source: this.source,
|
|
43
|
+
type: this.type,
|
|
44
|
+
});
|
|
29
45
|
const val = await HmsManager.isPlaybackAllowed({
|
|
30
46
|
id: this.id,
|
|
31
47
|
trackId: this.trackId,
|