Liblinphone: linphone Namespace Reference

Liblinphone 5.0.0

Classes | Typedefs | Enumerations
linphone Namespace Reference

Namespace that holds all liblinphone's API classes and enumerations. More...

## Classes
class | Account
| Object that represents a Linphone Account. More...
class | AccountCreator
| The object used to configure an account on a server via XML-RPC, see https://wiki.linphone.org/xwiki/wiki/public/view/Lib/Features/Override%20account%20creator%20request/. More...
class | AccountCreatorListener
class | AccountListener
class | AccountParams
| Object that is used to set the different parameters of a Account. More...
class | Address
| Object that represents a parsed SIP address. More...
class | AudioDevice
| Object holding audio device information. More...
class | AuthInfo
| Object holding authentication information. More...
class | Buffer
| The object representing a data buffer. More...
class | Call
| This object represents a call issued or received by the Core. More...
class | CallListener
class | CallLog
| Object used to keep track of all calls initiated, received or missed. More...
class | CallParams
| An object containing various parameters of a Call. More...
class | CallStats
| This object carry various statistic informations regarding the quality of an audio or video stream for a given Call. More...
class | ChatMessage
| An chat message is the object that is sent or received through a ChatRoom. More...
class | ChatMessageListener
class | ChatRoom
| A chat room is the place where ChatMessage are exchanged. More...
class | ChatRoomListener
class | ChatRoomParams
| Object defining parameters for a ChatRoom. More...
class | Conference
| A conference is the object that allow to make calls when there are 2 or more participants. More...
class | ConferenceListener
class | ConferenceParams
| Object defining parameters for a Conference. More...
class | Config
| This object is used to manipulate a configuration file. More...
class | Content
| This object holds data that can be embedded in a signaling message. More...
class | Core
| Main object to instanciate and on which to keep a reference. More...
class | CoreListener
class | DialPlan
| Represents a dial plan. More...
class | ErrorInfo
| Object representing full details about a signaling error or status. More...
class | Event
| Object representing an event state, which is subcribed or published. More...
class | EventListener
class | EventLog
| Object that represents an event that must be stored in database. More...
class | Factory
| The factory is a singleton object devoted to the creation of all the objects of Liblinphone that cannot be created by Core itself. More...
class | Friend
| This object is used to store a SIP address. More...
class | FriendList
| This object representing a list of Friend. More...
class | FriendListListener
class | Headers
| Object representing a chain of protocol headers. More...
class | ImNotifPolicy
| Policy to use to send/receive instant messaging composing/delivery/display notifications. More...
class | InfoMessage
| Object representing an informational message sent or received by the core. More...
class | LoggingService
| Singleton class giving access to logging features. More...
class | LoggingServiceListener
class | MagicSearch
| A MagicSearch is used to do specifics searchs. More...
class | MagicSearchListener
class | NatPolicy
| Policy to use to pass through NATs/firewalls. More...
class | Participant
| Identifies a member of a Conference or ChatRoom. More...
class | ParticipantDevice
| This object represents a unique device for a member of a Conference or ChatRoom. More...
class | ParticipantDeviceIdentity
| This object is only used on server side for ChatRoom with ChatRoomBackend::FlexisipChat backend. More...
class | ParticipantImdnState
| This object represents the delivery/display state of a given chat message for a given participant. More...
class | PayloadType
| Object representing an RTP payload type. More...
class | Player
| Player interface. More...
class | PlayerListener
class | PresenceActivity
| Presence activity type holding information about a presence activity. More...
class | PresenceModel
| Presence model type holding information about the presence of a person. More...
class | PresenceNote
| Presence note type holding information about a presence note. More...
class | PresencePerson
| Presence person holding information about a presence person. More...
class | PresenceService
| Presence service type holding information about a presence service. More...
class | ProxyConfig
| Represents an account configuration to be used by Core. More...
class | PushNotificationConfig
| Object holding push notification config that will be set in the contact URI parameters of the Contact header in the REGISTER, if the AccountParams is configured to allow push notifications, see AccountParams::setPushNotificationAllowed(). More...
class | PushNotificationMessage
| Object holding chat message data received by a push notification on iOS platform only. More...
class | Range
| Structure describing a range of integers. More...
class | SearchResult
| The LinphoneSearchResult object represents a result of a search. More...
class | Transports
| SIP transports & ports configuration object. More...
class | Tunnel
| Linphone tunnel object. More...
class | TunnelConfig
| Tunnel settings. More...
class | Vcard
| Object storing contact information using vCard 4.0 format. More...
class | VideoActivationPolicy
| Object describing policy regarding video streams establishments. More...
class | VideoDefinition
| This object represents a video definition, eg. More...
class | XmlRpcRequest
| The XmlRpcRequest object representing a XML-RPC request to be sent. More...
class | XmlRpcRequestListener
class | XmlRpcSession
| The XmlRpcSession object used to send XML-RPC requests and handle their responses. More...

