Ring Daemon
Loading...
Searching...
No Matches
jami Namespace Reference

Namespaces

namespace  archiver
 Archiver is used to generate/read encrypted archives.
 
namespace  base64
 
namespace  Conf
 
namespace  ConversationDirectories
 
namespace  ConversationMapKeys
 
namespace  ConversationPreferences
 
namespace  debug
 
namespace  fileutils
 
namespace  im
 
namespace  ip_utils
 
namespace  json
 
namespace  libav_utils
 
namespace  log
 
namespace  MemberPath
 
namespace  Migration
 
namespace  PayloadKey
 
namespace  PluginUtils
 
namespace  ProtocolKeys
 
namespace  secure
 
namespace  sip_utils
 
namespace  swarm_protocol
 
namespace  test
 
namespace  tls
 
namespace  vCard
 
namespace  video
 
namespace  yaml_utils
 

Classes

class  AAudioLayer
 
class  Account
 
struct  AccountArchive
 Crypto material contained in the archive, not persisted in the account configuration. More...
 
struct  AccountConfig
 
class  AccountFactory
 
struct  AccountInfo
 
class  AccountManager
 
struct  AccountPeerInfo
 
class  AlsaLayer
 
class  ArchiveAccountManager
 
class  AudioDevice
 
class  AudioDeviceGuard
 
class  AudioFile
 Abstract interface for file readers. More...
 
class  AudioFileException
 
struct  AudioFormat
 Structure to hold sample rate and channel number associated with audio data. More...
 
class  AudioFrameResizer
 Buffers extra samples. More...
 
class  AudioInput
 
class  AudioLayer
 
class  AudioLoop
 
class  AudioPreference
 
class  AudioProcessor
 
class  AudioReceiveThread
 
class  AudioRtpSession
 
class  AudioSender
 
class  AudioStream
 
class  AuthChannelHandler
 Manages channels for syncing informations. More...
 
class  Bucket
 
class  Call
 
class  CallFactory
 
class  CallMediaHandler
 This abstract class is an API we need to implement from plugin side. More...
 
class  CallServicesManager
 This class provides the interface between loaded MediaHandlers and call's audio/video streams. More...
 
class  CallSet
 
class  ChannelHandlerInterface
 A Channel handler is used to make the link between JamiAccount and ConnectionManager Its role is to manage channels for a protocol (git/sip/etc) More...
 
class  ChatHandler
 This abstract class is an API we need to implement from plugin side. More...
 
class  ChatServicesManager
 This class provides the interface between loaded ChatHandlers and conversation messages. More...
 
class  Conference
 
struct  ConfInfo
 
class  ConfProtocolParser
 Used to parse confOrder objects. More...
 
class  CongestionControl
 
class  ConsoleLog
 
struct  Contact
 
class  ContactList
 
class  Conversation
 
class  ConversationChannelHandler
 Manages Conversation's channels. More...
 
struct  ConversationCommit
 
struct  ConversationMember
 
class  ConversationModule
 
class  ConversationRepository
 This class gives access to the git repository that represents the conversation. More...
 
struct  ConversationRequest
 A ConversationRequest is a request which corresponds to a trust request, but for conversations It's signed by the sender and contains the members list, the conversationId, and the metadatas such as the conversation's vcard, etc. More...
 
struct  ConvInfo
 
class  CoreLayer
 
class  CryptoAttribute
 
struct  CryptoSuiteDefinition
 
struct  ctx
 
struct  DeviceAnnouncement
 
struct  DeviceParams
 DeviceParams Parameters used by MediaDecoder and MediaEncoder to open a LibAV device/stream. More...
 
struct  DeviceSync
 
class  DLPlugin
 This class is used after a plugin library is successfully loaded. More...
 
class  DTMF
 
class  DTMFException
 
class  DTMFGenerator
 
struct  DTMFTone
 Struct to handle a DTMF. More...
 
class  FileInfo
 
class  FileLog
 
struct  Filter
 
class  FuncObserver
 
struct  GitAnnotatedCommitDeleter
 
struct  GitAuthor
 
struct  GitBufDeleter
 
struct  GitCommitDeleter
 
struct  GitDiffDeleter
 
struct  GitDiffStatsDeleter
 
struct  GitIndexConflictIteratorDeleter
 
struct  GitIndexDeleter
 
struct  GitObjectDeleter
 
struct  GitPackBuilderDeleter
 
struct  GitReferenceDeleter
 
struct  GitRemoteDeleter
 
struct  GitRepositoryDeleter
 
struct  GitRevWalkerDeleter
 
class  GitServer
 This class offers to a ChannelSocket the possibility to interact with a Git repository. More...
 
struct  GitSignatureDeleter
 
struct  GitTreeDeleter
 
struct  History
 
class  IncomingFile
 
struct  IncomingFileInfo
 
class  InterruptedThreadLoop
 
class  JackLayer
 
class  JamiAccount
 Ring Account is build on top of SIPAccountBase and uses DHT to handle call connectivity. More...
 
struct  JamiAccountConfig
 
class  JamiPluginManager
 This class provides an interface to functions exposed to the Plugin System interface for lrc and clients. More...
 
struct  KnownDevice
 
struct  KnownDeviceSync
 
class  LocalRecorder
 
class  LocalRecorderManager
 
class  LogDispatcher
 
class  Logger
 Level-driven logging class that support printf and C++ stream logging fashions. More...
 
struct  LogOptions
 
class  Manager
 Manager (controller) of daemon. More...
 
struct  Matrix0D
 A matrix with no value. More...
 
struct  Matrix1D
 This generic class represents a multidimensional enum class array. More...
 
class  MediaAttribute
 
class  MediaDecoder
 
class  MediaDemuxer
 
struct  MediaDescription
 MediaDescription Negotiated RTP media slot. More...
 
class  MediaEncoder
 
class  MediaEncoderException
 
class  MediaFilter
 Provides access to libavfilter. More...
 
class  MediaHandler
 It's the base object of the CallMediaHandler. More...
 
class  MediaIOHandle
 
class  MediaPlayer
 
class  MediaRecorder
 
struct  MediaStream
 
class  MessageChannelHandler
 Manages channels for exchanging messages between peers. More...
 
class  MonitorLog
 
class  NameDirectory
 
struct  NodeInfo
 
class  NullAudioProcessor
 
class  Observable
 
class  Observer
 
class  OutgoingFile
 
struct  PaDeviceInfos
 Convenience structure to hold PulseAudio device propreties such as supported channel number etc. More...
 
struct  ParsedDefinition
 
class  ParseError
 General exception object that is thrown when an error occurred with a regular expression operation. More...
 
struct  ParticipantInfo
 
class  PeerRecorder
 
struct  PendingConversationFetch
 
class  Plugin
 This class is used to attempt loading a plugin library. More...
 
class  PluginManager
 This class manages plugin (un)loading. More...
 
class  PluginPreferencesUtils
 Static class that gathers functions to manage plugins' preferences. More...
 
class  PortAudioLayer
 
class  PreferenceHandler
 This abstract class is an API we need to implement from plugin side. More...
 
class  Preferences
 
class  PreferenceServicesManager
 This class provides the interface between PreferenceHandlers and per account preferences. More...
 
struct  pres_msg_data
 
class  PresenceManager
 
class  PresSubClient
 
class  PresSubServer
 
class  PublishMapSubject
 
class  PublishObservable
 
class  PulseLayer
 
class  PulseMainLoopLock
 
class  rational
 Naive implementation of the boost::rational interface, described here: https://www.boost.org/doc/libs/latest/libs/rational/rational.html. More...
 
class  Recordable
 
class  Resampler
 Wrapper class for libswresample. More...
 
class  RingBuffer
 A ring buffer for mutichannel audio samples. More...
 
class  RingBufferPool
 
class  RoutingTable
 
struct  RTCPInfo
 
struct  rtcpREMBHeader
 
struct  rtcpRRHeader
 
struct  rtcpSRHeader
 
class  RtpSession
 
class  SafeResolveCallbackMap
 
class  SdesNegotiator
 
class  Sdp
 
class  SdpException
 
class  Serializable
 
class  ServerAccountManager
 
class  SIPAccount
 
class  SIPAccountBase
 
struct  SipAccountBaseConfig
 
struct  SipAccountConfig
 
class  SIPCall
 
class  SIPPresence
 
class  SipTransport
 SIP transport wraps pjsip_transport. More...
 
class  SipTransportBroker
 Manages the transports and receive callbacks from PJSIP. More...
 
class  SIPVoIPLink
 
class  SocketPair
 
class  SpeexAudioProcessor
 
class  SRTPProtoContext
 
class  SwarmChannelHandler
 Manages Conversation's channels. More...
 
class  SwarmManager
 
class  SyncChannelHandler
 Manages channels for syncing information between devices of the same account. More...
 
struct  SyncedConversation
 
class  SyncModule
 
struct  SyncMsg
 
class  SysLog
 
struct  SystemAudioCodecInfo
 
class  SystemCodecContainer
 
struct  SystemCodecInfo
 
struct  SystemVideoCodecInfo
 
class  TelephoneTone
 
class  ThreadLoop
 
struct  ThreadLoopException
 
struct  TlsInfos
 
struct  TlsListener
 
class  Tone
 
class  ToneControl
 
class  TransferChannelHandler
 Manages Conversation's channels. More...
 
class  TransferManager
 
struct  TrustRequest
 
struct  TS_Frame
 
class  Typers
 
class  Uri
 
struct  VCardMessageCtx
 
struct  VideoManager
 
class  VoipLinkException
 
class  VoipPreference
 
struct  WaitingRequest
 
class  WebRTCAudioProcessor
 
class  WebViewHandler
 This is an abstract class (API) that needs to be implemented by a plugin. More...
 
struct  WebViewMessage
 Contains data about a web view message Used by WebViewServicesManager. More...
 
class  WebViewServicesManager
 This class provides the interface between loaded WebViewHandlers and client webviews. More...
 

Typedefs

template<class T >
using AccountMap = std::map< std::string, std::shared_ptr< T >, std::less<> >
 
using AudioFrame = libjami::AudioFrame
 
using avSubjectPtr = std::shared_ptr< Observable< AVFrame * > >
 
using AVSubjectSPtr = std::weak_ptr< Observable< AVFrame * > >
 
using Blob = std::vector< uint8_t >
 
template<class Row , class Class , typename Result = void, typename... Args>
using CallbackMatrix1D = Matrix1D< Row, Result(Class::*)(Args... args)>
 Create an array of callbacks.
 
template<class Row , class Column , class Class , typename Result = void, typename... Args>
using CallbackMatrix2D = Matrix2D< Row, Column, void(Class::*)(Args... args)>
 Create a method callback matrix.
 
using CallIdSet = std::set< std::string >
 
using CallIDSet = std::set< std::string >
 To store uniquely a list of Call ids.
 
using CallMap = std::map< std::string, std::shared_ptr< Call > >
 
using CallMediaHandlerPtr = std::unique_ptr< CallMediaHandler >
 
using ChannelCb = std::function< bool(const std::shared_ptr< dhtnet::ChannelSocket > &)>
 
using ChatHandlerList = std::map< std::pair< std::string, std::string >, std::map< std::string, bool > >
 
using ChatHandlerPtr = std::unique_ptr< ChatHandler >
 
using chatSubjectPtr = std::shared_ptr< PublishObservable< pluginMessagePtr > >
 
typedef std::vector< pj_ssl_cipherCipherArray
 
using clock = std::chrono::steady_clock
 
using ConnectCallbackLegacy = std::function< void(std::shared_ptr< dhtnet::ChannelSocket >, const dht::InfoHash &)>
 
using ConnectCb = std::function< void(std::shared_ptr< dhtnet::ChannelSocket >, const DeviceId &)>
 
using ConvInfoMap = std::map< std::string, ConvInfo >
 
using DeviceId = dht::PkId
 
template<class Row >
using EnumClassNames = Matrix1D< Row, std::string_view >
 A helper to type to match serializable string to enum elements.
 
using GitAnnotatedCommit = std::unique_ptr< git_annotated_commit, GitAnnotatedCommitDeleter >
 
using GitBuf = std::unique_ptr< git_buf, GitBufDeleter >
 
using GitCommit = std::unique_ptr< git_commit, GitCommitDeleter >
 
using GitDiff = std::unique_ptr< git_diff, GitDiffDeleter >
 
using GitDiffStats = std::unique_ptr< git_diff_stats, GitDiffStatsDeleter >
 
using GitIndex = std::unique_ptr< git_index, GitIndexDeleter >
 
using GitIndexConflictIterator = std::unique_ptr< git_index_conflict_iterator, GitIndexConflictIteratorDeleter >
 
using GitObject = std::unique_ptr< git_object, GitObjectDeleter >
 
using GitPackBuilder = std::unique_ptr< git_packbuilder, GitPackBuilderDeleter >
 
using GitReference = std::unique_ptr< git_reference, GitReferenceDeleter >
 
using GitRemote = std::unique_ptr< git_remote, GitRemoteDeleter >
 
using GitRepository = std::unique_ptr< git_repository, GitRepositoryDeleter >
 
using GitRevWalker = std::unique_ptr< git_revwalk, GitRevWalkerDeleter >
 
using GitSignature = std::unique_ptr< git_signature, GitSignatureDeleter >
 
using GitSocketList = std::map< DeviceId, std::shared_ptr< dhtnet::ChannelSocket > >
 
using GitTree = std::unique_ptr< git_tree, GitTreeDeleter >
 
typedef std::pair< int, std::string > HwIDPair
 Associate a sound card index to its string description.
 
using IceCandidate = pj_ice_sess_cand
 
typedef std::function< void(const std::string &)> InternalCompletionCb
 
using Key = std::pair< std::string, DeviceId >
 
template<class Row , class Column , typename Value >
using Matrix2D = Matrix1D< Row, Matrix1D< Column, Value > >
 Create a matrix type with 2 enum class dimensions M[I,J] = V ^ ^ ^ | | | Rows <— | | Columns <--— | Value <-------—.
 
using MediaFrame = libjami::MediaFrame
 
using MediaObserver = std::function< void(std::shared_ptr< MediaFrame > &&)>
 
using MessageList = std::list< std::shared_ptr< libjami::SwarmMessage > >
 
using NeedSocketCb = std::function< void(const std::string &, const std::string &, ChannelCb &&, const std::string &)>
 
using NeedsSyncingCb = std::function< void(std::shared_ptr< SyncMsg > &&)>
 
using NodeId = dht::h256
 
using OnCommitCb = std::function< void(const std::string &)>
 
using OnDoneCb = std::function< void(bool, const std::string &)>
 
using OneToOneRecvCb = std::function< void(const std::string &, const std::string &)>
 
using onFetchedCb = std::function< void(const std::string &)>
 
typedef std::function< void()> OnFinishedCb
 
using OnLoadMessages = std::function< void(std::vector< libjami::SwarmMessage > &&messages)>
 
using OnMembersChanged = std::function< void(const std::set< std::string > &)>
 
using OnPullCb = std::function< void(bool fetchOk)>
 
using onShutdownCb = std::function< void(void)>
 
using pluginMessagePtr = std::shared_ptr< JamiMessage >
 
using PostConditionCb = std::function< bool(const std::string &, const GitAuthor &, ConversationCommit &)>
 
using PreConditionCb = std::function< CallbackResult(const std::string &, const GitAuthor &, const GitCommit &)>
 
using PreferenceHandlerPtr = std::unique_ptr< PreferenceHandler >
 
using PreferencesMap = std::map< std::string, std::map< std::string, std::string > >
 
using Request = dht::http::Request
 
using SengMsgCb = std::function< uint64_t(const std::string &, const DeviceId &, std::map< std::string, std::string >, uint64_t)>
 
using SetContentTypeFunc = void(*)(AAudioStreamBuilder *, aaudio_content_type_t)
 
using SetInputPresetFunc = void(*)(AAudioStreamBuilder *, aaudio_input_preset_t)
 
using SetUsageFunc = void(*)(AAudioStreamBuilder *, aaudio_usage_t)
 
using SignalHandlerMap = std::map< std::string, std::shared_ptr< libjami::CallbackWrapperBase > >
 
using SipConnectionKey = std::pair< std::string, DeviceId >
 
using SipTransportStateCallback = std::function< void(pjsip_transport_state, const pjsip_transport_state_info *)>
 
using ValueIdDist = std::uniform_int_distribution< dht::Value::Id >
 
using VideoFrame = libjami::VideoFrame
 
using WebViewHandlerPtr = std::unique_ptr< WebViewHandler >
 

Enumerations

enum class  AudioDeviceType : int8_t { ALL = -1 , PLAYBACK = 0 , CAPTURE , RINGTONE }
 
enum class  AuthDecodingState : uint8_t {
  HANDSHAKE = 0 , EST , AUTH , DATA ,
  ERR , AUTH_ERROR , DONE , TIMEOUT ,
  CANCELED
}
 
enum  BandwidthUsage : uint8_t { bwNormal = 0 , bwUnderusing = 1 , bwOverusing = 2 }
 
enum class  CallbackResult { Skip , Break , Ok }
 
enum  CipherMode : uint8_t { AESCounterMode , AESF8Mode }
 
enum  CodecType : uint8_t { CODEC_NONE = 0 , CODEC_ENCODER = 1 , CODEC_DECODER = 2 , CODEC_ENCODER_DECODER = CODEC_ENCODER | CODEC_DECODER }
 
enum class  ConversationMode : int { ONE_TO_ONE = 0 , ADMIN_INVITES_ONLY , INVITES_ONLY , PUBLIC }
 
enum class  DataType : uint8_t { RTP = 1 << 0 , RTCP = 1 << 1 }
 
enum class  DecodeStatus : uint8_t {
  Success , FrameFinished , EndOfFile , ReadError ,
  DecodeError , RestartRequired , FallBack
}
 
enum class  DeviceAuthState : uint8_t {
  INIT = 0 , TOKEN_AVAILABLE = 1 , CONNECTING = 2 , AUTHENTICATING = 3 ,
  IN_PROGRESS = 4 , DONE = 5
}
 
enum  Direction { Input = 0 , Output = 1 , IO = 2 , End = 3 }
 
enum class  KeyExchangeProtocol : uint8_t { NONE , SDES }
 
enum  MACMode : uint8_t { HMACSHA1 }
 
enum class  MatchRank : uint8_t { NONE , PARTIAL , FULL }
 
enum class  MediaDirection : uint8_t { SENDRECV , SENDONLY , RECVONLY , INACTIVE }
 
enum class  MediaTransport : uint8_t { RTP_AVP , RTP_SAVP , UNKNOWN }
 
enum  MediaType : uint8_t { MEDIA_NONE = 0 , MEDIA_AUDIO = 1 , MEDIA_VIDEO = 2 , MEDIA_ALL = MEDIA_AUDIO | MEDIA_VIDEO }
 
enum class  MemberRole {
  ADMIN = 0 , MEMBER , INVITED , BANNED ,
  LEFT
}
 
enum class  RateMode : uint8_t { CRF_CONSTRAINED , CQ , CBR }
 
enum class  RegistrationState : uint8_t {
  UNLOADED , UNREGISTERED , TRYING , REGISTERED ,
  ERROR_GENERIC , ERROR_AUTH , ERROR_NETWORK , ERROR_HOST ,
  ERROR_SERVICE_UNAVAILABLE , ERROR_NEED_MIGRATION , INITIALIZING
}
 Contains all the Registration states for an account can be in. More...
 
enum class  SdpDirection : uint8_t { OFFER , ANSWER , NONE }
 

Functions

template<typename I >
rational< Iabs (const rational< I > &r)
 
bool add_initial_files (GitRepository &repo, const std::shared_ptr< JamiAccount > &account, ConversationMode mode, const std::string &otherMember="")
 Adds initial files.
 
static void addRangeToDetails (std::map< std::string, std::string > &a, const char *minKey, const char *maxKey, const std::pair< uint16_t, uint16_t > &range)
 
constexpr std::string_view arch ()
 
std::string_view as_view (const git_blob *blob)
 
std::string_view as_view (const GitObject &blob)
 
AudioFormat audioFormatToSampleFormat (AudioFormat format)
 
static constexpr const charbool_to_str (bool b) noexcept
 
std::string canonicalName (const std::string &url)
 
static const charcheck_error (char *result, char *)
 
static const charcheck_error (int result, char *buffer)
 
static void check_rename (const std::filesystem::path &old_dir, const std::filesystem::path &new_dir)
 
bool closeMediaPlayer (const std::string &id)
 
template<typename... Args>
std::string concat (Args &&... args)
 
static void copy_over (const std::filesystem::path &srcPath, const std::filesystem::path &destPath)
 
GitRepository create_empty_repository (const std::string &path)
 Creates an empty repository.
 
std::string createMediaPlayer (const std::string &path)
 
static void createMessageBody (pj_pool_t *pool, const std::pair< std::string, std::string > &payload, pjsip_msg_body **body_p)
 the pair<string, string> we receive is expected to be in the format <MIME type, payload> the MIME type is in the format "type/subtype" in the header it will be presented as "Content-Type: type/subtype" following the RFC spec, this header line can also contain other parameters in the format: Content-Type: type/subtype; arg=value; arg=value; … thus we also accept the key of the map to be in such a format: type/subtype; arg=value; arg=value; …
 
void createPorts (jack_client_t *client, std::vector< jack_port_t * > &ports, bool playback, std::vector< jack_ringbuffer_t * > &ringbuffers)
 
void destroyStream (pa_stream *s)
 
static constexpr std::string_view dhtStatusStr (dht::NodeStatus status)
 
void disconnectStream (pa_stream *s)
 
template<typename To , typename From >
std::unique_ptr< Todynamic_unique_cast (std::unique_ptr< From > &&p)
 
template<typename Ts , typename... Args>
void emitSignal (Args... args)
 
bool endsWith (const std::string &str, const std::string &ending)
 
template<typename A >
constexpr size_t enum_class_size ()
 This function adds a safe way to get an enum class size.
 
template<typename Ts >
std::pair< std::string, std::shared_ptr< libjami::CallbackWrapper< typename Ts::cb_type > > > exported_callback ()
 
static int ff_network_wait_fd (int fd)
 
const PaDeviceInfosfindBest (const std::vector< PaDeviceInfos > &list)
 Find default device for PulseAudio to open, filter monitors and EC.
 
const AVCodecfindDecoder (const enum AVCodecID codec_id)
 Attempt to find standalone AVCodec decoder using AVCodecID, or fallback to the default decoder.
 
static std::string formatHeader (std::string_view file, unsigned line)
 
static std::string formatPrintfArgs (const char *format, va_list ap)
 
uint64_t from_hex_string (const std::string &str)
 
libjami::DataTransferId generateUID (std::mt19937_64 &engine)
 
static const pjmedia_sdp_sessionget_active_local_sdp (pjsip_inv_session *inv)
 
static const pjmedia_sdp_sessionget_active_remote_sdp (pjsip_inv_session *inv)
 
std::shared_ptr< AudioInputgetAudioInput (const std::string &device)
 
static std::shared_ptr< SIPCallgetCallFromInvite (pjsip_inv_session *inv)
 
static unsigned getDhtLogLevel ()
 Set OpenDHT's log level based on the JAMI_LOG_DHT environment variable.
 
static unsigned getDhtnetLogLevel ()
 
std::string getDisplayed (const std::string &conversationId, const std::string &messageId)
 
std::string getFileId (const std::string &commitId, const std::string &tid, const std::string &displayName)
 
template<class T , signed MaxRespawn = -1>
std::shared_ptr< TgetGlobalInstance ()
 Return a shared pointer on an auto-generated global instance of class T.
 
std::string getIsComposing (const std::string &conversationId, bool isWriting)
 
bool getline (std::string_view &str, std::string_view &line, char delim='\n')
 Similar to @getline_full but skips empty results.
 
bool getline_full (std::string_view &str, std::string_view &line, char delim='\n')
 Split a string_view with an API similar to std::getline.
 
std::shared_ptr< MediaPlayergetMediaPlayer (const std::string &id)
 
std::string getPIDF (const std::string &note)
 
int64_t getPlayerDuration (const std::string &id)
 
int64_t getPlayerPosition (const std::string &id)
 
std::shared_ptr< CallgetPtr (Call &call)
 Obtain a shared smart pointer of instance.
 
std::shared_ptr< SIPCallgetPtr (SIPCall &call)
 Obtain a shared smart pointer of instance.
 
static SafeResolveCallbackMapgetResolveCallbackMap ()
 
SignalHandlerMapgetSignalHandlers ()
 
AudioFormat getStreamFormat (AAudioStream *stream)
 
static std::vector< std::string > getValues (const std::vector< HwIDPair > &deviceMap)
 
bool git_add_all (git_repository *repo)
 Add all files to index.
 
static pj_bool_t handleIncomingOptions (pjsip_rx_data *rdata)
 
static bool handleMediaControl (SIPCall &call, pjsip_msg_body *body)
 
static void hangupCalls (Call::SubcallSet &&callptr_list, int errcode)
 Hangup many calls with same error code.
 
template<typename T >
static void hangupCallsIf (Call::SubcallSet &&calls, int errcode, T pred)
 Hangup many calls with same error code, filtered by a predicate.
 
std::string initial_commit (GitRepository &repo, const std::shared_ptr< JamiAccount > &account, ConversationMode mode, const std::string &otherMember="")
 Sign and create the initial commit.
 
static void insert2Byte (std::vector< uint8_t > &v, uint16_t val)
 
static void insert4Byte (std::vector< uint8_t > &v, uint32_t val)
 
static void invite_session_state_changed_cb (pjsip_inv_session *inv, pjsip_event *e)
 
template<typename T >
static bool is_uninitialized (std::weak_ptr< T > const &weak)
 
static void make_backup (const std::filesystem::path &path)
 
bool mutePlayerAudio (const std::string &id, bool mute)
 
static void on_rx_offer2 (pjsip_inv_session *inv, struct pjsip_inv_on_rx_offer_cb_param *param)
 
static void onRequestInfo (pjsip_inv_session *inv, pjsip_rx_data *rdata, pjsip_msg *msg, SIPCall &call)
 
static void onRequestNotify (pjsip_inv_session *, pjsip_rx_data *, pjsip_msg *msg, SIPCall &call)
 
static void onRequestRefer (pjsip_inv_session *inv, pjsip_rx_data *rdata, pjsip_msg *msg, SIPCall &call)
 
static PaError openPaStream (PaStream **stream, PaDeviceIndex inputDeviceIndex, PaDeviceIndex outputDeviceIndex, PaStreamCallback *callback, void *user_data)
 
template<typename I >
rational< Ioperator+ (const rational< I > &r)
 
template<typename I >
rational< Ioperator- (const rational< I > &r)
 
template<typename I , typename II >
rational< Ioperator- (II i, const rational< I > &r)
 
template<typename I , typename II >
rational< Ioperator/ (II i, const rational< I > &r)
 
static std::ostream & operator<< (std::ostream &os, const Account &acc)
 
static std::ostream & operator<< (std::ostream &os, const JamiAccount &acc)
 
std::ostream & operator<< (std::ostream &os, const MediaStream &ms)
 
template<typename I >
std::ostream & operator<< (std::ostream &os, const rational< I > &r)
 
bool operator== (SystemCodecInfo codec1, SystemCodecInfo codec2)
 
template<typename I >
std::istream & operator>> (std::istream &is, rational< I > &r)
 
static void outgoing_request_forked_cb (pjsip_inv_session *inv, pjsip_event *e)
 
