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 is a categorized listing of methods:
Connection
joinRoom()
– To connect and join Room with a Stream.disconnect()
– To disconnect End-Point from the room.
Room Information
getRoomId()
– To get Room ID.getRoomMetadata()
– To get complete information about the room.isConnected()
– To know the status of the Room if it is connected or not.getMode()
– To know whether the room is in group mode or lecture mode.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 list of all the users connected to the room.
Streaming
getMaxTalkers()
– To know the maximum permissible Active Talkers that you may receive and you can set.getTalkerCount()
– To get number of talkers to receive in Active Talker List.setTalkerCount()
– To opt for number of talkers to receive in Active Talker List.setAudioOnlyMode()
– To change to an audio-only call, i.e. you neither want to receive anyone’s video nor want to publish your video.getAdvancedOptions()
– To get advanced options like battery updated, video quality changed etc.setAdvancedOptions()
– To set advanced options.muteSubscribeStreamsAudio()
– To mute/unmute audio of subscribed stream.updateConfiguration()
– To update the parameters of a stream.getLocalStreamID()
– To obtain the ID of the Local Stream.
Messaging & File Sharing
sendMessage()
– To send public and private chat-message.sendFiles()
– To send files to specific user, a group or all.cancelUpload()
– To cancel ongoing upload of a file.cancelAllUploads()
– To cancel all uploads.getAvailableFiles()
– To know what all files are available for download.downloadFile()
– To download a file.cancelDownload()
– To cancel downloading a particular file.cancelAllDownloads()
– To cancel all downloads.sendUserData()
– To send messages to all or selected participants in a Room.
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, a participant can talk if desired.lockRoom()
– To lock Room to disallow further entry into Room.unLockRoom()
– To unlock Room to allow entry into Room subsequently.dropUser()
– To disconnect or force-drop one or more participant(s) from the Session.destroy()
– To terminate an ongoing session.switchUserRole()
– For the Moderator to designate a connected Participant to act as a Moderator during the session.
Screen Sharing
addScreenShare()
– To start screen sharing.removeScreenShare()
– To stop screen sharing.hideScreenShareView()
– To hide and unhide screen share view in the running conference.
Canvas Streaming
addCanvasScreen()
– To start showing canvas streaming in the room.removeCanvasScreen()
– To stop showing canvas streaming in the room.hideCanvasScreen()
– To hide and unhide canvas view in the running conference.
Annotations
startAnnotation()
– To start annotations.stopAnnotations()
– To stop annotations.
Floor Access Control
requestFloor()
– To request moderator for Floor Access to publish.cancelFloor()
– Participant cancels his own request for Floor Access which is pending at the Moderator’s end.grantFloor()
– To grant floor access to one or many users one by one allowing him to publish.denyFloor()
– To deny Floor Access to a participant who had requested access.finishFloor()
– For the participant to end floor access granted to him by Moderator.releaseFloor()
– For the Moderator to terminate floor access to a participant granted earlier.
Devices
getDevices()
– To get a list of all the audio devices connected to your Device.getSelectedDevice()
– To get the currently selected or in-use Audio Device for the Stream.switchMediaDevice()
– To switch Microphone, Bluetooth devices, or speakers.
Stream Controls
muteSelfAudio()
– To mute/unmute audio of own published stream.muteSelfVideo()
– To mute/unmute video of own published stream.switchCamera()
– To switch from rear to front Camera and vice-versa to change Stream Source.initLocalView()
– To display local stream.initRemoteView()
– To show remote streams.hideSelfView()
– To hide and unhide local stream view in the running conference.hideRemoteView()
– To hide and unhide remote stream view in the running conference.resizeLocalView()
– To resize the local view in the running conference.resizeRemoteView()
– To resize the remote view in the running conference.
Manage Logging
enableLogs()
– To enable Client Side Logging.postClientLogs()
– To submit Client End Point logs to EnableX Team to audit.
Handle Application Switch
stopVideoTracksOnApplicationBackground()
– To switch to different application pushing your RTC Application to Background.startVideoTracksOnApplicationForeground()
– To switch back to your RTC Application.
Manage Video
setReceiveVideoQuality()
getReceiveVideoQuality()
– To get currently selected video quality.adjustLayout()
– To adjust Video Player Layout in case you have received complete Active Talker View.
Miscellaneous
extendConferenceDuration()
– To extend Conference Duration.makeOutboundCall()
– To initiate an Outbound Call to PSTN Number or SIP URI inviting the called participant to join the session on accepting the call.enableProximitySensor()
– To enable Proximity Sensor.enableStats()
– To enable/disable streaming stats for all the streams in the room.