## Typedefs
typedef int | Status

## Enumerations
enum class | AVPFMode { Default = -1 , Disabled = 0 , Enabled = 1 }
| Enum describing RTP AVPF activation modes. More...
enum class | AccountCreatorAlgoStatus { Ok = 0 , NotSupported = 1 }
| Enum describing algorithm checking, used by the AccountCreator. More...
enum class | AccountCreatorBackend { XMLRPC = 0 , FlexiAPI = 1 }
| Enum describing backend used in the AccountCreator. More...
enum class | AddressFamily { Inet = 0 , Inet6 = 1 , Unspec = 2 }
| Enum describing Ip family. More...
enum class | AuthMethod { HttpDigest = 0 , Tls = 1 }
| Enum describing the authentication methods. More...
enum class | ChatRoomBackend { Basic = 1<<0 , FlexisipChat = 1<<1 }
| ChatRoomBackend is used to indicate the backend implementation of a chat room. More...
enum class | ChatRoomCapabilities { None = 0 , Basic = 1<<0 , RealTimeText = 1<<1 , Conference = 1<<2 , Proxy = 1<<3 , Migratable = 1<<4 , OneToOne = 1<<5 , Encrypted = 1<<6 }
| ChatRoomCapabilities is used to indicate the capabilities of a chat room. More...
enum class | ChatRoomEncryptionBackend { None = 0 , Lime = 1<<0 }
| ChatRoomEncryptionBackend is used to indicate the encryption engine used by a chat room. More...
enum class | ChatRoomSecurityLevel { Unsafe = 0 , ClearText = 1 , Encrypted = 2 , Safe = 3 }
| TODO move to encryption engine object when available ChatRoomSecurityLevel is used to indicate the encryption security level of a chat room. More...
enum class | ConfiguringState { Successful = 0 , Failed = 1 , Skipped = 2 }
| Describes the state of the remote configuring process of the Core object, 'Skipped' when the feature is disabled.
enum class | ConsolidatedPresence { Online = 0 , Busy = 1 , DoNotDisturb = 2 , Offline = 3 }
| Consolidated presence information: 'online' means the user is open for communication, 'busy' means the user is open for communication but involved in an other activity, 'do not disturb' means the user is not open for communication, and 'offline' means that no presence information is available.
enum class | EcCalibratorStatus { InProgress = 0 , Done = 1 , Failed = 2 , DoneNoEcho = 3 }
| Enum describing the result of the echo canceller calibration process. More...
enum class | FriendCapability { None = 0 , GroupChat = 1<<0 , LimeX3Dh = 1<<1 , EphemeralMessages = 1<<2 }
| Enum describing the capabilities of a Friend, populated through presence subscribe/notify process. More...
enum class | GlobalState { Off = 0 , Startup = 1 , On = 2 , Shutdown = 3 , Configuring = 4 , Ready = 5 }
| Describes the global state of the Core object. More...
enum class | IceState { NotActivated = 0 , Failed = 1 , InProgress = 2 , HostConnection = 3 , ReflexiveConnection = 4 , RelayConnection = 5 }
| Enum describing ICE states. More...
enum class | LimeState { Disabled = 0 , Mandatory = 1 , Preferred = 2 }
enum class | LogCollectionState { Disabled = 0 , Enabled = 1 , EnabledWithoutPreviousLogHandler = 2 }
| Whether or not to keep a file with the logs.
enum class | LogLevel { Debug = 1<<0 , Trace = 1<<1 , Message = 1<<2 , Warning = 1<<3 , Error = 1<<4 , Fatal = 1<<5 }
| Verbosity levels of log messages. More...
enum class | MediaDirection { Invalid = -1 , Inactive = 0 , SendOnly = 1 , RecvOnly = 2 , SendRecv = 3 }
| Indicates for a given media the stream direction. More...
enum class | MediaEncryption { None = 0 , SRTP = 1 , ZRTP = 2 , DTLS = 3 }
| Enum describing type of media encryption types. More...
enum class | MediaResourceMode { ExclusiveMediaResources = 0 , SharedMediaResources = 1 }
| Media resource usage. More...
enum class | PresenceBasicStatus { Open = 0 , Closed = 1 }
| Basic status as defined in section 4.1.4 of RFC 3863. More...
enum class | Privacy { None = 0 , User = 1 , Header = 2 , Session = 4 , Id = 8 , Critical = 16 , Default = 32768 }
| Defines privacy policy to apply as described by rfc3323. More...
enum class | PublishState { None = 0 , Progress = 1 , Ok = 2 , Error = 3 , Expiring = 4 , Cleared = 5 }
| Enum for publish states. More...
enum class | Reason { None = 0 , NoResponse = 1 , Forbidden = 2 , Declined = 3 , NotFound = 4 , NotAnswered = 5 , Busy = 6 , UnsupportedContent = 7 , BadEvent = 8 , IOError = 9 , DoNotDisturb = 10 , Unauthorized = 11 , NotAcceptable = 12 , NoMatch = 13 , MovedPermanently = 14 , Gone = 15 , TemporarilyUnavailable = 16 , AddressIncomplete = 17 , NotImplemented = 18 , BadGateway = 19 , SessionIntervalTooSmall = 20 , ServerTimeout = 21 , Unknown = 22 }
| Enum describing various failure reasons or contextual information for some events. More...
enum class | RegistrationState { None = 0 , Progress = 1 , Ok = 2 , Cleared = 3 , Failed = 4 }
| Describes proxy registration states. More...
enum class | SessionExpiresRefresher { Unspecified = 0 , UAS = 1 , UAC = 2 }
| Session Timers refresher.
enum class | StreamType { Audio = 0 , Video = 1 , Text = 2 , Unknown = 3 }
| Enum describing the stream types.
enum class | SubscribePolicy { SPWait = 0 , SPDeny = 1 , SPAccept = 2 }
| Enum controlling behavior for incoming subscription request. More...
enum class | SubscriptionDir { Incoming = 0 , Outgoing = 1 , InvalidDir = 2 }
| Enum for subscription direction (incoming or outgoing). More...
enum class | SubscriptionState { None = 0 , OutgoingProgress = 1 , IncomingReceived = 2 , Pending = 3 , Active = 4 , Terminated = 5 , Error = 6 , Expiring = 7 }
| Enum for subscription states. More...
enum class | ToneID { Undefined = 0 , Busy = 1 , CallWaiting = 2 , CallOnHold = 3 , CallLost = 4 , CallEnd = 5 }
| Enum listing frequent telephony tones. More...
enum class | TransportType { Udp = 0 , Tcp = 1 , Tls = 2 , Dtls = 3 }
| Enum describing transport type for LinphoneAddress.
enum class | UpnpState { Idle = 0 , Pending = 1 , Adding = 2 , Removing = 3 , NotAvailable = 4 , Ok = 5 , Ko = 6 , Blacklisted = 7 }
| Enum describing uPnP states. More...
enum class | VersionUpdateCheckResult { UpToDate = 0 , NewVersionAvailable = 1 , Error = 2 }
| Enum describing the result of a version update check.
enum class | XmlRpcArgType { None = 0 , Int = 1 , String = 2 , StringStruct = 3 }
| Enum describing the types of argument for LinphoneXmlRpcRequest.
enum class | XmlRpcStatus { Pending = 0 , Ok = 1 , Failed = 2 }
| Enum describing the status of a LinphoneXmlRpcRequest.
enum class | ZrtpPeerStatus { Unknown = 0 , Invalid = 1 , Valid = 2 }
| Enum describing the ZRTP SAS validation status of a peer URI. More...