void parseBool (const std::map< std::string, std::string > &details, const char *key, bool &s)
 
ParsedDefinition parseDefinition (std::string_view definition, unsigned sampleRate)
 
template<class T >
void parseInt (const std::map< std::string, std::string > &details, const char *key, T &s)
 
std::string_view parseJamiUri (std::string_view toUrl)
 
static std::pair< std::string, std::string > parseMessageBody (const pjsip_msg_body *body)
 Creates std::pair with the Content-Type header contents as the first value and the message payload as the second value.
 
void parsePath (const std::map< std::string, std::string > &details, const char *key, std::string &s, const std::filesystem::path &base)
 
void parseString (const std::map< std::string, std::string > &details, const char *key, std::string &s)
 
bool pausePlayer (const std::string &id, bool pause)
 
constexpr std::string_view platform ()
 
bool playerSeekToTime (const std::string &id, int time)
 
pj_bool_t pres_on_rx_subscribe_request (pjsip_rx_data *rdata)
 
pa_sample_format_t pulseSampleFormatFromAv (AVSampleFormat format)
 
static void randomFill (std::vector< uint8_t > &dest)
 
template<typename T , typename I >
T rational_cast (const rational< I > &r)
 
static const std::regex regex_display_name ("<|>")
 
static void registration_cb (pjsip_regc_cbparam *param)
 
static pj_status_t reinvite_received_cb (pjsip_inv_session *inv, const pjmedia_sdp_session *offer, pjsip_rx_data *rdata)
 
static std::string replaceAll (const std::string &str, const std::string &from, const std::string &to)
 
static void replyToRequest (pjsip_inv_session *inv, pjsip_rx_data *rdata, int status_code)
 
static void resolver_callback (pj_status_t status, void *token, const struct pjsip_server_addresses *addr)
 
static void restore_backup (const std::filesystem::path &path)
 
template<typename Callback >
static void runOnMainThread (Callback &&cb)
 
static bool safeUpdate (snd_pcm_t *handle, long &samples)
 
AVSampleFormat sampleFormatFromPulse (pa_sample_format_t format)
 
static void sdp_create_offer_cb (pjsip_inv_session *inv, pjmedia_sdp_session **p_offer)
 
static void sdp_media_update_cb (pjsip_inv_session *inv, pj_status_t status)
 
void setAutoRestart (const std::string &id, bool restart)
 
static void setGnuTlsLogLevel ()
 Set gnutls's log level based on the JAMI_LOG_TLS environment variable.
 
static void setSipLogLevel ()
 Set pjsip's log level based on the JAMI_LOG_SIP environment variable.
 
static bool shouldUseAudioProcessorEchoCancel (bool hasNativeAEC, const std::string &echoCancellerPref)
 
static bool shouldUseAudioProcessorNoiseSuppression (bool hasNativeNS, const std::string &noiseSuppressionPref)
 
std::vector< std::string_view > split_string (std::string_view str, char delim)
 
std::vector< std::string_view > split_string (std::string_view str, std::string_view delims=" ")
 
std::vector< unsignedsplit_string_to_unsigned (std::string_view str, char delim)
 
static bool startPaStream (PaStream *stream)
 
static bool starts_with (std::string_view str, std::string_view prefix)
 
void strErr ()
 Thread-safe function to print the stringified contents of errno.
 
std::string string_join (const std::set< std::string > &set, std::string_view separator)
 
std::string_view string_remove_suffix (std::string_view str, char separator)
 
void string_replace (std::string &str, const std::string &from, const std::string &to)
 
std::set< std::string > string_split_set (std::string &str, std::string_view separator)
 
static constexpr std::string_view stripDirName (std::string_view path)
 
std::string stripEchoSufix (const std::string &deviceName)
 
std::string_view stripPrefix (std::string_view toUrl)
 
std::chrono::system_clock::time_point systemTimeFromSteady (std::chrono::steady_clock::time_point t, const std::chrono::steady_clock::time_point &now, const std::chrono::system_clock::time_point &nowSystem)
 
template<typename T >
T to_enum (std::string_view str)
 
template<typename T >
T to_enum (std::string_view str, T defaultValue)
 
std::string to_hex_string (uint64_t id)
 
template<typename T >
T to_int (std::string_view str)
 
template<typename T >
T to_int (std::string_view str, T defaultValue)
 
std::string to_string (double value)
 
std::string toGitHex (size_t value)
 
void toLower (std::string &string)
 
static constexpr std::string_view toString (AuthDecodingState state)
 
static void tp_state_callback (pjsip_transport *tp, pjsip_transport_state state, const pjsip_transport_state_info *info)
 
static pj_bool_t transaction_request_cb (pjsip_rx_data *rdata)
 
static pj_bool_t transaction_response_cb (pjsip_rx_data *rdata)
 
static void transaction_state_changed_cb (pjsip_inv_session *inv, pjsip_transaction *tsx, pjsip_event *e)
 
static void transfer_client_cb (pjsip_evsub *sub, pjsip_event *event)
 
static bool transferCall (SIPCall &call, const std::string &refer_to)
 Helper function to process refer function on call transfer.
 
std::string_view trim (std::string_view s)
 
static pj_status_t try_respond_stateless (pjsip_endpoint *endpt, pjsip_rx_data *rdata, int st_code, const pj_str_t *st_text, const pjsip_hdr *hdr_list, const pjsip_msg_body *body)
 
static int udp_socket_create (int family, int port)
 
static void unserializeRange (const YAML::Node &node, const char *minKey, const char *maxKey, std::pair< uint16_t, uint16_t > &range)
 
void updateRange (uint16_t min, uint16_t max, std::pair< uint16_t, uint16_t > &range)
 
std::string urlEncode (std::string_view input)
 Percent-encode a string according to RFC 3986 unreserved characters.
 
const std::string & userAgent ()
 
bool utf8_validate (std::string_view str)
 utf8_validate:
 
template<typename T >
static void validate (std::string &member, const std::string &param, const T &valid)
 
size_t webrtcFrameSize (AudioFormat format)
 
: a pointer to a nul delimited string.

utf8_make_valid:

Transforms a unknown c_string into a pretty utf8 encoded std::string. Every unreadable or invalid byte will be transformed into U+FFFD (REPLACEMENT CHARACTER).

Returns: a valid utf8 string.

std::string utf8_make_valid (std::string_view name)
 

Variables

constexpr const charACCOUNT_ACTIVE_CALL_LIMIT_KEY = "activeCallLimit"
 
constexpr const charACCOUNT_AUTOANSWER_KEY = "autoAnswer"
 
constexpr const charACCOUNT_COMPOSING_KEY = "sendComposing"
 
constexpr const charACCOUNT_ENABLE_KEY = "enable"
 
constexpr const charACCOUNT_ISRENDEZVOUS_KEY = "rendezVous"
 
constexpr const charACCOUNT_READRECEIPT_KEY = "sendReadReceipt"
 
static constexpr std::string_view ACCOUNT_TYPE_JAMI = "RING"
 
static constexpr std::string_view ACCOUNT_TYPE_SIP = "SIP"
 
constexpr const charACTIVE_CODEC_KEY = "activeCodecs"
 
static constexpr const charAGC_KEY {"automaticGainControl"}
 
constexpr const charALIAS_KEY = "alias"
 
constexpr const charALL_MODERATORS_ENABLED_KEY = "allModeratorsEnabled"
 
static constexpr const charALSA_DFT_CARD {"0"}
 Default DTMF length.
 
static constexpr const charALSAMAP_KEY {"alsa"}
 
static constexpr const charALWAYS_RECORDING_KEY {"alwaysRecording"}
 
static constexpr const charAUDIO_API_KEY {"audioApi"}
 
static constexpr const charAUDIO_PROCESSOR_KEY {"audioProcessor"}
 
constexpr auto AUTH_URI_SCHEME = "jami-auth://"sv
 
static constexpr float beta = 0.95f
 
constexpr auto CACHE_DIRECTORY {"namecache"sv}
 
static constexpr const charCAPTURE_MUTED_KEY {"captureMuted"}
 
static constexpr const charCARDIN_KEY {"cardIn"}
 
static constexpr const charCARDOUT_KEY {"cardOut"}
 
static constexpr const charCARLIBJAMI_KEY {"cardRing"}
 
constexpr auto CHANNEL_SCHEME = "auth:"sv
 
static std::vector< CryptoSuiteDefinitionCryptoSuites
 List of accepted Crypto-Suites as defined in RFC4568 (6.2)
 
static constexpr std::string_view DATA_TRANSFER_SCHEME = "data-transfer://"sv
 
static std::atomic_bool debugEnabled_ {false}
 
constexpr std::string_view DEFAULT_CONFERENCE_RESOLUTION {"1280x720"}
 
static const JamiAccountConfig DEFAULT_CONFIG {}
 
static const SipAccountConfig DEFAULT_CONFIG {}
 
static constexpr std::chrono::seconds DEFAULT_ICE_INIT_TIMEOUT {35}
 
constexpr const charDEFAULT_MODERATORS_KEY = "defaultModerators"
 
constexpr const char *const DEFAULT_RINGTONE_PATH = "default.opus"
 
static constexpr unsigned DEFAULT_SAMPLE_RATE = 8000
 
constexpr const char DEFAULT_SERVER_HOST [] = "https://ns.jami.net"
 
static constexpr const charDEFAULT_TURN_PWD = "ring"
 
static constexpr const charDEFAULT_TURN_REALM = "ring"
 
static constexpr const charDEFAULT_TURN_SERVER = "turn.jami.net"
 
static constexpr const charDEFAULT_TURN_USERNAME = "ring"
 
constexpr const charDENY_SECOND_CALL_KEY = "denySecondCall"
 
static constexpr const char DEVICE_ID_PATH [] {"ring_device"}
 
static constexpr const charDEVICE_PLAYBACK_KEY {"devicePlayback"}
 
static constexpr const charDEVICE_RECORD_KEY {"deviceRecord"}
 
static constexpr const charDEVICE_RINGTONE_KEY {"deviceRingtone"}
 
static constexpr const char *const DHT_DEFAULT_BOOTSTRAP = "bootstrap.jami.net"
 
static std::map< MediaDirection, const char * > DIRECTION_STR
 
constexpr const charDISPLAY_NAME_KEY = "displayName"
 
static constexpr const charECHO_CANCEL_KEY {"echoCancel"}
 
constexpr auto ECOMMIT = 5
 
constexpr auto EFETCH = 1
 
constexpr auto EINVALIDMODE = 2
 
static constexpr auto ENDL = '\n'
 
static pjsip_endpointendpt_
 
constexpr auto EUNAUTHORIZED = 4
 
constexpr auto EVALIDFETCH = 3
 
static constexpr std::chrono::milliseconds EXPECTED_ICE_INIT_MAX_TIME {5000}
 
const constexpr auto EXPORT_KEY_RENEWAL_TIME = std::chrono::minutes(20)
 
static constexpr const char FALSE_STR [] = "false"
 
static constexpr const std::chrono::minutes FIND_PERIOD {10}
 
decltype(getGlobalInstance< SystemCodecContainer >) & getSystemCodecContainer = getGlobalInstance<SystemCodecContainer>
 
static constexpr unsigned HALF_MAX_PORT {MAX_PORT / 2}
 
constexpr std::string_view HEX_PREFIX = "0x"sv
 
static constexpr const charHISTORY_LIMIT_KEY {"historyLimit"}
 
static constexpr const charHISTORY_MAX_CALLS_KEY {"historyMaxCalls"}
 
constexpr const charHOSTNAME_KEY = "hostname"
 
static constexpr int ICE_COMP_COUNT_PER_STREAM {2}
 
static constexpr int ICE_COMP_ID_RTP {1}
 
static constexpr uint64_t JAMI_ID_MAX_VAL = 9007199254740992
 
static const constexpr std::string_view JAMI_URI_PREFIX = "jami:"
 
static constexpr int JAVA_CHANNEL_OUT_STEREO = 12
 
static constexpr int JAVA_ENCODING_PCM_FLOAT = 4
 
static constexpr int JAVA_MODE_STREAM = 1
 
static constexpr int JAVA_RING_CHANNELS = 2
 
static constexpr int JAVA_RING_FLOATS = JAVA_RING_FRAMES * JAVA_RING_CHANNELS
 
static constexpr int JAVA_RING_FRAMES = 480
 
static constexpr int JAVA_RING_SAMPLE_RATE = 48000
 
static constexpr int JAVA_STATE_INITIALIZED = 1
 
static constexpr int JAVA_STREAM_RING = 2
 
static constexpr int JAVA_WRITE_BLOCKING = 0
 
const constexpr auto jitterBufferMaxDelay_ = std::chrono::milliseconds(50)
 
const unsigned jitterBufferMaxSize_ {1500}
 
static constexpr float kd = 0.002f
 
static constexpr float ku = 0.004f
 
static const char *const LAST_MODIFIED = "lastModified"
 
constexpr const charLOCAL_MODERATORS_ENABLED_KEY = "localModeratorsEnabled"
 
constexpr double LOGREG_PARAM_A {101}
 
constexpr double LOGREG_PARAM_A_HEVC {96}
 
constexpr double LOGREG_PARAM_B {-5.}
 
constexpr double LOGREG_PARAM_B_HEVC {-5.}
 
constexpr const charMAILBOX_KEY = "mailbox"
 
constexpr std::chrono::seconds MAX_FALLBACK {12 * 3600s}
 
static constexpr unsigned MAX_PORT {65536}
 
constexpr size_t MAX_RESPONSE_SIZE {1024ul * 1024}
 
static constexpr const charMD5_HASH_KEY {"md5Hash"}
 
static constexpr const char MIME_TYPE_GIT [] {"application/im-gitmessage-id"}
 
static constexpr const char MIME_TYPE_IM_COMPOSING [] {"application/im-iscomposing+xml"}
 
static constexpr const char MIME_TYPE_IMDN [] {"message/imdn+xml"}
 
static constexpr const char MIME_TYPE_INVITE [] {"application/invite"}
 
static constexpr const char MIME_TYPE_INVITE_JSON [] {"application/invite+json"}
 
static constexpr const char MIME_TYPE_PIDF [] {"application/pidf+xml"}
 
static constexpr unsigned MIN_REGISTRATION_TIME = 60
 
static constexpr unsigned MINIMUM_RTP_HEADER_SIZE = 16
 
static pjsip_module mod_ua_
 
static constexpr std::chrono::milliseconds MS_BETWEEN_2_KEYFRAME_REQUEST {1000}
 
static constexpr auto MS_PER_PACKET = std::chrono::milliseconds(20)
 
static constexpr auto MS_PER_PACKET = std::chrono::milliseconds(20)
 
static const std::vector< unsignedMULTIAUDIO_REQUIRED_VERSION = split_string_to_unsigned(MULTIAUDIO_REQUIRED_VERSION_STR, '.')
 
static constexpr auto MULTIAUDIO_REQUIRED_VERSION_STR = "13.11.0"sv
 
static const std::vector< unsignedMULTIICE_REQUIRED_VERSION
 
static constexpr auto MULTIICE_REQUIRED_VERSION_STR = "13.3.0"sv
 
static const std::vector< unsignedMULTISTREAM_REQUIRED_VERSION = split_string_to_unsigned(MULTISTREAM_REQUIRED_VERSION_STR, '.')
 
static constexpr auto MULTISTREAM_REQUIRED_VERSION_STR = "10.0.2"sv
 
static const pjsip_publishc_opt my_publish_opt = {true}
 
static constexpr int NET_POLL_TIMEOUT = 100
 
static const std::vector< unsignedNEW_CONFPROTOCOL_VERSION
 
static constexpr auto NEW_CONFPROTOCOL_VERSION_STR = "13.1.0"sv
 
static constexpr auto NEWPARAMS_TIMEOUT = std::chrono::milliseconds(1000)
 
static constexpr const charNOISE_REDUCE_KEY {"noiseReduce"}
 
constexpr auto OP_TIMEOUT = 5min
 
static constexpr const charORDER_KEY {"order"}
 
static constexpr const char *const OVERRTP_STR = "overrtp"
 
constexpr auto OVERUSE_THRESH = std::chrono::milliseconds(100)
 
static const std::regex PA_EC_SUFFIX {"\\.echo-cancel(?:\\..+)?$"}
 
static constexpr const charPACKAGE_OLD = "ring"
 
static constexpr uint8_t packetFMT = 15
 
static constexpr uint8_t packetType = 206
 
static constexpr uint8_t packetVersion = 2
 
constexpr std::string_view PATH_BLUEPRINT = JAMI_PATH_AUTH "/policyData"
 
constexpr std::string_view PATH_CONTACTS = JAMI_PATH_AUTH "/contacts"
 
constexpr std::string_view PATH_CONVERSATIONS = JAMI_PATH_AUTH "/conversations"
 
constexpr std::string_view PATH_CONVERSATIONS_REQUESTS = JAMI_PATH_AUTH "/conversationRequests"
 
constexpr std::string_view PATH_DEVICE = JAMI_PATH_AUTH "/device"
 
constexpr std::string_view PATH_DEVICES = JAMI_PATH_AUTH "/devices"
 
constexpr std::string_view PATH_SEARCH = JAMI_PATH_AUTH "/directory/search"
 
const constexpr auto PEER_DISCOVERY_EXPIRATION = std::chrono::minutes(1)
 
static const constexpr std::string_view PEER_DISCOVERY_JAMI_SERVICE = "jami"
 
static constexpr const charPENDING_ACCOUNTS_KEY {"pendingAccounts"}
 
static constexpr const charPLAY_DTMF_KEY {"playDtmf"}
 
static constexpr const charPLAY_TONES_KEY {"playTones"}
 
static constexpr const charPLAYBACK_MUTED_KEY {"playbackMuted"}
 
static constexpr const charPLUGIN_KEY {"plugin"}
 
static constexpr std::string_view PN_APNS = "apns"sv
 
static constexpr std::string_view PN_FCM = "fcm"sv
 
static constexpr int POOL_INCREMENT_SIZE = POOL_INITIAL_SIZE
 
static constexpr int POOL_INITIAL_SIZE = 16384
 
static constexpr const charPORT_NUM_KEY {"portNum"}
 
static constexpr const charPORTAUDIO_KEY {"portaudio"}
 
constexpr const charPROXY_PUSH_PLATFORM_KEY = "proxyPushPlatform"
 
constexpr const charPROXY_PUSH_TOKEN_KEY = "proxyPushToken"
 
constexpr const charPROXY_PUSH_TOPIC_KEY = "proxyPushiOSTopic"
 
static const auto PROXY_REGEX = std::regex("(https?://)?([\\w\\.\\-_\\~]+)(:(\\d+)|:\\[(.+)-(.+)\\])?")
 
static constexpr int PULSE_LENGTH_DEFAULT {250}
 
static constexpr const charPULSE_LENGTH_KEY {"pulseLength"}
 
static constexpr const charPULSEMAP_KEY {"pulse"}
 
static constexpr float Q = 0.5f
 
constexpr const char *const QUERY_ADDR {"/addr/"}
 
constexpr const char *const QUERY_NAME {"/name/"}
 
static constexpr const charRECORDPATH_KEY {"recordPath"}
 
static constexpr unsigned REGISTRATION_FIRST_RETRY_INTERVAL = 60
 
static constexpr unsigned REGISTRATION_RETRY_INTERVAL = 300
 
static const std::vector< unsignedREUSE_ICE_IN_REINVITE_REQUIRED_VERSION = split_string_to_unsigned(REUSE_ICE_IN_REINVITE_REQUIRED_VERSION_STR, '.')
 
static constexpr auto REUSE_ICE_IN_REINVITE_REQUIRED_VERSION_STR = "11.0.2"sv
 
static const constexpr std::string_view RING_URI_PREFIX = "ring:"
 
static constexpr const char RINGDIR [] = "ringtones"
 
static constexpr const charRINGING_TIMEOUT {"ringingTimeout"}
 
constexpr const charRINGTONE_ENABLED_KEY = "ringtoneEnabled"
 
constexpr const charRINGTONE_PATH_KEY = "ringtonePath"
 
static constexpr const int RMS_SIGNAL_INTERVAL = 5
 
const constexpr char ROTATION_FILTER_INPUT_NAME [] = "in"
 
static constexpr uint32_t RTCP_RR_FRACTION_MASK = 0xFF000000
 
static constexpr int RTP_MAX_PACKET_LENGTH = 2048
 
constexpr std::chrono::seconds SAVE_INTERVAL {5}
 
static constexpr const charSEARCH_BAR_DISPLAY_KEY {"searchBarDisplay"}
 
static constexpr const char *const SIPINFO_STR = "sipinfo"
 
static JavaVMsJavaVM {nullptr}
 
static constexpr const charSMPLRATE_KEY {"smplRate"}
 
static constexpr auto SRTP_OVERHEAD = 10
 
constexpr pj_str_t STR_MESSAGE_ID = jami::sip_utils::CONST_PJ_STR("Message-ID")
 
constexpr DTMFTone TONES []
 
constexpr const charTRANSPORT_STATE_STR [] = {"CONNECTED", "DISCONNECTED", "SHUTDOWN", "DESTROY", "UNKNOWN STATE"}
 
constexpr const size_t TRANSPORT_STATE_SZ = std::size(TRANSPORT_STATE_STR)
 
static constexpr auto TREATED_PATH = "treatedImMessages"sv
 
static constexpr const char TRUE_STR [] = "true"
 
constexpr const charTYPE_KEY = "type"
 
static constexpr auto UDP_HEADER_SIZE = 8
 
constexpr const charUI_CUSTOMIZATION = "uiCustomization"
 
static constexpr uint32_t uniqueIdentifier = 0x52454D42
 
constexpr const charUPNP_ENABLED_KEY = "upnpEnabled"
 
const std::regex URI_VALIDATOR {R"(^([a-zA-Z]+:(?://)?)?(?:([\w\-.~%!$&'()*+,;=]{1,64}|[^\s@]{1,64})@)?([^\s@]+)$)"}
 
constexpr const charUSER_AGENT_KEY = "useragent"
 
constexpr const charUSERNAME_KEY = "username"
 
static constexpr const charVAD_KEY {"voiceActivityDetection"}
 
static constexpr std::string_view VALID_TLS_PROTOS [] = {"Default"sv, "TLSv1.2"sv, "TLSv1.1"sv, "TLSv1"sv}
 
constexpr const charVIDEO_ENABLED_KEY = "videoEnabled"
 
static constexpr const charVOLUMEMIC_KEY {"volumeMic"}
 
static constexpr const charVOLUMESPKR_KEY {"volumeSpkr"}
 
constexpr int webrtcNoError = webrtc::AudioProcessing::kNoError
 
static constexpr const charZONE_TONE_CHOICE_KEY {"zoneToneChoice"}
 

Typedef Documentation

◆ AccountMap

template<class T >
using jami::AccountMap = typedef std::map<std::string, std::shared_ptr<T>, std::less<> >

Definition at line 32 of file account_factory.h.

◆ AudioFrame

◆ avSubjectPtr

Definition at line 32 of file mediahandler.h.

◆ AVSubjectSPtr

Definition at line 32 of file callservicesmanager.h.

◆ Blob

using jami::Blob = typedef std::vector<uint8_t>

Definition at line 321 of file namedirectory.cpp.

◆ CallbackMatrix1D

template<class Row , class Class , typename Result = void, typename... Args>
using jami::CallbackMatrix1D = typedef Matrix1D<Row, Result (Class::*)(Args... args)>

Create an array of callbacks.

This type hides all the C++ syntax requirements

Definition at line 155 of file enumclass_utils.h.

◆ CallbackMatrix2D

template<class Row , class Column , class Class , typename Result = void, typename... Args>
using jami::CallbackMatrix2D = typedef Matrix2D<Row, Column, void (Class::*)(Args... args)>

Create a method callback matrix.

This type hides all the C++ syntax requirements

Definition at line 163 of file enumclass_utils.h.

◆ CallIdSet

using jami::CallIdSet = typedef std::set<std::string>

Definition at line 180 of file conference.h.

◆ CallIDSet

using jami::CallIDSet = typedef std::set<std::string>

To store uniquely a list of Call ids.

Definition at line 113 of file manager.cpp.

◆ CallMap

using jami::CallMap = typedef std::map<std::string, std::shared_ptr<Call> >

Definition at line 58 of file call.h.

◆ CallMediaHandlerPtr

Definition at line 31 of file callservicesmanager.h.

◆ ChannelCb

typedef std::function< bool(const std::shared_ptr< dhtnet::ChannelSocket > &)> jami::ChannelCb

Definition at line 161 of file conversation.h.

◆ ChatHandlerList

using jami::ChatHandlerList = typedef std::map<std::pair<std::string, std::string>, std::map<std::string, bool> >

Definition at line 25 of file pluginpreferencesutils.h.

◆ ChatHandlerPtr

Definition at line 27 of file chatservicesmanager.h.

◆ chatSubjectPtr

Definition at line 27 of file chathandler.h.

◆ CipherArray

Definition at line 37 of file sipaccount.h.

◆ clock

using jami::clock = typedef std::chrono::steady_clock

Definition at line 181 of file conference.h.

◆ ConnectCallbackLegacy

using jami::ConnectCallbackLegacy = typedef std::function<void(std::shared_ptr<dhtnet::ChannelSocket>, const dht::InfoHash&)>

Definition at line 26 of file channel_handler.h.

◆ ConnectCb

using jami::ConnectCb = typedef std::function<void(std::shared_ptr<dhtnet::ChannelSocket>, const DeviceId&)>

Definition at line 25 of file channel_handler.h.

◆ ConvInfoMap

using jami::ConvInfoMap = typedef std::map<std::string, ConvInfo>

Definition at line 40 of file conversation_module.cpp.

◆ DeviceId

Definition at line 42 of file account_manager.h.

◆ EnumClassNames

template<class Row >
using jami::EnumClassNames = typedef Matrix1D<Row, std::string_view>

A helper to type to match serializable string to enum elements.

Definition at line 136 of file enumclass_utils.h.

◆ GitAnnotatedCommit

◆ GitBuf

Definition at line 112 of file git_def.h.

◆ GitCommit

Definition at line 46 of file git_def.h.

◆ GitDiff

Definition at line 94 of file git_def.h.

◆ GitDiffStats

Definition at line 100 of file git_def.h.

◆ GitIndex

Definition at line 58 of file git_def.h.

◆ GitIndexConflictIterator

◆ GitObject

Definition at line 88 of file git_def.h.

◆ GitPackBuilder

Definition at line 28 of file git_def.h.

◆ GitReference

Definition at line 76 of file git_def.h.

◆ GitRemote

Definition at line 70 of file git_def.h.

◆ GitRepository

Definition at line 34 of file git_def.h.

◆ GitRevWalker

Definition at line 40 of file git_def.h.

◆ GitSignature

Definition at line 82 of file git_def.h.

◆ GitSocketList

using jami::GitSocketList = typedef std::map<DeviceId, std::shared_ptr<dhtnet::ChannelSocket> >

Definition at line 160 of file conversation.h.

◆ GitTree

Definition at line 64 of file git_def.h.

◆ HwIDPair

typedef std::pair<int, std::string> jami::HwIDPair

Associate a sound card index to its string description.

Definition at line 45 of file alsalayer.h.

◆ IceCandidate

◆ InternalCompletionCb

typedef std::function<void(const std::string&)> jami::InternalCompletionCb

Definition at line 52 of file data_transfer.h.

