Ring Daemon 16.0.0
All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
jami Namespace Reference

Namespaces

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

Classes

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
 
class  FileInfo
 
class  FileLog
 
struct  Filter
 
class  FuncObserver
 
struct  GitAuthor
 
class  GitServer
 This class offers to a ChannelSocket the possibility to interact with a Git repository. More...
 
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  Job
 A runnable function. More...
 
struct  KnownDevice
 
struct  KnownDeviceSync
 
class  LocalRecorder
 
class  LocalRecorderManager
 
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  OpenSLLayer
 
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  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
 
struct  RepeatedJob
 
class  RepeatedTask
 A RepeatedJob that can be disposed. More...
 
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  ScheduledExecutor
 
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  Task
 A Job that can be disposed. More...
 
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 T , class U >
using enable_if_base_of = typename std::enable_if< std::is_base_of< T, U >::value, T >::type
 About 62.5ms of buffering at 48kHz.
 
template<class Row >
using EnumClassNames = Matrix1D< Row, std::string_view >
 A helper to type to match serializable string to enum elements.
 
using GitSocketList = std::map< DeviceId, std::shared_ptr< dhtnet::ChannelSocket > >
 
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< std::map< std::string, std::string > > &&messages)>
 
using OnLoadMessages2 = std::function< void(std::vector< libjami::SwarmMessage > &&messages)>
 
using OnMembersChanged = std::function< void(const std::set< std::string > &)>
 