## Detailed Description

Namespace that holds all liblinphone's API classes and enumerations.

## Enumeration Type Documentation

## ◆ AccountCreatorAlgoStatus

enum linphone::AccountCreatorAlgoStatus
| strong

Enum describing algorithm checking, used by the AccountCreator.

Enumerator
Ok | Algorithm ok.
NotSupported | Algorithm not supported.

## ◆ AccountCreatorBackend

enum linphone::AccountCreatorBackend
| strong

Enum describing backend used in the AccountCreator.

Enumerator
XMLRPC | XMLRPC Backend.
FlexiAPI | FlexiAPI Backend.

## ◆ AddressFamily

enum linphone::AddressFamily
| strong

Enum describing Ip family.

Enumerator
Inet | IpV4.
Inet6 | IpV6.
Unspec | Unknown.

## ◆ AuthMethod

enum linphone::AuthMethod
| strong

Enum describing the authentication methods.

Enumerator
HttpDigest | Digest authentication requested.
Tls | Client certificate requested.

## ◆ AVPFMode

enum linphone::AVPFMode
| strong

Enum describing RTP AVPF activation modes.

Enumerator
Default | Use default value defined at upper level.
Disabled | AVPF is disabled.
Enabled | AVPF is enabled.

## ◆ ChatRoomBackend