◆ Key

using jami::Key = typedef std::pair<std::string, DeviceId>

Definition at line 28 of file message_channel_handler.cpp.

◆ Matrix2D

Create a matrix type with 2 enum class dimensions M[I,J] = V ^ ^ ^ | | | Rows <— | | Columns <--— | Value <-------—.

Definition at line 147 of file enumclass_utils.h.

◆ MediaFrame

◆ MediaObserver

using jami::MediaObserver = typedef std::function<void(std::shared_ptr<MediaFrame>&&)>

Definition at line 32 of file media_buffer.h.

◆ MessageList

using jami::MessageList = typedef std::list<std::shared_ptr<libjami::SwarmMessage> >

Definition at line 134 of file conversation.cpp.

◆ NeedSocketCb

typedef std::function< void(const std::string &, const std::string &, ChannelCb &&, const std::string &)> jami::NeedSocketCb

Definition at line 162 of file conversation.h.

◆ NeedsSyncingCb

using jami::NeedsSyncingCb = typedef std::function<void(std::shared_ptr<SyncMsg>&&)>

Definition at line 64 of file conversation_module.h.

◆ NodeId

using jami::NodeId = typedef dht::h256

Definition at line 26 of file swarm_channel_handler.h.

◆ OnCommitCb

using jami::OnCommitCb = typedef std::function<void(const std::string&)>

Definition at line 156 of file conversation.h.

◆ OnDoneCb

using jami::OnDoneCb = typedef std::function<void(bool, const std::string&)>

Definition at line 157 of file conversation.h.

◆ OneToOneRecvCb

using jami::OneToOneRecvCb = typedef std::function<void(const std::string&, const std::string&)>

Definition at line 65 of file conversation_module.h.

◆ onFetchedCb

using jami::onFetchedCb = typedef std::function<void(const std::string&)>

Definition at line 32 of file gitserver.h.

◆ OnFinishedCb

typedef std::function<void()> jami::OnFinishedCb

Definition at line 53 of file data_transfer.h.

◆ OnLoadMessages

Definition at line 155 of file conversation.h.

◆ OnMembersChanged

typedef std::function< void(const std::set< std::string > &)> jami::OnMembersChanged

Definition at line 158 of file conversation.h.

◆ OnPullCb

Definition at line 154 of file conversation.h.

◆ onShutdownCb

typedef std::function< void(void)> jami::onShutdownCb

Definition at line 35 of file channeled_transport.h.

◆ pluginMessagePtr

Definition at line 26 of file chathandler.h.

◆ PostConditionCb

Definition at line 127 of file conversationrepository.h.

◆ PreConditionCb

Definition at line 126 of file conversationrepository.h.

◆ PreferenceHandlerPtr

◆ PreferencesMap

using jami::PreferencesMap = typedef std::map<std::string, std::map<std::string, std::string> >

Definition at line 32 of file jamipluginmanager.h.

◆ Request

typedef dht::http::Request jami::Request

Definition at line 71 of file namedirectory.cpp.

◆ SengMsgCb

using jami::SengMsgCb = typedef std::function<uint64_t(const std::string&, const DeviceId&, std::map<std::string, std::string>, uint64_t)>

Definition at line 62 of file conversation_module.h.

◆ SetContentTypeFunc

◆ SetInputPresetFunc

◆ SetUsageFunc

◆ SignalHandlerMap

using jami::SignalHandlerMap = typedef std::map<std::string, std::shared_ptr<libjami::CallbackWrapperBase> >

Definition at line 53 of file jami_signal.h.

◆ SipConnectionKey

using jami::SipConnectionKey = typedef std::pair<std::string , DeviceId>

Definition at line 85 of file jamiaccount.h.

◆ SipTransportStateCallback

◆ ValueIdDist

using jami::ValueIdDist = typedef std::uniform_int_distribution<dht::Value::Id>

Definition at line 263 of file jamiaccount.cpp.

◆ VideoFrame

◆ WebViewHandlerPtr

Definition at line 32 of file webviewservicesmanager.h.

Enumeration Type Documentation

◆ AudioDeviceType

Enumerator
ALL 
PLAYBACK 
CAPTURE 
RINGTONE 

Definition at line 57 of file audiolayer.h.

◆ AuthDecodingState

Enumerator
HANDSHAKE 
EST 
AUTH 
DATA 
ERR 
AUTH_ERROR 
DONE 
TIMEOUT 
CANCELED 

Definition at line 255 of file archive_account_manager.cpp.

◆ BandwidthUsage

Enumerator
bwNormal 
bwUnderusing 
bwOverusing 

Definition at line 28 of file congestion_control.h.

◆ CallbackResult

Enumerator
Skip 
Break 
Ok 

Definition at line 124 of file conversationrepository.h.

◆ CipherMode

Enumerator
AESCounterMode 
AESF8Mode 

Definition at line 42 of file sdes_negotiator.h.

◆ CodecType

Enumerator
CODEC_NONE 
CODEC_ENCODER 
CODEC_DECODER 
CODEC_ENCODER_DECODER 

Definition at line 37 of file media_codec.h.

◆ ConversationMode

Enumerator
ONE_TO_ONE 
ADMIN_INVITES_ONLY 
INVITES_ONLY 
PUBLIC 

Definition at line 73 of file conversationrepository.h.

◆ DataType

Enumerator
RTP 
RTCP 

Definition at line 80 of file socket_pair.cpp.

◆ DecodeStatus

Enumerator
Success 
FrameFinished 
EndOfFile 
ReadError 
DecodeError 
RestartRequired 
FallBack 

Definition at line 70 of file media_decoder.h.

◆ DeviceAuthState

Enumerator
INIT 
TOKEN_AVAILABLE 
CONNECTING 
AUTHENTICATING 
IN_PROGRESS 
DONE 

Definition at line 28 of file archive_account_manager.h.

◆ Direction

Enumerator
Input 
Output 
IO 
End 

Definition at line 33 of file portaudiolayer.cpp.

◆ KeyExchangeProtocol

Enumerator
NONE 
SDES 

Definition at line 35 of file media_codec.h.

◆ MACMode

Enumerator
HMACSHA1 

Definition at line 44 of file sdes_negotiator.h.

◆ MatchRank

Enumerator
NONE 
PARTIAL 
FULL 

Definition at line 72 of file sipaccountbase.h.

◆ MediaDirection

Enumerator
SENDRECV 
SENDONLY 
RECVONLY 
INACTIVE 

Definition at line 217 of file media_codec.h.

◆ MediaTransport

Enumerator
RTP_AVP 
RTP_SAVP 
UNKNOWN 

Definition at line 222 of file media_codec.h.

◆ MediaType

Enumerator
MEDIA_NONE 
MEDIA_AUDIO 
MEDIA_VIDEO 
MEDIA_ALL 

Definition at line 44 of file media_codec.h.

◆ MemberRole

Enumerator
ADMIN 
MEMBER 
INVITED 
BANNED 
LEFT 

Definition at line 87 of file conversationrepository.h.

◆ RateMode

Enumerator
CRF_CONSTRAINED 
CQ 
CBR 

Definition at line 51 of file media_codec.h.

◆ RegistrationState

Contains all the Registration states for an account can be in.

Enumerator
UNLOADED 
UNREGISTERED 
TRYING 
REGISTERED 
ERROR_GENERIC 
ERROR_AUTH 
ERROR_NETWORK 
ERROR_HOST 
ERROR_SERVICE_UNAVAILABLE 
ERROR_NEED_MIGRATION 
INITIALIZING 

Definition at line 27 of file registration_states.h.

◆ SdpDirection

Enumerator
OFFER 
ANSWER 
NONE 

Definition at line 55 of file sdp.h.

Function Documentation

◆ abs()

template<typename I >
rational< I > jami::abs ( const rational< I > &  r)

Definition at line 233 of file rational.h.

References jami::rational< I >::denominator(), and jami::rational< I >::numerator().

Here is the call graph for this function:

◆ add_initial_files()

bool jami::add_initial_files ( GitRepository repo,
const std::shared_ptr< JamiAccount > &  account,
ConversationMode  mode,
const std::string &  otherMember = "" 
)

Adds initial files.

This adds the certificate of the account in the /admins directory the device's key in /devices and the CRLs in /CRLs.

Parameters
repoThe repository
Returns
if files were added successfully

Definition at line 594 of file conversationrepository.cpp.

References jami::MemberPath::ADMINS, jami::MemberPath::DEVICES, emitSignal(), git_add_all(), jami::MemberPath::INVITED, JAMI_ERROR, JAMI_LOG, JAMI_WARNING, and ONE_TO_ONE.

Referenced by jami::ConversationRepository::createConversation().

Here is the call graph for this function:

◆ addRangeToDetails()

static void jami::addRangeToDetails ( std::map< std::string, std::string > &  a,
const char minKey,
const char maxKey,
const std::pair< uint16_t, uint16_t > &  range 
)
static

Definition at line 51 of file sipaccountbase_config.cpp.

References emitSignal().

Referenced by jami::SipAccountBaseConfig::toMap().

Here is the call graph for this function:

◆ arch()

constexpr std::string_view jami::arch ( )
inlineconstexpr

Definition at line 73 of file string_utils.h.

References emitSignal().

Referenced by libjami::arch(), and userAgent().

Here is the call graph for this function:

◆ as_view() [1/2]

◆ as_view() [2/2]

std::string_view jami::as_view ( const GitObject blob)
inline

Definition at line 78 of file conversationrepository.cpp.

References as_view(), and emitSignal().

Here is the call graph for this function:

◆ audioFormatToSampleFormat()

AudioFormat jami::audioFormatToSampleFormat ( AudioFormat  format)
inline

Definition at line 41 of file speex.cpp.

References emitSignal(), jami::AudioFormat::nb_channels, and jami::AudioFormat::sample_rate.

Here is the call graph for this function:

◆ bool_to_str()

static constexpr const char * jami::bool_to_str ( bool  b)
staticconstexprnoexcept

Definition at line 42 of file string_utils.h.

References emitSignal(), FALSE_STR, and TRUE_STR.

Referenced by jami::Call::getDetails().

Here is the call graph for this function:

◆ canonicalName()

std::string jami::canonicalName ( const std::string &  url)

Definition at line 133 of file namedirectory.cpp.

References emitSignal().

Referenced by jami::NameDirectory::instance().

Here is the call graph for this function:

◆ check_error() [1/2]

static const char * jami::check_error ( char result,
char  
)
static

Definition at line 95 of file logger.cpp.

◆ check_error() [2/2]

static const char * jami::check_error ( int  result,
char buffer 
)
static

Definition at line 80 of file logger.cpp.

References emitSignal().

Referenced by strErr().

Here is the call graph for this function:

◆ check_rename()

static void jami::check_rename ( const std::filesystem::path &  old_dir,
const std::filesystem::path &  new_dir 
)
static

Definition at line 156 of file manager.cpp.

References check_rename(), emitSignal(), JAMI_ERROR, and JAMI_WARNING.

Referenced by check_rename(), and jami::Manager::init().

Here is the call graph for this function:

◆ closeMediaPlayer()

bool jami::closeMediaPlayer ( const std::string &  id)

Definition at line 793 of file videomanager.cpp.

References emitSignal(), and jami::Manager::instance().

Referenced by libjami::closeMediaPlayer(), jami::Conference::requestMediaChange(), jami::Conference::~Conference(), and jami::SIPCall::~SIPCall().

Here is the call graph for this function:

◆ concat()

template<typename... Args>
std::string jami::concat ( Args &&...  args)

Definition at line 148 of file string_utils.h.

References emitSignal().

Referenced by jami::MessageChannelHandler::connect(), std::operator+(), std::operator+(), and jami::AccountManager::sendTrustRequest().

Here is the call graph for this function:

◆ copy_over()

static void jami::copy_over ( const std::filesystem::path &  srcPath,
const std::filesystem::path &  destPath 
)
static

Definition at line 128 of file manager.cpp.

References emitSignal().

Referenced by make_backup(), and restore_backup().

Here is the call graph for this function:

◆ create_empty_repository()

GitRepository jami::create_empty_repository ( const std::string &  path)

Creates an empty repository.

Parameters
pathPath of the new repository
Returns
The libgit2's managed repository

Definition at line 552 of file conversationrepository.cpp.

References emitSignal(), and JAMI_ERROR.

Referenced by jami::ConversationRepository::createConversation().

Here is the call graph for this function:

◆ createMediaPlayer()

std::string jami::createMediaPlayer ( const std::string &  path)

Definition at line 769 of file videomanager.cpp.

References emitSignal(), and jami::Manager::instance().

Referenced by libjami::createMediaPlayer(), and jami::Conference::requestMediaChange().

Here is the call graph for this function:

◆ createMessageBody()

static void jami::createMessageBody ( pj_pool_t pool,
const std::pair< std::string, std::string > &  payload,
pjsip_msg_body **  body_p 
)
static

the pair<string, string> we receive is expected to be in the format <MIME type, payload> the MIME type is in the format "type/subtype" in the header it will be presented as "Content-Type: type/subtype" following the RFC spec, this header line can also contain other parameters in the format: Content-Type: type/subtype; arg=value; arg=value; … thus we also accept the key of the map to be in such a format: type/subtype; arg=value; arg=value; …

Definition at line 40 of file instant_messaging.cpp.

References jami::sip_utils::CONST_PJ_STR(), emitSignal(), and JAMI_WARNING.

Referenced by jami::im::fillPJSIPMessageBody().

Here is the call graph for this function:

◆ createPorts()

void jami::createPorts ( jack_client_t client,
std::vector< jack_port_t * > &  ports,
bool  playback,
std::vector< jack_ringbuffer_t * > &  ringbuffers 
)

Definition at line 171 of file jacklayer.cpp.

References emitSignal().

Referenced by jami::JackLayer::JackLayer().

Here is the call graph for this function:

◆ destroyStream()

void jami::destroyStream ( pa_stream s)

Definition at line 129 of file audiostream.cpp.

References disconnectStream(), and emitSignal().

Referenced by jami::AudioStream::stop().

Here is the call graph for this function:

◆ dhtStatusStr()

static constexpr std::string_view jami::dhtStatusStr ( dht::NodeStatus  status)
staticconstexpr

Definition at line 299 of file jamiaccount.cpp.

References emitSignal().

Here is the call graph for this function:

◆ disconnectStream()

void jami::disconnectStream ( pa_stream s)

Definition at line 116 of file audiostream.cpp.

References emitSignal().

Referenced by destroyStream(), and jami::AudioStream::stop().

Here is the call graph for this function:

◆ dynamic_unique_cast()

template<typename To , typename From >
std::unique_ptr< To > jami::dynamic_unique_cast ( std::unique_ptr< From > &&  p)

Definition at line 63 of file account_manager.h.

References emitSignal().

Here is the call graph for this function:

◆ emitSignal()

template<typename Ts , typename... Args>
void jami::emitSignal ( Args...  args)

Definition at line 64 of file jami_signal.h.

References emitSignal(), getSignalHandlers(), JAMI_ERR, jami_tracepoint, and jami_tracepoint_if_enabled.