using OnMultiDoneCb = std::function< void(const std::vector< 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 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 { ALL = -1 , PLAYBACK = 0 , CAPTURE , RINGTONE }
 
enum class  AuthDecodingState : uint8_t {
  HANDSHAKE = 0 , EST , AUTH , DATA ,
  ERR , AUTH_ERROR , DONE , TIMEOUT ,
  CANCELED
}
 
enum  BandwidthUsage { bwNormal = 0 , bwUnderusing = 1 , bwOverusing = 2 }
 
enum class  CallbackResult { Skip , Break , Ok }
 
enum  CipherMode { AESCounterMode , AESF8Mode }
 
enum  CodecType : unsigned { 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 : unsigned { RTP = 1 << 0 , RTCP = 1 << 1 }
 
enum class  DecodeStatus {
  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 { NONE , SDES }
 
enum  KeyMethod { Inline }
 
enum  MACMode { HMACSHA1 }
 
enum class  MatchRank { NONE , PARTIAL , FULL }
 
enum class  MediaDirection {
  SENDRECV , SENDONLY , RECVONLY , INACTIVE ,
  UNKNOWN
}
 
enum class  MediaTransport { RTP_AVP , RTP_SAVP , UNKNOWN }
 
enum  MediaType : unsigned { 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 : unsigned { CRF_CONSTRAINED , CQ , CBR }
 
enum class  RegistrationState {
  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 { 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)
 
std::vector< sample_bufallocateSampleBufs (unsigned count, size_t sizeInByte)
 
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)
 
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)
 
constexpr const chardhtStatusStr (dht::NodeStatus status)
 
void disconnectStream (pa_stream *s)
 
void dumpAvailableEngineInterfaces ()
 
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 const charfast_validate (const char *str)
 
static const charfast_validate_len (const char *str, ssize_t max_len)
 
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.
 
std::string formatHeader (const char *const file, int line)
 
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)
 
std::string getDisplayed (const std::string &conversationId, const std::string &messageId)
 
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 ()
 
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)
 
void hangupCalls (Call::SubcallSet &&callptr_list, int errcode)
 Hangup many calls with same error code.
 
template<typename T >
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 >
bool is_uninitialized (std::weak_ptr< T > const &weak)
 
template<typename T >
void log_to_if_enabled (T &handler, Logger::Msg &msg)
 
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 void openFullDuplexStream (PaStream **stream, PaDeviceIndex inputDeviceIndex, PaDeviceIndex ouputDeviceIndex, PaStreamCallback *callback, void *user_data)
 
static void openStreamDevice (PaStream **stream, PaDeviceIndex device, Direction direction, 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 unsigned setDhtLogLevel ()
 Set OpenDHT's log level based on the JAMI_LOG_DHT environment variable.
 
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 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 const charstripDirName (const char *path)
 
std::string stripEchoSufix (const std::string &deviceName)
 
std::string_view stripPrefix (std::string_view toUrl)
 
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:
 
bool utf8_validate_c_str (const char *str, ssize_t max_len, const char **end)
 utf8_validate_c_str: @str: a pointer to character data @max_len: max bytes to validate, or -1 to go until NULL @end: return location for end of valid data
 
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
 
constexpr const charAUTHENTICATION_USERNAME_KEY = "authenticationUsername"
 
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}
 
static constexpr std::chrono::seconds DEFAULT_ICE_NEGO_TIMEOUT {60}
 
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 const charHAS_CUSTOM_USER_AGENT_KEY = "hasCustomUserAgent"
 
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 constexpr const char *const JAMI_URI_PREFIX = "jami:"
 
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"
 
const constexpr unsigned MAX_ACCEL_FAILURES {5}
 
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 const size_t MIN_BUFFER_SIZE = 1024
 
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 = split_string_to_unsigned(MULTIICE_REQUIRED_VERSION_STR, '.')
 
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 = split_string_to_unsigned(NEW_CONFPROTOCOL_VERSION_STR, '.')
 
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 const charPASSWORD_KEY = "password"
 
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 std::string PEER_DISCOVERY_JAMI_SERVICE = "jami"
 
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
 
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 constexpr const char *const 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 constexpr size_t SIZEBUF = 16000
 
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")
 
std::atomic< uint64_ttask_cookie = {0}
 
constexpr const charTRANSPORT_STATE_STR []
 
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
 
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 []
 
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 34 of file account_factory.h.

◆ AudioFrame

◆ avSubjectPtr

Definition at line 32 of file mediahandler.h.

◆ AVSubjectSPtr

Definition at line 33 of file callservicesmanager.h.

◆ Blob

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

Definition at line 335 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 185 of file conference.h.

◆ CallIDSet

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

To store uniquely a list of Call ids.

Definition at line 121 of file manager.cpp.

◆ CallMap

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

Definition at line 61 of file call.h.

◆ CallMediaHandlerPtr

Definition at line 32 of file callservicesmanager.h.

◆ ChannelCb

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

Definition at line 144 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 26 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 38 of file sipaccount.h.

◆ clock

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

Definition at line 186 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 38 of file conversation_module.cpp.

◆ DeviceId

Definition at line 44 of file account_manager.h.

◆ enable_if_base_of

template<class T , class U >
using jami::enable_if_base_of = typedef typename std::enable_if<std::is_base_of<T, U>::value, T>::type

About 62.5ms of buffering at 48kHz.

This meta-function is used to enable a template overload only if given class T is a base of class U

Definition at line 38 of file ring_types.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.

◆ GitSocketList

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

Definition at line 143 of file conversation.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 23 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 33 of file media_buffer.h.

◆ MessageList

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

Definition at line 118 of file conversation.cpp.

◆ NeedSocketCb

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

Definition at line 145 of file conversation.h.

◆ NeedsSyncingCb

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

Definition at line 65 of file conversation_module.h.

◆ NodeId

using jami::NodeId = typedef dht::h256

Definition at line 27 of file swarm_channel_handler.h.

◆ OnCommitCb

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

Definition at line 138 of file conversation.h.

◆ OnDoneCb

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

Definition at line 139 of file conversation.h.

◆ OneToOneRecvCb

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

Definition at line 66 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

using jami::OnLoadMessages = typedef std::function<void(std::vector<std::map<std::string, std::string> >&& messages)>

Definition at line 134 of file conversation.h.

◆ OnLoadMessages2

Definition at line 136 of file conversation.h.

◆ OnMembersChanged

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

Definition at line 141 of file conversation.h.

◆ OnMultiDoneCb

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

Definition at line 140 of file conversation.h.

◆ OnPullCb

Definition at line 133 of file conversation.h.

◆ onShutdownCb

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

Definition at line 36 of file channeled_transport.h.

◆ pluginMessagePtr

Definition at line 26 of file chathandler.h.

◆ PostConditionCb

Definition at line 134 of file conversationrepository.h.

◆ PreConditionCb

Definition at line 132 of file conversationrepository.h.

◆ PreferenceHandlerPtr

◆ PreferencesMap

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

Definition at line 35 of file jamipluginmanager.h.

◆ Request

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

Definition at line 74 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 63 of file conversation_module.h.

◆ SignalHandlerMap

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

Definition at line 54 of file ring_signal.h.

◆ SipConnectionKey

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

Definition at line 88 of file jamiaccount.h.

◆ SipTransportStateCallback

◆ ValueIdDist

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

Definition at line 208 of file jamiaccount.cpp.

◆ VideoFrame

◆ WebViewHandlerPtr

Definition at line 35 of file webviewservicesmanager.h.

Enumeration Type Documentation

◆ AudioDeviceType

Enumerator
ALL 
PLAYBACK 
CAPTURE 
RINGTONE 

Definition at line 58 of file audiolayer.h.

◆ AuthDecodingState

Enumerator
HANDSHAKE 
EST 
AUTH 
DATA 
ERR 
AUTH_ERROR 
DONE 
TIMEOUT 
CANCELED 

Definition at line 283 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 130 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 38 of file media_codec.h.

◆ ConversationMode

Enumerator
ONE_TO_ONE 
ADMIN_INVITES_ONLY 
INVITES_ONLY 
PUBLIC 

Definition at line 89 of file conversationrepository.h.

◆ DataType

Enumerator
RTP 
RTCP 

Definition at line 84 of file socket_pair.cpp.

◆ DecodeStatus

Enumerator
Success 
FrameFinished 
EndOfFile 
ReadError 
DecodeError 
RestartRequired 
FallBack 

Definition at line 75 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 36 of file media_codec.h.

◆ KeyMethod

Enumerator
Inline 

Definition at line 46 of file sdes_negotiator.h.

◆ MACMode

Enumerator
HMACSHA1 

Definition at line 44 of file sdes_negotiator.h.

◆ MatchRank

Enumerator
NONE 
PARTIAL 
FULL 

Definition at line 71 of file sipaccountbase.h.

◆ MediaDirection

Enumerator
SENDRECV 
SENDONLY 
RECVONLY 
INACTIVE 
UNKNOWN 

Definition at line 221 of file media_codec.h.

◆ MediaTransport

Enumerator
RTP_AVP 
RTP_SAVP 
UNKNOWN 

Definition at line 226 of file media_codec.h.

◆ MediaType

Enumerator
MEDIA_NONE 
MEDIA_AUDIO 
MEDIA_VIDEO 
MEDIA_ALL 

Definition at line 45 of file media_codec.h.

◆ MemberRole

Enumerator
ADMIN 
MEMBER 
INVITED 
BANNED 
LEFT 

Definition at line 103 of file conversationrepository.h.

◆ RateMode

Enumerator
CRF_CONSTRAINED 
CQ 
CBR 

Definition at line 52 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 26 of file registration_states.h.

◆ SdpDirection

Enumerator
OFFER 
ANSWER 
NONE 

Definition at line 58 of file sdp.h.

Function Documentation

◆ abs()

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

Definition at line 240 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 537 of file conversationrepository.cpp.

References emitSignal(), git_add_all(), 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 68 of file sipaccountbase_config.cpp.

References emitSignal().

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

Here is the call graph for this function:

◆ allocateSampleBufs()

std::vector< sample_buf > jami::allocateSampleBufs ( unsigned  count,
size_t  sizeInByte 
)

Definition at line 156 of file opensllayer.cpp.

References emitSignal().

Referenced by jami::OpenSLLayer::initAudioEngine().

Here is the call graph for this function:

◆ arch()

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

Definition at line 72 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 56 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.

Here is the call graph for this function:

◆ canonicalName()

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

Definition at line 135 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 98 of file logger.cpp.

◆ check_error() [2/2]

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

Definition at line 83 of file logger.cpp.

References emitSignal().

Referenced by strErr().

Here is the call graph for this function:

◆ check_rename()

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

Definition at line 164 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 811 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 131 of file string_utils.h.

References emitSignal().

Referenced by std::operator+(), and std::operator+().

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 136 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 495 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 788 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 39 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 176 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 145 of file audiostream.cpp.

References disconnectStream(), and emitSignal().

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

Here is the call graph for this function:

◆ dhtStatusStr()

constexpr const char * jami::dhtStatusStr ( dht::NodeStatus  status)
constexpr

Definition at line 244 of file jamiaccount.cpp.

◆ disconnectStream()

void jami::disconnectStream ( pa_stream s)

Definition at line 132 of file audiostream.cpp.

References emitSignal().

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

Here is the call graph for this function:

◆ dumpAvailableEngineInterfaces()

void jami::dumpAvailableEngineInterfaces ( )

Definition at line 466 of file opensllayer.cpp.

References emitSignal(), and JAMI_DBG.

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 ring_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::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::Sdp::addIceAttributes(), jami::Sdp::addIceCandidates(), jami::AudioReceiveThread::addIOContext(), jami::video::VideoReceiveThread::addIOContext(), jami::RoutingTable::addKnownNode(), 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::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(), allocateSampleBufs(), 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::AudioFile::AudioFile(), audioFormatToSampleFormat(), jami::Manager::audioFormatUsed(), jami::AudioInput::AudioInput(), jami::AudioInput::AudioInput(), jami::AudioLayer::AudioLayer(), jami::opensl::AudioPlayer::AudioPlayer(), jami::opensl::AudioRecorder::AudioRecorder(), 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::opensl::bqPlayerCallback(), jami::opensl::bqRecorderCallback(), 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::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::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::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::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::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::opensl::convertToSLSampleFormat(), 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::MediaDemuxer::decode(), jami::MediaDecoder::decode(), jami::base64::decode(), jami::video::VideoReceiveThread::decodeFrame(), jami::archiver::decompress(), jami::archiver::decompressGzip(), jami::video::VideoRtpSession::deinitRecorder(), jami::RoutingTable::deleteNode(), jami::MediaDemuxer::demuxe(), jami::AudioFrameResizer::dequeue(), jami::AccountArchive::deserialize(), jami::RepeatedTask::destroy(), 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(), 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(), dumpAvailableEngineInterfaces(), dynamic_unique_cast(), jami::Account::editConfig(), jami::JamiAccount::editConfig(), jami::SIPAccount::editConfig(), jami::ConversationModule::Impl::editMessage(), jami::ConversationModule::editMessage(), jami::FileInfo::emit(), jami::MediaDemuxer::emitFrame(), jami::MediaDecoder::emitFrame(), emitSignal(), jami::AccountFactory::empty(), jami::CallFactory::empty(), jami::CallFactory::empty(), jami::PresSubClient::enable(), jami::SpeexAudioProcessor::enableAutomaticGainControl(), jami::SpeexAudioProcessor::enableEchoCancel(), jami::Manager::enableLocalModerators(), jami::SpeexAudioProcessor::enableNoiseSuppression(), jami::SpeexAudioProcessor::enableVoiceActivityDetection(), jami::MediaEncoder::encode(), jami::base64::encode(), jami::MediaEncoder::encodeAudio(), jami::Matrix1D< Row, Value, A >::end(), jami::Matrix0D< EnumClass >::end(), endsWith(), jami::OpenSLLayer::engineServicePlay(), jami::OpenSLLayer::engineServiceRing(), 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::map_utils::extractElements(), jami::map_utils::extractKeys(), jami::video::extractString(), jami::map_utils::extractValues(), jami::ConversationModule::Impl::fallbackClone(), fast_validate(), fast_validate_len(), 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::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::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(), jami::PortAudioLayer::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::OpenSLLayer::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::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::video::VideoDeviceMonitor::getDeviceList(), jami::ip_utils::getDeviceName(), jami::AudioStream::getDeviceName(), jami::video::VideoDeviceImpl::getDeviceParams(), jami::video::VideoDeviceMonitor::getDeviceParams(), jami::PortAudioLayer::PortAudioLayerImpl::getDevicesByType(), jami::video::getDeviceString(), jami::video::getDeviceUniqueName(), jami::libav_utils::getDictValue(), jami::libav_utils::getError(), jami::tls::TlsValidator::getExpirationDate(), jami::fileutils::getFileExtension(), 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::Bucket::getNodeIds(), jami::RoutingTable::getNodes(), jami::Bucket::getNodeSockets(), jami::tls::TlsValidator::getO(), jami::Observable< T >::getObserversCount(), jami::ConversationModule::Impl::getOneToOneConversation(), 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(), jami::OpenSLLayer::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::RoutingTable::getRoutingTableNodeCount(), jami::DTMFGenerator::getSamples(), jami::Sdp::getSdpDirectionStr(), 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(), 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::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::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::Conversation::Impl::Impl(), jami::Conversation::Impl::Impl(), jami::Conversation::Impl::Impl(), jami::GitServer::Impl::Impl(), jami::ConversationModule::Impl::Impl(), jami::ConversationRepository::infos(), jami::ConversationRepository::infosFromVCard(), jami::AudioDevice::init(), jami::Manager::init(), jami::Conversation::Impl::init(), jami::PortAudioLayer::PortAudioLayerImpl::init(), jami::libav_utils::init_once(), jami::Conversation::Impl::initActiveCalls(), jami::video::HardwareAccel::initAPI(), jami::Manager::ManagerPimpl::initAudioDriver(), jami::OpenSLLayer::initAudioEngine(), 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::video::VideoRtpSession::initRecorder(), jami::ConversationModule::initReplay(), 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::Conversation::isBootstraped(), jami::Call::isConferenceParticipant(), jami::SyncModule::isConnected(), jami::ConversationModule::Impl::isConversation(), jami::fileutils::isDirectoryWritable(), jami::Conversation::isHosting(), jami::ConversationModule::isHosting(), jami::Manager::isLocalModeratorsEnabled(), jami::Conference::isMediaSourceMuted(), jami::Conversation::isMember(), jami::JamiAccount::isMobile(), 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::JackLayer::JackLayer(), 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::loadConversationMessages(), jami::ConversationModule::loadConversations(), jami::ConversationModule::loadConversationUntil(), jami::Account::loadDefaultCodecs(), jami::fileutils::loadFile(), jami::Conversation::Impl::loadHostedCalls(), jami::ConversationRepository::Impl::loadMembers(), jami::Conversation::Impl::loadMessages(), jami::Conversation::loadMessages(), jami::Conversation::Impl::loadMessages2(), jami::Conversation::loadMessages2(), 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::ConversationRepository::log(), log_to_if_enabled(), 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::ConversationRepository::mergeBase(), jami::Conference::mergeConfInfo(), jami::ConversationRepository::Impl::mergeFastforward(), jami::Conversation::Impl::mergeHistory(), jami::sip_utils::PjsipErrorCategory::message(), jami::Conversation::messageStatus(), jami::ConversationRepository::Impl::mode(), jami::ConversationModule::monitor(), 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::JamiAccount::newIncomingCall(), jami::SIPAccount::newIncomingCall(), jami::Manager::newOutgoingCall(), jami::JamiAccount::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::SyncModule::Impl::onChannelShutdown(), jami::MessageChannelHandler::Impl::onChannelShutdown(), jami::ConfProtocolParser::onCheckAuthorization(), jami::Conference::onConfOrder(), jami::SwarmManager::onConnectionChanged(), 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::ContactList::onTrustRequest(), jami::ConversationModule::onTrustRequest(), jami::ConfProtocolParser::onVersion(), jami::ConfProtocolParser::onVoiceActivity(), openFullDuplexStream(), jami::archiver::openGzip(), jami::MediaDemuxer::openInput(), jami::MediaEncoder::openOutput(), jami::SocketPair::openSockets(), openStreamDevice(), 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::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<(), jami::Logger::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::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::Conversation::peersToSyncWith(), jami::ConversationRepository::pinCertificates(), jami::video::pixelformat_score(), jami::sip_utils::PJDialogLock::PJDialogLock(), platform(), jami::ToneControl::play(), jami::Manager::ManagerPimpl::playATone(), jami::opensl::AudioPlayer::playAudioBuffers(), 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::opensl::AudioPlayer::processSLCallback(), jami::opensl::AudioRecorder::processSLCallback(), 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::Manager::recordingPlaybackSeek(), jami::Conversation::Impl::rectifyStatus(), jami::Manager::registerAccounts(), jami::opensl::AudioPlayer::registerCallback(), jami::opensl::AudioRecorder::registerCallback(), 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::CallFactory::removeCall(), jami::CallFactory::removeCall(), jami::SystemCodecContainer::removeCodecByName(), jami::Account::removeConference(), jami::CallSet::removeConference(), jami::ContactList::removeContact(), jami::ConversationModule::removeContact(), 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::video::round2pow(), jami::AlsaLayer::run(), jami::Task::run(), jami::RepeatedTask::run(), jami::ScheduledExecutor::run(), runOnMainThread(), safeUpdate(), sampleFormatFromPulse(), jami::AudioFrameResizer::samples(), jami::AudioStream::sampleSize(), jami::AudioStream::sampleSpec(), 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::ScheduledExecutor::schedule(), jami::ScheduledExecutor::scheduleAtFixedRate(), jami::ScheduledExecutor::ScheduledExecutor(), jami::ScheduledExecutor::scheduleIn(), 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::MediaDemuxer::selectStream(), 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::Conversation::sendMessage(), jami::ConversationModule::Impl::sendMessageNotification(), jami::ConversationModule::Impl::sendMessageNotification(), jami::Conversation::sendMessages(), 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::opensl::AudioPlayer::setBufQueue(), jami::opensl::AudioRecorder::setBufQueues(), 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(), setDhtLogLevel(), jami::libav_utils::setDictValue(), jami::AudioPreference::setEchoCancel(), jami::AudioStream::setEchoCancelCb(), jami::ConversationModule::setFetched(), jami::FileLog::setFile(), jami::MediaDemuxer::setFileFinishedCb(), jami::AudioInput::setFormat(), jami::RingBuffer::setFormat(), jami::AudioFrameResizer::setFormat(), jami::AudioFrameResizer::setFrameSize(), jami::RingBuffer::setFrameSize(), jami::video::SinkClient::setFrameSize(), setGnuTlsLogLevel(), jami::Conference::setHandRaised(), jami::Manager::setHistoryLimit(), jami::Preferences::setHistoryLimit(), jami::Preferences::setHistoryMaxCalls(), jami::MediaEncoder::setInitSeqVal(), jami::RingBufferPool::setInternalAudioFormat(), jami::RingBufferPool::setInternalSamplingRate(), jami::MediaDemuxer::setInterruptCallback(), jami::MediaDecoder::setInterruptCallback(), jami::MediaEncoder::setIOContext(), jami::MediaDemuxer::setIOContext(), jami::MediaDecoder::setIOContext(), jami::Call::setIPToIP(), jami::Manager::setIsAlwaysRecording(), jami::AudioPreference::setIsAlwaysRecording(), 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::MediaDemuxer::setNeedFrameCb(), 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::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::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::Conversation::shutdownConnections(), jami::JamiAccount::shutdownConnections(), 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::fileutils::size(), 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::opensl::AudioPlayer::start(), jami::opensl::AudioRecorder::start(), jami::AudioStream::start(), jami::ThreadLoop::start(), jami::AudioRtpSession::start(), jami::video::VideoRtpSession::start(), jami::OpenSLLayer::startAudioCapture(), jami::ConversationModule::Impl::startConversation(), jami::ConversationModule::Impl::startConversation(), jami::ConversationModule::startConversation(), jami::opensl::AudioPlayer::started(), jami::SyncedConversation::startFetch(), jami::Sdp::startNegotiation(), jami::Manager::startRecordedFilePlayback(), jami::LocalRecorder::startRecording(), jami::MediaRecorder::startRecording(), jami::Recordable::startRecording(), jami::Conference::startRecording(), starts_with(), jami::video::VideoReceiveThread::startSink(), jami::AlsaLayer::startStream(), jami::PulseLayer::startStream(), jami::OpenSLLayer::startStream(), jami::PortAudioLayer::startStream(), jami::SipTransport::stateCallback(), jami::GitServer::Impl::stop(), jami::opensl::AudioPlayer::stop(), jami::opensl::AudioRecorder::stop(), jami::AudioStream::stop(), jami::ToneControl::stop(), jami::ThreadLoop::stop(), jami::AudioRtpSession::stop(), jami::OpenSLLayer::stopAudioCapture(), jami::ToneControl::stopAudioFile(), jami::MediaRecorder::stopRecording(), jami::Recordable::stopRecording(), jami::LocalRecorder::stopRecording(), jami::AlsaLayer::stopStream(), jami::PulseLayer::stopStream(), jami::OpenSLLayer::stopStream(), jami::PortAudioLayer::stopStream(), jami::sip_utils::streamId(), jami::video::VideoMixer::streamInfo(), strErr(), string_join(), string_remove_suffix(), string_replace(), string_split_set(), 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(), jami::PortAudioLayer::PortAudioLayerImpl::terminate(), jami::MediaEncoder::testH265Accel(), jami::AudioProcessor::tidyQueues(), jami::tls::TlsValidator::TlsValidator(), jami::tls::TlsValidator::TlsValidator(), jami::tls::TlsValidator::TlsValidator(), 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::MediaAttribute::toMediaMap(), jami::Tone::Tone(), jami::ConfInfo::toString(), jami::Conversation::Impl::toString(), jami::AudioFormat::toString(), jami::Uri::toString(), jami::MediaAttribute::toString(), jami::json::toString(), tp_state_callback(), 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::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::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(), utf8_validate_c_str(), jami::AudioDevice::valid(), jami::ConversationRepository::Impl::validateDevice(), jami::tls::TlsValidator::validAuthority(), jami::ConversationRepository::validClone(), jami::ConversationRepository::Impl::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::RingBuffer::waitForDataAvailable(), jami::SocketPair::waitForRTCP(), jami::AudioLayer::waitForStart(), jami::debug::WavWriter::WavWriter(), jami::Call::weak(), 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::AudioDeviceGuard::~AudioDeviceGuard(), jami::AudioFrameResizer::~AudioFrameResizer(), jami::opensl::AudioPlayer::~AudioPlayer(), jami::tls::ChanneledSIPTransport::~ChanneledSIPTransport(), jami::Conference::~Conference(), jami::TransferManager::Impl::~Impl(), jami::Conversation::Impl::~Impl(), jami::IncomingFile::~IncomingFile(), jami::JackLayer::~JackLayer(), jami::MediaDecoder::~MediaDecoder(), jami::MediaDemuxer::~MediaDemuxer(), jami::MediaEncoder::~MediaEncoder(), jami::MediaIOHandle::~MediaIOHandle(), jami::MediaPlayer::~MediaPlayer(), jami::NameDirectory::~NameDirectory(), jami::Observable< T >::~Observable(), jami::sip_utils::PJDialogLock::~PJDialogLock(), jami::PluginManager::~PluginManager(), jami::PresSubClient::~PresSubClient(), jami::PulseLayer::~PulseLayer(), jami::PulseMainLoopLock::~PulseMainLoopLock(), jami::Resampler::~Resampler(), jami::RingBufferPool::~RingBufferPool(), jami::ScheduledExecutor::~ScheduledExecutor(), jami::SIPCall::~SIPCall(), jami::SIPPresence::~SIPPresence(), jami::SipTransport::~SipTransport(), 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 300 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 87 of file ring_signal.h.

◆ fast_validate()

static const char * jami::fast_validate ( const char str)
static

Definition at line 67 of file utf8_utils.cpp.

References CONTINUATION_CHAR, emitSignal(), UNICODE_VALID, and UNLIKELY.

Referenced by utf8_validate_c_str().

Here is the call graph for this function:

◆ fast_validate_len()

static const char * jami::fast_validate_len ( const char str,
ssize_t  max_len 
)
static

Definition at line 126 of file utf8_utils.cpp.

References CONTINUATION_CHAR, emitSignal(), UNICODE_VALID, and UNLIKELY.

Referenced by utf8_validate(), and utf8_validate_c_str().

Here is the call graph for this function:

◆ ff_network_wait_fd()

static int jami::ff_network_wait_fd ( int  fd)
static

Definition at line 127 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 311 of file pulselayer.cpp.

References emitSignal().

Here is the call graph for this function:

◆ findDecoder()

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

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

std::string jami::formatHeader ( const char *const  file,
int  line 
)

Definition at line 126 of file logger.cpp.

References emitSignal(), and stripDirName().

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

Here is the call graph for this function:

◆ formatPrintfArgs()

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

Definition at line 157 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 123 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 1085 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 1067 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

◆ getDisplayed()

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

Definition at line 2818 of file jamiaccount.cpp.

References getDisplayed().

Referenced by getDisplayed().

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 53 of file ring_types.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 45 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 163 of file string_utils.h.

References emitSignal(), and getline_full().

Referenced by jami::ConversationRepository::changedFiles(), jami::MediaEncoder::print_sdp(), and 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 149 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 776 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 2832 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 845 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 837 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 549 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 535 of file sipcall.h.

◆ getResolveCallbackMap()

static SafeResolveCallbackMap & jami::getResolveCallbackMap ( )
static

Definition at line 1471 of file sipvoiplink.cpp.

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

◆ getSignalHandlers()

SignalHandlerMap & jami::getSignalHandlers ( )

Definition at line 23 of file ring_signal.cpp.

References emitSignal().

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

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 514 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 100 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()

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

Hangup many calls with same error code.

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

Definition at line 70 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 >
void jami::hangupCallsIf ( Call::SubcallSet &&  calls,
int  errcode,
T  pred 
)
inline

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 57 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 642 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 63 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 70 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 >
bool jami::is_uninitialized ( std::weak_ptr< T > const weak)

Definition at line 209 of file sipvoiplink.cpp.

References emitSignal().

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

Here is the call graph for this function:

◆ log_to_if_enabled()

template<typename T >
void jami::log_to_if_enabled ( T handler,
Logger::Msg &  msg 
)

Definition at line 545 of file logger.cpp.

References emitSignal().

Referenced by jami::Logger::vlog(), and jami::Logger::write().

Here is the call graph for this function:

◆ make_backup()

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

Definition at line 147 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 819 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 957 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 1311 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 1318 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 1287 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:

◆ openFullDuplexStream()

static void jami::openFullDuplexStream ( PaStream **  stream,
PaDeviceIndex  inputDeviceIndex,
PaDeviceIndex  ouputDeviceIndex,
PaStreamCallback callback,
void user_data 
)
static

Definition at line 564 of file portaudiolayer.cpp.

References emitSignal(), and JAMI_ERR.

Referenced by jami::PortAudioLayer::PortAudioLayerImpl::initFullDuplexStream().

Here is the call graph for this function:

◆ openStreamDevice()

static void jami::openStreamDevice ( PaStream **  stream,
PaDeviceIndex  device,
Direction  direction,
PaStreamCallback callback,
void user_data 
)
static

Definition at line 533 of file portaudiolayer.cpp.

References direction, emitSignal(), JAMI_ERR, and Output.

Referenced by jami::PortAudioLayer::PortAudioLayerImpl::initInputStream(), and jami::PortAudioLayer::PortAudioLayerImpl::initOutputStream().

Here is the call graph for this function:

◆ operator+()

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

Definition at line 216 of file rational.h.

◆ operator-() [1/2]

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

Definition at line 222 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 232 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 529 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 923 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 256 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 248 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 1144 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 165 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 174 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 179 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 193 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 157 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 801 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 829 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 116 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 109 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 986 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 47 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 1279 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 1478 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 156 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 1002 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 1104 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 853 of file videomanager.cpp.

References emitSignal(), and getMediaPlayer().

Referenced by libjami::setAutoRestart().

Here is the call graph for this function:

◆ setDhtLogLevel()

static unsigned jami::setDhtLogLevel ( )
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 198 of file manager.cpp.

References emitSignal().

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

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 240 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 214 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 129 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 140 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 187 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 143 of file string_utils.cpp.

References emitSignal().

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

Here is the call graph for this function:

◆ starts_with()

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

Definition at line 125 of file string_utils.h.

References emitSignal().

Referenced by 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 105 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 178 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 159 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 184 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 const char * jami::stripDirName ( const char path)
static

Definition at line 117 of file logger.cpp.

References DIR_SEPARATOR_CH, and 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 565 of file pulselayer.cpp.

References PA_EC_SUFFIX.

◆ stripPrefix()

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

Definition at line 211 of file jamiaccount.cpp.

References emitSignal(), JAMI_URI_PREFIX, and RING_URI_PREFIX.

Referenced by parseJamiUri().

Here is the call graph for this function:

◆ to_hex_string()

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

Definition at line 117 of file string_utils.cpp.

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

◆ to_int() [1/2]

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

Definition at line 111 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 99 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 221 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 77 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 575 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 158 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 1169 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 133 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 187 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 135 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 57 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 82 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 195 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 67 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 247 of file utf8_utils.cpp.

References emitSignal(), utf8_validate(), and utf8_validate_c_str().

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 239 of file utf8_utils.cpp.

References emitSignal(), and fast_validate_len().

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

Here is the call graph for this function:

◆ utf8_validate_c_str()

bool jami::utf8_validate_c_str ( const char str,
ssize_t  max_len,
const char **  end 
)

utf8_validate_c_str: @str: a pointer to character data @max_len: max bytes to validate, or -1 to go until NULL @end: return location for end of valid data

Validates UTF-8 encoded text. @str is the text to validate; if @str is nul-terminated, then @max_len can be -1, otherwise @max_len should be the number of bytes to validate. If @end is non-NULL, then the end of the valid range will be stored there (i.e. the start of the first invalid character if some bytes were invalid, or the end of the text being validated otherwise).

Note that utf8_validate() returns false if @max_len is positive and any of the @max_len bytes are nul.

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 220 of file utf8_utils.cpp.

References emitSignal(), fast_validate(), and fast_validate_len().

Referenced by utf8_make_valid().

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

Definition at line 21 of file sipaccount_config.h.

Referenced by jami::Manager::ManagerPimpl::loadAccount().

◆ 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 42 of file archive_account_manager.cpp.

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

◆ AUTHENTICATION_USERNAME_KEY

constexpr const char* jami::AUTHENTICATION_USERNAME_KEY = "authenticationUsername"
constexpr

Definition at line 35 of file account_config.cpp.

◆ beta

constexpr float jami::beta = 0.95f
staticconstexpr

Definition at line 32 of file congestion_control.cpp.

◆ CACHE_DIRECTORY

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

Definition at line 52 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 43 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 72 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 76 of file preferences.cpp.

◆ DEFAULT_CONFIG [1/2]

◆ DEFAULT_CONFIG [2/2]

const SipAccountConfig jami::DEFAULT_CONFIG {}
static

Definition at line 72 of file sipaccount_config.cpp.

◆ DEFAULT_ICE_INIT_TIMEOUT

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

Definition at line 83 of file sipcall.cpp.

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

◆ DEFAULT_ICE_NEGO_TIMEOUT

constexpr std::chrono::seconds jami::DEFAULT_ICE_NEGO_TIMEOUT {60}
staticconstexpr

Definition at line 85 of file sipcall.cpp.

◆ 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 31 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 114 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"},
{MediaDirection::UNKNOWN, "unknown"}}

