Package org.linphone.core
Interface Conference
public interface Conference
A conference is the object that allow to make calls when there are 2 or more
participants.
To create (or find) a
object.
conference. A conference is uniquely identified by a conference address,
meaning you can have more than one conference between two accounts. As of now,
each
conferences as a remote participant. To find a conference among those a core is
part of, you can call
participants.
To create (or find) a
Conference
, you first need a ConferenceParams
object.
Core.createConferenceWithParams(org.linphone.core.ConferenceParams)
allows you to create aconference. A conference is uniquely identified by a conference address,
meaning you can have more than one conference between two accounts. As of now,
each
Core
can host only 1 conference but it can be part of manyconferences as a remote participant. To find a conference among those a core is
part of, you can call
Core.searchConference(org.linphone.core.ConferenceParams, org.linphone.core.Address, org.linphone.core.Address, org.linphone.core.Address[])
. -
Nested Class Summary
Modifier and TypeInterfaceDescriptionstatic enum
static enum
static enum
static enum
static enum
-
Method Summary
Modifier and TypeMethodDescriptionvoid
addListener
(ConferenceListener listener) int
addParticipant
(Address uri) Join a participant to the conference.int
addParticipant
(Call call) Join an existing call to the conference.int
addParticipants
(Address[] addresses) Add participants to the conference, by supplying a list ofAddress
.int
addParticipants
(Call[] calls) Add participants to the conference, by supplying a list ofCall
.int
enter()
For a local conference, the local participant joins the conference For a remote
conference, the participant rejoins the conference after leaving it earlier on.findParticipant
(Address uri) Find a participant from a conference.Get the currently active speaker participant device.getCall()
Gets the call that is controlling a conference.Get the conference address of the conference.getCore()
Returns core for aConference
.Get current parameters of the conference.int
Get the conference duration.getId()
Deprecated.Gets the current input device for this conference.float
Retrieves the volume of a specific participant.getMe()
For a local audio video conference, this function returns the participant
hosting the conference For a remote audio video conference, this function
returns the local participant of the conference.boolean
Retrieves the volume of a specific participant.long
Gets the native pointer used by this class to make native method calls.Gets the current output device for this conference.int
Get number of participants without me.Get list of all participant devices of a conference including me if it is in.int
Retrieves the volume of a specific participant.Get list of all participants of a conference.Address[]
Deprecated.10/07/2020 UsegetParticipantList()
instead.long
Get the conference start time.getState()
Get the current state of the conference.Get the conference subject.Gets the object stored in this object user's dataGet the conference username.int
inviteParticipants
(Address[] addresses, CallParams params) Invite participants to the conference, by supplying a list ofAddress
If the conference is in the state LinphoneConferenceStateCreationPending, then
the conference will start on the input and output audio devices used for the
currently active call, if any.boolean
isIn()
For a local conference, it returns whether the local participant is enabled For
a remote conference, it return whether the remote participant has left the
conference without bein removed from it.boolean
For a local audio video conference, this function compares the address provided
as argument with that of participant hosting the conference For a remote audio
video conference, this function compares the address provided as argument with
that of the local participant of the conference.boolean
Gets whether the conference is currently being recorded.int
leave()
For a local conference, the local participant leaves the conference For a
remote conference, the participant leaves the conference after joining it
earlier on.void
removeListener
(ConferenceListener listener) int
removeParticipant
(Address uri) Deprecated.10/07/2020 UseremoveParticipant(org.linphone.core.Address)
instead.int
removeParticipant
(Call call) Deprecated.10/07/2020 UseremoveParticipant(org.linphone.core.Address)
instead.int
removeParticipant
(Participant participant) void
setConferenceAddress
(Address address) Set the conference address.void
Deprecated.10/07/2020 UsesetConferenceAddress(org.linphone.core.Address)
instead.void
setInputAudioDevice
(AudioDevice audioDevice) Sets the givenAudioDevice
as input for this conference only.void
setLocalParticipantStreamCapability
(MediaDirection direction, StreamType type) Set stream capability on me device of a local conference.void
setMicrophoneMuted
(boolean muted) Get microphone muted state.void
setOutputAudioDevice
(AudioDevice audioDevice) Sets the givenAudioDevice
as output for this conference only.void
setParticipantAdminStatus
(Participant participant, boolean isAdmin) Change the admin status of a participant of a conference (you need to be an
admin yourself to do this).void
setSubject
(String subject) Set the conference subject.void
setUserData
(Object data) Sets the object to store in this object user's datavoid
setUsername
(String username) Set the conference username.int
startRecording
(String path) Starts recording the conference.int
Stops the conference recording.int
Terminates conference.toString()
int
updateParams
(ConferenceParams params) Update parameters of the conference.
-
Method Details
-
getActiveSpeakerParticipantDevice
Get the currently active speaker participant device.
- Returns:
- the
ParticipantDevice
currently displayed as active speaker.
-
getCall
Gets the call that is controlling a conference.
- Returns:
- the
Call
controlling the conference or null if none or local
conference
-
getConferenceAddress
Get the conference address of the conference.
- Returns:
- The conference address of the conference.
-
setConferenceAddress
Set the conference address.
- Parameters:
address
- the conference address to set.
warning: This is only allowed for a remote conference if it is in state
CreationPending or Instantiated
-
getCore
-
getCurrentParams
Get current parameters of the conference.
- Returns:
- a
ConferenceParams
.
-
getDuration
@Nullable int getDuration()Get the conference duration.
- Returns:
- conference duration.
-
getId
Deprecated.10/07/2020 UsegetConferenceAddress()
instead.Get the conference id as string.
- Returns:
- the conference id
-
setId
Deprecated.10/07/2020 UsesetConferenceAddress(org.linphone.core.Address)
instead.Set the conference id as string.
- Parameters:
conferenceId
- the conference id to set.
-
getInputAudioDevice
Gets the current input device for this conference.
- Returns:
- the
AudioDevice
used by this conference as input or null if
there is currently no soundcard configured (depending on the state of the
conference)
-
setInputAudioDevice
- Parameters:
audioDevice
- TheAudioDevice
. null does nothing.
-
getInputVolume
float getInputVolume()Retrieves the volume of a specific participant.
- Returns:
- The volume of the participant expressed in dbm0.
-
isIn
boolean isIn()For a local conference, it returns whether the local participant is enabled For
a remote conference, it return whether the remote participant has left the
conference without bein removed from it.
- Returns:
- true if the local participant is in a conference, false otherwise.
-
isRecording
boolean isRecording()Gets whether the conference is currently being recorded.
- Returns:
- true if conference is being recorded, false otherwise.
-
getMe
For a local audio video conference, this function returns the participant
hosting the conference For a remote audio video conference, this function
returns the local participant of the conference.
- Returns:
- a
Participant
.
-
getMicrophoneMuted
boolean getMicrophoneMuted()Retrieves the volume of a specific participant.
- Returns:
- The volume of the participant expressed in dbm0.
-
setMicrophoneMuted
void setMicrophoneMuted(boolean muted) Get microphone muted state.
Note that the microphone may be disabled globally if false was given toCore#enableMic
. -
getOutputAudioDevice
Gets the current output device for this conference.
- Returns:
- the
AudioDevice
used by this conference as output or null if
there is currently no soundcard configured (depending on the state of the
conference)
-
setOutputAudioDevice
- Parameters:
audioDevice
- TheAudioDevice
. null does nothing.
-
getParticipantCount
int getParticipantCount()Get number of participants without me.
- Returns:
- the number of participants excluding me in a
Conference
-
getParticipantDeviceList
Get list of all participant devices of a conference including me if it is in.
- Returns:
- The list of participant devices of the conference.
-
getParticipantList
Get list of all participants of a conference.
warning: The returned list does not include me.- Returns:
- The list of participants of the conference.
-
getParticipants
Deprecated.10/07/2020 UsegetParticipantList()
instead.Get URIs of all participants of one conference The returned bctbx_list_t
contains URIs of all participants.
That list must be freed after use and each URI must be unref with
linphone_address_unref warning: The returned list does not include me.- Returns:
- The list of the participants' address active in the conference.
-
getStartTime
@Nullable long getStartTime()Get the conference start time.
- Returns:
- conference start time.
-
getState
Conference.State getState()Get the current state of the conference.
- Returns:
- the
Conference.State
of the conference.
-
getSubject
Get the conference subject.
- Returns:
- conference subject.
-
setSubject
Set the conference subject.
- Parameters:
subject
- conference subject
-
getUsername
Get the conference username.
- Returns:
- conference subject.
-
setUsername
Set the conference username.
- Parameters:
username
- conference subject
-
addParticipant
Join an existing call to the conference.
If the conference is in the state LinphoneConferenceStateCreationPending, then
the conference will start on the input and output audio devices used for the
currently active call, if any- Parameters:
call
- aCall
that has to be added to the conference.
warning: This function guarantees that the local endpoint is added to the
conference only if one of calls added is in state StreamsRunning. It is highly
recommended to call linphone_confererence_enter() to guarantee that the local
endpoint is added to the conference.
-
addParticipant
Join a participant to the conference.
- Parameters:
uri
- aAddress
that has to be added to the conference.
warning: This function guarantees that the local endpoint is added to the
conference only if there is a call state StreamsRunning towards one of the
addresses. It is highly recommended to call linphone_confererence_enter() to
guarantee that the local endpoint is added to the conference.
-
addParticipants
Add participants to the conference, by supplying a list ofCall
.
If the conference is in the state LinphoneConferenceStateCreationPending, then
the conference will start on the input and output audio devices used for the
currently active call, if any- Parameters:
calls
- A list of calls to add to the conference.
-
addParticipants
- Parameters:
addresses
- A list of calls to add to the conference.
-
enter
int enter()For a local conference, the local participant joins the conference For a remote
conference, the participant rejoins the conference after leaving it earlier on.
- Returns:
- 0 if succeeded. Negative number if failed
-
findParticipant
Find a participant from a conference.
- Parameters:
uri
- SIP URI of the participant to search.- Returns:
- a pointer to the participant found or nullptr.
-
getParticipantDeviceVolume
Retrieves the volume of a specific participant.
- Parameters:
device
- The Participant- Returns:
- The volume of the participant expressed in dbm0.
-
inviteParticipants
Invite participants to the conference, by supplying a list ofAddress
If the conference is in the state LinphoneConferenceStateCreationPending, then
the conference will start on the input and output audio devices used for the
currently active call, if any.
- Parameters:
addresses
- A list of SIP addresses to invite.params
-CallParams
to use for inviting the participants.
-
isMe
For a local audio video conference, this function compares the address provided
as argument with that of participant hosting the conference For a remote audio
video conference, this function compares the address provided as argument with
that of the local participant of the conference.
- Parameters:
uri
- AAddress
object- Returns:
- true if the participant is me, false otherwise.
-
leave
int leave()For a local conference, the local participant leaves the conference For a
remote conference, the participant leaves the conference after joining it
earlier on.
- Returns:
- 0 if succeeded. Negative number if failed
-
removeParticipant
Deprecated.10/07/2020 UseremoveParticipant(org.linphone.core.Address)
instead.- Parameters:
uri
- URI of the participant to remove
warning: The passed participant uri must be one of those returned bygetParticipants()
- Returns:
- 0 if succeeded, -1 if failed
-
removeParticipant
- Parameters:
participant
- participant to remove
warning: The passed participant must be one of those returned bygetParticipantList()
warning: This method may destroy the conference if the only remaining
participant had an existing call to the local participant before the conference
was created- Returns:
- 0 if succeeded, -1 if failed
-
removeParticipant
Deprecated.10/07/2020 UseremoveParticipant(org.linphone.core.Address)
instead.- Parameters:
call
- call to remove- Returns:
- 0 if succeeded, -1 if failed
-
setLocalParticipantStreamCapability
Set stream capability on me device of a local conference.
- Parameters:
direction
- the direction of stream of type stream_type
-
setParticipantAdminStatus
Change the admin status of a participant of a conference (you need to be an
admin yourself to do this).
- Parameters:
participant
- The Participant for which to change the admin statusisAdmin
- A boolean value telling whether the participant should now be an
admin or not
-
startRecording
Starts recording the conference.
- Parameters:
path
- Where to record the conference- Returns:
- 0 if succeeded. Negative number in case of failure.
-
stopRecording
int stopRecording()Stops the conference recording.
- Returns:
- 0 if succeeded. Negative number in case of failure.
-
terminate
int terminate()Terminates conference.
- Returns:
- 0 if the termination is successful, -1 otherwise.
-
updateParams
Update parameters of the conference.
This is typically used enable or disable the video stream in the conference.- Parameters:
params
- the new parameters to apply.
-
addListener
-
removeListener
-
setUserData
Sets the object to store in this object user's data- Parameters:
data
- the object to store
-
getUserData
Object getUserData()Gets the object stored in this object user's data- Returns:
- the object store if any, null otherwise
-
getNativePointer
long getNativePointer()Gets the native pointer used by this class to make native method calls.- Returns:
- the nativer pointer, as long
-
toString
String toString()
-
getConferenceAddress()
instead.