Referenced by jami::ContactList::acceptConversation(), jami::ConversationModule::acceptConversationRequest(), jami::ContactList::acceptTrustRequest(), jami::fileutils::accessFile(), jami::AccountFactory::accountCount(), jami::GitServer::Impl::ACKCommon(), jami::GitServer::Impl::ACKFirst(), jami::SIPAccountBase::acquirePort(), jami::SIPAccountBase::acquireRandomEvenPort(), jami::tls::TlsValidator::activated(), jami::JamiAccount::SendMessageContext::add(), jami::CallSet::add(), jami::CallSet::add(), jami::ConversationRepository::Impl::add(), add_initial_files(), jami::Manager::addAccount(), jami::Preferences::addAccount(), jami::PluginPreferencesUtils::addAlwaysHandlerPreference(), jami::video::VideoMixer::addAudioOnlySource(), jami::ConversationModule::addCallHistoryMessage(), jami::SwarmManager::addChannel(), jami::RoutingTable::addConnectingNode(), jami::ContactList::addContact(), jami::sip_utils::addContactHeader(), jami::ConversationModule::addConversationMember(), jami::ConversationModule::Impl::addConversationRequest(), jami::ConversationModule::Impl::addConvInfo(), jami::video::VideoDeviceMonitor::addDevice(), jami::PresenceManager::addDeviceListener(), jami::Sdp::addIceAttributes(), jami::Sdp::addIceCandidates(), jami::AudioReceiveThread::addIOContext(), jami::video::VideoReceiveThread::addIOContext(), jami::Conversation::addKnownDevices(), jami::RoutingTable::addKnownNode(), jami::PresenceManager::addListener(), jami::Conversation::addMember(), jami::ConversationRepository::addMember(), jami::RoutingTable::addMobileNode(), jami::RoutingTable::addNode(), jami::RoutingTable::addNode(), addRangeToDetails(), jami::Call::addStateListener(), jami::SipTransport::addStateListener(), jami::MediaRecorder::addStream(), jami::MediaEncoder::addStream(), jami::Call::addSubCall(), jami::Conference::addSubCall(), jami::Conversation::addSwarmChannel(), jami::Conversation::Impl::addToHistory(), jami::SipTransportBroker::addTransport(), jami::Typers::addTyper(), jami::sip_utils::addUserAgentHeader(), jami::ConversationRepository::Impl::addUserDevice(), jami::Manager::ManagerPimpl::addWaitingCall(), jami::ConversationRepository::amend(), jami::Conversation::Impl::announce(), jami::Conversation::Impl::announce(), jami::Conversation::Impl::announce(), jami::video::VideoDeviceMonitor::applySettings(), jami::video::VideoDevice::applySettings(), jami::PresSubServer::approve(), jami::SIPPresence::approvePresSubServer(), arch(), as_view(), as_view(), jami::sip_utils::as_view(), jami::rational< I >::assign(), jami::video::VideoMixer::VideoMixerSource::atomic_copy(), jami::Account::attach(), jami::Observable< T >::attach(), jami::video::VideoMixer::attached(), jami::MediaRecorder::StreamObserver::attached(), jami::PublishMapSubject< T1, T2 >::attached(), jami::Conference::attachHost(), jami::Observable< T >::attachPriorityObserver(), jami::video::VideoMixer::attachVideo(), jami::AudioDevice::AudioDevice(), jami::AudioDeviceGuard::AudioDeviceGuard(), jami::AudioDeviceGuard::AudioDeviceGuard(), jami::AudioFile::AudioFile(), audioFormatToSampleFormat(), jami::Manager::audioFormatUsed(), jami::AudioInput::AudioInput(), jami::AudioInput::AudioInput(), jami::AudioLayer::AudioLayer(), jami::AudioSender::AudioSender(), jami::AudioStream::AudioStream(), jami::tls::TlsValidator::authorityMatch(), jami::RingBuffer::availableForGet(), jami::RingBufferPool::availableForGet(), jami::Conversation::Impl::bannedType(), jami::ConversationRepository::Impl::behind(), jami::Manager::ManagerPimpl::bindCallToConference(), jami::Manager::bindCallToConference(), jami::RingBufferPool::bindHalfDuplexOut(), jami::RingBufferPool::bindRingBuffers(), bool_to_str(), jami::MediaAttribute::boolToString(), jami::ConversationModule::Impl::bootstrap(), jami::ConversationModule::bootstrap(), jami::Conversation::bootstrap(), jami::ConversationModule::Impl::bootstrapCb(), jami::AlsaLayer::buildDeviceTopo(), jami::MediaAttribute::buildMediaAttributesList(), jami::AccountManager::buildRequest(), jami::SyncModule::cacheSyncConnection(), jami::Call::Call(), jami::ConversationModule::call(), jami::CallFactory::callCount(), jami::CallFactory::callCount(), jami::CallServicesManager::CallServicesManager(), jami::SIPVoIPLink::cancelKeepAliveTimer(), canonicalName(), jami::AlsaLayer::capture(), jami::Manager::certStore(), jami::ConversationRepository::changedFiles(), jami::Bucket::changeMobility(), jami::SwarmManager::changeMobility(), jami::tls::ChanneledSIPTransport::ChanneledSIPTransport(), jami::ChatServicesManager::ChatServicesManager(), check_error(), check_rename(), jami::tls::checkBinaryError(), jami::ConversationRepository::Impl::checkEdit(), jami::tls::checkError(), jami::ConversationRepository::Impl::checkInitialCommit(), jami::PluginManager::checkLoadedPlugin(), jami::ConversationRepository::Impl::checkLocks(), jami::PluginUtils::checkManifestJsonContentValidity(), jami::PluginUtils::checkManifestValidity(), jami::PluginUtils::checkManifestValidity(), jami::JamiPluginManager::checkPluginCertificate(), jami::JamiPluginManager::checkPluginCertificatePublicKey(), jami::JamiPluginManager::checkPluginCertificateValidity(), jami::JamiPluginManager::checkPluginSignature(), jami::JamiPluginManager::checkPluginSignatureFile(), jami::JamiPluginManager::checkPluginSignatureValidity(), jami::PluginUtils::checkPluginValidity(), jami::ConversationRepository::Impl::checkValidAdd(), jami::ConversationRepository::Impl::checkValidJoins(), jami::ConversationRepository::Impl::checkValidMergeCommit(), jami::ConversationRepository::Impl::checkValidProfileUpdate(), jami::ConversationRepository::Impl::checkValidRemove(), jami::ConversationRepository::Impl::checkValidUserDiff(), jami::ConversationRepository::Impl::checkValidVoteResolution(), jami::ConversationRepository::Impl::checkVote(), jami::libav_utils::choose_sample_fmt(), jami::libav_utils::choose_sample_fmt_default(), jami::ChatServicesManager::cleanChatSubjects(), jami::Manager::ManagerPimpl::cleanupAccountStorage(), jami::AccountFactory::clear(), jami::CallFactory::clear(), jami::Conversation::clearCache(), jami::ConversationModule::clearCache(), jami::ConversationModule::clearPendingFetch(), jami::ConversationRepository::cloneConversation(), jami::ConversationModule::Impl::cloneConversation(), jami::ConversationModule::Impl::cloneConversation(), jami::ConversationModule::Impl::cloneConversationFrom(), jami::ConversationModule::Impl::cloneConversationFrom(), jami::ConversationModule::Impl::cloneConversationFrom(), jami::ConversationModule::cloneConversationFrom(), jami::MessageChannelHandler::closeChannel(), closeMediaPlayer(), jami::SocketPair::closeSockets(), jami::RoutingTable::closestNodes(), jami::ConversationRepository::Impl::commit(), jami::ConversationRepository::Impl::commitMessage(), jami::ConversationRepository::commitMessage(), jami::ConversationRepository::commitMessages(), jami::Conversation::Impl::commitsEndedCalls(), jami::Conversation::commitsEndedCalls(), jami::JamiAccount::SendMessageContext::complete(), jami::archiver::compress(), jami::archiver::compressGzip(), jami::archiver::compressGzip(), jami::SipAccountConfig::Credentials::computePasswordHash(), concat(), jami::Conference::Conference(), jami::AudioInput::configureFilePlayback(), jami::video::VideoInput::configureFilePlayback(), jami::MessageChannelHandler::connect(), jami::SyncChannelHandler::connect(), jami::AuthChannelHandler::connect(), jami::ConversationChannelHandler::connect(), jami::AuthChannelHandler::connect(), jami::SwarmChannelHandler::connect(), jami::ConsoleLog::ConsoleLog(), jami::sip_utils::CONST_PJ_STR(), jami::sip_utils::CONST_PJ_STR(), jami::sip_utils::CONST_PJ_STR(), jami::ConsoleLog::consume(), jami::SysLog::consume(), jami::MonitorLog::consume(), jami::FileLog::consume(), jami::JamiAccount::consumeConfigCredentials(), jami::ContactList::ContactList(), jami::RoutingTable::contains(), jami::ConversationRepository::convCommitsToMap(), jami::ConversationRepository::Impl::convCommitToMap(), jami::ConversationModule::conversationInfos(), jami::ConversationModule::ConversationModule(), jami::ConversationRequest::ConversationRequest(), jami::ConversationModule::conversationVCard(), jami::PluginPreferencesUtils::convertArrayToString(), jami::video::VideoScaler::convertFormat(), jami::ConversationModule::convMessageStatus(), jami::ConversationModule::convPreferences(), copy_over(), jami::ConversationModule::countInteractions(), jami::Conversation::countInteractions(), create_empty_repository(), jami::AccountFactory::createAccount(), jami::AudioPreference::createAudioLayer(), jami::CallServicesManager::createAVSubject(), jami::SIPAccountBase::CreateClientDialogAndInvite(), jami::ConversationRepository::createConversation(), jami::SIPAccountBase::createDefaultMediaList(), jami::fileutils::createFileLink(), jami::fileutils::createHardlink(), jami::SocketPair::createIOContext(), createMediaPlayer(), jami::ConversationRepository::Impl::createMergeCommit(), createMessageBody(), jami::Sdp::createOffer(), createPorts(), jami::RingBuffer::createReadOffset(), jami::CongestionControl::createREMB(), jami::RingBufferPool::createRingBuffer(), jami::sip_utils::createRouteSet(), jami::SIPVoIPLink::createSDPOffer(), jami::SocketPair::createSRTP(), jami::fileutils::createSymlink(), jami::SipAccountConfig::Credentials::Credentials(), jami::Conversation::currentCalls(), jami::PluginUtils::dataPath(), jami::ConversationModule::declineConversationRequest(), jami::ConversationModule::Impl::declineOtherConversationWith(), jami::MediaDecoder::decode(), jami::base64::decode(), jami::video::VideoReceiveThread::decodeFrame(), jami::archiver::decompress(), jami::archiver::decompressGzip(), jami::video::VideoRtpSession::deinitRecorder(), jami::RoutingTable::deleteNode(), jami::AudioFrameResizer::dequeue(), jami::AccountArchive::deserialize(), destroyStream(), jami::Observable< T >::detach(), jami::video::VideoMixer::detached(), jami::MediaRecorder::StreamObserver::detached(), jami::PublishMapSubject< T1, T2 >::detached(), jami::Observable< T >::detachPriorityObserver(), jami::video::VideoMixer::detachVideo(), jami::ConversationRepository::Impl::devices(), jami::ConversationRepository::devices(), jami::AudioLayer::devicesChanged(), jami::Logger::dhtLevel(), dhtStatusStr(), jami::ConversationRepository::Impl::diff(), jami::ConversationRepository::Impl::diffStats(), jami::ConversationRepository::Impl::diffStats(), jami::ConversationRepository::diffStats(), jami::RingBuffer::discard(), jami::RingBufferPool::discard(), jami::ContactList::discardTrustRequest(), jami::Conversation::Impl::disconnectFromPeer(), disconnectStream(), jami::SwarmManager::display(), jami::ConversationModule::downloadFile(), jami::Conversation::downloadFile(), jami::DTMFGenerator::DTMFGenerator(), dynamic_unique_cast(), jami::Account::editConfig(), jami::JamiAccount::editConfig(), jami::SIPAccount::editConfig(), jami::ConversationModule::Impl::editMessage(), jami::ConversationModule::editMessage(), jami::FileInfo::emit(), jami::MediaDecoder::emitFrame(), emitSignal(), jami::AccountFactory::empty(), jami::CallFactory::empty(), jami::JamiAccount::SendMessageContext::empty(), jami::CallFactory::empty(), jami::PresSubClient::enable(), jami::SpeexAudioProcessor::enableAutomaticGainControl(), jami::LogDispatcher::enableConsoleLog(), jami::SpeexAudioProcessor::enableEchoCancel(), jami::Manager::enableLocalModerators(), jami::LogDispatcher::enableMonitorLog(), jami::SpeexAudioProcessor::enableNoiseSuppression(), jami::LogDispatcher::enableSysLog(), jami::SpeexAudioProcessor::enableVoiceActivityDetection(), jami::MediaEncoder::encode(), jami::base64::encode(), jami::MediaEncoder::encodeAudio(), jami::Matrix1D< Row, Value, A >::end(), jami::Matrix0D< EnumClass >::end(), endsWith(), jami::AudioFrameResizer::enqueue(), jami::video::VideoRtpSession::enterConference(), enum_class_size(), jami::Conversation::erase(), jami::ConversationRepository::erase(), jami::fileutils::eraseFile(), jami::fileutils::eraseFile_posix(), jami::Manager::eraseGitTransport(), jami::tls::TlsValidator::exist(), jami::video::VideoRtpSession::exitConference(), jami::fileutils::expand_path(), jami::tls::TlsValidator::expectedOwner(), jami::video::extractString(), jami::ConversationModule::Impl::fallbackClone(), jami::MediaFilter::feedInput(), jami::ConversationRepository::fetch(), jami::sip_utils::fetchHeaderValue(), jami::ConversationModule::fetchNewCommits(), jami::ConversationModule::Impl::fetchNewCommits(), ff_network_wait_fd(), jami::ConversationRepository::Impl::fileAtTree(), jami::SIPPresence::fillDoc(), jami::im::fillPJSIPMessageBody(), jami::libav_utils::fillWithBlack(), jami::libav_utils::fillWithSilence(), findBest(), jami::RoutingTable::findBucket(), findDecoder(), jami::SIPVoIPLink::findLocalAddressFromSTUN(), jami::SIPVoIPLink::findLocalAddressFromTransport(), jami::ConversationModule::findMatchingOneToOneConversation(), jami::MediaDemuxer::findStreamInfo(), jami::ConversationModule::Impl::fixStructures(), jami::MediaEncoder::flush(), jami::MediaFilter::flush(), jami::RingBuffer::flush(), jami::RingBufferPool::flush(), jami::RingBufferPool::flushAllBuffers(), jami::MediaDecoder::flushBuffers(), jami::video::VideoGenerator::flushFrames(), jami::video::VideoRtpSession::forceKeyFrame(), jami::ConversationRepository::Impl::forEachCommit(), jami::tls::formatDate(), formatHeader(), formatPrintfArgs(), jami::ContactList::foundAccountDevice(), jami::ContactList::foundAccountDevice(), jami::AudioStream::frameSize(), from_hex_string(), jami::AccountConfig::fromMap(), jami::JamiAccountConfig::fromMap(), jami::SipAccountConfig::fromMap(), jami::SipAccountBaseConfig::fromMap(), jami::Matrix1D< Row, Value, A >::fromValue(), jami::DTMF::generateDTMF(), jami::Conversation::generateInvitation(), generateUID(), jami::Tone::genSin(), jami::RingBuffer::get(), get_active_local_sdp(), get_active_remote_sdp(), jami::CongestionControl::get_bw_state(), jami::fileutils::get_cache_dir(), jami::fileutils::get_cache_dir(), jami::fileutils::get_config_dir(), jami::fileutils::get_config_dir(), jami::fileutils::get_data_dir(), jami::fileutils::get_data_dir(), jami::fileutils::get_home_dir(), jami::fileutils::get_home_dir_impl(), jami::fileutils::get_resource_dir_path(), jami::AccountFactory::getAccount(), jami::Account::getAccountCodecInfoIdList(), jami::Manager::getAccountDetails(), jami::Conference::getAccountId(), jami::Manager::getAccountList(), jami::tls::TlsValidator::getActivationDate(), jami::Account::getActiveAccountCodecInfoList(), jami::Account::getActiveCodecs(), jami::RoutingTable::getActiveNodesCount(), jami::AccountFactory::getAllAccounts(), jami::CallFactory::getAllCalls(), jami::CallFactory::getAllCalls(), jami::RoutingTable::getAllNodes(), jami::PluginPreferencesUtils::getAllowDenyListPreferences(), jami::PluginPreferencesUtils::getAlwaysPreference(), jami::PortAudioLayer::PortAudioLayerImpl::getApiDefaultDeviceName(), jami::PortAudioLayer::PortAudioLayerImpl::getApiIndexByType(), jami::PulseLayer::getAudioDeviceIndex(), jami::PortAudioLayer::getAudioDeviceIndex(), jami::PulseLayer::getAudioDeviceName(), getAudioInput(), jami::Manager::getAudioInputDeviceIndex(), jami::Manager::getAudioOutputDeviceIndex(), jami::RingBufferPool::getAvailableData(), jami::AudioFormat::getBandwidth(), jami::MediaAttribute::getBoolValue(), jami::RoutingTable::getBucketMobileNodes(), jami::AudioFormat::getBytesPerFrame(), jami::CallSet::getCall(), jami::CallFactory::getCall(), jami::CallFactory::getCall(), getCallFromInvite(), jami::Conference::getCallFromPeerID(), jami::CallFactory::getCallIDs(), jami::CallSet::getCallIds(), jami::CallFactory::getCallIDs(), jami::Manager::getCallList(), jami::CallServicesManager::getCallMediaHandlerDetails(), jami::CallServicesManager::getCallMediaHandlers(), jami::CallServicesManager::getCallMediaHandlerStatus(), jami::CallSet::getCalls(), jami::video::VideoDevice::getCapabilities(), jami::video::VideoDeviceMonitor::getCapabilities(), jami::PulseLayer::getCaptureDeviceList(), jami::ContactList::getCertificateStatus(), jami::MessageChannelHandler::getChannel(), jami::SipTransportBroker::getChanneledTransport(), jami::video::VideoDeviceImpl::getChannelList(), jami::MessageChannelHandler::getChannels(), jami::ChatServicesManager::getChatHandlerDetails(), jami::ChatServicesManager::getChatHandlers(), jami::ChatServicesManager::getChatHandlerStatus(), jami::fileutils::getCleanPath(), jami::tls::TlsValidator::getCN(), libjami::getCodecDetails(), libjami::getCodecList(), jami::video::HardwareAccel::getCodecName(), jami::Conversation::getCommit(), jami::ConversationRepository::Impl::getCommit(), jami::ConversationRepository::getCommit(), jami::video::HardwareAccel::getCompatibleAccel(), jami::CallSet::getConference(), jami::Account::getConference(), jami::CallSet::getConferenceIds(), jami::Conference::getConferenceInfos(), jami::CallSet::getConferences(), jami::RoutingTable::getConnectedNodes(), jami::RoutingTable::getConnectingNodes(), jami::ContactList::getContactDetails(), jami::ConversationModule::Impl::getConversation(), jami::ConversationModule::Impl::getConversation(), jami::ConversationModule::Impl::getConversationMembers(), jami::ConversationModule::getConversationMembers(), jami::ConversationModule::getConversationPreferences(), jami::ConversationModule::getConversationRequests(), jami::ConversationModule::Impl::getConversations(), jami::ConversationModule::getConversations(), jami::SipAccountConfig::getCredentials(), jami::Manager::ManagerPimpl::getCurrentDeviceIndex(), jami::TelephoneTone::getCurrentTone(), jami::RingBufferPool::getData(), jami::Account::getDefaultCodecDetails(), jami::video::VideoDeviceMonitor::getDefaultDevice(), jami::Manager::getDefaultModerators(), jami::video::VideoDevice::getDefaultSettings(), jami::Account::getDefaultUserAgent(), jami::ConversationRepository::Impl::getDeltaPathsFromDiff(), jami::Call::getDetails(), jami::video::VideoDeviceMonitor::getDeviceList(), jami::ip_utils::getDeviceName(), jami::AudioStream::getDeviceName(), jami::video::VideoDeviceImpl::getDeviceParams(), jami::video::VideoDeviceMonitor::getDeviceParams(), jami::PresenceManager::getDevices(), jami::PortAudioLayer::PortAudioLayerImpl::getDevicesByType(), jami::video::getDeviceString(), jami::video::getDeviceUniqueName(), getDhtLogLevel(), getDhtnetLogLevel(), jami::libav_utils::getDictValue(), jami::libav_utils::getError(), jami::tls::TlsValidator::getExpirationDate(), jami::fileutils::getFileExtension(), getFileId(), jami::libav_utils::getFormat(), jami::video::getFormatCb(), jami::MediaDecoder::getFps(), jami::fileutils::getFullPath(), getGlobalInstance(), jami::PreferenceServicesManager::getHandlerDetails(), jami::PreferenceServicesManager::getHandlers(), jami::ConversationRepository::getHead(), jami::Sdp::getIceAttributes(), jami::Sdp::getIceAttributes(), jami::Sdp::getIceCandidates(), jami::SIPCall::getIceMedia(), jami::SIPAccountBase::getIceOptions(), jami::PortAudioLayer::PortAudioLayerImpl::getIndexByType(), jami::AudioInput::getInfo(), jami::video::VideoInput::getInfo(), jami::AudioInput::getInfo(), jami::ConversationRepository::Impl::getInitialMembers(), jami::MediaFilter::getInputParams(), jami::JamiPluginManager::getInstalledPlugins(), getIsComposing(), jami::tls::TlsValidator::getIssuer(), jami::tls::TlsValidator::getIssuerCN(), jami::tls::TlsValidator::getIssuerDN(), jami::tls::TlsValidator::getIssuerN(), jami::tls::TlsValidator::getIssuerO(), jami::tls::TlsValidator::getIssuerUID(), jami::json::getJsonReaderBuilder(), jami::json::getJsonWriterBuilder(), jami::sip_utils::getKeyExchangeName(), jami::sip_utils::getKeyExchangeProtocol(), jami::Bucket::getKnownNode(), jami::RoutingTable::getKnownNodes(), jami::Bucket::getKnownNodesRandom(), jami::PluginUtils::getLanguage(), jami::SocketPair::getLastLatency(), jami::Manager::getLastMessages(), jami::SIPAccountBase::getLastMessages(), jami::MediaEncoder::getLastSeqValue(), jami::RingBuffer::getLength(), getline(), getline_full(), jami::PresSubClient::getLineStatus(), jami::JamiPluginManager::getLoadedPlugins(), jami::PluginManager::getLoadedPlugins(), jami::PluginUtils::getLocales(), jami::tls::TlsValidator::getMd5Fingerprint(), jami::Sdp::getMediaAttributeListFromSdp(), jami::Sdp::getMediaDescriptions(), getMediaPlayer(), jami::Sdp::getMediaSlots(), jami::MediaAttribute::getMediaType(), jami::Conversation::Impl::getMembers(), jami::Conversation::getMembers(), jami::SyncedConversation::getMembers(), jami::RoutingTable::getMobileNodes(), jami::video::VideoDeviceMonitor::getMRLForDefaultDevice(), jami::tls::TlsValidator::getN(), jami::Manager::getNearbyPeers(), jami::Manager::getNewAccountId(), jami::CallFactory::getNewCallID(), jami::video::VideoGenerator::getNewFrame(), jami::AudioLoop::getNext(), jami::AudioLoop::getNext(), jami::DTMFGenerator::getNextSamples(), jami::RoutingTable::getNodeCount(), jami::Bucket::getNodeIds(), jami::RoutingTable::getNodes(), jami::Bucket::getNodeSockets(), jami::tls::TlsValidator::getO(), jami::Observable< T >::getObserversCount(), jami::ConversationModule::Impl::getOneToOneConversation(), jami::fileutils::getOrCreateLocalDeviceId(), jami::MediaFilter::getOutputParams(), jami::GitServer::Impl::getParameters(), jami::sip_utils::getPeerAllowMethods(), jami::sip_utils::getPeerUserAgent(), jami::video::VideoInput::getPixelFormat(), jami::AudioLayer::getPlayback(), jami::PulseLayer::getPlaybackDeviceList(), getPlayerDuration(), jami::MediaPlayer::getPlayerPosition(), getPlayerPosition(), jami::JamiPluginManager::getPluginAuthor(), jami::JamiPluginManager::getPluginDetails(), jami::JamiPluginManager::getPluginPreferences(), jami::JamiPluginManager::getPluginPreferencesValuesMap(), jami::SIPAccountBase::getPortsReservation(), jami::PluginPreferencesUtils::getPreferences(), jami::PluginPreferencesUtils::getPreferencesConfigFilePath(), jami::PluginPreferencesUtils::getPreferencesValuesMap(), jami::video::SinkClient::getPreferredFormat(), jami::SpeexAudioProcessor::getProcessed(), jami::WebRTCAudioProcessor::getProcessed(), jami::Account::getProfileVcard(), jami::tls::TlsValidator::getPublicKeyId(), jami::tls::TlsValidator::getPublicSignature(), jami::SIPAccountBase::getPublishedIpAddress(), jami::SIPAccountBase::getRandomEvenPort(), jami::video::VideoV4l2Size::getRate(), jami::video::VideoV4l2Size::getRateList(), jami::video::VideoDeviceImpl::getRateList(), jami::LocalRecorderManager::getRecorderByPath(), jami::SIPAccount::getRegistrationExpire(), jami::ConversationModule::Impl::getRequest(), jami::RingBufferPool::getRingBuffer(), jami::RingBufferPool::getRingBuffer(), jami::PluginUtils::getRootPathFromSoPath(), jami::SwarmManager::getRoutingTableInfo(), jami::RoutingTable::getRoutingTableStats(), jami::DTMFGenerator::getSamples(), jami::Sdp::getSdpDirectionStr(), jami::Manager::getSeededRandomEngine(), jami::tls::TlsValidator::getSerializedChecks(), jami::tls::TlsValidator::getSerializedDetails(), jami::tls::TlsValidator::getSerialNumber(), jami::video::VideoDevice::getSettings(), jami::video::VideoDeviceMonitor::getSettings(), jami::tls::TlsValidator::getSha1Fingerprint(), getSignalHandlers(), jami::tls::TlsValidator::getSignatureAlgorithm(), jami::video::VideoV4l2Channel::getSize(), jami::video::VideoV4l2Channel::getSizeList(), jami::video::VideoDeviceImpl::getSizeList(), jami::AudioProcessor::getStabilizedVoiceActivity(), jami::im::MessageEngine::getStatus(), jami::MediaRecorder::getStream(), jami::MediaEncoder::getStream(), jami::MediaDecoder::getStream(), getStreamFormat(), jami::MediaAttribute::getStringValue(), jami::Conference::getSubCalls(), jami::tls::TlsValidator::getSubjectKey(), jami::tls::TlsValidator::getSubjectKeyAlgorithm(), jami::RingBuffer::getSubscribers(), jami::ContactList::getSyncData(), jami::ConversationModule::Impl::getSyncedConversations(), jami::SystemCodecContainer::getSystemCodecInfoIdList(), jami::SystemCodecContainer::getSystemCodecInfoList(), jami::ToneControl::getTelephoneFile(), jami::ToneControl::getTelephoneTone(), jami::SipTransportBroker::getTlsListener(), jami::SipTransportBroker::getTlsTransport(), jami::AudioLayer::getToPlay(), jami::AudioLayer::getToRing(), jami::PresenceManager::getTrackedBuddyPresence(), jami::Conversation::Impl::getTrackedMembers(), jami::SIPVoIPLink::getTransportSelector(), jami::video::getTransposeFilter(), jami::ContactList::getTrustRequest(), jami::ContactList::getTrustRequests(), jami::SipTransportBroker::getUdpTransport(), jami::tls::TlsValidator::getUID(), jami::Account::getUPnPActive(), jami::Account::getUPnPIpAddress(), jami::PresSubClient::getURI(), jami::PluginPreferencesUtils::getUserPreferencesValuesMap(), getValues(), jami::tls::TlsValidator::getVersionNumber(), jami::SIPAccountBase::getVolatileAccountDetails(), jami::Manager::getVolatileAccountDetails(), git_add_all(), jami::GitServer::GitServer(), jami::Conversation::Impl::gitSocket(), jami::Manager::gitSocket(), jami::video::giveUniqueName(), jami::SIPVoIPLink::guessAccount(), jami::Conversation::Impl::handleEdition(), jami::SIPVoIPLink::handleEvents(), handleIncomingOptions(), jami::Conference::handleMediaChangeRequest(), handleMediaControl(), jami::Conversation::Impl::handleMessage(), jami::ConversationModule::Impl::handlePendingConversation(), jami::Conversation::Impl::handleReaction(), hangupCalls(), hangupCallsIf(), jami::Conference::hangupParticipant(), jami::AudioLayer::hardwareFormatAvailable(), jami::Manager::hasAccount(), jami::AccountFactory::hasAccount(), jami::Account::hasActiveCodec(), jami::tls::TlsValidator::hasCa(), jami::CallFactory::hasCall(), jami::CallFactory::hasCall(), jami::Conversation::hasCommit(), jami::ConversationRepository::Impl::hasCommit(), jami::ConversationRepository::hasCommit(), jami::RoutingTable::hasConnectingNode(), jami::SIPAccount::hasCredentials(), jami::Contact::hasDifferentState(), jami::Conversation::hasFetched(), jami::ChatServicesManager::hasHandlers(), jami::RoutingTable::hasKnownNode(), jami::MediaAttribute::hasMediaType(), jami::tls::TlsValidator::hasPrivateKey(), jami::VideoManager::hasRunningPlayers(), jami::LocalRecorderManager::hasRunningRecorders(), jami::SIPAccount::hasServiceRoute(), jami::Conversation::hostConference(), jami::GitServer::Impl::Impl(), jami::ConversationModule::Impl::Impl(), jami::ConversationRepository::infos(), jami::ConversationRepository::infosFromVCard(), jami::AudioDevice::init(), jami::Manager::init(), jami::PortAudioLayer::PortAudioLayerImpl::init(), jami::libav_utils::init_once(), jami::Conversation::Impl::initActiveCalls(), jami::video::HardwareAccel::initAPI(), jami::Manager::ManagerPimpl::initAudioDriver(), jami::ArchiveAccountManager::initAuthentication(), jami::ServerAccountManager::initAuthentication(), jami::SystemCodecContainer::initCodecConfig(), jami::ConfProtocolParser::initData(), jami::PortAudioLayer::PortAudioLayerImpl::initFullDuplexStream(), initial_commit(), jami::MediaFilter::initialize(), jami::PortAudioLayer::PortAudioLayerImpl::initInput(), jami::PortAudioLayer::PortAudioLayerImpl::initInputStream(), jami::ConversationRepository::Impl::initMembers(), jami::PortAudioLayer::PortAudioLayerImpl::initOutput(), jami::PortAudioLayer::PortAudioLayerImpl::initOutputStream(), jami::ConversationModule::Impl::initPresence(), jami::video::VideoRtpSession::initRecorder(), insert2Byte(), insert4Byte(), jami::Manager::insertGitTransport(), jami::LocalRecorderManager::insertRecorder(), jami::JamiPluginManager::installPlugin(), jami::Manager::instance(), jami::NameDirectory::instance(), invite_session_state_changed_cb(), is_uninitialized(), jami::video::is_v4l2(), jami::libav_utils::is_yuv_planar(), jami::Conversation::Impl::isAdmin(), jami::SipTransport::isAlive(), jami::Manager::isAllModerators(), jami::ContactList::isAllowed(), jami::RingBufferPool::isAudioMeterActive(), jami::Contact::isBanned(), jami::ConversationModule::isBanned(), jami::Call::isConferenceParticipant(), jami::SyncModule::isConnected(), jami::ConversationModule::Impl::isConversation(), jami::fileutils::isDirectoryWritable(), jami::RoutingTable::isEmpty(), jami::Conversation::isHosting(), jami::ConversationModule::isHosting(), jami::Manager::isLocalModeratorsEnabled(), jami::Conference::isMediaSourceMuted(), jami::Conversation::isMember(), jami::JamiAccount::isMobile(), jami::PresenceManager::isOnline(), jami::fileutils::isPathRelative(), jami::SystemAudioCodecInfo::isPCMG722(), jami::AudioStream::isReady(), jami::Recordable::isRecording(), jami::ThreadLoop::isRunning(), jami::SipTransport::isSecure(), jami::Call::isSubcall(), jami::SIPPresence::isSupported(), jami::Account::isUsable(), jami::tls::TlsValidator::isValid(), jami::ContactList::isValidAccountDevice(), jami::ConversationRepository::Impl::isValidUserAtCommit(), jami::ConversationRepository::isValidUserAtCommit(), jami::JackLayer::JackLayer(), jami::JamiAccount::JamiAccount(), jami::ConversationRepository::join(), jami::CongestionControl::kalmanFilter(), jami::tls::TlsValidator::keyMatch(), jami::tls::TlsValidator::knownAuthority(), jami::Conversation::lastCommitId(), jami::fileutils::lastWriteTimeInSeconds(), jami::Conversation::leave(), jami::ConversationRepository::leave(), jami::video::VideoV4l2Rate::libAvPixelformat(), jami::video::HardwareAccel::linkHardware(), jami::archiver::listFilesFromArchive(), jami::im::MessageEngine::load(), jami::AccountArchive::load(), jami::PluginManager::load(), jami::Plugin::load(), jami::Manager::ManagerPimpl::loadAccount(), jami::Manager::loadAccountAndConversation(), jami::Manager::loadAccountMap(), jami::Conversation::Impl::loadActiveCalls(), jami::fileutils::loadCacheFile(), jami::fileutils::loadCacheTextFile(), jami::Account::loadConfig(), jami::SIPAccountBase::loadConfig(), jami::ConversationModule::loadConversation(), jami::ConversationModule::loadConversations(), jami::Account::loadDefaultCodecs(), jami::fileutils::loadFile(), jami::Conversation::Impl::loadHostedCalls(), jami::ConversationRepository::Impl::loadMembers(), jami::Conversation::Impl::loadMessages(), jami::Conversation::loadMessages(), jami::ConversationModule::Impl::loadMetadata(), jami::JamiPluginManager::loadPlugin(), jami::JamiPluginManager::loadPlugins(), jami::ConversationModule::loadSingleConversation(), jami::Conversation::Impl::loadStatus(), jami::ConversationModule::loadSwarmUntil(), jami::fileutils::loadTextFile(), jami::TransferManager::Impl::loadWaiting(), jami::LocalRecorder::LocalRecorder(), jami::PresSubClient::lock(), jami::ConversationRepository::Impl::log(), jami::ConversationRepository::log(), jami::Logger::log(), jami::Logger::log(), jami::LogDispatcher::log(), jami::ConversationRepository::log(), jami::sip_utils::logMessageHeaders(), libjami::lookupAddress(), jami::NameDirectory::lookupAddress(), libjami::lookupName(), jami::NameDirectory::lookupUri(), jami::SwarmManager::maintainBuckets(), make_backup(), jami::PluginUtils::manifestPath(), jami::ConversationMember::map(), jami::Migration::mapStateNumberToString(), jami::PresSubClient::match(), jami::PresSubServer::matches(), jami::Matrix1D< Row, Value, A >::Matrix1D(), jami::MediaAttribute::MediaAttribute(), jami::MediaAttribute::mediaAttributesToMediaMaps(), jami::MediaDecoder::MediaDecoder(), jami::MediaDecoder::MediaDecoder(), jami::MediaIOHandle::MediaIOHandle(), jami::MediaStream::MediaStream(), jami::Account::meetMinimumRequiredVersion(), jami::ConversationRepository::Impl::memberCertificate(), jami::ConversationRepository::Impl::members(), jami::ConversationRepository::Impl::memberUris(), jami::ConversationRepository::memberUris(), jami::Conversation::memberUris(), jami::secure::memzero(), jami::ConversationRepository::merge(), jami::Conference::mergeConfInfo(), jami::ConversationRepository::Impl::mergeFastforward(), jami::ConversationRepository::mergeHistory(), jami::sip_utils::PjsipErrorCategory::message(), jami::Conversation::messageStatus(), jami::ConversationRequest::mode(), jami::ConversationRepository::Impl::mode(), jami::ConversationModule::monitor(), jami::Conversation::Impl::monitorConnection(), jami::MediaPlayer::muteAudio(), jami::AudioLayer::muteCapture(), jami::Conference::muteLocalHost(), jami::Conference::muteParticipant(), jami::AudioLayer::mutePlayback(), mutePlayerAudio(), jami::AudioLayer::muteRingtone(), jami::Conference::muteStream(), jami::GitServer::Impl::NAK(), jami::NameDirectory::NameDirectory(), jami::ConversationModule::needsSyncingWith(), jami::SdesNegotiator::negotiate(), jami::SIPAccount::newIncomingCall(), jami::Manager::newOutgoingCall(), jami::SIPAccount::newOutgoingCall(), jami::CallFactory::newSipCall(), jami::tls::TlsValidator::notExpired(), jami::video::notify(), jami::PresSubServer::notify(), jami::Observable< T >::notify(), jami::AudioLayer::notifyIncomingCall(), jami::tls::TlsValidator::notRevoked(), jami::video::VideoGenerator::obtainLastFrame(), on_rx_offer2(), jami::ConversationModule::Impl::onBuddyOnline(), jami::SyncModule::Impl::onChannelShutdown(), jami::MessageChannelHandler::Impl::onChannelShutdown(), jami::ConfProtocolParser::onCheckAuthorization(), jami::Conference::onConfOrder(), jami::SwarmManager::onConnectionChanged(), jami::Conversation::Impl::onConnectionFailed(), jami::ConversationModule::onConversationRequest(), jami::ConversationModule::onFileChannelRequest(), jami::Conversation::onFileChannelRequest(), jami::FileInfo::onFinished(), jami::ConfProtocolParser::onHangupParticipant(), jami::ConfProtocolParser::onKickParticipant(), jami::Conversation::onMembersChanged(), jami::ConversationRepository::onMembersChanged(), jami::ConversationModule::onMessageDisplayed(), jami::im::MessageEngine::onMessageSent(), jami::Conversation::onMessageStatusChanged(), jami::ConfProtocolParser::onMuteParticipant(), jami::ConfProtocolParser::onMuteStreamAudio(), jami::ConfProtocolParser::onMuteStreamVideo(), jami::ServerAccountManager::onNeedsMigration(), jami::Conversation::onNeedSocket(), jami::im::MessageEngine::onPeerOnline(), jami::ConfProtocolParser::onRaiseHand(), jami::ConfProtocolParser::onRaiseHandUri(), jami::AuthChannelHandler::onReady(), jami::MessageChannelHandler::onReady(), jami::SwarmChannelHandler::onReady(), jami::SyncChannelHandler::onReady(), jami::TransferChannelHandler::onReady(), jami::AuthChannelHandler::onRequest(), jami::ConversationChannelHandler::onRequest(), jami::MessageChannelHandler::onRequest(), jami::SwarmChannelHandler::onRequest(), jami::SyncChannelHandler::onRequest(), jami::TransferChannelHandler::onRequest(), onRequestInfo(), onRequestNotify(), onRequestRefer(), jami::ConfProtocolParser::onSetActiveParticipant(), jami::ConfProtocolParser::onSetActiveStream(), jami::ConfProtocolParser::onSetLayout(), jami::Conference::onShutdown(), jami::ConversationModule::onSyncData(), jami::AccountManager::onSyncData(), jami::SIPAccountBase::onTextMessage(), jami::Call::onTextMessage(), jami::ContactList::onTrustRequest(), jami::ConversationModule::onTrustRequest(), jami::ConfProtocolParser::onVersion(), jami::ConfProtocolParser::onVoiceActivity(), jami::archiver::openGzip(), jami::MediaDemuxer::openInput(), jami::MediaEncoder::openOutput(), openPaStream(), jami::SocketPair::openSockets(), jami::rational< I >::operator AVRational(), jami::CryptoAttribute::operator bool(), jami::SdesNegotiator::operator bool(), jami::AudioFormat::operator!=(), jami::Matrix1D< Row, Value, A >::EnumClassIter::operator!=(), jami::Matrix0D< EnumClass >::EnumClassIter::operator!=(), jami::rational< I >::operator!=(), jami::libav_utils::AVBufferRef_deleter::operator()(), jami::PaDeviceInfos::NameComparator::operator()(), jami::PaDeviceInfos::DescriptionComparator::operator()(), jami::GitAnnotatedCommitDeleter::operator()(), jami::GitBufDeleter::operator()(), jami::GitCommitDeleter::operator()(), jami::GitDiffDeleter::operator()(), jami::GitDiffStatsDeleter::operator()(), jami::GitIndexDeleter::operator()(), jami::GitIndexConflictIteratorDeleter::operator()(), jami::GitObjectDeleter::operator()(), jami::GitPackBuilderDeleter::operator()(), jami::GitReferenceDeleter::operator()(), jami::GitRemoteDeleter::operator()(), jami::GitRepositoryDeleter::operator()(), jami::GitRevWalkerDeleter::operator()(), jami::GitSignatureDeleter::operator()(), jami::GitTreeDeleter::operator()(), jami::sip_utils::PoolDeleter::operator()(), jami::Matrix0D< EnumClass >::EnumClassIter::operator*(), jami::rational< I >::operator*=(), jami::rational< I >::operator+=(), jami::rational< I >::operator-=(), operator/(), jami::rational< I >::operator/=(), jami::rational< I >::operator<(), jami::rational< I >::operator<(), operator<<(), operator<<(), operator<<(), operator<<(), jami::AudioLoop::operator=(), jami::rational< I >::operator=(), jami::AudioFormat::operator==(), jami::ConversationRequest::operator==(), jami::rational< I >::operator==(), jami::video::operator==(), jami::rational< I >::operator>(), jami::rational< I >::operator>(), operator>>(), jami::Matrix1D< Row, Value, A >::operator[](), jami::Matrix1D< Row, Value, A >::operator[](), jami::OutgoingFile::OutgoingFile(), jami::PortAudioLayer::PortAudioLayerImpl::paInputCallback(), jami::PortAudioLayer::PortAudioLayerImpl::paIOCallback(), jami::PortAudioLayer::PortAudioLayerImpl::paOutputCallback(), jami::ConfProtocolParser::parse(), jami::json::parse(), parseBool(), jami::ConversationRepository::Impl::parseCommit(), jami::Manager::ManagerPimpl::parseConfiguration(), parseDefinition(), jami::sip_utils::parseDisplayName(), jami::sip_utils::parseDisplayName(), jami::sip_utils::parseDisplayName(), parseInt(), parseJamiUri(), jami::PluginUtils::parseManifestFile(), jami::PluginUtils::parseManifestTranslation(), parseMessageBody(), jami::GitServer::Impl::parseOrder(), parsePath(), jami::yaml_utils::parsePath(), jami::yaml_utils::parsePathOptional(), jami::PluginPreferencesUtils::parsePreferenceConfig(), jami::CongestionControl::parseREMB(), jami::im::parseSipMessage(), parseString(), jami::yaml_utils::parseValue(), jami::yaml_utils::parseValueOptional(), jami::yaml_utils::parseVector(), jami::yaml_utils::parseVectorMap(), jami::PortAudioLayer::PortAudioLayerImpl::paStopStream(), jami::MediaPlayer::pause(), pausePlayer(), jami::ConversationModule::peerFromConversationRequest(), jami::Call::peerHungup(), jami::JamiAccount::SendMessageContext::pending(), jami::ConversationRepository::pinCertificates(), jami::video::pixelformat_score(), jami::sip_utils::PJDialogLock::PJDialogLock(), platform(), jami::ToneControl::play(), jami::Manager::ManagerPimpl::playATone(), jami::AlsaLayer::playback(), playerSeekToTime(), jami::PortAudioLayer::PortAudioLayer(), jami::PortAudioLayer::PortAudioLayerImpl::PortAudioLayerImpl(), jami::Conversation::preferences(), jami::PreferenceServicesManager::PreferenceServicesManager(), jami::PresSubClient::PresSubClient(), jami::debug::Timer::print(), jami::MediaEncoder::print_sdp(), jami::Bucket::printBucket(), jami::ConsoleLog::printLogImpl(), jami::RoutingTable::printRoutingTable(), jami::Sdp::printSession(), jami::tls::TlsValidator::privateKeyDirectoryPermissions(), jami::tls::TlsValidator::privateKeyStoragePermissions(), jami::IncomingFile::process(), jami::OutgoingFile::process(), jami::SafeResolveCallbackMap::process(), jami::Manager::ManagerPimpl::processIncomingCall(), jami::Sdp::processIncomingOffer(), jami::PluginUtils::processLocaleFile(), jami::Manager::ManagerPimpl::processRemainingParticipants(), jami::tls::TlsValidator::publicKeyDirectoryPermissions(), jami::tls::TlsValidator::publicKeyStoragePermissions(), jami::video::VideoGenerator::publishFrame(), jami::video::VideoGenerator::publishFrame(), jami::ChatServicesManager::publishMessage(), jami::Conversation::Impl::pull(), jami::Conversation::pull(), jami::PulseLayer::PulseLayer(), jami::PulseMainLoopLock::PulseMainLoopLock(), pulseSampleFormatFromAv(), jami::RingBuffer::put(), jami::RingBuffer::putLength(), jami::AudioProcessor::putPlayback(), jami::AudioProcessor::putRecorded(), jami::AudioLayer::putRecorded(), jami::AudioLayer::putUrgent(), randomFill(), jami::ConversationModule::reactToMessage(), jami::fileutils::readArchive(), jami::MediaEncoder::readConfig(), jami::archiver::readFileFromArchive(), jami::video::VideoV4l2Channel::readFormats(), jami::video::VideoV4l2Size::readFrameRates(), jami::PulseLayer::readFromMic(), jami::MediaFilter::readOutput(), jami::PluginUtils::readPluginCertificate(), jami::PluginUtils::readPluginCertificateFromArchive(), jami::PluginUtils::readPluginManifestFromArchive(), jami::PluginUtils::readPluginSignatureFromArchive(), jami::PluginUtils::readSignatureFileFromArchive(), jami::video::VideoV4l2Channel::readSizes(), jami::rational< I >::real(), jami::Conversation::Impl::rectifyStatus(), jami::PresenceManager::refresh(), jami::Manager::registerAccounts(), jami::SafeResolveCallbackMap::registerCallback(), jami::PluginManager::registerComponentManager(), jami::video::registerDeviceInterfaceToHwnd(), jami::SIPVoIPLink::registerKeepAliveTimer(), jami::PluginManager::registerObjectFactory(), jami::PluginManager::registerService(), jami::video::SinkClient::registerTarget(), registration_cb(), reinvite_received_cb(), jami::SIPAccountBase::releasePort(), jami::ConversationRepository::remoteHead(), jami::fileutils::remove(), jami::CallSet::remove(), jami::AccountFactory::removeAccount(), jami::Preferences::removeAccount(), jami::Manager::removeAccount(), jami::AccountFactory::removeAccount(), jami::Conversation::removeActiveConference(), jami::video::VideoMixer::removeAudioOnlySource(), jami::ConversationRepository::removeBranchWith(), jami::vCard::utils::removeByKey(), jami::CallFactory::removeCall(), jami::CallFactory::removeCall(), jami::Call::removeCall(), jami::SystemCodecContainer::removeCodecByName(), jami::Account::removeConference(), jami::CallSet::removeConference(), jami::ContactList::removeContact(), jami::ConversationModule::removeContact(), jami::ContactList::removeContactConversation(), jami::ConversationModule::removeConversation(), jami::ConversationModule::Impl::removeConversation(), jami::ConversationModule::Impl::removeConversationImpl(), jami::ConversationModule::removeConversationMember(), jami::video::VideoDeviceMonitor::removeDevice(), jami::Conversation::Impl::removeGitSocket(), jami::Conversation::removeMember(), jami::SwarmManager::removeNode(), jami::RingBuffer::removeReadOffset(), jami::ConversationModule::Impl::removeRepository(), jami::ConversationModule::Impl::removeRepositoryImpl(), jami::SipTransport::removeStateListener(), jami::MediaRecorder::removeStream(), jami::Conference::removeSubCall(), jami::Typers::removeTyper(), jami::Manager::ManagerPimpl::removeWaitingCall(), replaceAll(), replyToRequest(), jami::Conference::reportMediaNegotiationStatus(), jami::SIPPresence::reportPresSubClientNotification(), jami::ConversationRepository::Impl::repository(), jami::Conference::requestMediaChange(), jami::Resampler::resample(), jami::Resampler::resample(), jami::Resampler::resample(), jami::video::VideoScaler::reset(), jami::ConversationRepository::Impl::resetHard(), jami::JamiPluginManager::resetPluginPreferencesValuesMap(), jami::PreferenceServicesManager::resetPreferences(), jami::PluginPreferencesUtils::resetPreferencesValuesMap(), jami::MediaEncoder::resetStreams(), jami::ConversationRepository::Impl::resolveBan(), jami::ConversationRepository::Impl::resolveConflicts(), resolver_callback(), jami::SIPVoIPLink::resolveSrvName(), jami::ConversationRepository::Impl::resolveUnban(), jami::ConversationRepository::resolveVote(), jami::AudioRtpSession::restartSender(), jami::video::VideoRtpSession::restartSender(), restore_backup(), jami::RingBuffer::RingBuffer(), jami::AlsaLayer::ringtone(), jami::PulseLayer::ringtoneToSpeaker(), jami::ConversationModule::Impl::rmConversationRequest(), jami::Conversation::Impl::rotateTrackedMembers(), jami::video::round2pow(), jami::AlsaLayer::run(), runOnMainThread(), safeUpdate(), sampleFormatFromPulse(), jami::AudioFrameResizer::samples(), jami::AudioStream::sampleSize(), jami::AudioStream::sampleSpec(), jami::vCard::utils::save(), jami::Conversation::Impl::saveActiveCalls(), jami::ContactList::saveContacts(), jami::ConversationModule::saveConvInfosToPath(), jami::ConversationModule::saveConvRequestsToPath(), jami::fileutils::saveFile(), jami::Conversation::Impl::saveHostedCalls(), jami::ConversationRepository::Impl::saveMembers(), jami::ConversationModule::Impl::saveMetadata(), jami::Conversation::Impl::saveStatus(), jami::TransferManager::Impl::saveWaiting(), jami::video::VideoScaler::scale(), jami::video::VideoScaler::scale(), jami::video::VideoScaler::scale_and_pad(), jami::video::VideoScaler::scale_with_aspect(), jami::Sdp::Sdp(), sdp_create_offer_cb(), sdp_media_update_cb(), jami::Conversation::search(), jami::ConversationModule::search(), jami::Account::searchCodecById(), jami::SystemCodecContainer::searchCodecById(), jami::Account::searchCodecByName(), jami::SystemCodecContainer::searchCodecByName(), jami::Account::searchCodecByPayload(), jami::SystemCodecContainer::searchCodecByPayload(), jami::JamiAccount::searchUser(), jami::AudioLoop::seek(), jami::ToneControl::seek(), jami::MediaDemuxer::seekFrame(), jami::MediaPlayer::seekToTime(), jami::MediaEncoder::send(), jami::MessageChannelHandler::sendMessage(), jami::ConversationModule::Impl::sendMessage(), jami::ConversationModule::sendMessage(), jami::ConversationModule::Impl::sendMessage(), jami::ConversationModule::sendMessage(), jami::im::MessageEngine::sendMessage(), jami::Conversation::sendMessage(), jami::ConversationModule::Impl::sendMessageNotification(), jami::ConversationModule::Impl::sendMessageNotification(), jami::GitServer::Impl::sendPackData(), jami::SIPPresence::sendPresence(), jami::GitServer::Impl::sendReferenceCapabilities(), jami::Manager::sendRegister(), jami::im::sendSipMessage(), jami::Manager::sendTextMessage(), jami::SIPAccountBase::sendTextMessage(), jami::Manager::ManagerPimpl::sendTextMessageToConference(), jami::WebViewServicesManager::sendWebViewAttach(), jami::WebViewServicesManager::sendWebViewDetach(), jami::WebViewServicesManager::sendWebViewMessage(), jami::JamiAccountConfig::serialize(), jami::video::VideoDeviceMonitor::serialize(), jami::Preferences::serialize(), jami::VoipPreference::serialize(), jami::AudioPreference::serialize(), jami::SipAccountConfig::serialize(), jami::AccountConfig::serializeDiff(), jami::SipAccountBaseConfig::serializeDiff(), jami::fileutils::set_resource_dir_path(), jami::SipTransport::setAccount(), jami::Manager::setAccountActive(), jami::Account::setAccountDetails(), jami::Manager::setAccountDetails(), jami::ConversationModule::setAccountManager(), jami::Preferences::setAccountOrder(), jami::Manager::setAccountsOrder(), jami::Account::setActiveCodecs(), jami::Sdp::setActiveLocalSdpSession(), jami::Conference::setActiveParticipant(), jami::Sdp::setActiveRemoteSdpSession(), jami::Account::setAllCodecsActive(), jami::Manager::setAllModerators(), jami::PluginPreferencesUtils::setAllowDenyListPreferences(), jami::ToneControl::setAudioFile(), jami::Manager::setAudioManager(), jami::RingBufferPool::setAudioMeterState(), jami::AudioPreference::setAudioProcessor(), setAutoRestart(), jami::libav_utils::setAvLogLevel(), jami::MediaEncoder::setBitrate(), jami::video::VideoSender::setBitrate(), jami::AudioDevice::setBufferSize(), jami::AudioLayer::setCaptureGain(), jami::AudioPreference::setCaptureMuted(), jami::ContactList::setCertificateStatus(), jami::ContactList::setCertificateStatus(), jami::video::VideoRtpSession::setChangeOrientationCallback(), jami::video::VideoSender::setChangeOrientationCallback(), jami::Account::setCodecActive(), libjami::setCodecDetails(), jami::Account::setCodecInactive(), jami::SystemAudioCodecInfo::setCodecSpecifications(), jami::SystemVideoCodecInfo::setCodecSpecifications(), jami::Call::setConferenceInfo(), jami::Logger::setConsoleLog(), jami::MediaDecoder::setContextCallback(), jami::ConversationModule::setConversationPreferences(), jami::SipAccountConfig::setCredentials(), jami::TelephoneTone::setCurrentTone(), jami::video::VideoDeviceMonitor::setDefaultDevice(), jami::Manager::setDefaultModerator(), jami::video::HardwareAccel::setDetails(), jami::video::VideoDeviceMonitor::setDeviceOrientation(), jami::video::VideoDeviceImpl::setDeviceParams(), jami::libav_utils::setDictValue(), jami::AudioPreference::setEchoCancel(), jami::AudioStream::setEchoCancelCb(), jami::ConversationModule::setFetched(), jami::FileLog::setFile(), jami::AudioInput::setFormat(), jami::RingBuffer::setFormat(), jami::AudioFrameResizer::setFormat(), jami::AudioFrameResizer::setFrameSize(), jami::RingBuffer::setFrameSize(), jami::video::SinkClient::setFrameSize(), setGnuTlsLogLevel(), jami::Conference::setHandRaised(), jami::AudioLayer::setHasNativeAEC(), jami::AudioLayer::setHasNativeNS(), jami::Manager::setHistoryLimit(), jami::Preferences::setHistoryLimit(), jami::Preferences::setHistoryMaxCalls(), jami::MediaEncoder::setInitSeqVal(), jami::RingBufferPool::setInternalAudioFormat(), jami::RingBufferPool::setInternalSamplingRate(), jami::MediaDecoder::setInterruptCallback(), jami::MediaEncoder::setIOContext(), jami::MediaDecoder::setIOContext(), jami::Call::setIPToIP(), jami::Manager::setIsAlwaysRecording(), jami::AudioPreference::setIsAlwaysRecording(), jami::AAudioLayer::setJavaVM(), jami::MediaDecoder::setKeyFrameRequestCb(), jami::SwarmManager::setKnownNodes(), jami::Conference::setLayout(), jami::Conference::setLocalHostMuteState(), jami::Sdp::setLocalMediaCapabilities(), jami::SIPAccount::setLocalPort(), jami::Sdp::setLocalPublishedAudioPorts(), jami::Sdp::setLocalPublishedVideoPorts(), jami::Preferences::setMd5Hash(), jami::RtpSession::setMediaSource(), jami::Conversation::setMessageDisplayed(), jami::MediaRecorder::setMetadata(), jami::MediaEncoder::setMetadata(), jami::Conference::setModerator(), jami::Logger::setMonitorLog(), jami::RtpSession::setMtu(), jami::video::VideoRtpSession::setMuted(), jami::AudioRtpSession::setMuted(), jami::GitServer::setOnFetched(), jami::video::VideoMixer::setOnSourcesUpdated(), jami::MediaEncoder::setOptions(), jami::MediaEncoder::setOptions(), jami::AudioSender::setPacketLoss(), jami::MediaEncoder::setPacketLoss(), jami::SocketPair::setPacketLossCallback(), jami::video::VideoMixer::setParameters(), jami::AudioInput::setPaused(), jami::video::VideoInput::setPaused(), jami::Call::setPeerNumber(), jami::AudioLayer::setPlaybackGain(), jami::AudioPreference::setPlaybackMuted(), jami::VoipPreference::setPlayDtmf(), jami::VoipPreference::setPlayTones(), jami::JamiPluginManager::setPluginPreference(), jami::Preferences::setPortNum(), jami::CallServicesManager::setPreference(), jami::ChatServicesManager::setPreference(), jami::PreferenceServicesManager::setPreference(), jami::SIPAccountBase::setPublishedAddress(), jami::Sdp::setPublishedIP(), jami::Sdp::setPublishedIP(), jami::VoipPreference::setPulseLength(), jami::Account::setPushNotificationConfig(), jami::Account::setPushNotificationToken(), jami::Account::setPushNotificationTopic(), jami::SocketPair::setReadBlockingMode(), jami::Sdp::setReceivedOffer(), jami::AudioInput::setRecorderCallback(), jami::AudioReceiveThread::setRecorderCallback(), jami::video::VideoInput::setRecorderCallback(), jami::video::VideoReceiveThread::setRecorderCallback(), jami::SIPAccount::setRegistrationInfo(), jami::SIPAccountBase::setRegistrationState(), jami::Account::setRegistrationState(), jami::video::VideoReceiveThread::setRequestKeyFrameCallback(), jami::video::VideoRtpSession::setRequestKeyFrameCallback(), jami::MediaDecoder::setResolutionChangedCallback(), jami::Matrix1D< Row, Value, A >::setReverseMapping(), jami::video::VideoReceiveThread::setRotation(), jami::SIPAccount::setRPort(), jami::SocketPair::setRtpDelayCallback(), jami::ToneControl::setSampleRate(), jami::AudioInput::setSeekTime(), jami::MediaDecoder::setSeekTime(), jami::video::VideoInput::setSeekTime(), setSipLogLevel(), jami::Call::setState(), jami::Call::setState(), jami::Call::setState(), jami::Migration::setState(), jami::AudioInput::setSuccessfulSetupCb(), jami::AudioReceiveThread::setSuccessfulSetupCb(), jami::RtpSession::setSuccessfulSetupCb(), jami::video::VideoInput::setSuccessfulSetupCb(), jami::video::VideoReceiveThread::setSuccessfulSetupCb(), jami::Logger::setSysLog(), jami::MediaDecoder::setup(), jami::MediaDecoder::setupAudio(), jami::Conversation::Impl::setupMemberCallback(), jami::MediaDecoder::setupVideo(), jami::video::VideoMixer::setVideoLayout(), jami::Conference::setVoiceActivity(), jami::AudioSender::setVoiceCallback(), libjami::setVolume(), jami::AudioPreference::setVolumemic(), jami::Preferences::setZoneToneChoice(), jami::fileutils::sha3File(), jami::fileutils::sha3sum(), jami::JamiAccount::shared(), jami::SIPAccount::shared(), jami::JamiAccount::shared(), jami::SIPAccount::shared(), shouldUseAudioProcessorEchoCancel(), shouldUseAudioProcessorNoiseSuppression(), jami::SipTransportBroker::shutdown(), jami::SIPVoIPLink::shutdown(), jami::Bucket::shutdownAllNodes(), jami::RoutingTable::shutdownAllNodes(), jami::ConversationRepository::Impl::signature(), jami::video::SinkClient::SinkClient(), jami::sip_utils::sip_strerror(), jami::SIPCall::SIPCall(), jami::SIPPresence::SIPPresence(), jami::SipTransport::SipTransport(), jami::SipTransport::SipTransport(), jami::SipTransport::SipTransport(), jami::SIPVoIPLink::SIPVoIPLink(), jami::sip_utils::smart_alloc_pool(), jami::sip_utils::sockaddr_to_host_port(), jami::SocketPair::SocketPair(), jami::Account::sortCodec(), jami::AlsaLayer::soundCardIndexExists(), jami::SpeexAudioProcessor::SpeexAudioProcessor(), split_string(), split_string(), split_string_to_unsigned(), jami::SRTPProtoContext::SRTPProtoContext(), jami::tls::ChanneledSIPTransport::start(), jami::JamiAccount::SendMessageContext::start(), jami::AudioStream::start(), jami::LocalRecorder::start(), jami::ThreadLoop::start(), jami::AudioRtpSession::start(), jami::video::VideoRtpSession::start(), jami::AudioLayer::startCaptureStream(), jami::PulseLayer::startCaptureStream(), jami::ConversationModule::Impl::startConversation(), jami::ConversationModule::Impl::startConversation(), jami::ConversationModule::startConversation(), jami::SyncedConversation::startFetch(), jami::Sdp::startNegotiation(), startPaStream(), jami::Manager::startRecordedFilePlayback(), jami::MediaRecorder::startRecording(), jami::Recordable::startRecording(), jami::Conference::startRecording(), starts_with(), jami::video::VideoReceiveThread::startSink(), jami::AlsaLayer::startStream(), jami::PulseLayer::startStream(), jami::PortAudioLayer::startStream(), jami::Conversation::Impl::startTracking(), jami::SipTransport::stateCallback(), jami::GitServer::Impl::stop(), jami::LogDispatcher::stop(), jami::AudioStream::stop(), jami::ToneControl::stop(), jami::ThreadLoop::stop(), jami::AudioRtpSession::stop(), jami::ToneControl::stopAudioFile(), jami::AudioLayer::stopCaptureStream(), jami::PulseLayer::stopCaptureStream(), jami::MediaRecorder::stopRecording(), jami::Recordable::stopRecording(), jami::LocalRecorder::stopRecording(), jami::AlsaLayer::stopStream(), jami::PulseLayer::stopStream(), jami::PortAudioLayer::stopStream(), jami::Conversation::Impl::stopTracking(), jami::sip_utils::streamId(), jami::video::VideoMixer::streamInfo(), strErr(), string_join(), string_remove_suffix(), string_replace(), string_split_set(), jami::debug::StringLiteral< N >::StringLiteral(), stripDirName(), stripPrefix(), jami::Manager::ManagerPimpl::stripSipPrefix(), jami::sip_utils::stripSipUriPrefix(), jami::tls::TlsValidator::strongSigning(), jami::PresSubClient::subscribe(), jami::SIPPresence::subscribeClient(), jami::SIPPresence::support(), jami::Manager::ManagerPimpl::switchCall(), jami::Conference::switchInput(), jami::AudioInput::switchInput(), jami::video::VideoMixer::switchInputs(), jami::Conversation::sync(), jami::ConversationModule::syncConversations(), jami::SyncModule::Impl::syncInfos(), jami::SyncModule::syncWithConnected(), jami::SysLog::SysLog(), systemTimeFromSteady(), jami::PortAudioLayer::PortAudioLayerImpl::terminate(), jami::MediaEncoder::testH265Accel(), jami::AudioProcessor::tidyQueues(), jami::tls::TlsValidator::TlsValidator(), jami::tls::TlsValidator::TlsValidator(), jami::tls::TlsValidator::TlsValidator(), to_enum(), to_enum(), to_hex_string(), to_int(), to_int(), to_string(), jami::CallServicesManager::toggleCallMediaHandler(), jami::ChatServicesManager::toggleChatHandler(), jami::Recordable::toggleRecording(), jami::Conference::toggleRecording(), jami::Manager::toggleRecordingCall(), toGitHex(), jami::ParticipantInfo::toJson(), jami::ConversationRequest::toJson(), jami::ConvInfo::toJson(), toLower(), jami::JamiAccountConfig::toMap(), jami::SipAccountConfig::toMap(), jami::SipAccountBaseConfig::toMap(), jami::vCard::utils::toMap(), jami::MediaAttribute::toMediaMap(), jami::Tone::Tone(), jami::ConfInfo::toString(), jami::Conversation::Impl::toString(), jami::AudioFormat::toString(), jami::Uri::toString(), jami::MediaAttribute::toString(), jami::json::toString(), jami::vCard::utils::toString(), tp_state_callback(), jami::PresenceManager::trackBuddy(), transaction_request_cb(), transaction_response_cb(), transaction_state_changed_cb(), jami::video::HardwareAccel::transfer(), transferCall(), jami::TransferManager::transferFile(), jami::video::HardwareAccel::transferToMainMemory(), jami::SipTransportBroker::transportStateChanged(), jami::ConversationRepository::Impl::treeAtCommit(), trim(), try_respond_stateless(), udp_socket_create(), jami::RingBufferPool::unBindAll(), jami::RingBufferPool::unBindAllHalfDuplexIn(), jami::RingBufferPool::unBindAllHalfDuplexOut(), jami::RingBufferPool::unBindHalfDuplexOut(), jami::RingBufferPool::unbindRingBuffers(), jami::archiver::uncompressArchive(), jami::PluginUtils::uncompressJplFunction(), jami::JamiPluginManager::uninstallPlugin(), jami::DLPlugin::unload(), jami::PluginManager::unload(), jami::JamiPluginManager::unloadPlugin(), jami::PresSubClient::unlock(), jami::video::VideoDeviceMonitor::unserialize(), jami::Preferences::unserialize(), jami::VoipPreference::unserialize(), jami::AudioPreference::unserialize(), jami::AccountConfig::unserialize(), jami::JamiAccountConfig::unserialize(), jami::SipAccountConfig::unserialize(), unserializeRange(), jami::PresSubClient::unsubscribe(), jami::PresenceManager::untrackBuddy(), jami::MediaStream::update(), jami::Contact::update(), jami::AudioSender::update(), jami::video::SinkClient::update(), jami::MediaRecorder::StreamObserver::update(), jami::video::VideoMixer::update(), jami::video::VideoSender::update(), jami::CongestionControl::update_thresh(), jami::Conversation::Impl::updateActiveCalls(), jami::Conference::updateConferenceInfo(), jami::ContactList::updateContact(), jami::ContactList::updateConversation(), jami::ConversationModule::updateConversationInfos(), jami::ConversationModule::Impl::updateConvForContact(), jami::ConversationModule::updateConvForContact(), jami::ConversationRepository::updateInfos(), jami::Conversation::updateInfos(), jami::RtpSession::updateMedia(), jami::video::VideoRtpSession::updateMedia(), jami::Conversation::updateMessageStatus(), jami::Conference::updateMuted(), jami::PortAudioLayer::updatePreference(), jami::Conversation::updatePreferences(), jami::SIPAccount::updateProfile(), updateRange(), jami::Conference::updateRecording(), jami::PulseLayer::updateServerInfo(), jami::PulseLayer::updateSinkList(), jami::PulseLayer::updateSourceList(), jami::MediaDecoder::updateStartTime(), jami::video::VideoInput::updateStartTime(), jami::SIPPresence::updateStatus(), jami::Conversation::Impl::updateStatus(), jami::Conference::updateVoiceActivity(), jami::Uri::Uri(), jami::ConversationRepository::Impl::uriFromDevice(), jami::ConversationRepository::Impl::uriFromDeviceAtCommit(), urlEncode(), userAgent(), utf8_make_valid(), utf8_validate(), jami::AudioDevice::valid(), jami::ConversationRepository::Impl::validateDevice(), jami::tls::TlsValidator::validAuthority(), jami::ConversationRepository::validClone(), jami::ConversationRepository::Impl::validCommits(), jami::ConversationRepository::validCommits(), jami::ConversationRepository::validFetch(), jami::PluginPreferencesUtils::valuesFilePath(), jami::Preferences::verifyAccountOrder(), jami::ConversationRepository::Impl::verifyCertificate(), jami::video::VideoDeviceImpl::VideoDeviceImpl(), jami::video::VideoDeviceImpl::VideoDeviceImpl(), jami::video::VideoInput::VideoInput(), jami::video::VideoSender::VideoSender(), jami::video::VideoSettings::VideoSettings(), jami::debug::VideoWriter::VideoWriter(), jami::Logger::vlog(), jami::ConversationRepository::voteKick(), jami::Conversation::Impl::voteUnban(), jami::ConversationRepository::voteUnban(), jami::InterruptedThreadLoop::wait(), jami::InterruptedThreadLoop::wait_for(), jami::InterruptedThreadLoop::wait_for(), jami::RingBufferPool::waitForDataAvailable(), jami::RingBufferPool::waitForDataAvailable(), jami::RingBuffer::waitForDataAvailable(), jami::SocketPair::waitForRTCP(), jami::AudioLayer::waitForStart(), jami::debug::WavWriter::WavWriter(), jami::ConversationModule::Impl::weak(), jami::JamiAccount::weak(), jami::SwarmManager::weak(), jami::SIPAccount::weak(), jami::JamiAccount::weak(), jami::SIPAccount::weak(), jami::WebRTCAudioProcessor::WebRTCAudioProcessor(), jami::WebViewServicesManager::WebViewServicesManager(), jami::ConversationModule::Impl::withConv(), jami::ConversationModule::Impl::withConversation(), jami::debug::WavWriter::write(), jami::Logger::write(), jami::debug::VideoWriter::write(), jami::fileutils::writeArchive(), jami::SocketPair::writeData(), jami::Logger::writeDht(), jami::PulseLayer::writeToSpeaker(), jami::AAudioLayer::~AAudioLayer(), jami::AudioDeviceGuard::~AudioDeviceGuard(), jami::AudioFrameResizer::~AudioFrameResizer(), jami::tls::ChanneledSIPTransport::~ChanneledSIPTransport(), jami::Conference::~Conference(), jami::TransferManager::Impl::~Impl(), jami::ConversationModule::Impl::~Impl(), jami::IncomingFile::~IncomingFile(), jami::JackLayer::~JackLayer(), jami::MediaDecoder::~MediaDecoder(), jami::MediaDemuxer::~MediaDemuxer(), jami::MediaEncoder::~MediaEncoder(), jami::MediaIOHandle::~MediaIOHandle(), jami::MediaPlayer::~MediaPlayer(), jami::MessageChannelHandler::~MessageChannelHandler(), jami::NameDirectory::~NameDirectory(), jami::Observable< T >::~Observable(), jami::sip_utils::PJDialogLock::~PJDialogLock(), jami::PluginManager::~PluginManager(), jami::PresenceManager::~PresenceManager(), jami::PresSubClient::~PresSubClient(), jami::PulseLayer::~PulseLayer(), jami::PulseMainLoopLock::~PulseMainLoopLock(), jami::Resampler::~Resampler(), jami::RingBufferPool::~RingBufferPool(), jami::SIPCall::~SIPCall(), jami::SIPPresence::~SIPPresence(), jami::SipTransport::~SipTransport(), jami::debug::StatsTimer< Tag >::~StatsTimer(), jami::MediaRecorder::StreamObserver::~StreamObserver(), jami::debug::Timer::~Timer(), jami::Typers::~Typers(), jami::video::VideoInput::~VideoInput(), jami::video::VideoScaler::~VideoScaler(), jami::debug::VideoWriter::~VideoWriter(), and jami::debug::WavWriter::~WavWriter().

