Liblinphone  5.5.0
Linphone.Conference Class Reference
Inheritance diagram for Linphone.Conference:
Linphone.LinphoneObject

Public Member Functions

void AddParticipant (Linphone.Call call)
 
void AddParticipant (Linphone.Address uri)
 
void AddParticipants (IEnumerable< Linphone.Call > calls)
 
void AddParticipants (IEnumerable< Linphone.Address > addresses)
 
int Close ()
 
int Enter ()
 
Linphone.Participant FindParticipant (Linphone.Address uri)
 
int GetParticipantDeviceVolume (Linphone.ParticipantDevice device)
 
void InviteParticipants (IEnumerable< Linphone.Address > addresses, Linphone.CallParams parameters)
 
bool IsMe (Linphone.Address uri)
 
int Leave ()
 
int NominateAdminAndLeave (Linphone.Address newAdmin)
 
void RemoveParticipant (Linphone.Address uri)
 
void RemoveParticipant (Linphone.Participant participant)
 
void RemoveParticipant (Linphone.Call call)
 
void SetLocalParticipantStreamCapability (Linphone.MediaDirection direction, Linphone.StreamType streamType)
 
void SetParticipantAdminStatus (Linphone.Participant participant, bool isAdmin)
 
int StartRecording (string path)
 
int StopRecording ()
 
int Terminate ()
 
int UpdateParams (Linphone.ConferenceParams parameters)
 

Static Public Member Functions

static string StateToString (Linphone.ConferenceState state)
 

Properties

ConferenceListener Listener [get, set]
 
Linphone.Account Account [get]
 
Linphone.ParticipantDevice ActiveSpeakerParticipantDevice [get]
 
Linphone.Call Call [get]
 
Linphone.ChatRoom ChatRoom [get]
 
Linphone.Address ConferenceAddress [get, set]
 
Linphone.Core Core [get]
 
Linphone.ConferenceParams CurrentParams [get]
 
int Duration [get]
 
string Identifier [get]
 
Linphone.ConferenceInfo Info [get]
 
Linphone.AudioDevice InputAudioDevice [get, set]
 
float InputVolume [get]
 
bool IsIn [get]
 
bool IsRecording [get]
 
Linphone.Participant Me [get]
 
bool MicrophoneMuted [get, set]
 
Linphone.AudioDevice OutputAudioDevice [get, set]
 
int ParticipantCount [get]
 
IEnumerable< Linphone.ParticipantDeviceParticipantDeviceList [get]
 
IEnumerable< Linphone.ParticipantParticipantList [get]
 
IEnumerable< Linphone.AddressParticipants [get]
 
Linphone.Player Player [get]
 
Linphone.Participant ScreenSharingParticipant [get]
 
Linphone.ParticipantDevice ScreenSharingParticipantDevice [get]
 
long StartTime [get]
 
Linphone.ConferenceState State [get]
 
string Subject [get, set]
 
string SubjectUtf8 [get, set]
 
string Username [get, set]
 

Additional Inherited Members

- Protected Member Functions inherited from Linphone.LinphoneObject
static String linphone_pointer_to_string (IntPtr ptr)
 
static IntPtr linphone_string_to_pointer ([MarshalAs(LinphoneWrapper.ByteStringMarshalling)] String str)
 
IntPtr StringArrayToBctbxList (IEnumerable< string > stringlist)
 
void CleanStringArrayPtrs (IntPtr l)
 

Detailed Description

A conference is the object that allow to make calls when there are 2 or more participants.

To create (or find) a Linphone.Conference, you first need a Linphone.ConferenceParams object. Linphone.Core.CreateConferenceWithParams() allows you to create a conference. A conference is uniquely identified by a conference address, meaning you can have more than one conference between two accounts. To find a conference among those a core is part of, you can call Linphone.Core.SearchConference(). A Linphone.Conference may be created automatically and implicitely when an outgoing call is made to a conference server. Thanks to the standard 'isfocus' contact parameter, the call is identified as belonging to a conference. The conference object can then be retrieved with Linphone.Call.Conference.

Member Function Documentation

void Linphone.Conference.AddParticipant ( Linphone.Call  call)
inline

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
calla Linphone.Call 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.

void Linphone.Conference.AddParticipant ( Linphone.Address  uri)
inline

Join a participant to the conference.

Parameters
uria Linphone.Address 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.

void Linphone.Conference.AddParticipants ( IEnumerable< Linphone.Call calls)
inline

Add participants to the conference, by supplying a list of Linphone.Call.

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
callsA list of calls to add to the conference. A list of Linphone.Call objects.
void Linphone.Conference.AddParticipants ( IEnumerable< Linphone.Address addresses)
inline

