Liblinphone  4.5.0
Classes | Typedefs | Enumerations
linphone Namespace Reference

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

Classes

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

Enumerator
Ok 

Algorithm ok.

NotSupported 

Algorithm not supported.

◆ AddressFamily

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

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

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

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

Enumerator
None 

No encryption.

Lime 

Lime x3dh encryption.

◆ ChatRoomSecurityLevel

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 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 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

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 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

Media resource usage.

Enumerator
ExclusiveMediaResources 

Media resources are not shared.

SharedMediaResources 

Media resources are shared.

◆ PresenceBasicStatus

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 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

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 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 for subscription direction (incoming or outgoing).

Enumerator
Incoming 

Incoming subscription.

Outgoing 

Outgoing subscription.

InvalidDir 

Invalid subscription direction.

◆ SubscriptionState

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.

◆ 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 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.