Here is the call graph for this function:

◆ endsWith()

bool jami::endsWith ( const std::string &  str,
const std::string &  ending 
)

Definition at line 289 of file pulselayer.cpp.

References emitSignal().

Here is the call graph for this function:

◆ enum_class_size()

template<typename A >
constexpr size_t jami::enum_class_size ( )
inlineconstexpr

This function adds a safe way to get an enum class size.

Definition at line 33 of file enumclass_utils.h.

References emitSignal().

Here is the call graph for this function:

◆ exported_callback()

template<typename Ts >
std::pair< std::string, std::shared_ptr< libjami::CallbackWrapper< typename Ts::cb_type > > > jami::exported_callback ( )

Definition at line 86 of file jami_signal.h.

◆ ff_network_wait_fd()

static int jami::ff_network_wait_fd ( int  fd)
static

Definition at line 120 of file socket_pair.cpp.

References emitSignal(), and NET_POLL_TIMEOUT.

Referenced by jami::SocketPair::writeData().

Here is the call graph for this function:

◆ findBest()

const PaDeviceInfos * jami::findBest ( const std::vector< PaDeviceInfos > &  list)

Find default device for PulseAudio to open, filter monitors and EC.

Definition at line 300 of file pulselayer.cpp.

References emitSignal().

Here is the call graph for this function:

