18#ifndef LIBJAMI_CALLMANAGERI_H
19#define LIBJAMI_CALLMANAGERI_H
35 const std::map<std::string, std::shared_ptr<CallbackWrapperBase>>&);
41 const std::string& accountId,
42 const std::string& to,
43 const std::vector<std::map<std::string, std::string>>& mediaList);
50 const std::string& callId,
51 const std::string& mediaType,
54 const std::string& callId,
55 const std::string& to);
57 const std::string& callId,
58 const std::string& targetID);
60 const std::string& callId);
65 const std::string& callId,
66 const std::vector<libjami::MediaMap>& mediaList);
68 const std::string& callId,
69 const std::vector<libjami::MediaMap>& mediaList);
82 const std::string& callId,
83 const std::vector<libjami::MediaMap>& mediaList);
87 const std::string& sel_callId,
88 const std::string& account2Id,
89 const std::string& drag_callId);
91 const std::vector<std::string>& participants);
93 const std::string& confId,
97 const std::string& callId,
98 const std::string& account2Id,
99 const std::string& confId);
104 const std::string& sel_confId,
105 const std::string& account2Id,
106 const std::string& drag_confId);
112 const std::string& confId);
115 const std::string& callId);
117 const std::string& callId);
119 const std::string& accountId,
const std::string& confId);
121 const std::string& confId,
122 const std::string& accountUri,
126 const std::string& confId,
127 const std::string& accountUri,
131 const std::string& confId,
132 const std::string& accountUri,
133 const std::string& deviceId,
134 const std::string& streamId,
138 const std::string& confId,
139 const std::string& callId);
141 const std::string& confId,
142 const std::string& accountUri,
143 const std::string& deviceId,
144 const std::string& streamId,
147 const std::string& confId,
148 const std::string& accountUri,
149 const std::string& deviceId);
152 const std::string& confId,
153 const std::string& peerId,
156 const std::string& confId,
157 const std::string& accountUri,
158 const std::string& deviceId,
180 const std::string& callId,
181 const std::string& resource);
183 const std::string& confId,
184 const std::string& resource);
188 const std::string& callId,
189 const std::map<std::string, std::string>& messages,
190 const std::string& from,
198 constexpr static const char* name =
"StateChange";
199 using cb_type = void(
const std::string&,
const std::string&,
const std::string&,
int);
203 constexpr static const char* name =
"TransferFailed";
208 constexpr static const char* name =
"TransferSucceeded";
213 constexpr static const char* name =
"RecordPlaybackStopped";
218 constexpr static const char* name =
"VoiceMailNotify";
219 using cb_type = void(
const std::string&, int32_t, int32_t, int32_t);
223 constexpr static const char* name =
"IncomingMessage";
227 const std::map<std::string, std::string>&);
231 constexpr static const char* name =
"IncomingCall";
232 using cb_type = void(
const std::string&,
const std::string&,
const std::string&);
236 constexpr static const char* name =
"IncomingCallWithMedia";
240 const std::vector<std::map<std::string, std::string>>&);
244 constexpr static const char* name =
"MediaChangeRequested";
247 const std::vector<std::map<std::string, std::string>>&);
251 constexpr static const char* name =
"RecordPlaybackFilepath";
252 using cb_type = void(
const std::string&,
const std::string&);
256 constexpr static const char* name =
"ConferenceCreated";
257 using cb_type = void(
const std::string&,
const std::string&,
const std::string&);
261 constexpr static const char* name =
"ConferenceChanged";
262 using cb_type = void(
const std::string&,
const std::string&,
const std::string&);
266 constexpr static const char* name =
"UpdatePlaybackScale";
267 using cb_type = void(
const std::string&,
unsigned,
unsigned);
271 constexpr static const char* name =
"ConferenceRemoved";
272 using cb_type = void(
const std::string&,
const std::string&);
276 constexpr static const char* name =
"RecordingStateChanged";
277 using cb_type = void(
const std::string&,
int);
281 constexpr static const char* name =
"RtcpReportReceived";
282 using cb_type = void(
const std::string&,
const std::map<std::string, int>&);
286 constexpr static const char* name =
"PeerHold";
287 using cb_type = void(
const std::string&,
bool);
291 constexpr static const char* name =
"VideoMuted";
292 using cb_type = void(
const std::string&,
bool);
296 constexpr static const char* name =
"AudioMuted";
297 using cb_type = void(
const std::string&,
bool);
301 constexpr static const char* name =
"SmartInfo";
302 using cb_type = void(
const std::map<std::string, std::string>&);
306 constexpr static const char* name =
"ConnectionUpdate";
307 using cb_type = void(
const std::string&,
int);
311 constexpr static const char* name =
"OnConferenceInfosUpdated";
313 const std::vector<std::map<std::string, std::string>>&);
317 constexpr static const char* name =
"RemoteRecordingChanged";
318 using cb_type = void(
const std::string&,
const std::string&,
bool);
323 constexpr static const char* name =
"MediaNegotiationStatus";
326 const std::vector<std::map<std::string, std::string>>&);
void muteParticipant(const std::string &accountId, const std::string &confId, const std::string &peerId, const bool &state)
DEPRECATED USE muteStream.
LIBJAMI_PUBLIC bool start(const std::filesystem::path &config_file={}) noexcept
Start asynchronously daemon created by init().
bool unholdConference(const std::string &accountId, const std::string &confId)
void playDTMF(const std::string &key)
bool accept(const std::string &accountId, const std::string &callId)
bool transfer(const std::string &accountId, const std::string &callId, const std::string &to)
std::map< std::string, std::string > getCallDetails(const std::string &accountId, const std::string &callId)
bool switchInput(const std::string &accountId, const std::string &callId, const std::string &resource)
bool startRecordedFilePlayback(const std::string &filepath)
bool holdConference(const std::string &accountId, const std::string &confId)
std::string placeCallWithMedia(const std::string &accountId, const std::string &to, const std::vector< libjami::MediaMap > &mediaList)
bool addParticipant(const std::string &accountId, const std::string &callId, const std::string &account2Id, const std::string &confId)
void setActiveParticipant(const std::string &accountId, const std::string &confId, const std::string &participant)
DEPRECATED, USE setActiveStream.
bool hangUpConference(const std::string &accountId, const std::string &confId)
void raiseHand(const std::string &accountId, const std::string &confId, const std::string &accountUri, const std::string &deviceId, const bool &state)
bool detachLocalParticipant()
void setModerator(const std::string &accountId, const std::string &confId, const std::string &peerId, const bool &state)
void stopRecordedFilePlayback()
void muteStream(const std::string &accountId, const std::string &confId, const std::string &accountUri, const std::string &deviceId, const std::string &streamId, const bool &state)
bool acceptWithMedia(const std::string &accountId, const std::string &callId, const std::vector< libjami::MediaMap > &mediaList)
bool getIsRecording(const std::string &accountId, const std::string &callId)
bool hangUp(const std::string &accountId, const std::string &callId)
bool requestMediaChange(const std::string &accountId, const std::string &callId, const std::vector< libjami::MediaMap > &mediaList)
bool isConferenceParticipant(const std::string &accountId, const std::string &callId)
void startSmartInfo(uint32_t refreshTimeMs)
std::string getConferenceId(const std::string &accountId, const std::string &callId)
bool hold(const std::string &accountId, const std::string &callId)
std::string placeCall(const std::string &accountId, const std::string &to)
bool switchSecondaryInput(const std::string &accountId, const std::string &confId, const std::string &resource)
std::map< std::string, std::string > getConferenceDetails(const std::string &accountId, const std::string &confId)
void raiseParticipantHand(const std::string &accountId, const std::string &confId, const std::string &peerId, const bool &state)
DEPRECATED, use raiseHand.
void setConferenceLayout(const std::string &accountId, const std::string &confId, uint32_t layout)
bool unhold(const std::string &accountId, const std::string &callId)
void registerCallHandlers(const std::map< std::string, std::shared_ptr< CallbackWrapperBase > > &handlers)
std::vector< std::string > getConferenceList(const std::string &accountId)
bool addMainParticipant(const std::string &accountId, const std::string &confId)
bool toggleRecording(const std::string &accountId, const std::string &callId)
std::vector< std::string > getParticipantList(const std::string &accountId, const std::string &confId)
std::vector< std::map< std::string, std::string > > currentMediaList(const std::string &accountId, const std::string &callId)
void hangupParticipant(const std::string &accountId, const std::string &confId, const std::string &accountUri, const std::string &deviceId)
void recordPlaybackSeek(double value)
void createConfFromParticipantList(const std::string &accountId, const std::vector< std::string > &participants)
bool detachParticipant(const std::string &, const std::string &callId)
bool answerMediaChangeRequest(const std::string &accountId, const std::string &callId, const std::vector< libjami::MediaMap > &mediaList)
Answer a media change request.
bool attendedTransfer(const std::string &accountId, const std::string &transferID, const std::string &targetID)
bool muteLocalMedia(const std::string &accountId, const std::string &callId, const std::string &mediaType, bool mute)
void startTone(int32_t start, int32_t type)
bool joinConference(const std::string &accountId, const std::string &sel_confId, const std::string &account2Id, const std::string &drag_confId)
void setRecording(const std::string &accountId, const std::string &callId)
std::vector< std::string > getCallList()
bool refuse(const std::string &accountId, const std::string &callId)
void sendTextMessage(const std::string &accountId, const std::string &callId, const std::map< std::string, std::string > &messages, const std::string &from, bool isMixed)
bool joinParticipant(const std::string &accountId, const std::string &sel_callId, const std::string &account2Id, const std::string &drag_callId)
void setActiveStream(const std::string &accountId, const std::string &confId, const std::string &accountUri, const std::string &deviceId, const std::string &streamId, const bool &state)
std::vector< std::map< std::string, std::string > > getConferenceInfos(const std::string &accountId, const std::string &confId)
void(const std::string &, bool) cb_type
void(const std::string &, const std::string &, const std::string &) cb_type
void(const std::string &, const std::string &, const std::string &) cb_type
void(const std::string &, const std::string &) cb_type
void(const std::string &, int) cb_type
void(const std::string &, const std::string &, const std::string &) cb_type
void(const std::string &, const std::string &, const std::string &, const std::map< std::string, std::string > &) cb_type
void(const std::string &, const std::vector< std::map< std::string, std::string > > &) cb_type
void(const std::string &, bool) cb_type
void(const std::string &, const std::string &) cb_type
void(const std::string &) cb_type
void(const std::string &, int) cb_type
void(const std::string &, const std::string &, bool) cb_type
void(const std::string &, const std::map< std::string, int > &) cb_type
void(const std::map< std::string, std::string > &) cb_type
void(const std::string &, const std::string &, const std::string &, int) cb_type
void(const std::string &, unsigned, unsigned) cb_type
void(const std::string &, bool) cb_type
void(const std::string &, int32_t, int32_t, int32_t) cb_type