Definition at line 50 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 49 of file conversationrepository.h.

Referenced by jami::Conversation::Impl::Impl().

◆ EINVALIDMODE

constexpr auto jami::EINVALIDMODE = 2
constexpr

Definition at line 50 of file conversationrepository.h.

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

◆ ENDL

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

Definition at line 79 of file logger.cpp.

Referenced by jami::ConsoleLog::printLogImpl().

◆ endpt_

◆ EUNAUTHORIZED

constexpr auto jami::EUNAUTHORIZED = 4
constexpr

Definition at line 52 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 84 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 41 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.

◆ HAS_CUSTOM_USER_AGENT_KEY

constexpr const char* jami::HAS_CUSTOM_USER_AGENT_KEY = "hasCustomUserAgent"
constexpr

Definition at line 48 of file account_config.cpp.

◆ HEX_PREFIX

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

Definition at line 55 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 88 of file sipcall.cpp.

◆ ICE_COMP_ID_RTP

constexpr int jami::ICE_COMP_ID_RTP {1}
staticconstexpr

Definition at line 87 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

constexpr const char* const jami::JAMI_URI_PREFIX = "jami:"
staticconstexpr

◆ jitterBufferMaxDelay_

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

Definition at line 49 of file media_decoder.cpp.

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

◆ jitterBufferMaxSize_

