CallParams
public class CallParams : LinphoneObject
An object containing various parameters of a Call
.
You can specify your params while answering an incoming call using
Call.acceptWithParams() or while initiating an outgoing call with
Core.inviteAddressWithParams().
This object can be created using Core.createCallParams(), using nil for the
call pointer if you plan to use it for an outgoing call.
For each call, three CallParams
are available: yours, your correspondent’s
and the one that describe the current state of the call that is the result of
the negociation between the previous two. For example, you might enable a
certain feature in your call param but this feature can be denied in the
remote’s configuration, hence the difference.
See
See also: Call.getCurrentParams(), Call.getRemoteParams() and Call.getParams().-
Undocumented
Declaration
Swift
public static func getSwiftObject(cObject: OpaquePointer) -> CallParams
-
Undocumented
Declaration
Swift
public var getCobject: OpaquePointer? { get }
-
Refine bandwidth settings for this call by setting a bandwidth limit for audio streams. As a consequence, codecs whose bitrates are not compatible with this limit won’t be used.
Declaration
Swift
public var audioBandwidthLimit: Int { get set }
Parameters
bandwidth
The audio bandwidth limit to set in kbit/s.
-
Get the audio stream direction.
Declaration
Swift
public var audioDirection: MediaDirection { get set }
Return Value
The audio stream
MediaDirection
associated with the call params. -
Tell whether audio is enabled or not.
Declaration
Swift
public var audioEnabled: Bool { get set }
Return Value
A boolean value telling whether audio is enabled or not.
-
Use to get multicast state of audio stream.
Declaration
Swift
public var audioMulticastEnabled: Bool { get set }
Return Value
true if subsequent calls will propose multicast ip set by Core.setAudioMulticastAddr()
-
Set the video stream direction.
Declaration
Swift
public var avpfEnabled: Bool? { get set }
Parameters
enable
wether or not AVPF should be enabled for this call
-
Indicate whether sending of early media was enabled.
Declaration
Swift
public var earlyMediaSendingEnabled: Bool { get set }
Return Value
A boolean value telling whether sending of early media was enabled.
-
Tell whether the call is part of the locally managed conference.
Warning
If a conference server is used to manage conferences, that function does not return true even if the conference is running. If you want to test whether the conference is running, you should test whether Core.getConference() return a non-null pointer.Declaration
Swift
public var localConferenceMode: Bool { get }
Return Value
A boolean value telling whether the call is part of the locally managed conference.
-
Tell whether the call has been configured in low bandwidth mode or not. This mode can be automatically discovered thanks to a stun server when activate_edge_workarounds=1 in section [net] of configuration file. An application that would have reliable way to know network capacity may not use activate_edge_workarounds=1 but instead manually configure low bandwidth mode with enableLowBandwidth(). When enabled, this param may transform a call request with video in audio only mode.
Declaration
Swift
public var lowBandwidthEnabled: Bool { get set }
Return Value
A boolean value telling whether the low bandwidth mode has been configured/detected.
-
Get the kind of media encryption selected for the call.
Declaration
Swift
public var mediaEncryption: MediaEncryption { get set }
Return Value
The kind of
MediaEncryption
selected for the call. -
Get requested level of privacy for the call.
Declaration
Swift
public var privacy: UInt { get set }
Return Value
The LinphonePrivacyMask used for the call.
-
Get the
ProxyConfig
that is used for the call.Declaration
Swift
public var proxyConfig: ProxyConfig? { get set }
Return Value
The selected
ProxyConfig
for the call, or nil if none has been selected. -
Use to get real time text following rfc4103.
Declaration
Swift
public var realtimeTextEnabled: Bool { get }
Return Value
returns true if call rtt is activated.
-
Undocumented
Declaration
Swift
public func setRealtimetextenabled(newValue: Bool) throws
-
Use to get keep alive interval of real time text following rfc4103.
Declaration
Swift
public var realtimeTextKeepaliveInterval: UInt { get set }
Return Value
returns keep alive interval of real time text.
-
Get the framerate of the video that is received.
Declaration
Swift
public var receivedFramerate: Float { get }
Return Value
The actual received framerate in frames per seconds, 0 if not available.
-
Get the definition of the received video.
Declaration
Swift
public var receivedVideoDefinition: VideoDefinition? { get }
Return Value
The received
VideoDefinition
or nil. -
Get the path for the audio recording of the call.
Declaration
Swift
public var recordFile: String { get set }
Return Value
The path to the audio recording of the call or nil.
-
Indicates whether RTP bundle mode (also known as Media Multiplexing) is enabled. See https://tools.ietf.org/html/draft-ietf-mmusic-sdp-bundle-negotiation-54 for more information.
Declaration
Swift
public var rtpBundleEnabled: Bool { get set }
Return Value
a boolean indicating the enablement of rtp bundle mode.
-
Get the RTP profile being used.
Declaration
Swift
public var rtpProfile: String { get }
Return Value
The RTP profile.
-
Get the framerate of the video that is sent.
Declaration
Swift
public var sentFramerate: Float { get }
Return Value
The actual sent framerate in frames per seconds, 0 if not available.
-
Get the definition of the sent video.
Declaration
Swift
public var sentVideoDefinition: VideoDefinition? { get }
Return Value
The sent
VideoDefinition
or nil. -
Get the session name of the media session (ie in SDP). Subject from the SIP message can be retrieved using getCustomHeader() and is different.
Declaration
Swift
public var sessionName: String { get set }
Return Value
The session name of the media session or nil.
-
Get the audio payload type that has been selected by a call.
Declaration
Swift
public var usedAudioPayloadType: PayloadType? { get }
Return Value
The selected
PayloadType
. nil is returned if no audio payload type has been selected by the call. -
Get the text payload type that has been selected by a call.
Declaration
Swift
public var usedTextPayloadType: PayloadType? { get }
Return Value
The selected
PayloadType
. nil is returned if no text payload type has been selected by the call. -
Get the video payload type that has been selected by a call.
Declaration
Swift
public var usedVideoPayloadType: PayloadType? { get }
Return Value
The selected
PayloadType
. nil is returned if no video payload type has been selected by the call. -
Get the user data associated with the call params.
Declaration
Swift
public var userData: UnsafeMutableRawPointer? { get set }
Return Value
The user data associated with the call params.
-
Get the video stream direction.
Declaration
Swift
public var videoDirection: MediaDirection { get set }
Return Value
The video stream
MediaDirection
associated with the call params. -
Tell whether video is enabled or not.
Declaration
Swift
public var videoEnabled: Bool { get set }
Return Value
A boolean value telling whether video is enabled or not.
-
Use to get multicast state of video stream.
Declaration
Swift
public var videoMulticastEnabled: Bool { get set }
Return Value
true if subsequent calls will propose multicast ip set by Core.setVideoMulticastAddr()
-
Add a custom SIP header in the INVITE for a call.
Declaration
Swift
public func addCustomHeader(headerName: String, headerValue: String?)
Parameters
headerName
The name of the header to add.
headerValue
The content of the header to add.
-
Add a custom attribute related to all the streams in the SDP exchanged within SIP messages during a call.
Declaration
Swift
public func addCustomSdpAttribute(attributeName: String, attributeValue: String?)
Parameters
attributeName
The name of the attribute to add.
attributeValue
The content value of the attribute to add.
-
Add a custom attribute related to a specific stream in the SDP exchanged within SIP messages during a call.
Declaration
Swift
public func addCustomSdpMediaAttribute(type: StreamType, attributeName: String, attributeValue: String?)
Parameters
type
The type of the stream to add a custom SDP attribute to.
attributeName
The name of the attribute to add.
attributeValue
The content value of the attribute to add.
-
Clear the custom SDP attributes related to all the streams in the SDP exchanged within SIP messages during a call.
Declaration
Swift
public func clearCustomSdpAttributes()
-
Clear the custom SDP attributes related to a specific stream in the SDP exchanged within SIP messages during a call.
Declaration
Swift
public func clearCustomSdpMediaAttributes(type: StreamType)
Parameters
type
The type of the stream to clear the custom SDP attributes from.
-
Copy an existing
CallParams
object to a newCallParams
object.Declaration
Swift
public func copy() -> CallParams?
Return Value
A copy of the
CallParams
object. -
Get a custom SIP header.
Declaration
Swift
public func getCustomHeader(headerName: String) -> String
Parameters
headerName
The name of the header to get.
Return Value
The content of the header or nil if not found.
-
Get a custom SDP attribute that is related to all the streams.
Declaration
Swift
public func getCustomSdpAttribute(attributeName: String) -> String
Parameters
attributeName
The name of the attribute to get.
Return Value
The content value of the attribute or nil if not found.
-
Get a custom SDP attribute that is related to a specific stream.
Declaration
Swift
public func getCustomSdpMediaAttribute(type: StreamType, attributeName: String) -> String
Parameters
type
The type of the stream to add a custom SDP attribute to.
attributeName
The name of the attribute to get.
Return Value
The content value of the attribute or nil if not found.