Add participants to the conference, by supplying a list of Linphone.Address.

Parameters
addressesA list of calls to add to the conference. A list of Linphone.Address objects.
int Linphone.Conference.Close ( )
inline

Terminates a conference.

If no media is supported, it instructs the conference server to remove all participants

Returns
0 if the termination is successful, -1 otherwise.
int Linphone.Conference.Enter ( )
inline

For a local conference, the local participant joins the conference For a client conference, the participant rejoins the conference after leaving it earlier on.

Returns
0 if succeeded. Negative number if failed
Linphone.Participant Linphone.Conference.FindParticipant ( Linphone.Address  uri)
inline

Find a participant from a conference.

Parameters
uriSIP URI of the participant to search.
Returns
a pointer to the participant found or nullptr.
int Linphone.Conference.GetParticipantDeviceVolume ( Linphone.ParticipantDevice  device)
inline

Retrieves the volume of a specific participant.

Parameters
deviceThe Participant
Returns
The volume of the participant expressed in dbm0.
void Linphone.Conference.InviteParticipants ( IEnumerable< Linphone.Address addresses,
Linphone.CallParams  parameters 
)
inline

Invite participants to the conference, by supplying a list of Linphone.Address 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 This method will call every address supplied and add it to a conference on devices hosting a conference.

On the other hand, if the conference is created on a server, this method will allow to create either a chat only conference or an ad-hoc audio video conference

Parameters
addressesA list of SIP addresses to invite. A list of Linphone.Address objects.
parametersLinphone.CallParams to use for inviting the participants.

Warning : The Linphone.CallParams are only honored by conference servers and devices that host the conference locally.

bool Linphone.Conference.IsMe ( Linphone.Address  uri)
inline

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
uriA Linphone.Address object
Returns
true if the participant is me, false otherwise.
int Linphone.Conference.Leave ( )
inline

For a local conference, the local participant leaves the conference For a client conference, the participant leaves the conference after joining it earlier on.

Returns
0 if succeeded. Negative number if failed
int Linphone.Conference.NominateAdminAndLeave ( Linphone.Address  newAdmin)
inline

Nominates a new admin and then leaves a conference.

Parameters
newAdminThe Linphone.Address of the new admin
Returns
0 if succeeded. Negative number if failed

Note : The local participant will not leave the chat room if the new admin cannot be nominated

Warning : It is not applicable to conference servers.

void Linphone.Conference.RemoveParticipant ( Linphone.Address  uri)
inline

Parameters
uriURI of the participant to remove

Warning : The passed participant uri must be one of those returned by Linphone.Conference.Participants

Returns
0 if succeeded, -1 if failed

Deprecated : 10/07/2020 Use Linphone.Conference.RemoveParticipant() instead.

void Linphone.Conference.RemoveParticipant ( Linphone.Participant  participant)
inline

Parameters
participantparticipant to remove

Warning : The passed participant must be one of those returned by Linphone.Conference.ParticipantList

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
void Linphone.Conference.RemoveParticipant ( Linphone.Call  call)
inline

Parameters
callcall to remove
Returns
0 if succeeded, -1 if failed

Deprecated : 10/07/2020 Use Linphone.Conference.RemoveParticipant() instead.

void Linphone.Conference.SetLocalParticipantStreamCapability ( Linphone.MediaDirection  direction,
Linphone.StreamType  streamType 
)
inline

Set stream capability on 'me' device of a local conference.

Parameters
directionthe direction of stream of type stream_type
streamTypeA Linphone.StreamType
void Linphone.Conference.SetParticipantAdminStatus ( Linphone.Participant  participant,
bool  isAdmin 
)
inline

Change the admin status of a participant of a conference (you need to be an admin yourself to do this).

Parameters
participantThe Participant for which to change the admin status
isAdminA boolean value telling whether the participant should now be an admin or not
int Linphone.Conference.StartRecording ( string  path)
inline

Starts recording the conference.

Parameters
pathWhere to record the conference
Returns
0 if succeeded. Negative number in case of failure.
static string Linphone.Conference.StateToString ( Linphone.ConferenceState  state)
inlinestatic

A function to convert a Linphone.ConferenceState into a string.

int Linphone.Conference.StopRecording ( )
inline

Stops the conference recording.

Returns
0 if succeeded. Negative number in case of failure.
int Linphone.Conference.Terminate ( )
inline

Terminates a conference.

Returns
0 if the termination is successful, -1 otherwise.
int Linphone.Conference.UpdateParams ( Linphone.ConferenceParams  parameters)
inline

Update parameters of the conference.

This is typically used enable or disable the video stream in the conference.

Parameters
parametersthe new parameters to apply.

Property Documentation

Linphone.Account Linphone.Conference.Account
get