◆ findDecoder()

const AVCodec * jami::findDecoder ( const enum AVCodecID  codec_id)
inline

Attempt to find standalone AVCodec decoder using AVCodecID, or fallback to the default decoder.

Definition at line 30 of file decoder_finder.h.

References emitSignal().

Here is the call graph for this function:

◆ formatHeader()

static std::string jami::formatHeader ( std::string_view  file,
unsigned  line 
)
static

Definition at line 125 of file logger.cpp.

References emitSignal(), and stripDirName().

Referenced by jami::Logger::Msg::Msg(), and jami::Logger::Msg::Msg().

Here is the call graph for this function:

◆ formatPrintfArgs()

static std::string jami::formatPrintfArgs ( const char format,
va_list  ap 
)
static

Definition at line 156 of file logger.cpp.

References emitSignal().

Referenced by jami::Logger::Msg::Msg().

Here is the call graph for this function:

◆ from_hex_string()

uint64_t jami::from_hex_string ( const std::string &  str)

Definition at line 119 of file string_utils.cpp.

References emitSignal().

Referenced by transaction_request_cb().

Here is the call graph for this function:

◆ generateUID()

libjami::DataTransferId jami::generateUID ( std::mt19937_64 &  engine)

Definition at line 35 of file data_transfer.cpp.

References emitSignal(), and JAMI_ID_MAX_VAL.

Referenced by jami::TransferManager::onIncomingProfile().

Here is the call graph for this function:

◆ get_active_local_sdp()

static const pjmedia_sdp_session * jami::get_active_local_sdp ( pjsip_inv_session inv)
static

Definition at line 1025 of file sipvoiplink.cpp.

References emitSignal(), and JAMI_ERR.

Referenced by sdp_media_update_cb().

Here is the call graph for this function:

◆ get_active_remote_sdp()

static const pjmedia_sdp_session * jami::get_active_remote_sdp ( pjsip_inv_session inv)
static

Definition at line 1007 of file sipvoiplink.cpp.

References emitSignal(), and JAMI_ERR.

Referenced by sdp_media_update_cb().

Here is the call graph for this function:

◆ getAudioInput()

std::shared_ptr< AudioInput > jami::getAudioInput ( const std::string &  device)

◆ getCallFromInvite()

static std::shared_ptr< SIPCall > jami::getCallFromInvite ( pjsip_inv_session inv)
static

◆ getDhtLogLevel()

static unsigned jami::getDhtLogLevel ( )
static

Set OpenDHT's log level based on the JAMI_LOG_DHT environment variable.

JAMI_LOG_DHT = 0 minimum logging (=disable) JAMI_LOG_DHT = 1 logging enabled

Definition at line 190 of file manager.cpp.

References emitSignal().

Referenced by jami::Manager::init().

Here is the call graph for this function:

◆ getDhtnetLogLevel()

static unsigned jami::getDhtnetLogLevel ( )
static

Definition at line 199 of file manager.cpp.

References emitSignal().

Referenced by jami::Manager::init().

Here is the call graph for this function:

◆ getDisplayed()

std::string jami::getDisplayed ( const std::string &  conversationId,
const std::string &  messageId 
)

Definition at line 2857 of file jamiaccount.cpp.

References getDisplayed().

Referenced by getDisplayed().

Here is the call graph for this function:

◆ getFileId()

std::string jami::getFileId ( const std::string &  commitId,
const std::string &  tid,
const std::string &  displayName 
)

Definition at line 41 of file data_transfer.cpp.

References emitSignal(), and jami::fileutils::getFileExtension().

Referenced by jami::ConversationRepository::Impl::convCommitToMap(), and jami::ConversationModule::Impl::editMessage().

Here is the call graph for this function:

◆ getGlobalInstance()

template<class T , signed MaxRespawn = -1>
std::shared_ptr< T > jami::getGlobalInstance ( )

Return a shared pointer on an auto-generated global instance of class T.

This instance is created only at usage and destroyed when not, as we keep only a weak reference on it. But when created it's always the same object until all holders release their sharing. An optional MaxRespawn positive integer can be given to limit the number of time the object can be created (i.e. different instance). Any negative values (default) block this effect (unlimited respawn). This function is thread-safe.

Definition at line 38 of file global_instance.h.

References emitSignal().

Here is the call graph for this function:

◆ getIsComposing()

std::string jami::getIsComposing ( const std::string &  conversationId,
bool  isWriting 
)

Definition at line 43 of file typers.cpp.

References emitSignal().

Referenced by jami::Typers::addTyper(), and jami::Typers::removeTyper().

Here is the call graph for this function:

◆ getline()

bool jami::getline ( std::string_view &  str,
std::string_view &  line,
char  delim = '\n' 
)
inline

Similar to @getline_full but skips empty results.

Definition at line 181 of file string_utils.h.

References emitSignal(), and getline_full().

Referenced by jami::ConversationRepository::changedFiles(), jami::MediaEncoder::print_sdp(), and jami::vCard::utils::toMap().

Here is the call graph for this function:

◆ getline_full()

bool jami::getline_full ( std::string_view &  str,
std::string_view &  line,
char  delim = '\n' 
)
inline

Split a string_view with an API similar to std::getline.

Parameters
strThe input string stream to iterate on, trimed of line during iteration.
lineThe output substring.
delimThe delimiter.
Returns
True if line was set, false if the end of the input was reached.

Definition at line 167 of file string_utils.h.

References emitSignal().

Referenced by getline(), and parseDefinition().

Here is the call graph for this function:

◆ getMediaPlayer()

std::shared_ptr< MediaPlayer > jami::getMediaPlayer ( const std::string &  id)

Definition at line 756 of file videomanager.cpp.

References emitSignal(), and jami::Manager::instance().

Referenced by getPlayerDuration(), getPlayerPosition(), mutePlayerAudio(), pausePlayer(), playerSeekToTime(), and setAutoRestart().

Here is the call graph for this function:

◆ getPIDF()

std::string jami::getPIDF ( const std::string &  note)

Definition at line 2870 of file jamiaccount.cpp.

References getPIDF().

Referenced by getPIDF(), and jami::JamiAccount::sendPresenceNote().

Here is the call graph for this function:

◆ getPlayerDuration()

int64_t jami::getPlayerDuration ( const std::string &  id)

Definition at line 829 of file videomanager.cpp.

References emitSignal(), and getMediaPlayer().

Referenced by libjami::getPlayerDuration().

Here is the call graph for this function:

◆ getPlayerPosition()

int64_t jami::getPlayerPosition ( const std::string &  id)

Definition at line 821 of file videomanager.cpp.

References emitSignal(), and getMediaPlayer().

Referenced by libjami::getPlayerPosition().

Here is the call graph for this function:

◆ getPtr() [1/2]

std::shared_ptr< Call > jami::getPtr ( Call call)
inline

Obtain a shared smart pointer of instance.

Definition at line 531 of file call.h.

Referenced by jami::Call::addSubCall().

◆ getPtr() [2/2]

std::shared_ptr< SIPCall > jami::getPtr ( SIPCall call)
inline

Obtain a shared smart pointer of instance.

Definition at line 504 of file sipcall.h.

◆ getResolveCallbackMap()

static SafeResolveCallbackMap & jami::getResolveCallbackMap ( )
static

Definition at line 1404 of file sipvoiplink.cpp.

Referenced by resolver_callback(), and jami::SIPVoIPLink::resolveSrvName().

◆ getSignalHandlers()

SignalHandlerMap & jami::getSignalHandlers ( )

Definition at line 23 of file jami_signal.cpp.

References emitSignal().

Referenced by emitSignal(), libjami::init(), libjami::registerSignalHandlers(), and libjami::unregisterSignalHandlers().

Here is the call graph for this function:

◆ getStreamFormat()

AudioFormat jami::getStreamFormat ( AAudioStream stream)

Definition at line 79 of file aaudiolayer.cpp.

References emitSignal().

Here is the call graph for this function:

◆ getValues()

static std::vector< std::string > jami::getValues ( const std::vector< HwIDPair > &  deviceMap)
static

Definition at line 527 of file alsalayer.cpp.

References emitSignal().

Referenced by jami::AlsaLayer::getCaptureDeviceList(), and jami::AlsaLayer::getPlaybackDeviceList().

Here is the call graph for this function:

◆ git_add_all()

bool jami::git_add_all ( git_repository repo)

Add all files to index.

Parameters
repo
Returns
if operation is successful

Definition at line 571 of file conversationrepository.cpp.

References emitSignal(), and JAMI_ERROR.

Referenced by add_initial_files(), jami::ConversationRepository::join(), jami::ConversationRepository::leave(), jami::ConversationRepository::merge(), and jami::ConversationRepository::resolveVote().

Here is the call graph for this function:

◆ handleIncomingOptions()

static pj_bool_t jami::handleIncomingOptions ( pjsip_rx_data rdata)
static

Definition at line 88 of file sipvoiplink.cpp.

References ADD_CAP, ADD_HDR, emitSignal(), endpt_, JAMI_ERR, and JAMI_INFO.

Referenced by transaction_request_cb(), and transaction_state_changed_cb().

Here is the call graph for this function:

◆ handleMediaControl()

static bool jami::handleMediaControl ( SIPCall call,
pjsip_msg_body body 
)
static

◆ hangupCalls()

static void jami::hangupCalls ( Call::SubcallSet &&  callptr_list,
int  errcode 
)
inlinestatic

Hangup many calls with same error code.

Works as hangupCallsIf() with a predicate that always return true.

Definition at line 63 of file call.cpp.

References emitSignal(), and hangupCallsIf().

Referenced by jami::Call::Call().

Here is the call graph for this function:

◆ hangupCallsIf()

template<typename T >
static void jami::hangupCallsIf ( Call::SubcallSet &&  calls,
int  errcode,
T  pred 
)
inlinestatic

Hangup many calls with same error code, filtered by a predicate.

For each call pointer given by iterating on given callptr_list calls the unary predicate pred with this call pointer and hangup the call with given error code errcode when the predicate return true. The predicate should have bool(Call*) signature.

Definition at line 50 of file call.cpp.

References emitSignal().

Referenced by hangupCalls().

Here is the call graph for this function:

◆ initial_commit()

std::string jami::initial_commit ( GitRepository repo,
const std::shared_ptr< JamiAccount > &  account,
ConversationMode  mode,
const std::string &  otherMember = "" 
)

Sign and create the initial commit.

Parameters
repoThe Git repository
accountThe account who signs
modeThe mode
otherMemberIf one to one
Returns
The first commit hash or empty if failed

Definition at line 699 of file conversationrepository.cpp.

References emitSignal(), jami::base64::encode(), JAMI_ERROR, ONE_TO_ONE, regex_display_name(), and jami::json::toString().

Referenced by jami::ConversationRepository::createConversation().

Here is the call graph for this function:

◆ insert2Byte()

static void jami::insert2Byte ( std::vector< uint8_t > &  v,
uint16_t  val 
)
static

Definition at line 62 of file congestion_control.cpp.

References emitSignal().

Referenced by jami::CongestionControl::createREMB().

Here is the call graph for this function:

◆ insert4Byte()

static void jami::insert4Byte ( std::vector< uint8_t > &  v,
uint32_t  val 
)
static

Definition at line 69 of file congestion_control.cpp.

References emitSignal().

Referenced by jami::CongestionControl::createREMB().

Here is the call graph for this function:

◆ invite_session_state_changed_cb()

static void jami::invite_session_state_changed_cb ( pjsip_inv_session inv,
pjsip_event e 
)
static

◆ is_uninitialized()

template<typename T >
static bool jami::is_uninitialized ( std::weak_ptr< T > const weak)
static

Definition at line 197 of file sipvoiplink.cpp.

References emitSignal().

Referenced by jami::Call::isConferenceParticipant(), and transaction_request_cb().

Here is the call graph for this function:

◆ make_backup()

static void jami::make_backup ( const std::filesystem::path &  path)
static

Definition at line 139 of file manager.cpp.

References copy_over(), and emitSignal().

Referenced by jami::Manager::init().

Here is the call graph for this function:

◆ mutePlayerAudio()

bool jami::mutePlayerAudio ( const std::string &  id,
bool  mute 
)

Definition at line 803 of file videomanager.cpp.

References emitSignal(), and getMediaPlayer().

Referenced by libjami::mutePlayerAudio().

Here is the call graph for this function:

◆ on_rx_offer2()

static void jami::on_rx_offer2 ( pjsip_inv_session inv,
struct pjsip_inv_on_rx_offer_cb_param param 
)
static

Definition at line 898 of file sipvoiplink.cpp.

References emitSignal(), getCallFromInvite(), and JAMI_ERR.

Referenced by jami::SIPVoIPLink::SIPVoIPLink().

Here is the call graph for this function:

◆ onRequestInfo()

static void jami::onRequestInfo ( pjsip_inv_session inv,
pjsip_rx_data rdata,
pjsip_msg msg,
SIPCall call 
)
static

Definition at line 1249 of file sipvoiplink.cpp.

References emitSignal(), handleMediaControl(), and replyToRequest().

Referenced by transaction_state_changed_cb().

Here is the call graph for this function:

◆ onRequestNotify()

static void jami::onRequestNotify ( pjsip_inv_session ,
pjsip_rx_data ,
pjsip_msg msg,
SIPCall call 
)
static

Definition at line 1256 of file sipvoiplink.cpp.

References emitSignal(), jami::Call::getCallId(), and JAMI_DBG.

Referenced by transaction_state_changed_cb().

Here is the call graph for this function:

◆ onRequestRefer()

static void jami::onRequestRefer ( pjsip_inv_session inv,
pjsip_rx_data rdata,
pjsip_msg msg,
SIPCall call 
)
static

Definition at line 1225 of file sipvoiplink.cpp.

References emitSignal(), jami::Call::getCallId(), JAMI_ERR, replyToRequest(), and transferCall().

Referenced by transaction_state_changed_cb().

Here is the call graph for this function:

◆ openPaStream()

static PaError jami::openPaStream ( PaStream **  stream,
PaDeviceIndex  inputDeviceIndex,
PaDeviceIndex  outputDeviceIndex,
PaStreamCallback callback,
void user_data 
)
static

◆ operator+()

template<typename I >
rational< I > jami::operator+ ( const rational< I > &  r)

Definition at line 209 of file rational.h.

◆ operator-() [1/2]

template<typename I >
rational< I > jami::operator- ( const rational< I > &  r)

Definition at line 215 of file rational.h.

References jami::rational< I >::denominator(), and jami::rational< I >::numerator().

Here is the call graph for this function:

◆ operator-() [2/2]

template<typename I , typename II >
rational< I > jami::operator- ( II  i,
const rational< I > &  r 
)
inline

◆ operator/()

template<typename I , typename II >
rational< I > jami::operator/ ( II  i,
const rational< I > &  r 
)
inline

Definition at line 225 of file rational.h.

References jami::rational< I >::denominator(), emitSignal(), and jami::rational< I >::numerator().

Here is the call graph for this function:

◆ operator<<() [1/4]

static std::ostream & jami::operator<< ( std::ostream &  os,
const Account acc 
)
inlinestatic

Definition at line 511 of file account.h.

References emitSignal(), and jami::Account::getAccountID().

Here is the call graph for this function:

◆ operator<<() [2/4]

static std::ostream & jami::operator<< ( std::ostream &  os,
const JamiAccount acc 
)
inlinestatic

Definition at line 907 of file jamiaccount.h.

References emitSignal(), and jami::Account::getAccountID().

Here is the call graph for this function:

◆ operator<<() [3/4]

◆ operator<<() [4/4]

template<typename I >
std::ostream & jami::operator<< ( std::ostream &  os,
const rational< I > &  r 
)

Definition at line 249 of file rational.h.

References jami::rational< I >::denominator(), emitSignal(), and jami::rational< I >::numerator().

Here is the call graph for this function:

◆ operator==()

bool jami::operator== ( SystemCodecInfo  codec1,
SystemCodecInfo  codec2 
)

◆ operator>>()

template<typename I >
std::istream & jami::operator>> ( std::istream &  is,
rational< I > &  r 
)

Definition at line 241 of file rational.h.

References emitSignal().

Here is the call graph for this function:

◆ outgoing_request_forked_cb()

static void jami::outgoing_request_forked_cb ( pjsip_inv_session inv,
pjsip_event e 
)
static

Definition at line 1083 of file sipvoiplink.cpp.

Referenced by jami::SIPVoIPLink::SIPVoIPLink().

◆ parseBool()

void jami::parseBool ( const std::map< std::string, std::string > &  details,
const char key,
bool s 
)
inline

Definition at line 163 of file account_config.h.

References emitSignal(), and TRUE_STR.

Referenced by jami::AccountConfig::fromMap(), jami::JamiAccountConfig::fromMap(), jami::SipAccountConfig::fromMap(), and jami::SipAccountBaseConfig::fromMap().

Here is the call graph for this function:

◆ parseDefinition()

ParsedDefinition jami::parseDefinition ( std::string_view  definition,
unsigned  sampleRate 
)

Definition at line 44 of file tone.cpp.

References emitSignal(), getline_full(), and jami::ParsedDefinition::total_samples.

Here is the call graph for this function:

◆ parseInt()

template<class T >
void jami::parseInt ( const std::map< std::string, std::string > &  details,
const char key,
T s 
)
inline

Definition at line 172 of file account_config.h.

References emitSignal().

Referenced by jami::AccountConfig::fromMap(), jami::JamiAccountConfig::fromMap(), jami::SipAccountConfig::fromMap(), and jami::SipAccountBaseConfig::fromMap().

Here is the call graph for this function:

◆ parseJamiUri()

std::string_view jami::parseJamiUri ( std::string_view  toUrl)

◆ parseMessageBody()

static std::pair< std::string, std::string > jami::parseMessageBody ( const pjsip_msg_body body)
static

Creates std::pair with the Content-Type header contents as the first value and the message payload as the second value.

The format of the first value will be: type/subtype[; *[; arg=value]] eg: "text/plain;id=1234;part=2;of=1001"

Definition at line 177 of file instant_messaging.cpp.

References jami::sip_utils::as_view(), and emitSignal().

Referenced by jami::im::parseSipMessage().

Here is the call graph for this function:

◆ parsePath()

void jami::parsePath ( const std::map< std::string, std::string > &  details,
const char key,
std::string &  s,
const std::filesystem::path &  base 
)

Definition at line 189 of file account_config.cpp.

References emitSignal(), and jami::fileutils::getFullPath().

Referenced by jami::JamiAccountConfig::fromMap(), and jami::SipAccountConfig::fromMap().

Here is the call graph for this function:

◆ parseString()

void jami::parseString ( const std::map< std::string, std::string > &  details,
const char key,
std::string &  s 
)
inline

Definition at line 155 of file account_config.h.

References emitSignal().

Referenced by jami::AccountConfig::fromMap(), jami::JamiAccountConfig::fromMap(), jami::SipAccountConfig::fromMap(), and jami::SipAccountBaseConfig::fromMap().

Here is the call graph for this function:

◆ pausePlayer()

bool jami::pausePlayer ( const std::string &  id,
bool  pause 
)

Definition at line 783 of file videomanager.cpp.

References emitSignal(), and getMediaPlayer().

Referenced by libjami::pausePlayer().

Here is the call graph for this function:

◆ platform()

constexpr std::string_view jami::platform ( )
inlineconstexpr

Definition at line 50 of file string_utils.h.

References emitSignal().

Referenced by jami::Account::getDefaultUserAgent(), libjami::platform(), jami::Account::setPushNotificationConfig(), and userAgent().

Here is the call graph for this function:

◆ playerSeekToTime()

bool jami::playerSeekToTime ( const std::string &  id,
int  time 
)

Definition at line 813 of file videomanager.cpp.

References emitSignal(), and getMediaPlayer().

Referenced by libjami::playerSeekToTime().

Here is the call graph for this function:

◆ pres_on_rx_subscribe_request()

pj_bool_t jami::pres_on_rx_subscribe_request ( pjsip_rx_data rdata)
extern

◆ pulseSampleFormatFromAv()

pa_sample_format_t jami::pulseSampleFormatFromAv ( AVSampleFormat  format)
inline

Definition at line 46 of file audiostream.h.

References emitSignal().

Here is the call graph for this function:

◆ randomFill()

static void jami::randomFill ( std::vector< uint8_t > &  dest)
static

Definition at line 114 of file sdp.cpp.

References emitSignal().

Here is the call graph for this function:

◆ rational_cast()

template<typename T , typename I >
T jami::rational_cast ( const rational< I > &  r)

◆ regex_display_name()

static const std::regex jami::regex_display_name ( "<|>"  )
static

◆ registration_cb()

static void jami::registration_cb ( pjsip_regc_cbparam param)
static

Definition at line 99 of file sipaccount.cpp.

References emitSignal(), and JAMI_ERR.

Referenced by jami::SIPAccount::sendRegister().

Here is the call graph for this function:

◆ reinvite_received_cb()

static pj_status_t jami::reinvite_received_cb ( pjsip_inv_session inv,
const pjmedia_sdp_session offer,
pjsip_rx_data rdata 
)
static

Definition at line 927 of file sipvoiplink.cpp.

