Class Conference
A conference is the object that allow to make calls when there are 2 or more participants.
To create (or find) a Conference, you first need a ConferenceParams object.
Inherited Members
Namespace: Linphone
Assembly: cs.temp.dll.dll
Syntax
public class Conference : LinphoneObject
Properties
ActiveSpeakerParticipantDevice
Get the currently active speaker participant device.
Declaration
public ParticipantDevice ActiveSpeakerParticipantDevice { get; }
Property Value
Type | Description |
---|---|
ParticipantDevice | the ParticipantDevice currently displayed as active speaker. |
Call
Gets the call that is controlling a conference.
Declaration
public Call Call { get; }
Property Value
Type | Description |
---|---|
Call | the Call controlling the conference or null if none or local conference |
ConferenceAddress
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
Declaration
public Address ConferenceAddress { get; set; }
Property Value
Type | Description |
---|---|
Address | The conference address of the conference. |
Core
Returns core for a Conference.
Declaration
public Core Core { get; }
Property Value
Type | Description |
---|---|
Core | back pointer to Core object. Returns back pointer to Core object. |
CurrentParams
Get current parameters of the conference.
Declaration
public ConferenceParams CurrentParams { get; }
Property Value
Type | Description |
---|---|
ConferenceParams | a ConferenceParams . |
Duration
Get the conference duration.
Declaration
public int Duration { get; }
Property Value
Type | Description |
---|---|
System.Int32 | conference duration. |
Id
Get the conference id as string.
Declaration
public string Id { get; set; }
Property Value
Type | Description |
---|---|
System.String | the conference id |
InputAudioDevice
Gets the current input device for this conference.
Declaration
public AudioDevice InputAudioDevice { get; set; }
Property Value
Type | Description |
---|---|
AudioDevice | the AudioDevice used by this conference as input or null if there is currently no soundcard configured (depending on the state of the conference) |
InputVolume
Retrieves the volume of a specific participant.
Declaration
public float InputVolume { get; }
Property Value
Type | Description |
---|---|
System.Single | The volume of the participant expressed in dbm0. |
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.
Declaration
public bool IsIn { get; }
Property Value
Type | Description |
---|---|
System.Boolean | true if the local participant is in a conference, false otherwise. |
IsRecording
Gets whether the conference is currently being recorded.
Declaration
public bool IsRecording { get; }
Property Value
Type | Description |
---|---|
System.Boolean | true if conference is being recorded, false otherwise. |
Listener
Declaration
public ConferenceListener Listener { get; set; }
Property Value
Type | Description |
---|---|
ConferenceListener |
Me
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.
Declaration
public Participant Me { get; }
Property Value
Type | Description |
---|---|
Participant | a Participant . |
MicrophoneMuted
Retrieves the volume of a specific participant.
Declaration
public bool MicrophoneMuted { get; set; }
Property Value
Type | Description |
---|---|
System.Boolean | The volume of the participant expressed in dbm0. |
OutputAudioDevice
Gets the current output device for this conference.
Declaration
public AudioDevice OutputAudioDevice { get; set; }
Property Value
Type | Description |
---|---|
AudioDevice | the AudioDevice used by this conference as output or null if there is currently no soundcard configured (depending on the state of the conference) |
ParticipantCount
Get number of participants without me.
Declaration
public int ParticipantCount { get; }
Property Value
Type | Description |
---|---|
System.Int32 | the number of participants excluding me in a Conference |
ParticipantDeviceList
Get list of all participant devices of a conference including me if it is in.
Declaration
public IEnumerable<ParticipantDevice> ParticipantDeviceList { get; }
Property Value
Type | Description |
---|---|
System.Collections.Generic.IEnumerable<ParticipantDevice> | The list of participant devices of the conference. |
ParticipantList
Get list of all participants of a conference.
Declaration
public IEnumerable<Participant> ParticipantList { get; }
Property Value
Type | Description |
---|---|
System.Collections.Generic.IEnumerable<Participant> | The list of participants of the conference. |
Remarks
Warning : The returned list does not include me.
Participants
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
Declaration
public IEnumerable<Address> Participants { get; }
Property Value
Type | Description |
---|---|
System.Collections.Generic.IEnumerable<Address> | The list of the participants' address active in the conference. |
Remarks
Warning : The returned list does not include me.
Player
Gets a player associated with the conference to play a local file and stream it to the remote peers.
Declaration
public Player Player { get; }
Property Value
Type | Description |
---|---|
Player | A Player object. |
ScreenSharingParticipant
Get the participant that is currently screen sharing.
Declaration
public Participant ScreenSharingParticipant { get; }
Property Value
Type | Description |
---|---|
Participant | a pointer to the participant found or nullptr. |
ScreenSharingParticipantDevice
Get the participant device that is currently screen sharing.
Declaration
public ParticipantDevice ScreenSharingParticipantDevice { get; }
Property Value
Type | Description |
---|---|
ParticipantDevice | a pointer to the participant device found or nullptr. |
StartTime
Get the conference start time.
Declaration
public long StartTime { get; }
Property Value
Type | Description |
---|---|
System.Int64 | conference start time. |
State
Get the current state of the conference.
Declaration
public ConferenceState State { get; }
Property Value
Type | Description |
---|---|
ConferenceState | the ConferenceState of the conference. |
Subject
Get the conference subject.
Declaration
public string Subject { get; set; }
Property Value
Type | Description |
---|---|
System.String | conference subject. |
Username
Get the conference username.
Declaration
public string Username { get; set; }
Property Value
Type | Description |
---|---|
System.String | conference subject. |
Methods
AddParticipant(Address)
Join a participant to the conference.
Declaration
public void AddParticipant(Address uri)
Parameters
Type | Name | Description |
---|---|---|
Address | uri | a Address that has to be added to the conference. |
Remarks
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.
AddParticipant(Call)
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
Declaration
public void AddParticipant(Call call)
Parameters
Type | Name | Description |
---|---|---|
Call | call | a Call that has to be added to the conference. |
Remarks
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.
AddParticipants(IEnumerable<Address>)
Add participants to the conference, by supplying a list of Address.
Declaration
public void AddParticipants(IEnumerable<Address> addresses)
Parameters
Type | Name | Description |
---|---|---|
System.Collections.Generic.IEnumerable<Address> | addresses | A list of calls to add to the conference. |
AddParticipants(IEnumerable<Call>)
Add participants to the conference, by supplying a list of 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
Declaration
public void AddParticipants(IEnumerable<Call> calls)
Parameters
Type | Name | Description |
---|---|---|
System.Collections.Generic.IEnumerable<Call> | calls | A list of calls to add to the conference. |
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.
Declaration
public int Enter()
Returns
Type | Description |
---|---|
System.Int32 | 0 if succeeded. Negative number if failed |
FindParticipant(Address)
Find a participant from a conference.
Declaration
public Participant FindParticipant(Address uri)
Parameters
Type | Name | Description |
---|---|---|
Address | uri | SIP URI of the participant to search. |
Returns
Type | Description |
---|---|
Participant | a pointer to the participant found or nullptr. |
GetParticipantDeviceVolume(ParticipantDevice)
Retrieves the volume of a specific participant.
Declaration
public int GetParticipantDeviceVolume(ParticipantDevice device)
Parameters
Type | Name | Description |
---|---|---|
ParticipantDevice | device | The Participant |
Returns
Type | Description |
---|---|
System.Int32 | The volume of the participant expressed in dbm0. |
InviteParticipants(IEnumerable<Address>, CallParams)
Invite participants to the conference, by supplying a list of 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.
Declaration
public void InviteParticipants(IEnumerable<Address> addresses, CallParams parameters)
Parameters
Type | Name | Description |
---|---|---|
System.Collections.Generic.IEnumerable<Address> | addresses | A list of SIP addresses to invite. |
CallParams | parameters | CallParams to use for inviting the participants. |
IsMe(Address)
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.
Declaration
public bool IsMe(Address uri)
Parameters
Type | Name | Description |
---|---|---|
Address | uri | A Address object |
Returns
Type | Description |
---|---|
System.Boolean | true if the participant is me, false otherwise. |
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.
Declaration
public int Leave()
Returns
Type | Description |
---|---|
System.Int32 | 0 if succeeded. Negative number if failed |
RemoveParticipant(Address)
Declaration
public void RemoveParticipant(Address uri)
Parameters
Type | Name | Description |
---|---|---|
Address | uri | URI of the participant to remove |
Remarks
Warning : The passed participant uri must be one of those returned by Participants
RemoveParticipant(Call)
Declaration
public void RemoveParticipant(Call call)
Parameters
Type | Name | Description |
---|---|---|
Call | call | call to remove |
RemoveParticipant(Participant)
Declaration
public void RemoveParticipant(Participant participant)
Parameters
Type | Name | Description |
---|---|---|
Participant | participant | participant to remove |
Remarks
Warning : The passed participant must be one of those returned by ParticipantList
SetLocalParticipantStreamCapability(MediaDirection, StreamType)
Set stream capability on me device of a local conference.
Declaration
public void SetLocalParticipantStreamCapability(MediaDirection direction, StreamType type)
Parameters
Type | Name | Description |
---|---|---|
MediaDirection | direction | the direction of stream of type stream_type |
StreamType | type |
SetParticipantAdminStatus(Participant, Boolean)
Change the admin status of a participant of a conference (you need to be an admin yourself to do this).
Declaration
public void SetParticipantAdminStatus(Participant participant, bool isAdmin)
Parameters
Type | Name | Description |
---|---|---|
Participant | participant | The Participant for which to change the admin status |
System.Boolean | isAdmin | A boolean value telling whether the participant should now be an admin or not |
StartRecording(String)
Starts recording the conference.
Declaration
public int StartRecording(string path)
Parameters
Type | Name | Description |
---|---|---|
System.String | path | Where to record the conference |
Returns
Type | Description |
---|---|
System.Int32 | 0 if succeeded. Negative number in case of failure. |
StopRecording()
Stops the conference recording.
Declaration
public int StopRecording()
Returns
Type | Description |
---|---|
System.Int32 | 0 if succeeded. Negative number in case of failure. |
Terminate()
Terminates conference.
Declaration
public int Terminate()
Returns
Type | Description |
---|---|
System.Int32 | 0 if the termination is successful, -1 otherwise. |
UpdateParams(ConferenceParams)
Update parameters of the conference.
This is typically used enable or disable the video stream in the conference.
Declaration
public int UpdateParams(ConferenceParams parameters)
Parameters
Type | Name | Description |
---|---|---|
ConferenceParams | parameters | the new parameters to apply. |
Returns
Type | Description |
---|---|
System.Int32 |