QXmpp Version: 1.10.0
Public Slots | Signals | Public Member Functions | Friends | List of all members
QXmppCallManager Class Reference

The QXmppCallManager class provides support for making and receiving voice calls. More...

#include <QXmppCallManager.h>

Inheritance diagram for QXmppCallManager:
Inheritance graph
[legend]
Collaboration diagram for QXmppCallManager:
Collaboration graph
[legend]

Public Slots

QXmppCallcall (const QString &jid)
 

Signals

void callReceived (QXmppCall *call)
 
void callStarted (QXmppCall *call)
 This signal is emitted when a call (incoming or outgoing) is started.
 
- Signals inherited from QXmppLoggable
void setGauge (const QString &gauge, double value)
 Sets the given gauge to value.
 
void logMessage (QXmppLogger::MessageType type, const QString &msg)
 This signal is emitted to send logging messages.
 
void updateCounter (const QString &counter, qint64 amount=1)
 Updates the given counter by amount.
 

Public Member Functions

 QXmppCallManager ()
 
 ~QXmppCallManager () override
 
void setStunServers (const QList< QPair< QHostAddress, quint16 > > &servers)
 
void setStunServer (const QHostAddress &host, quint16 port=3478)
 
void setTurnServer (const QHostAddress &host, quint16 port=3478)
 
void setTurnUser (const QString &user)
 
void setTurnPassword (const QString &password)
 
- Public Member Functions inherited from QXmppClientExtension
 QXmppClientExtension ()
 
virtual QStringList discoveryFeatures () const
 
virtual QList< QXmppDiscoveryIq::IdentitydiscoveryIdentities () const
 
virtual bool handleStanza (const QDomElement &stanza)
 You need to implement this method to process incoming XMPP stanzas. More...
 
virtual bool handleStanza (const QDomElement &stanza, const std::optional< QXmppE2eeMetadata > &e2eeMetadata)
 You need to implement this method to process incoming XMPP stanzas. More...
 
- Public Member Functions inherited from QXmppLoggable
 QXmppLoggable (QObject *parent=nullptr)
 

Friends

class QXmppCall
 
class QXmppCallPrivate
 
class QXmppCallManagerPrivate
 

Additional Inherited Members

- Protected Member Functions inherited from QXmppClientExtension
QXmppClientclient () const
 
virtual void setClient (QXmppClient *client)
 
virtual void onRegistered (QXmppClient *client)
 
virtual void onUnregistered (QXmppClient *client)
 
void injectIq (const QDomElement &element, const std::optional< QXmppE2eeMetadata > &e2eeMetadata)
 
bool injectMessage (QXmppMessage &&message)
 
- Protected Member Functions inherited from QXmppLoggable
void debug (const QString &message)
 
void info (const QString &message)
 
void warning (const QString &message)
 
void logReceived (const QString &message)
 
void logSent (const QString &message)
 

Detailed Description

The QXmppCallManager class provides support for making and receiving voice calls.

Session initiation is performed as described by XEP-0166: Jingle, XEP-0167: Jingle RTP Sessions and XEP-0176: Jingle ICE-UDP Transport Method.

The data stream is connected using Interactive Connectivity Establishment (RFC 5245) and data is transferred using Real Time Protocol (RFC 3550) packets.

To make use of this manager, you need to instantiate it and load it into the QXmppClient instance as follows:

client->addExtension(manager);
The QXmppCallManager class provides support for making and receiving voice calls.
Definition: QXmppCallManager.h:46
QXmppCallManager()
Definition: QXmppCallManager.cpp:56
QXmppClient * client() const
Definition: QXmppClientExtension.cpp:57
bool addExtension(QXmppClientExtension *extension)
Registers a new extension with the client.
Definition: QXmppClient.cpp:376

Constructor & Destructor Documentation

◆ QXmppCallManager()

QXmppCallManager::QXmppCallManager ( )

Constructs a QXmppCallManager object to handle incoming and outgoing Voice-Over-IP calls.

◆ ~QXmppCallManager()

QXmppCallManager::~QXmppCallManager ( )
overridedefault

Destroys the QXmppCallManager object.

Member Function Documentation

◆ call

QXmppCall * QXmppCallManager::call ( const QString &  jid)
slot

Initiates a new outgoing call to the specified recipient.

Parameters
jid

◆ callReceived

void QXmppCallManager::callReceived ( QXmppCall call)
signal

This signal is emitted when a new incoming call is received.

To accept the call, invoke the call's QXmppCall::accept() method. To refuse the call, invoke the call's QXmppCall::hangup() method.

◆ setStunServer()

void QXmppCallManager::setStunServer ( const QHostAddress &  host,
quint16  port = 3478 
)

Sets a single STUN server to use to determine server-reflexive addresses and ports.

Note
This may only be called prior to calling bind().
Parameters
hostThe address of the STUN server.
portThe port of the STUN server.

◆ setStunServers()

void QXmppCallManager::setStunServers ( const QList< QPair< QHostAddress, quint16 > > &  servers)

Sets multiple STUN servers to use to determine server-reflexive addresses and ports.

Note
This may only be called prior to calling bind().
Parameters
serversList of the STUN servers.
Since
QXmpp 1.3

◆ setTurnPassword()

void QXmppCallManager::setTurnPassword ( const QString &  password)

Sets the password used for authentication with the TURN server.

Parameters
password

◆ setTurnServer()

void QXmppCallManager::setTurnServer ( const QHostAddress &  host,
quint16  port = 3478 
)

Sets the TURN server to use to relay packets in double-NAT configurations.

Parameters
hostThe address of the TURN server.
portThe port of the TURN server.

◆ setTurnUser()

void QXmppCallManager::setTurnUser ( const QString &  user)

Sets the user used for authentication with the TURN server.

Parameters
user

The documentation for this class was generated from the following files: