This Class features host of methods and event listeners to help developers to create RTC Application. Using these methods, a Client End Point can connect a EnableX Session and manage different aspect to conduct an effective Session.
Methods
Given below a categorized listing of methods:
Connection
joinRoom()
– To connect and join Room with a Stream.disconnect()
– To disconnect End-Point from the room.
Information
getRoomId()
– To get Room ID.getClientId()
– To get Client ID of the connected user to the room.getClientName()
– To get Client Name of connected user to the room.getRole()
– To get role of user connected to the room, viz. moderator or participant.whoAmI()
– To get connected user information at an End-Point.getUserList()
– To get a list of connected users to the Room.isRoomActiveTalker()
– To check if the Room has Active Talker.
Streaming
publish()
– To publish a local stream to the connected Room.unpublish()
– To unpublish a local stream.subscribe()
– To subscribe a remote stream to receive.getMaxTalkers()
– To get number of talkers allowed to receive in Active Talker List.setTalkerCount()
– To opt for number of talkers to receive in Active Talker List.getTalkerCount()
– To get number of talkers to receive in Active Talker List.setAudioOnlyMode()
– To switch to audio only call and you neither want to receive anyone’s video not want to publish your video.getAdvancedOptions()
– To to get the advanced options like battery updated, video quality changed etc.setAdvancedOptions()
– To set advanced options.setScalingType()
– To update the scaling type.muteSubscribeStreamsAudio()
– To mute/unmute audio of subscribed stream.updateConfiguration()
– To re-configure your stream by adding new or updating existing specification parameters of a stream.
Messaging & File Sharing
sendUserData()
– To send message to all or selected participants in a Room.sendMessage()
– To send public and private chat-message.sendFiles()
– To send files to specific user, a group or all.cancelUpload()
– To cancel an ongoing upload of a file.cancelAllUploads()
– To cancel all uploads.getAvailableFiles()
– To get all available files in Session to download.downloadFile()
– To download a file.cancelDownload()
– To cancel an ongoing download of a file.cancelAllDownloads()
– To cancel all downloads.
Moderator Controls
startRecord()
– To start session recording.stopRecord()
– To stop ongoing session recording.hardMute()
– To hard-mute a Room, no participant is allowed to talk.hardUnMute()
– To hard-unmute a Room.lockRoom()
– To lock Room to disallow further entry into Room.unLockRoom()
– To unlock Room to allow subsequent entry into Room.dropUser()
– To drop a user from session.destroy()
– To conclude an ongoing session.switchUserRole()
– For the Moderator to designate a connected Participant to act as a Moderator during the session.switchRoomMode()
– Allows the Moderator to switch the Room’s mode of operation from Group to Lecture or vice versa during a running conference.approveAwaitedUser()
– To allow the Moderator to approve a user’s entry.denyAwaitedUser()
– To decline a user’s entry to the Session.pinUsers()
– To allow the Moderator to pin a user(s) to the Active Talker List irrespective of the user’s activity level.addSpotlightUsers()
– To allow the Moderator to spotlight a user which pushes the user’s Stream to the top of Active Talker List irrespective of the user’s activity level.hardMuteAudio()
– To hard-mute a Participant’s audio.hardMuteVideo()
– To hard-mute a Participant’s video.hardUnMuteAudio()
– To lift the audio hard-mute restriction from the Participant.hardUnmuteVideo()
– To lift the video hard-mute restriction from the Participant.
Floor Access Control
requestFloor()
– To request moderator for Floor Access to publish.cancelFloor()
– For the participant to cancel his own request for Floor Access.grantFloor()
– To grant Floor Access participant allowing him to publish.denyFloor()
– To deny Floor Access to a participant who had requested access.finishFloor()
– For the participant to finish floor access granted to him by Moderator.releaseFloor()
– For the Moderator to terminate floor access granted to some participant.
Devices
getDevices()
– To get a list of connected Audio devices.getSelectedDevice()
– To get the name of the given/selected Device.switchMediaDevice()
– To switch to alternate Media Device. A user can switch to alternate available Microphone.switchCamera()
– To switch from rear to front Camera and vice-versa to change Stream Source.
Stream Controls
muteSelfAudio()
– To mute/unmute audio of own published stream.muteSelfVideo()
– To mute/unmute video of own published stream.
Manage Logging
enableLogs()
– To enable Client Side Logging.postClientLogs()
– To submit Client End Point logs to EnableX Team to audit.
Advance Features
– To create a Screen-Sharing Stream.startScreenShare
()
– To stop the ongoing Screen-Sharing.stopScreenShare
()setPlayerScalingType()
– To choose Stream Scaling Options within Video Player.extendConferenceDuration()
– To extend Conference Duration.makeOutboundCall()
– To make outbound SIP/PSTN call from Session.enableProximitySensor()
– To enable Proximity Sensor.enableStats()
– To get live statistics of each stream you are playing at any end-point, be it a local stream or subscribed stream.
– To receive notification for the talkers in the Room or the participants acting as a source of the noise.subscribeForTalkerNotification
()stopVideoTracksOnApplicationBackground()
– To switch to different application pushing your RTC Application to Background.startVideoTracksOnApplicationForeground()
– To switch back to different application pushing your RTC Application in the Foreground.getReceiveVideoQuality()
– To switch back to different application pushing your RTC Application in the Foreground.