const unsigned jami::jitterBufferMaxSize_ {1500}

Definition at line 47 of file media_decoder.cpp.

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

◆ kd

◆ ku

constexpr float jami::ku = 0.004f
staticconstexpr

Definition at line 34 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_ACCEL_FAILURES

const constexpr unsigned jami::MAX_ACCEL_FAILURES {5}
constexpr

Definition at line 51 of file media_decoder.cpp.

◆ 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 72 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 90 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 111 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 113 of file jamiaccount.cpp.

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

◆ MIME_TYPE_PIDF

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

◆ MIN_BUFFER_SIZE

const size_t jami::MIN_BUFFER_SIZE = 1024
static

Definition at line 32 of file ringbuffer.cpp.

◆ MIN_REGISTRATION_TIME

constexpr unsigned jami::MIN_REGISTRATION_TIME = 60
staticconstexpr

Definition at line 73 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 82 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 86 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 26 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 102 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 101 of file sipcall.cpp.

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

◆ MULTIICE_REQUIRED_VERSION

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

Definition at line 93 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 92 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 90 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 89 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 353 of file sippresence.cpp.

◆ NET_POLL_TIMEOUT

constexpr int jami::NET_POLL_TIMEOUT = 100
staticconstexpr

Definition at line 77 of file socket_pair.cpp.