Gets the Linphone.Account object associated with the conference.

Returns
A Linphone.Account object.
Linphone.ParticipantDevice Linphone.Conference.ActiveSpeakerParticipantDevice
get

Get the currently active speaker participant device.

Returns
the Linphone.ParticipantDevice currently displayed as active speaker.
Linphone.Call Linphone.Conference.Call
get

Gets the call that is controlling a conference.

-for the local conference, it will return null -for the client conference, it will return call associated to the conference

Returns
the Linphone.Call controlling the conference or null if none or local conference
Linphone.ChatRoom Linphone.Conference.ChatRoom
get

Returns the Linphone.ChatRoom linked to the Linphone.Conference.

Returns
back pointer to Linphone.ChatRoom object.
Linphone.Address Linphone.Conference.ConferenceAddress
getset

Get the conference address of the conference.

This function may be return a null pointer if called before the conference switches to the Created state

Returns
The conference address of the conference.
Linphone.Core Linphone.Conference.Core
get

Returns core for a Linphone.Conference.

Returns
back pointer to Linphone.Core object.
Linphone.ConferenceParams Linphone.Conference.CurrentParams
get

Get current parameters of the conference.

Returns
a Linphone.ConferenceParams .
int Linphone.Conference.Duration
get

Get the conference duration.

Returns
conference duration.
string Linphone.Conference.Identifier
get

Returns the conference identifier.

Warning : This method returns a null pointer if the Conference is in the Instantiated state

Returns
the conference identifier.
Linphone.ConferenceInfo Linphone.Conference.Info
get

Gets the Linphone.ConferenceInfo object associated with a conference.

Returns
A Linphone.ConferenceInfo object.
Linphone.AudioDevice Linphone.Conference.InputAudioDevice
getset

Gets the current input device for this conference.

Returns
the Linphone.AudioDevice used by this conference as input or null if there is currently no soundcard configured (depending on the state of the conference)
float Linphone.Conference.InputVolume
get

Retrieves the volume of a specific participant.

Returns
The volume of the participant expressed in dbm0.
bool Linphone.Conference.IsIn
get

For a local conference, it returns whether the local participant is enabled For a client 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.
bool Linphone.Conference.IsRecording
get

Gets whether the conference is currently being recorded.

Returns
true if conference is being recorded, false otherwise.
Linphone.Participant Linphone.Conference.Me
get

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 Linphone.Participant .
bool Linphone.Conference.MicrophoneMuted
getset

Retrieves the volume of a specific participant.

Returns
true if the microphone is muted, false otherwise
Linphone.AudioDevice Linphone.Conference.OutputAudioDevice
getset

Gets the current output device for this conference.

Returns
the Linphone.AudioDevice used by this conference as output or null if there is currently no soundcard configured (depending on the state of the conference)
int Linphone.Conference.ParticipantCount
get

Get number of participants without me.

Returns
the number of participants excluding me in a Linphone.Conference
IEnumerable<Linphone.ParticipantDevice> Linphone.Conference.ParticipantDeviceList
get

Get list of all participant devices of a conference including me if it is in.

Returns
The list of participant devices of the conference. A list of Linphone.ParticipantDevice objects.
IEnumerable<Linphone.Participant> Linphone.Conference.ParticipantList
get

Get list of all participants of a conference.

Warning : The returned list does not include me.

Returns
The list of participants of the conference. A list of Linphone.Participant objects.
IEnumerable<Linphone.Address> Linphone.Conference.Participants
get

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. A list of Linphone.Address objects.

Deprecated : 10/07/2020 Use Linphone.Conference.ParticipantList instead.

Linphone.Player Linphone.Conference.Player
get

Gets a player associated with the conference to play a local file and stream it to the remote peers.

Returns
A Linphone.Player object.
Linphone.Participant Linphone.Conference.ScreenSharingParticipant
get

Get the participant that is currently screen sharing.

Returns
a pointer to the participant found or nullptr.
Linphone.ParticipantDevice Linphone.Conference.ScreenSharingParticipantDevice
get

Get the participant device that is currently screen sharing.

Returns
a pointer to the participant device found or nullptr.
long Linphone.Conference.StartTime
get

Get the conference start time.

Returns
conference start time.
Linphone.ConferenceState Linphone.Conference.State
get

Get the current state of the conference.

Returns
the Linphone.ConferenceState of the conference.
string Linphone.Conference.Subject
getset

Get the conference subject.

Returns
conference subject.
string Linphone.Conference.SubjectUtf8
getset

Get the conference subject as an UTF-8 string.

Returns
conference subject.
string Linphone.Conference.Username
getset

Get the conference username.

Returns
conference subject.

The documentation for this class was generated from the following file: