Conference

A conference instance.

This class allows performing actions over this specific conference like joining the conference, hanging up or managing its participants. It also allows adding a listener to receive events related to this particular instance (@see ConferenceListener).

In order to share the media successfully, it is necessary to declare the pertinent permissions on the manifest:

  • "android.permission.CAMERA" for sharing video.

  • "android.permission.RECORD_AUDIO" for sharing audio.

Properties

Link copied to clipboard

Who has started this conference if the user was invited. If not, it will be null.

Link copied to clipboard
Link copied to clipboard
val conferenceType: ConferenceType

Current conference type.

Link copied to clipboard
val currentMediaTypes: List<MediaType>

Current conference mediatypes.

Link copied to clipboard

Current conference participants.

Link copied to clipboard
lateinit var currentState: JanusConference.State

Current conference state.

Link copied to clipboard
val id: String

Conference identifier (which is the same as the room identifier).

Link copied to clipboard

True if the user is sharing audio and it is enabled.

Link copied to clipboard

True if the user is sharing video and it is enabled.

Link copied to clipboard

True if the conference is being recorded.

Link copied to clipboard

True if the remote audio is enabled.

Link copied to clipboard

Access to the reactive API of the conference.

Functions

Link copied to clipboard
Link copied to clipboard
fun acceptTransfer(transfer: Transfer, mediaTypes: List<MediaType>? = null)
Link copied to clipboard
Link copied to clipboard
Link copied to clipboard
Link copied to clipboard
fun cancelInviteToParticipant(participant: Participant, onCompletion: (ConferenceError?) -> Unit)
Link copied to clipboard
fun displayLocalVideo(videoRenderer: SurfaceViewRenderer, aspect: RendererCommon.ScalingType, pip: Boolean)
Link copied to clipboard
fun displayRemoteVideo(participantName: String, videoRenderer: SurfaceViewRenderer, aspect: RendererCommon.ScalingType, pip: Boolean)
Link copied to clipboard
fun enableLocalAudio(isEnabled: Boolean)
Link copied to clipboard
fun enableLocalVideo(isEnabled: Boolean)
Link copied to clipboard
fun enableRemoteAudio(isEnabled: Boolean)
Link copied to clipboard
fun enableRemoteVideo(participantName: String, isEnabled: Boolean)
Link copied to clipboard
fun expelParticipant(participant: Participant, onCompletion: (ConferenceError?) -> Unit)
Link copied to clipboard
fun getInvitations(onCompletion: (List<Invitation>) -> Unit)
Link copied to clipboard
fun hangup()
Link copied to clipboard
fun hold(onCompletion: (ConferenceError?) -> Unit)
Link copied to clipboard
fun inviteParticipant(callee: String, context: Context, requestedMediaTypes: List<MediaType> = listOf(MediaType.AUDIO, MediaType.VIDEO), joinOnAnswer: Boolean = true, onCompletion: (Either<QssInvitation.State, ConferenceError>) -> Unit)
Link copied to clipboard
fun join(context: Context, mediaTypes: List<MediaType>? = null, onCompletion: (ConferenceError?) -> Unit)
Link copied to clipboard
Link copied to clipboard
Link copied to clipboard
Link copied to clipboard
fun sendDtmf(digit: Dtmf, onCompletion: (ConferenceError?) -> Unit)
Link copied to clipboard
fun swapVideos(participantNameA: String, participantNameB: String)
Link copied to clipboard
Link copied to clipboard
fun transferConference(callee: String, mediaTypes: List<MediaType>? = null, onCompletion: (ConferenceError?) -> Unit)
Link copied to clipboard
fun unhold(onCompletion: (ConferenceError?) -> Unit)
Link copied to clipboard
fun updateMedia(context: Context, mediaTypes: List<MediaType>, onCompletion: (ConferenceError?) -> Unit)