Referenced by ff_network_wait_fd().

◆ NEW_CONFPROTOCOL_VERSION

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

Definition at line 96 of file sipcall.cpp.

◆ NEW_CONFPROTOCOL_VERSION_STR

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

Definition at line 95 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 44 of file archive_account_manager.cpp.

◆ ORDER_KEY

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

Definition at line 79 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 37 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 123 of file manager.cpp.

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

◆ packetFMT

constexpr uint8_t jami::packetFMT = 15
staticconstexpr

Definition at line 27 of file congestion_control.cpp.

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

◆ packetType

constexpr uint8_t jami::packetType = 206
staticconstexpr

Definition at line 28 of file congestion_control.cpp.

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

◆ packetVersion

constexpr uint8_t jami::packetVersion = 2
staticconstexpr

Definition at line 26 of file congestion_control.cpp.

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

◆ PASSWORD_KEY

constexpr const char* jami::PASSWORD_KEY = "password"
constexpr

Definition at line 37 of file account_config.cpp.

◆ 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 44 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 45 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 46 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 42 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 43 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 206 of file jamiaccount.cpp.

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

◆ PEER_DISCOVERY_JAMI_SERVICE

const std::string jami::PEER_DISCOVERY_JAMI_SERVICE = "jami"
static

◆ 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 95 of file sipaccount.cpp.