References emitSignal(), and getCallFromInvite().

Referenced by jami::SIPVoIPLink::SIPVoIPLink().

Here is the call graph for this function:

◆ replaceAll()

static std::string jami::replaceAll ( const std::string &  str,
const std::string &  from,
const std::string &  to 
)
static

Definition at line 51 of file media_recorder.cpp.

References emitSignal().

Here is the call graph for this function:

◆ replyToRequest()

static void jami::replyToRequest ( pjsip_inv_session inv,
pjsip_rx_data rdata,
int  status_code 
)
static

Definition at line 1217 of file sipvoiplink.cpp.

References emitSignal(), and JAMI_WARN.

Referenced by onRequestInfo(), and onRequestRefer().

Here is the call graph for this function:

◆ resolver_callback()

static void jami::resolver_callback ( pj_status_t  status,
void token,
const struct pjsip_server_addresses addr 
)
static

Definition at line 1411 of file sipvoiplink.cpp.

References emitSignal(), getResolveCallbackMap(), and jami::SafeResolveCallbackMap::process().

Referenced by jami::SIPVoIPLink::resolveSrvName().

Here is the call graph for this function:

◆ restore_backup()

static void jami::restore_backup ( const std::filesystem::path &  path)
static

Definition at line 148 of file manager.cpp.

References copy_over(), and emitSignal().

Referenced by jami::Manager::init().

Here is the call graph for this function:

◆ runOnMainThread()

◆ safeUpdate()

static bool jami::safeUpdate ( snd_pcm_t handle,
long samples 
)
static

Definition at line 510 of file alsalayer.cpp.

References emitSignal(), and JAMI_ERR.

Referenced by jami::AlsaLayer::playback(), and jami::AlsaLayer::ringtone().

Here is the call graph for this function:

◆ sampleFormatFromPulse()

AVSampleFormat jami::sampleFormatFromPulse ( pa_sample_format_t  format)
inline

Definition at line 28 of file audiostream.h.

References emitSignal().

Referenced by jami::AudioStream::format().

Here is the call graph for this function:

◆ sdp_create_offer_cb()

static void jami::sdp_create_offer_cb ( pjsip_inv_session inv,
pjmedia_sdp_session **  p_offer 
)
static

Definition at line 943 of file sipvoiplink.cpp.

References emitSignal(), getCallFromInvite(), JAMI_DBG, and JAMI_ERR.

Referenced by jami::SIPVoIPLink::createSDPOffer(), and jami::SIPVoIPLink::SIPVoIPLink().

Here is the call graph for this function:

◆ sdp_media_update_cb()

static void jami::sdp_media_update_cb ( pjsip_inv_session inv,
pj_status_t  status 
)
static

Definition at line 1044 of file sipvoiplink.cpp.

References emitSignal(), get_active_local_sdp(), get_active_remote_sdp(), getCallFromInvite(), JAMI_DBG, JAMI_WARN, and jami::Sdp::printSession().

Referenced by jami::SIPVoIPLink::SIPVoIPLink().

Here is the call graph for this function:

◆ setAutoRestart()

void jami::setAutoRestart ( const std::string &  id,
bool  restart 
)

Definition at line 837 of file videomanager.cpp.

References emitSignal(), and getMediaPlayer().

Referenced by libjami::setAutoRestart().

Here is the call graph for this function:

◆ setGnuTlsLogLevel()

static void jami::setGnuTlsLogLevel ( )
static

Set gnutls's log level based on the JAMI_LOG_TLS environment variable.

JAMI_LOG_TLS = 0 minimum logging (default) JAMI_LOG_TLS = 9 maximum logging

Definition at line 238 of file manager.cpp.

References emitSignal(), and JAMI_XDBG.

Referenced by jami::Manager::init().

Here is the call graph for this function:

◆ setSipLogLevel()

static void jami::setSipLogLevel ( )
static

Set pjsip's log level based on the JAMI_LOG_SIP environment variable.

JAMI_LOG_SIP = 0 minimum logging JAMI_LOG_SIP = 6 maximum logging

Definition at line 213 of file manager.cpp.

References emitSignal(), JAMI_XDBG, JAMI_XERR, and JAMI_XWARN.

Referenced by jami::Manager::init().

Here is the call graph for this function:

◆ shouldUseAudioProcessorEchoCancel()

static bool jami::shouldUseAudioProcessorEchoCancel ( bool  hasNativeAEC,
const std::string &  echoCancellerPref 
)
inlinestatic

Definition at line 127 of file audiolayer.cpp.

References emitSignal().

Referenced by jami::AudioLayer::setHasNativeAEC().

Here is the call graph for this function:

◆ shouldUseAudioProcessorNoiseSuppression()

static bool jami::shouldUseAudioProcessorNoiseSuppression ( bool  hasNativeNS,
const std::string &  noiseSuppressionPref 
)
inlinestatic

Definition at line 138 of file audiolayer.cpp.

References emitSignal().

Referenced by jami::AudioLayer::setHasNativeNS().

Here is the call graph for this function:

◆ split_string() [1/2]

std::vector< std::string_view > jami::split_string ( std::string_view  str,
char  delim 
)
inline

◆ split_string() [2/2]

std::vector< std::string_view > jami::split_string ( std::string_view  str,
std::string_view  delims = " " 
)
inline

Definition at line 204 of file string_utils.h.

References emitSignal().

Here is the call graph for this function:

◆ split_string_to_unsigned()

std::vector< unsigned > jami::split_string_to_unsigned ( std::string_view  str,
char  delim 
)

Definition at line 144 of file string_utils.cpp.

References emitSignal().

Referenced by jami::SIPCall::setPeerUaVersion(), and jami::AccountConfig::unserialize().

Here is the call graph for this function:

◆ startPaStream()

◆ starts_with()

static bool jami::starts_with ( std::string_view  str,
std::string_view  prefix 
)
inlinestatic

Definition at line 141 of file string_utils.h.

References emitSignal().

Referenced by jami::vCard::utils::removeByKey().

Here is the call graph for this function:

◆ strErr()

void jami::strErr ( )

Thread-safe function to print the stringified contents of errno.

Definition at line 102 of file logger.cpp.

References check_error(), emitSignal(), JAMI_ERR, and strerror_r.

Referenced by jami::SocketPair::closeSockets(), and udp_socket_create().

Here is the call graph for this function:

◆ string_join()

std::string jami::string_join ( const std::set< std::string > &  set,
std::string_view  separator 
)

Definition at line 180 of file string_utils.cpp.

References emitSignal().

Referenced by jami::AccountConfig::toMap().

Here is the call graph for this function:

◆ string_remove_suffix()

std::string_view jami::string_remove_suffix ( std::string_view  str,
char  separator 
)

◆ string_replace()

void jami::string_replace ( std::string &  str,
const std::string &  from,
const std::string &  to 
)

Definition at line 161 of file string_utils.cpp.

References emitSignal().

Referenced by jami::PluginUtils::getLanguage(), jami::PluginPreferencesUtils::getPreferences(), and jami::JamiAccount::getToUri().

Here is the call graph for this function:

◆ string_split_set()

std::set< std::string > jami::string_split_set ( std::string &  str,
std::string_view  separator 
)

Definition at line 186 of file string_utils.cpp.

References emitSignal().

Referenced by jami::AccountConfig::fromMap(), and jami::AccountConfig::unserialize().

Here is the call graph for this function:

◆ stripDirName()

static constexpr std::string_view jami::stripDirName ( std::string_view  path)
staticconstexpr

Definition at line 114 of file logger.cpp.

References emitSignal().

Referenced by formatHeader(), jami::Logger::Msg::Msg(), and jami::Logger::Msg::Msg().

Here is the call graph for this function:

◆ stripEchoSufix()

std::string jami::stripEchoSufix ( const std::string &  deviceName)

Definition at line 607 of file pulselayer.cpp.

References PA_EC_SUFFIX.

◆ stripPrefix()

std::string_view jami::stripPrefix ( std::string_view  toUrl)

Definition at line 266 of file jamiaccount.cpp.

References emitSignal(), JAMI_URI_PREFIX, and RING_URI_PREFIX.

Referenced by parseJamiUri().

Here is the call graph for this function:

◆ systemTimeFromSteady()

std::chrono::system_clock::time_point jami::systemTimeFromSteady ( std::chrono::steady_clock::time_point  t,
const std::chrono::steady_clock::time_point &  now,
const std::chrono::system_clock::time_point &  nowSystem 
)
inline

Definition at line 544 of file routing_table.cpp.

References emitSignal().

Referenced by jami::RoutingTable::getRoutingTableStats().

Here is the call graph for this function:

◆ to_enum() [1/2]

template<typename T >
T jami::to_enum ( std::string_view  str)

Definition at line 135 of file string_utils.h.

References emitSignal().

Here is the call graph for this function:

◆ to_enum() [2/2]

template<typename T >
T jami::to_enum ( std::string_view  str,
T  defaultValue 
)

Definition at line 128 of file string_utils.h.

References emitSignal().

Here is the call graph for this function:

◆ to_hex_string()

std::string jami::to_hex_string ( uint64_t  id)

Definition at line 113 of file string_utils.cpp.

References emitSignal().

Referenced by jami::Manager::getNewAccountId(), and jami::fileutils::getOrCreateLocalDeviceId().

Here is the call graph for this function:

◆ to_int() [1/2]

template<typename T >
T jami::to_int ( std::string_view  str)

Definition at line 113 of file string_utils.h.

References emitSignal().

Here is the call graph for this function:

◆ to_int() [2/2]

template<typename T >
T jami::to_int ( std::string_view  str,
T  defaultValue 
)
inline

Definition at line 101 of file string_utils.h.

References emitSignal().

Here is the call graph for this function:

◆ to_string()

◆ toGitHex()

std::string jami::toGitHex ( size_t  value)

Definition at line 248 of file gitserver.cpp.

References emitSignal().

Referenced by jami::GitServer::Impl::sendPackData(), and jami::GitServer::Impl::sendReferenceCapabilities().

Here is the call graph for this function:

◆ toLower()

void jami::toLower ( std::string &  string)

Definition at line 74 of file namedirectory.cpp.

References emitSignal().

Referenced by jami::NameDirectory::registerName().

Here is the call graph for this function:

◆ toString()

◆ tp_state_callback()

static void jami::tp_state_callback ( pjsip_transport tp,
pjsip_transport_state  state,
const pjsip_transport_state_info info 
)
static

Definition at line 537 of file sipvoiplink.cpp.

References emitSignal(), jami::Manager::instance(), and JAMI_ERR.

Referenced by jami::SIPVoIPLink::SIPVoIPLink().

Here is the call graph for this function:

◆ transaction_request_cb()

◆ transaction_response_cb()

static pj_bool_t jami::transaction_response_cb ( pjsip_rx_data rdata)
static

Send an ACK message inside a transaction. PJSIP send automatically, non-2xx ACK response. ACK for a 2xx response must be send using this method.

Definition at line 146 of file sipvoiplink.cpp.

References emitSignal().

Referenced by jami::SIPVoIPLink::SIPVoIPLink().

Here is the call graph for this function:

◆ transaction_state_changed_cb()

◆ transfer_client_cb()

static void jami::transfer_client_cb ( pjsip_evsub sub,
pjsip_event event 
)
static

Definition at line 1049 of file sipcall.cpp.

References jami::SIPCall::terminateSipSession(), and transfer_client_cb().

Referenced by transfer_client_cb().

Here is the call graph for this function:

◆ transferCall()

static bool jami::transferCall ( SIPCall call,
const std::string &  refer_to 
)
static

◆ trim()

std::string_view jami::trim ( std::string_view  s)

Definition at line 129 of file string_utils.cpp.

References emitSignal().

Referenced by jami::Manager::outgoingCall().

Here is the call graph for this function:

◆ try_respond_stateless()

static pj_status_t jami::try_respond_stateless ( pjsip_endpoint endpt,
pjsip_rx_data rdata,
int  st_code,
const pj_str_t st_text,
const pjsip_hdr hdr_list,
const pjsip_msg_body body 
)
static

Definition at line 175 of file sipvoiplink.cpp.

References emitSignal(), and JAMI_ERR.

Referenced by transaction_request_cb().

Here is the call graph for this function:

◆ udp_socket_create()

static int jami::udp_socket_create ( int  family,
int  port 
)
static

Definition at line 128 of file socket_pair.cpp.

References emitSignal(), JAMI_DBG, JAMI_ERR, and strErr().

Referenced by jami::SocketPair::openSockets().

Here is the call graph for this function:

◆ unserializeRange()

static void jami::unserializeRange ( const YAML::Node &  node,
const char minKey,
const char maxKey,
std::pair< uint16_t, uint16_t > &  range 
)
static

Definition at line 43 of file sipaccountbase_config.cpp.

References emitSignal(), jami::yaml_utils::parseValueOptional(), and updateRange().

Referenced by jami::SipAccountBaseConfig::unserialize().

Here is the call graph for this function:

◆ updateRange()

void jami::updateRange ( uint16_t  min,
uint16_t  max,
std::pair< uint16_t, uint16_t > &  range 
)
inline

Definition at line 84 of file sipaccountbase_config.h.

References emitSignal(), and MAX_PORT.

Referenced by jami::SipAccountBaseConfig::fromMap(), and unserializeRange().

Here is the call graph for this function:

◆ urlEncode()

std::string jami::urlEncode ( std::string_view  input)

Percent-encode a string according to RFC 3986 unreserved characters.

Only [0-9A-Za-z], '-' , '_' , '.' , '~' remain unencoded. Everything else (including non-ASCII) becomes 'XX'.

Definition at line 199 of file string_utils.cpp.

References emitSignal().

Referenced by jami::NameDirectory::lookupName(), and jami::NameDirectory::registerName().

Here is the call graph for this function:

◆ userAgent()

const std::string & jami::userAgent ( )

Definition at line 68 of file string_utils.cpp.

References arch(), emitSignal(), and platform().

Referenced by jami::sip_utils::addUserAgentHeader().

Here is the call graph for this function:

◆ utf8_make_valid()

std::string jami::utf8_make_valid ( std::string_view  name)

Definition at line 33 of file utf8_utils.cpp.

References emitSignal().

Referenced by jami::sip_utils::parseDisplayName().

Here is the call graph for this function:

◆ utf8_validate()

bool jami::utf8_validate ( std::string_view  str)

utf8_validate:

Validates UTF-8 encoded text. @str is the text to validate;

Returns true if all of @str was valid. Dbus requires valid UTF-8 as input; sip packets should also be encoded in utf8; so data read from a file or the network should be checked with utf8_validate() before doing anything else with it.

Returns: true if the text was valid UTF-8

Definition at line 27 of file utf8_utils.cpp.

References emitSignal().

Referenced by jami::SIPAccountBase::onTextMessage(), and jami::sip_utils::parseDisplayName().

Here is the call graph for this function:

◆ validate()

template<typename T >
static void jami::validate ( std::string &  member,
const std::string &  param,
const T valid 
)
static

Definition at line 463 of file sipaccount.cpp.

References JAMI_ERROR, and validate().

Referenced by validate().

Here is the call graph for this function:

◆ webrtcFrameSize()

size_t jami::webrtcFrameSize ( AudioFormat  format)
inline

Definition at line 26 of file webrtc.cpp.

References jami::AudioFormat::sample_rate.

Variable Documentation

◆ ACCOUNT_ACTIVE_CALL_LIMIT_KEY

constexpr const char* jami::ACCOUNT_ACTIVE_CALL_LIMIT_KEY = "activeCallLimit"
constexpr

◆ ACCOUNT_AUTOANSWER_KEY

constexpr const char* jami::ACCOUNT_AUTOANSWER_KEY = "autoAnswer"
constexpr

◆ ACCOUNT_COMPOSING_KEY

constexpr const char* jami::ACCOUNT_COMPOSING_KEY = "sendComposing"
constexpr

◆ ACCOUNT_ENABLE_KEY

constexpr const char* jami::ACCOUNT_ENABLE_KEY = "enable"
constexpr

◆ ACCOUNT_ISRENDEZVOUS_KEY

constexpr const char* jami::ACCOUNT_ISRENDEZVOUS_KEY = "rendezVous"
constexpr

◆ ACCOUNT_READRECEIPT_KEY

constexpr const char* jami::ACCOUNT_READRECEIPT_KEY = "sendReadReceipt"
constexpr

◆ ACCOUNT_TYPE_JAMI

constexpr std::string_view jami::ACCOUNT_TYPE_JAMI = "RING"
staticconstexpr

◆ ACCOUNT_TYPE_SIP

constexpr std::string_view jami::ACCOUNT_TYPE_SIP = "SIP"
staticconstexpr

◆ ACTIVE_CODEC_KEY

constexpr const char* jami::ACTIVE_CODEC_KEY = "activeCodecs"
constexpr

◆ AGC_KEY

constexpr const char* jami::AGC_KEY {"automaticGainControl"}
staticconstexpr

◆ ALIAS_KEY

constexpr const char* jami::ALIAS_KEY = "alias"
constexpr

◆ ALL_MODERATORS_ENABLED_KEY

constexpr const char* jami::ALL_MODERATORS_ENABLED_KEY = "allModeratorsEnabled"
constexpr

◆ ALSA_DFT_CARD

constexpr const char* jami::ALSA_DFT_CARD {"0"}
staticconstexpr

Default DTMF length.

Definition at line 140 of file preferences.cpp.

◆ ALSAMAP_KEY

constexpr const char* jami::ALSAMAP_KEY {"alsa"}
staticconstexpr

◆ ALWAYS_RECORDING_KEY

constexpr const char* jami::ALWAYS_RECORDING_KEY {"alwaysRecording"}
staticconstexpr

◆ AUDIO_API_KEY

constexpr const char* jami::AUDIO_API_KEY {"audioApi"}
staticconstexpr

◆ AUDIO_PROCESSOR_KEY

constexpr const char* jami::AUDIO_PROCESSOR_KEY {"audioProcessor"}
staticconstexpr

◆ AUTH_URI_SCHEME

constexpr auto jami::AUTH_URI_SCHEME = "jami-auth://"sv
constexpr

Definition at line 43 of file archive_account_manager.cpp.

Referenced by jami::ArchiveAccountManager::addDevice().

◆ beta

constexpr float jami::beta = 0.95f
staticconstexpr

Definition at line 31 of file congestion_control.cpp.

◆ CACHE_DIRECTORY

constexpr auto jami::CACHE_DIRECTORY {"namecache"sv}
constexpr

Definition at line 51 of file namedirectory.cpp.

Referenced by jami::NameDirectory::NameDirectory().

◆ CAPTURE_MUTED_KEY

constexpr const char* jami::CAPTURE_MUTED_KEY {"captureMuted"}
staticconstexpr

◆ CARDIN_KEY

constexpr const char* jami::CARDIN_KEY {"cardIn"}
staticconstexpr

◆ CARDOUT_KEY

constexpr const char* jami::CARDOUT_KEY {"cardOut"}
staticconstexpr

◆ CARLIBJAMI_KEY

constexpr const char* jami::CARLIBJAMI_KEY {"cardRing"}
staticconstexpr

◆ CHANNEL_SCHEME

constexpr auto jami::CHANNEL_SCHEME = "auth:"sv
constexpr

Definition at line 44 of file archive_account_manager.cpp.

Referenced by jami::ArchiveAccountManager::addDevice().

◆ CryptoSuites

std::vector<CryptoSuiteDefinition> jami::CryptoSuites
static
Initial value:
= {{"AES_CM_128_HMAC_SHA1_80"sv, 128, 112, 48, 31, AESCounterMode, 128, HMACSHA1, 80, 80, 160, 160},
{"AES_CM_128_HMAC_SHA1_32"sv, 128, 112, 48, 31, AESCounterMode, 128, HMACSHA1, 32, 80, 160, 160},
{"F8_128_HMAC_SHA1_80"sv, 128, 112, 48, 31, AESF8Mode, 128, HMACSHA1, 80, 80, 160, 160}}
@ AESCounterMode

List of accepted Crypto-Suites as defined in RFC4568 (6.2)

Definition at line 67 of file sdes_negotiator.h.

Referenced by jami::SdesNegotiator::negotiate(), and jami::SdesNegotiator::operator bool().

◆ DATA_TRANSFER_SCHEME

constexpr std::string_view jami::DATA_TRANSFER_SCHEME = "data-transfer://"sv
staticconstexpr

◆ debugEnabled_

std::atomic_bool jami::debugEnabled_ {false}
static

◆ DEFAULT_CONFERENCE_RESOLUTION

constexpr std::string_view jami::DEFAULT_CONFERENCE_RESOLUTION {"1280x720"}
constexpr

Definition at line 75 of file preferences.cpp.

◆ DEFAULT_CONFIG [1/2]

◆ DEFAULT_CONFIG [2/2]

const SipAccountConfig jami::DEFAULT_CONFIG {}
static

Definition at line 65 of file sipaccount_config.cpp.

◆ DEFAULT_ICE_INIT_TIMEOUT

constexpr std::chrono::seconds jami::DEFAULT_ICE_INIT_TIMEOUT {35}
staticconstexpr

Definition at line 76 of file sipcall.cpp.

Referenced by jami::SIPCall::addLocalIceAttributes().

◆ DEFAULT_MODERATORS_KEY

constexpr const char* jami::DEFAULT_MODERATORS_KEY = "defaultModerators"
constexpr

◆ DEFAULT_RINGTONE_PATH

constexpr const char* const jami::DEFAULT_RINGTONE_PATH = "default.opus"
constexpr

Definition at line 29 of file account_config.h.

Referenced by jami::Account::loadConfig().

◆ DEFAULT_SAMPLE_RATE

constexpr unsigned jami::DEFAULT_SAMPLE_RATE = 8000
staticconstexpr

Definition at line 29 of file tonecontrol.cpp.

◆ DEFAULT_SERVER_HOST

constexpr const char jami::DEFAULT_SERVER_HOST[] = "https://ns.jami.net"
constexpr

◆ DEFAULT_TURN_PWD

constexpr const char* jami::DEFAULT_TURN_PWD = "ring"
staticconstexpr

Definition at line 25 of file jamiaccount_config.h.

◆ DEFAULT_TURN_REALM

constexpr const char* jami::DEFAULT_TURN_REALM = "ring"
staticconstexpr

Definition at line 26 of file jamiaccount_config.h.

◆ DEFAULT_TURN_SERVER

constexpr const char* jami::DEFAULT_TURN_SERVER = "turn.jami.net"
staticconstexpr

Definition at line 23 of file jamiaccount_config.h.

◆ DEFAULT_TURN_USERNAME

constexpr const char* jami::DEFAULT_TURN_USERNAME = "ring"
staticconstexpr

Definition at line 24 of file jamiaccount_config.h.

◆ DENY_SECOND_CALL_KEY

constexpr const char* jami::DENY_SECOND_CALL_KEY = "denySecondCall"
constexpr

◆ DEVICE_ID_PATH

constexpr const char jami::DEVICE_ID_PATH[] {"ring_device"}
staticconstexpr

Definition at line 118 of file jamiaccount.cpp.

Referenced by jami::JamiAccount::setValidity().

◆ DEVICE_PLAYBACK_KEY

constexpr const char* jami::DEVICE_PLAYBACK_KEY {"devicePlayback"}
staticconstexpr

◆ DEVICE_RECORD_KEY

constexpr const char* jami::DEVICE_RECORD_KEY {"deviceRecord"}
staticconstexpr

◆ DEVICE_RINGTONE_KEY

constexpr const char* jami::DEVICE_RINGTONE_KEY {"deviceRingtone"}
staticconstexpr

◆ DHT_DEFAULT_BOOTSTRAP

constexpr const char* const jami::DHT_DEFAULT_BOOTSTRAP = "bootstrap.jami.net"
staticconstexpr

Definition at line 22 of file jamiaccount_config.h.

Referenced by jami::JamiAccountConfig::fromMap().

◆ DIRECTION_STR

std::map<MediaDirection, const char*> jami::DIRECTION_STR
static
Initial value:
{{MediaDirection::SENDRECV, "sendrecv"},
{MediaDirection::SENDONLY, "sendonly"},
{MediaDirection::RECVONLY, "recvonly"},
{MediaDirection::INACTIVE, "inactive"}}

Definition at line 49 of file sdp.cpp.

Referenced by jami::Sdp::getMediaDescriptions().

◆ DISPLAY_NAME_KEY

constexpr const char* jami::DISPLAY_NAME_KEY = "displayName"
constexpr

◆ ECHO_CANCEL_KEY

constexpr const char* jami::ECHO_CANCEL_KEY {"echoCancel"}
staticconstexpr

◆ ECOMMIT

◆ EFETCH

constexpr auto jami::EFETCH = 1
constexpr

Definition at line 33 of file conversationrepository.h.

◆ EINVALIDMODE

constexpr auto jami::EINVALIDMODE = 2
constexpr

Definition at line 34 of file conversationrepository.h.

Referenced by jami::ConversationRepository::Impl::mode().

◆ ENDL

constexpr auto jami::ENDL = '\n'
staticconstexpr

◆ endpt_

◆ EUNAUTHORIZED

constexpr auto jami::EUNAUTHORIZED = 4
constexpr

Definition at line 36 of file conversationrepository.h.

Referenced by jami::ConversationRepository::updateInfos().

◆ EVALIDFETCH

constexpr auto jami::EVALIDFETCH = 3
constexpr

◆ EXPECTED_ICE_INIT_MAX_TIME

constexpr std::chrono::milliseconds jami::EXPECTED_ICE_INIT_MAX_TIME {5000}
staticconstexpr

Definition at line 77 of file sipcall.cpp.

Referenced by jami::SIPCall::addLocalIceAttributes().

◆ EXPORT_KEY_RENEWAL_TIME

const constexpr auto jami::EXPORT_KEY_RENEWAL_TIME = std::chrono::minutes(20)
constexpr

Definition at line 42 of file archive_account_manager.cpp.

◆ FALSE_STR

◆ FIND_PERIOD

constexpr const std::chrono::minutes jami::FIND_PERIOD {10}
staticconstexpr

Definition at line 38 of file routing_table.h.

◆ getSystemCodecContainer

◆ HALF_MAX_PORT

constexpr unsigned jami::HALF_MAX_PORT {MAX_PORT / 2}
staticconstexpr

Definition at line 24 of file sipaccountbase_config.h.

◆ HEX_PREFIX

constexpr std::string_view jami::HEX_PREFIX = "0x"sv
constexpr

Definition at line 54 of file namedirectory.cpp.

◆ HISTORY_LIMIT_KEY

constexpr const char* jami::HISTORY_LIMIT_KEY {"historyLimit"}
staticconstexpr

Definition at line 81 of file preferences.cpp.

Referenced by jami::Preferences::serialize(), and jami::Preferences::unserialize().

◆ HISTORY_MAX_CALLS_KEY

constexpr const char* jami::HISTORY_MAX_CALLS_KEY {"historyMaxCalls"}
staticconstexpr

Definition at line 83 of file preferences.cpp.

Referenced by jami::Preferences::serialize(), and jami::Preferences::unserialize().

◆ HOSTNAME_KEY

constexpr const char* jami::HOSTNAME_KEY = "hostname"
constexpr

◆ ICE_COMP_COUNT_PER_STREAM

constexpr int jami::ICE_COMP_COUNT_PER_STREAM {2}
staticconstexpr

Definition at line 80 of file sipcall.cpp.

◆ ICE_COMP_ID_RTP

