7#ifndef QXMPPCALLMANAGER_P_H
8#define QXMPPCALLMANAGER_P_H
11#include "QXmppExternalService.h"
12#include "QXmppPromise.h"
13#include "QXmppStunServer.h"
14#include "QXmppTurnServer.h"
34namespace QXmpp::Private {
36struct StunServerConfig {
38 std::optional<QDateTime> expires;
41struct TurnServerConfig {
43 std::optional<QDateTime> expires;
46struct StunTurnConfig {
47 QList<StunServerConfig> stun;
48 std::optional<TurnServerConfig> turn;
51using ServiceResult = std::variant<QXmppExternalService, QXmppError>;
52using ServicesResult = std::variant<QVector<QXmppExternalService>,
QXmppError>;
56using StunTurnResult = std::variant<StunTurnConfig, QXmppError>;
61class QXmppCallManagerPrivate
67 QList<QXmpp::StunServer> stunServers()
const;
68 std::optional<QXmpp::TurnServer> turnServer()
const;
70 QList<QXmppCall *> calls;
73 std::optional<QXmpp::Private::MultiPromise<void>> refreshStunTurnConfigPromise;
74 std::optional<QXmpp::Private::StunTurnConfig> stunTurnServers;
75 QList<QXmpp::StunServer> fallbackStunServers;
76 std::optional<QXmpp::TurnServer> fallbackTurnServer;
78 bool dtlsRequired =
false;
79 bool supportsDtls =
false;
The QXmppCallManager class provides support for making and receiving voice calls.
Definition QXmppCallManager.h:25
Definition QXmppCall.h:24
Main class for starting and managing connections to XMPP servers.
Definition QXmppClient.h:62
Definition QXmppJingleData.h:352
The QXmppLoggable class represents a source of logging messages.
Definition QXmppLogger.h:109
Definition QXmppTask.h:330
Definition QXmppError.h:17