enum linphone::ChatRoomBackend
| strong

ChatRoomBackend is used to indicate the backend implementation of a chat room.

Enumerator
Basic | Basic (client-to-client) chat room.
FlexisipChat | Server-based chat room.

## ◆ ChatRoomCapabilities

enum linphone::ChatRoomCapabilities
| strong

ChatRoomCapabilities is used to indicate the capabilities of a chat room.

Enumerator
None | No capabilities.
Basic | No server.
RealTimeText | Supports RTT.
Conference | Use server (supports group chat)
Proxy | Special proxy chat room flag.
Migratable | Chat room migratable from Basic to Conference.
OneToOne | A communication between two participants (can be Basic or Conference)
Encrypted | Chat room is encrypted.

## ◆ ChatRoomEncryptionBackend

enum linphone::ChatRoomEncryptionBackend
| strong

ChatRoomEncryptionBackend is used to indicate the encryption engine used by a chat room.

Enumerator
None | No encryption.
Lime | Lime x3dh encryption.

## ◆ ChatRoomSecurityLevel

enum linphone::ChatRoomSecurityLevel
| strong

TODO move to encryption engine object when available ChatRoomSecurityLevel is used to indicate the encryption security level of a chat room.

Enumerator
Unsafe | Security failure.
ClearText | No encryption.
Encrypted | Encrypted.
Safe | Encrypted and verified.

## ◆ EcCalibratorStatus

enum linphone::EcCalibratorStatus
| strong

Enum describing the result of the echo canceller calibration process.

Enumerator
InProgress | The echo canceller calibration process is on going.
Done | The echo canceller calibration has been performed and produced an echo delay measure.
Failed | The echo canceller calibration process has failed.
DoneNoEcho | The echo canceller calibration has been performed and no echo has been detected.