◆ PN_FCM

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

Definition at line 94 of file sipaccount.cpp.

◆ POOL_INCREMENT_SIZE

constexpr int jami::POOL_INCREMENT_SIZE = POOL_INITIAL_SIZE
staticconstexpr

Definition at line 48 of file sdp.cpp.

◆ POOL_INITIAL_SIZE

constexpr int jami::POOL_INITIAL_SIZE = 16384
staticconstexpr

Definition at line 47 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
static
Initial value:
= std::regex(
"(https?://)?([\\w\\.\\-_\\~]+)(:(\\d+)|:\\[(.+)-(.+)\\])?")

Definition at line 203 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 31 of file congestion_control.cpp.

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

◆ QUERY_ADDR

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

Definition at line 51 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 88 of file sipaccount.cpp.

◆ REGISTRATION_RETRY_INTERVAL

constexpr unsigned jami::REGISTRATION_RETRY_INTERVAL = 300
staticconstexpr

Definition at line 89 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 99 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 98 of file sipcall.cpp.

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

◆ RING_URI_PREFIX

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

Definition at line 201 of file jamiaccount.cpp.

Referenced by stripPrefix().

◆ RINGDIR

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

Definition at line 63 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 34 of file ringbuffer.cpp.

◆ ROTATION_FILTER_INPUT_NAME

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