constexpr int jami::ICE_COMP_ID_RTP {1}
staticconstexpr

Definition at line 79 of file sipcall.cpp.

Referenced by jami::SIPCall::addLocalIceAttributes().

◆ JAMI_ID_MAX_VAL

constexpr uint64_t jami::JAMI_ID_MAX_VAL = 9007199254740992
staticconstexpr

◆ JAMI_URI_PREFIX

const constexpr std::string_view jami::JAMI_URI_PREFIX = "jami:"
staticconstexpr

◆ JAVA_CHANNEL_OUT_STEREO

constexpr int jami::JAVA_CHANNEL_OUT_STEREO = 12
staticconstexpr

Definition at line 383 of file aaudiolayer.cpp.

◆ JAVA_ENCODING_PCM_FLOAT

constexpr int jami::JAVA_ENCODING_PCM_FLOAT = 4
staticconstexpr

Definition at line 384 of file aaudiolayer.cpp.

◆ JAVA_MODE_STREAM

constexpr int jami::JAVA_MODE_STREAM = 1
staticconstexpr

Definition at line 385 of file aaudiolayer.cpp.

◆ JAVA_RING_CHANNELS

constexpr int jami::JAVA_RING_CHANNELS = 2
staticconstexpr

Definition at line 389 of file aaudiolayer.cpp.

◆ JAVA_RING_FLOATS

constexpr int jami::JAVA_RING_FLOATS = JAVA_RING_FRAMES * JAVA_RING_CHANNELS
staticconstexpr

Definition at line 392 of file aaudiolayer.cpp.

◆ JAVA_RING_FRAMES

constexpr int jami::JAVA_RING_FRAMES = 480
staticconstexpr

Definition at line 391 of file aaudiolayer.cpp.

◆ JAVA_RING_SAMPLE_RATE

constexpr int jami::JAVA_RING_SAMPLE_RATE = 48000
staticconstexpr

Definition at line 388 of file aaudiolayer.cpp.

◆ JAVA_STATE_INITIALIZED

constexpr int jami::JAVA_STATE_INITIALIZED = 1
staticconstexpr

Definition at line 386 of file aaudiolayer.cpp.

◆ JAVA_STREAM_RING

constexpr int jami::JAVA_STREAM_RING = 2
staticconstexpr

Definition at line 382 of file aaudiolayer.cpp.

◆ JAVA_WRITE_BLOCKING

constexpr int jami::JAVA_WRITE_BLOCKING = 0
staticconstexpr

Definition at line 387 of file aaudiolayer.cpp.

◆ jitterBufferMaxDelay_

const constexpr auto jami::jitterBufferMaxDelay_ = std::chrono::milliseconds(50)
constexpr

Definition at line 47 of file media_decoder.cpp.

Referenced by jami::MediaDemuxer::openInput().

◆ jitterBufferMaxSize_

const unsigned jami::jitterBufferMaxSize_ {1500}

Definition at line 45 of file media_decoder.cpp.

Referenced by jami::MediaDemuxer::openInput().

◆ kd

constexpr float jami::kd = 0.002f
staticconstexpr

Definition at line 34 of file congestion_control.cpp.

Referenced by jami::CongestionControl::update_thresh().

◆ ku

constexpr float jami::ku = 0.004f
staticconstexpr

Definition at line 33 of file congestion_control.cpp.

Referenced by jami::CongestionControl::update_thresh().

◆ LAST_MODIFIED

const char* const jami::LAST_MODIFIED = "lastModified"
static

◆ LOCAL_MODERATORS_ENABLED_KEY

constexpr const char* jami::LOCAL_MODERATORS_ENABLED_KEY = "localModeratorsEnabled"
constexpr

◆ LOGREG_PARAM_A

constexpr double jami::LOGREG_PARAM_A {101}
constexpr

Definition at line 53 of file media_encoder.cpp.

◆ LOGREG_PARAM_A_HEVC

constexpr double jami::LOGREG_PARAM_A_HEVC {96}
constexpr

Definition at line 56 of file media_encoder.cpp.

◆ LOGREG_PARAM_B

constexpr double jami::LOGREG_PARAM_B {-5.}
constexpr

Definition at line 54 of file media_encoder.cpp.

◆ LOGREG_PARAM_B_HEVC

constexpr double jami::LOGREG_PARAM_B_HEVC {-5.}
constexpr

Definition at line 57 of file media_encoder.cpp.

◆ MAILBOX_KEY

constexpr const char* jami::MAILBOX_KEY = "mailbox"
constexpr

◆ MAX_FALLBACK

constexpr std::chrono::seconds jami::MAX_FALLBACK {12 * 3600s}
constexpr

◆ MAX_PORT

constexpr unsigned jami::MAX_PORT {65536}
staticconstexpr

Definition at line 23 of file sipaccountbase_config.h.

Referenced by updateRange().

◆ MAX_RESPONSE_SIZE

constexpr size_t jami::MAX_RESPONSE_SIZE {1024ul * 1024}
constexpr

Definition at line 69 of file namedirectory.cpp.

◆ MD5_HASH_KEY

constexpr const char* jami::MD5_HASH_KEY {"md5Hash"}
staticconstexpr

Definition at line 87 of file preferences.cpp.

Referenced by jami::Preferences::serialize(), and jami::Preferences::unserialize().

◆ MIME_TYPE_GIT

◆ MIME_TYPE_IM_COMPOSING

constexpr const char jami::MIME_TYPE_IM_COMPOSING[] {"application/im-iscomposing+xml"}
staticconstexpr

Definition at line 87 of file jamiaccount.h.

Referenced by jami::Typers::addTyper(), and jami::Typers::removeTyper().

◆ MIME_TYPE_IMDN

constexpr const char jami::MIME_TYPE_IMDN[] {"message/imdn+xml"}
staticconstexpr

Definition at line 115 of file jamiaccount.cpp.

Referenced by jami::JamiAccount::handleMessage().

◆ MIME_TYPE_INVITE

constexpr const char jami::MIME_TYPE_INVITE[] {"application/invite"}
staticconstexpr

◆ MIME_TYPE_INVITE_JSON

constexpr const char jami::MIME_TYPE_INVITE_JSON[] {"application/invite+json"}
staticconstexpr

Definition at line 117 of file jamiaccount.cpp.

Referenced by jami::JamiAccount::handleMessage().

◆ MIME_TYPE_PIDF

constexpr const char jami::MIME_TYPE_PIDF[] {"application/pidf+xml"}
staticconstexpr

◆ MIN_REGISTRATION_TIME

constexpr unsigned jami::MIN_REGISTRATION_TIME = 60
staticconstexpr

Definition at line 66 of file sipaccount_config.cpp.

Referenced by jami::SipAccountConfig::unserialize().

◆ MINIMUM_RTP_HEADER_SIZE

constexpr unsigned jami::MINIMUM_RTP_HEADER_SIZE = 16
staticconstexpr

Definition at line 78 of file socket_pair.cpp.

◆ mod_ua_

◆ MS_BETWEEN_2_KEYFRAME_REQUEST

constexpr std::chrono::milliseconds jami::MS_BETWEEN_2_KEYFRAME_REQUEST {1000}
staticconstexpr

Definition at line 78 of file sipcall.cpp.

Referenced by jami::SIPCall::requestKeyframe().

◆ MS_PER_PACKET [1/2]

constexpr auto jami::MS_PER_PACKET = std::chrono::milliseconds(20)
staticconstexpr

◆ MS_PER_PACKET [2/2]

constexpr auto jami::MS_PER_PACKET = std::chrono::milliseconds(20)
staticconstexpr

Definition at line 25 of file media_player.cpp.

◆ MULTIAUDIO_REQUIRED_VERSION

const std::vector<unsigned> jami::MULTIAUDIO_REQUIRED_VERSION = split_string_to_unsigned(MULTIAUDIO_REQUIRED_VERSION_STR, '.')
static

Definition at line 94 of file sipcall.cpp.

Referenced by jami::SIPCall::setPeerUaVersion().

◆ MULTIAUDIO_REQUIRED_VERSION_STR

constexpr auto jami::MULTIAUDIO_REQUIRED_VERSION_STR = "13.11.0"sv
staticconstexpr

Definition at line 93 of file sipcall.cpp.

Referenced by jami::SIPCall::setPeerUaVersion().

◆ MULTIICE_REQUIRED_VERSION

const std::vector<unsigned> jami::MULTIICE_REQUIRED_VERSION
static
Initial value:
= split_string_to_unsigned(MULTIICE_REQUIRED_VERSION_STR,
'.')
std::vector< unsigned > split_string_to_unsigned(std::string_view str, char delim)

Definition at line 85 of file sipcall.cpp.

Referenced by jami::SIPCall::setPeerUaVersion().

◆ MULTIICE_REQUIRED_VERSION_STR

constexpr auto jami::MULTIICE_REQUIRED_VERSION_STR = "13.3.0"sv
staticconstexpr

Definition at line 84 of file sipcall.cpp.

Referenced by jami::SIPCall::setPeerUaVersion().

◆ MULTISTREAM_REQUIRED_VERSION

const std::vector<unsigned> jami::MULTISTREAM_REQUIRED_VERSION = split_string_to_unsigned(MULTISTREAM_REQUIRED_VERSION_STR, '.')
static

Definition at line 82 of file sipcall.cpp.

Referenced by jami::SIPCall::setPeerUaVersion().

◆ MULTISTREAM_REQUIRED_VERSION_STR

constexpr auto jami::MULTISTREAM_REQUIRED_VERSION_STR = "10.0.2"sv
staticconstexpr

Definition at line 81 of file sipcall.cpp.

Referenced by jami::SIPCall::setPeerUaVersion().

◆ my_publish_opt

const pjsip_publishc_opt jami::my_publish_opt = {true}
static

Definition at line 346 of file sippresence.cpp.

◆ NET_POLL_TIMEOUT

constexpr int jami::NET_POLL_TIMEOUT = 100
staticconstexpr

Definition at line 73 of file socket_pair.cpp.

Referenced by ff_network_wait_fd().

◆ NEW_CONFPROTOCOL_VERSION

const std::vector<unsigned> jami::NEW_CONFPROTOCOL_VERSION
static
Initial value:
= split_string_to_unsigned(NEW_CONFPROTOCOL_VERSION_STR,
'.')

Definition at line 88 of file sipcall.cpp.

◆ NEW_CONFPROTOCOL_VERSION_STR

constexpr auto jami::NEW_CONFPROTOCOL_VERSION_STR = "13.1.0"sv
staticconstexpr

Definition at line 87 of file sipcall.cpp.

◆ NEWPARAMS_TIMEOUT

constexpr auto jami::NEWPARAMS_TIMEOUT = std::chrono::milliseconds(1000)
staticconstexpr

Definition at line 28 of file media_device.h.

◆ NOISE_REDUCE_KEY

constexpr const char* jami::NOISE_REDUCE_KEY {"noiseReduce"}
staticconstexpr

◆ OP_TIMEOUT

constexpr auto jami::OP_TIMEOUT = 5min
constexpr

Definition at line 45 of file archive_account_manager.cpp.

◆ ORDER_KEY

constexpr const char* jami::ORDER_KEY {"order"}
staticconstexpr

Definition at line 78 of file preferences.cpp.

Referenced by jami::Preferences::serialize(), and jami::Preferences::unserialize().

◆ OVERRTP_STR

constexpr const char* const jami::OVERRTP_STR = "overrtp"
staticconstexpr

Definition at line 21 of file sipaccountbase_config.h.

◆ OVERUSE_THRESH

constexpr auto jami::OVERUSE_THRESH = std::chrono::milliseconds(100)
constexpr

Definition at line 36 of file congestion_control.cpp.

Referenced by jami::CongestionControl::get_bw_state().

◆ PA_EC_SUFFIX

const std::regex jami::PA_EC_SUFFIX {"\\.echo-cancel(?:\\..+)?$"}
static

Definition at line 42 of file pulselayer.cpp.

Referenced by stripEchoSufix().

◆ PACKAGE_OLD

constexpr const char* jami::PACKAGE_OLD = "ring"
staticconstexpr

Definition at line 115 of file manager.cpp.

Referenced by jami::Manager::init().

◆ packetFMT

constexpr uint8_t jami::packetFMT = 15
staticconstexpr

Definition at line 26 of file congestion_control.cpp.

Referenced by jami::CongestionControl::createREMB().

◆ packetType

constexpr uint8_t jami::packetType = 206
staticconstexpr

Definition at line 27 of file congestion_control.cpp.

Referenced by jami::CongestionControl::createREMB().

◆ packetVersion

constexpr uint8_t jami::packetVersion = 2
staticconstexpr

Definition at line 25 of file congestion_control.cpp.

Referenced by jami::CongestionControl::createREMB().

◆ PATH_BLUEPRINT

constexpr std::string_view jami::PATH_BLUEPRINT = JAMI_PATH_AUTH "/policyData"
constexpr

◆ PATH_CONTACTS

constexpr std::string_view jami::PATH_CONTACTS = JAMI_PATH_AUTH "/contacts"
constexpr

Definition at line 45 of file server_account_manager.cpp.

Referenced by jami::ServerAccountManager::syncDevices().

◆ PATH_CONVERSATIONS

constexpr std::string_view jami::PATH_CONVERSATIONS = JAMI_PATH_AUTH "/conversations"
constexpr

Definition at line 46 of file server_account_manager.cpp.

Referenced by jami::ServerAccountManager::syncDevices().

◆ PATH_CONVERSATIONS_REQUESTS

constexpr std::string_view jami::PATH_CONVERSATIONS_REQUESTS = JAMI_PATH_AUTH "/conversationRequests"
constexpr

Definition at line 47 of file server_account_manager.cpp.

Referenced by jami::ServerAccountManager::syncDevices().

◆ PATH_DEVICE

constexpr std::string_view jami::PATH_DEVICE = JAMI_PATH_AUTH "/device"
constexpr

◆ PATH_DEVICES

constexpr std::string_view jami::PATH_DEVICES = JAMI_PATH_AUTH "/devices"
constexpr

Definition at line 43 of file server_account_manager.cpp.

Referenced by jami::ServerAccountManager::syncDevices().

◆ PATH_SEARCH

constexpr std::string_view jami::PATH_SEARCH = JAMI_PATH_AUTH "/directory/search"
constexpr

Definition at line 44 of file server_account_manager.cpp.

Referenced by jami::ServerAccountManager::searchUser().

◆ PEER_DISCOVERY_EXPIRATION

const constexpr auto jami::PEER_DISCOVERY_EXPIRATION = std::chrono::minutes(1)
constexpr

Definition at line 261 of file jamiaccount.cpp.

Referenced by jami::JamiAccount::startAccountDiscovery().

◆ PEER_DISCOVERY_JAMI_SERVICE

const constexpr std::string_view jami::PEER_DISCOVERY_JAMI_SERVICE = "jami"
staticconstexpr

◆ PENDING_ACCOUNTS_KEY

constexpr const char* jami::PENDING_ACCOUNTS_KEY {"pendingAccounts"}
staticconstexpr

Definition at line 79 of file preferences.cpp.

Referenced by jami::Preferences::serialize(), and jami::Preferences::unserialize().

◆ PLAY_DTMF_KEY

constexpr const char* jami::PLAY_DTMF_KEY {"playDtmf"}
staticconstexpr

◆ PLAY_TONES_KEY

constexpr const char* jami::PLAY_TONES_KEY {"playTones"}
staticconstexpr

◆ PLAYBACK_MUTED_KEY

constexpr const char* jami::PLAYBACK_MUTED_KEY {"playbackMuted"}
staticconstexpr

◆ PLUGIN_KEY

constexpr const char* jami::PLUGIN_KEY {"plugin"}
staticconstexpr

◆ PN_APNS

constexpr std::string_view jami::PN_APNS = "apns"sv
staticconstexpr

Definition at line 84 of file sipaccount.cpp.

◆ PN_FCM

constexpr std::string_view jami::PN_FCM = "fcm"sv
staticconstexpr

Definition at line 83 of file sipaccount.cpp.

◆ POOL_INCREMENT_SIZE

constexpr int jami::POOL_INCREMENT_SIZE = POOL_INITIAL_SIZE
staticconstexpr

Definition at line 47 of file sdp.cpp.

◆ POOL_INITIAL_SIZE

constexpr int jami::POOL_INITIAL_SIZE = 16384
staticconstexpr

Definition at line 46 of file sdp.cpp.

◆ PORT_NUM_KEY

constexpr const char* jami::PORT_NUM_KEY {"portNum"}
staticconstexpr

Definition at line 85 of file preferences.cpp.

Referenced by jami::Preferences::serialize(), and jami::Preferences::unserialize().

◆ PORTAUDIO_KEY

constexpr const char* jami::PORTAUDIO_KEY {"portaudio"}
staticconstexpr

◆ PROXY_PUSH_PLATFORM_KEY

constexpr const char* jami::PROXY_PUSH_PLATFORM_KEY = "proxyPushPlatform"
constexpr

◆ PROXY_PUSH_TOKEN_KEY

constexpr const char* jami::PROXY_PUSH_TOKEN_KEY = "proxyPushToken"
constexpr

◆ PROXY_PUSH_TOPIC_KEY

constexpr const char* jami::PROXY_PUSH_TOPIC_KEY = "proxyPushiOSTopic"
constexpr

◆ PROXY_REGEX

const auto jami::PROXY_REGEX = std::regex("(https?://)?([\\w\\.\\-_\\~]+)(:(\\d+)|:\\[(.+)-(.+)\\])?")
static

Definition at line 259 of file jamiaccount.cpp.

◆ PULSE_LENGTH_DEFAULT

constexpr int jami::PULSE_LENGTH_DEFAULT {250}
staticconstexpr

Definition at line 138 of file preferences.cpp.

◆ PULSE_LENGTH_KEY

constexpr const char* jami::PULSE_LENGTH_KEY {"pulseLength"}
staticconstexpr

◆ PULSEMAP_KEY

constexpr const char* jami::PULSEMAP_KEY {"pulse"}
staticconstexpr

◆ Q

constexpr float jami::Q = 0.5f
staticconstexpr

Definition at line 30 of file congestion_control.cpp.

Referenced by jami::CongestionControl::kalmanFilter().

◆ QUERY_ADDR

constexpr const char* const jami::QUERY_ADDR {"/addr/"}
constexpr

Definition at line 50 of file namedirectory.cpp.

Referenced by jami::NameDirectory::lookupAddress().

◆ QUERY_NAME

constexpr const char* const jami::QUERY_NAME {"/name/"}
constexpr

◆ RECORDPATH_KEY

constexpr const char* jami::RECORDPATH_KEY {"recordPath"}
staticconstexpr

◆ REGISTRATION_FIRST_RETRY_INTERVAL

constexpr unsigned jami::REGISTRATION_FIRST_RETRY_INTERVAL = 60
staticconstexpr

Definition at line 79 of file sipaccount.cpp.

◆ REGISTRATION_RETRY_INTERVAL

constexpr unsigned jami::REGISTRATION_RETRY_INTERVAL = 300
staticconstexpr

Definition at line 80 of file sipaccount.cpp.

◆ REUSE_ICE_IN_REINVITE_REQUIRED_VERSION

const std::vector<unsigned> jami::REUSE_ICE_IN_REINVITE_REQUIRED_VERSION = split_string_to_unsigned(REUSE_ICE_IN_REINVITE_REQUIRED_VERSION_STR, '.')
static

Definition at line 91 of file sipcall.cpp.

Referenced by jami::SIPCall::setPeerUaVersion().

◆ REUSE_ICE_IN_REINVITE_REQUIRED_VERSION_STR

constexpr auto jami::REUSE_ICE_IN_REINVITE_REQUIRED_VERSION_STR = "11.0.2"sv
staticconstexpr

Definition at line 90 of file sipcall.cpp.

Referenced by jami::SIPCall::setPeerUaVersion().

◆ RING_URI_PREFIX

const constexpr std::string_view jami::RING_URI_PREFIX = "ring:"
staticconstexpr

Definition at line 257 of file jamiaccount.cpp.

Referenced by stripPrefix().

◆ RINGDIR

constexpr const char jami::RINGDIR[] = "ringtones"
staticconstexpr

Definition at line 58 of file account.h.

Referenced by jami::Account::loadConfig().

◆ RINGING_TIMEOUT

constexpr const char* jami::RINGING_TIMEOUT {"ringingTimeout"}
staticconstexpr

Definition at line 82 of file preferences.cpp.

Referenced by jami::Preferences::serialize(), and jami::Preferences::unserialize().

◆ RINGTONE_ENABLED_KEY

constexpr const char* jami::RINGTONE_ENABLED_KEY = "ringtoneEnabled"
constexpr

◆ RINGTONE_PATH_KEY

constexpr const char* jami::RINGTONE_PATH_KEY = "ringtonePath"
constexpr

◆ RMS_SIGNAL_INTERVAL

constexpr const int jami::RMS_SIGNAL_INTERVAL = 5
staticconstexpr

Definition at line 31 of file ringbuffer.cpp.

◆ ROTATION_FILTER_INPUT_NAME

const constexpr char jami::ROTATION_FILTER_INPUT_NAME[] = "in"
constexpr

Definition at line 47 of file media_recorder.cpp.

Referenced by jami::MediaRecorder::StreamObserver::update().

◆ RTCP_RR_FRACTION_MASK

constexpr uint32_t jami::RTCP_RR_FRACTION_MASK = 0xFF000000
staticconstexpr

Definition at line 77 of file socket_pair.cpp.

◆ RTP_MAX_PACKET_LENGTH

constexpr int jami::RTP_MAX_PACKET_LENGTH = 2048
staticconstexpr

Definition at line 74 of file socket_pair.cpp.

◆ SAVE_INTERVAL

constexpr std::chrono::seconds jami::SAVE_INTERVAL {5}
constexpr

Definition at line 55 of file namedirectory.cpp.

◆ SEARCH_BAR_DISPLAY_KEY

constexpr const char* jami::SEARCH_BAR_DISPLAY_KEY {"searchBarDisplay"}
staticconstexpr

Definition at line 86 of file preferences.cpp.

Referenced by jami::Preferences::serialize(), and jami::Preferences::unserialize().

◆ SIPINFO_STR

constexpr const char* const jami::SIPINFO_STR = "sipinfo"
staticconstexpr

Definition at line 22 of file sipaccountbase_config.h.

◆ sJavaVM

JavaVM* jami::sJavaVM {nullptr}
static

Definition at line 34 of file aaudiolayer.cpp.

Referenced by jami::AAudioLayer::setJavaVM().

◆ SMPLRATE_KEY

constexpr const char* jami::SMPLRATE_KEY {"smplRate"}
staticconstexpr

◆ SRTP_OVERHEAD

constexpr auto jami::SRTP_OVERHEAD = 10
staticconstexpr

Definition at line 76 of file socket_pair.cpp.

Referenced by jami::SocketPair::createIOContext().

◆ STR_MESSAGE_ID

constexpr pj_str_t jami::STR_MESSAGE_ID = jami::sip_utils::CONST_PJ_STR("Message-ID")
constexpr

Definition at line 114 of file jamiaccount.cpp.

Referenced by transaction_request_cb().

◆ TONES

constexpr DTMFTone jami::TONES[]
constexpr
Initial value:
= {{'0', 941, 1336},
{'1', 697, 1209},
{'2', 697, 1336},
{'3', 697, 1477},
{'4', 770, 1209},
{'5', 770, 1336},
{'6', 770, 1477},
{'7', 852, 1209},
{'8', 852, 1336},
{'9', 852, 1477},
{'A', 697, 1633},
{'B', 770, 1633},
{'C', 852, 1633},
{'D', 941, 1633},
{'*', 941, 1209},
{'#', 941, 1477}}

Definition at line 36 of file dtmfgenerator.cpp.

◆ TRANSPORT_STATE_STR

constexpr const char* jami::TRANSPORT_STATE_STR[] = {"CONNECTED", "DISCONNECTED", "SHUTDOWN", "DESTROY", "UNKNOWN STATE"}
constexpr

Definition at line 51 of file siptransport.cpp.

Referenced by jami::SipTransport::stateToStr().

◆ TRANSPORT_STATE_SZ

constexpr const size_t jami::TRANSPORT_STATE_SZ = std::size(TRANSPORT_STATE_STR)
constexpr

Definition at line 52 of file siptransport.cpp.

Referenced by jami::SipTransport::stateToStr().

◆ TREATED_PATH

constexpr auto jami::TREATED_PATH = "treatedImMessages"sv
staticconstexpr

Definition at line 119 of file jamiaccount.cpp.

◆ TRUE_STR

◆ TYPE_KEY

constexpr const char* jami::TYPE_KEY = "type"
constexpr

Definition at line 34 of file account_config.cpp.

Referenced by jami::AccountConfig::serializeDiff().

◆ UDP_HEADER_SIZE

constexpr auto jami::UDP_HEADER_SIZE = 8
staticconstexpr

Definition at line 75 of file socket_pair.cpp.

Referenced by jami::SocketPair::createIOContext().

◆ UI_CUSTOMIZATION

constexpr const char* jami::UI_CUSTOMIZATION = "uiCustomization"
constexpr

◆ uniqueIdentifier

constexpr uint32_t jami::uniqueIdentifier = 0x52454D42
staticconstexpr

Definition at line 28 of file congestion_control.cpp.

Referenced by jami::CongestionControl::createREMB().

◆ UPNP_ENABLED_KEY

constexpr const char* jami::UPNP_ENABLED_KEY = "upnpEnabled"
constexpr

◆ URI_VALIDATOR

const std::regex jami::URI_VALIDATOR {R"(^([a-zA-Z]+:(?://)?)?(?:([\w\-.~%!$&'()*+,;=]{1,64}|[^\s@]{1,64})@)?([^\s@]+)$)"}

Definition at line 67 of file namedirectory.cpp.

Referenced by jami::NameDirectory::lookupUri().

◆ USER_AGENT_KEY

constexpr const char* jami::USER_AGENT_KEY = "useragent"
constexpr

◆ USERNAME_KEY

constexpr const char* jami::USERNAME_KEY = "username"
constexpr

Definition at line 35 of file account_config.cpp.

Referenced by jami::AccountConfig::serializeDiff().

◆ VAD_KEY

constexpr const char* jami::VAD_KEY {"voiceActivityDetection"}
staticconstexpr

◆ VALID_TLS_PROTOS

constexpr std::string_view jami::VALID_TLS_PROTOS[] = {"Default"sv, "TLSv1.2"sv, "TLSv1.1"sv, "TLSv1"sv}
staticconstexpr

Definition at line 81 of file sipaccount.cpp.

Referenced by jami::SIPAccount::getSupportedTlsProtocols().

◆ VIDEO_ENABLED_KEY

constexpr const char* jami::VIDEO_ENABLED_KEY = "videoEnabled"
constexpr

◆ VOLUMEMIC_KEY

constexpr const char* jami::VOLUMEMIC_KEY {"volumeMic"}
staticconstexpr

◆ VOLUMESPKR_KEY

constexpr const char* jami::VOLUMESPKR_KEY {"volumeSpkr"}
staticconstexpr

◆ webrtcNoError

◆ ZONE_TONE_CHOICE_KEY

constexpr const char* jami::ZONE_TONE_CHOICE_KEY {"zoneToneChoice"}
staticconstexpr

Definition at line 84 of file preferences.cpp.

Referenced by jami::Preferences::serialize(), and jami::Preferences::unserialize().