## ◆ FriendCapability

enum linphone::FriendCapability
| strong

Enum describing the capabilities of a Friend, populated through presence subscribe/notify process.

Enumerator
None | No capabilities populated.
GroupChat | This friend can be invited in a Flexisip backend ChatRoom.
LimeX3Dh | This friend can be invited in a Flexisip backend end-to-end encrypted ChatRoom.
EphemeralMessages | This friend is able to delete ephemeral messages once they have expired.

## ◆ GlobalState

enum linphone::GlobalState
| strong

Describes the global state of the Core object.

Enumerator
Off | State in which we're in after Core::stop().
Startup | Transient state for when we call Core::start()
On | Indicates Core has been started and is up and running.
Shutdown | Transient state for when we call Core::stop()
Configuring | Transient state between Startup and On if there is a remote provisionning URI configured.
Ready | Core state after being created by linphone_factory_create_core, generally followed by a call to Core::start()

## ◆ IceState

enum linphone::IceState
| strong

Enum describing ICE states.

Enumerator
NotActivated | ICE has not been activated for this call or stream.
Failed | ICE processing has failed.
InProgress | ICE process is in progress.
HostConnection | ICE has established a direct connection to the remote host.
ReflexiveConnection | ICE has established a connection to the remote host through one or several NATs.
RelayConnection | ICE has established a connection through a relay.

## ◆ LimeState

enum linphone::LimeState
| strong

Enumerator
Disabled | Lime is not used at all.
Mandatory | Lime is always used.
Preferred | Lime is used only if we already shared a secret with remote.

## ◆ LogLevel

enum linphone::LogLevel
| strong

Verbosity levels of log messages.

Enumerator
Debug | Level for debug messages.
Trace | Level for traces.
Message | Level for information messages.
Warning | Level for warning messages.
Error | Level for error messages.
Fatal | Level for fatal error messages.

## ◆ MediaDirection

enum linphone::MediaDirection
| strong

Indicates for a given media the stream direction.

Enumerator
SendOnly | No active media not supported yet.
RecvOnly | Send only mode.
SendRecv | recv only mode

## ◆ MediaEncryption

enum linphone::MediaEncryption
| strong

Enum describing type of media encryption types.

Enumerator
None | No media encryption is used.
SRTP | Use SRTP media encryption.
ZRTP | Use ZRTP media encryption.
DTLS | Use DTLS media encryption.

## ◆ MediaResourceMode

enum linphone::MediaResourceMode
| strong

Media resource usage.

Enumerator
ExclusiveMediaResources | Media resources are not shared.
SharedMediaResources | Media resources are shared.

## ◆ PresenceBasicStatus

enum linphone::PresenceBasicStatus
| strong

Basic status as defined in section 4.1.4 of RFC 3863.

Enumerator
Open | This value means that the associated contact element, if any, is ready to accept communication.
Closed | This value means that the associated contact element, if any, is unable to accept communication.

## ◆ Privacy

enum linphone::Privacy
| strong

Defines privacy policy to apply as described by rfc3323.

Enumerator
None | Privacy services must not perform any privacy function.
User | Request that privacy services provide a user-level privacy function.
Header | Request that privacy services modify headers that cannot be set arbitrarily by the user (Contact/Via).
Session | Request that privacy services provide privacy for session media.
Id | rfc3325 The presence of this privacy type in a Privacy header field indicates that the user would like the Network Asserted Identity to be kept private with respect to SIP entities outside the Trust Domain with which the user authenticated.
Critical | Privacy service must perform the specified services or fail the request.
Default | Special keyword to use privacy as defined either globally or by proxy using ProxyConfig::setPrivacy()

## ◆ PublishState

enum linphone::PublishState
| strong

Enum for publish states.