Definition at line 43 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 81 of file socket_pair.cpp.

◆ RTP_MAX_PACKET_LENGTH

constexpr int jami::RTP_MAX_PACKET_LENGTH = 2048
staticconstexpr

Definition at line 78 of file socket_pair.cpp.

◆ SAVE_INTERVAL

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

Definition at line 56 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.

◆ SIZEBUF

constexpr size_t jami::SIZEBUF = 16000
staticconstexpr

Definition at line 31 of file ring_types.h.

Referenced by jami::RingBufferPool::createRingBuffer().

◆ SMPLRATE_KEY

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

◆ SRTP_OVERHEAD

constexpr auto jami::SRTP_OVERHEAD = 10
staticconstexpr

Definition at line 80 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 110 of file jamiaccount.cpp.

Referenced by transaction_request_cb().

◆ task_cookie

std::atomic< uint64_t > jami::task_cookie = {0}

Definition at line 22 of file scheduled_executor.cpp.

◆ TRANSPORT_STATE_STR

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

Definition at line 54 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 59 of file siptransport.cpp.

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

◆ TREATED_PATH

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

Definition at line 115 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 79 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 29 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
Initial value:
{
R"(^([a-zA-Z]+:(?://)?)?(?:([\w\-.~%!$&'()*+,;=]{1,64}|[^\s@]{1,64})@)?([^\s@]+)$)"
}

Definition at line 68 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 36 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[]
staticconstexpr
Initial value:
= {"Default"sv,
"TLSv1.2"sv,
"TLSv1.1"sv,
"TLSv1"sv}

Definition at line 90 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().