Enumerator
None | Initial state, do not use.
Progress | An outgoing publish was created and submitted.
Ok | Publish is accepted.
Error | Publish encoutered an error, Event::getReason() gives reason code.
Expiring | Publish is about to expire, only sent if [sip]->refresh_generic_publish property is set to 0.
Cleared | Event has been un published.

## ◆ Reason

enum linphone::Reason
| strong

Enum describing various failure reasons or contextual information for some events.

Enumerator
None | No reason has been set by the core.
NoResponse | No response received from remote.
Forbidden | Authentication failed due to bad credentials or resource forbidden.
Declined | The call has been declined.
NotFound | Destination of the call was not found.
NotAnswered | The call was not answered in time (request timeout)
Busy | Phone line was busy.
UnsupportedContent | Unsupported content.
BadEvent | Bad event.
IOError | Transport error: connection failures, disconnections etc...
DoNotDisturb | Do not disturb reason.
Unauthorized | Operation is unauthorized because missing credential.
NotAcceptable | Operation is rejected due to incompatible or unsupported media parameters.
NoMatch | Operation could not be executed by server or remote client because it didn't have any context for it.
MovedPermanently | Resource moved permanently.
Gone | Resource no longer exists.
TemporarilyUnavailable | Temporarily unavailable.
AddressIncomplete | Address incomplete.
NotImplemented | Not implemented.
BadGateway | Bad gateway.
SessionIntervalTooSmall | The received request contains a Session-Expires header field with a duration below the minimum timer.
ServerTimeout | Server timeout.
Unknown | Unknown reason.

## ◆ RegistrationState

enum linphone::RegistrationState
| strong

Describes proxy registration states.

Enumerator
None | Initial state for registrations.
Progress | Registration is in progress.
Ok | Registration is successful.
Cleared | Unregistration succeeded.
Failed | Registration failed.

## ◆ SubscribePolicy

enum linphone::SubscribePolicy
| strong

Enum controlling behavior for incoming subscription request.

Enumerator
SPWait | Does not automatically accept an incoming subscription request.
SPDeny | Rejects incoming subscription request.
SPAccept | Automatically accepts a subscription request.

## ◆ SubscriptionDir

enum linphone::SubscriptionDir
| strong

Enum for subscription direction (incoming or outgoing).

Enumerator
Incoming | Incoming subscription.
Outgoing | Outgoing subscription.
InvalidDir | Invalid subscription direction.

## ◆ SubscriptionState

enum linphone::SubscriptionState
| strong

Enum for subscription states.

Enumerator
None | Initial state, should not be used.
OutgoingProgress | An outgoing subcription was sent.
IncomingReceived | An incoming subcription is received.
Pending | Subscription is pending, waiting for user approval.
Active | Subscription is accepted.
Terminated | Subscription is terminated normally.
Error | Subscription was terminated by an error, indicated by Event::getReason()
Expiring | Subscription is about to expire, only sent if [sip]->refresh_generic_subscribe property is set to 0.

## ◆ ToneID

enum linphone::ToneID
| strong

Enum listing frequent telephony tones.

Enumerator
Undefined | Not a tone.
Busy | Busy tone.
CallOnHold | Call waiting tone.
CallLost | Call on hold tone.
CallEnd | Tone played when call is abruptly disconnected (media lost)

## ◆ UpnpState

enum linphone::UpnpState
| strong

Enum describing uPnP states.

Enumerator
Idle | uPnP is not activate
Pending | uPnP process is in progress
Adding | Internal use: Only used by port binding.
Removing | Internal use: Only used by port binding.
NotAvailable | uPnP is not available
Ok | uPnP is enabled
Ko | uPnP processing has failed
Blacklisted | IGD router is blacklisted.

## ◆ ZrtpPeerStatus

enum linphone::ZrtpPeerStatus
| strong

Enum describing the ZRTP SAS validation status of a peer URI.

Enumerator
Unknown | Peer URI unkown or never validated/invalidated the SAS.
Invalid | Peer URI SAS rejected in database.
Valid | Peer URI SAS validated in database.