QXmpp  Version:1.3.0
Public Slots | Signals | Public Member Functions | Static Public Member Functions | Friends | List of all members
QXmppIceComponent Class Reference

The QXmppIceComponent class represents a piece of a media stream requiring a single transport address, as defined by RFC 5245 (Interactive Connectivity Establishment). More...

#include <QXmppStun.h>

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

Public Slots

void close ()
 Stops ICE connectivity checks and closes the underlying sockets.
 
void connectToHost ()
 Starts ICE connectivity checks.
 
qint64 sendDatagram (const QByteArray &datagram)
 

Signals

void connected ()
 This signal is emitted once ICE negotiation succeeds.
 
void datagramReceived (const QByteArray &datagram)
 This signal is emitted when a data packet is received.
 
void gatheringStateChanged ()
 
void localCandidatesChanged ()
 This signal is emitted when the list of local candidates changes.
 
- 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

 ~QXmppIceComponent () override
 Destroys the QXmppIceComponent.
 
int component () const
 
bool isConnected () const
 Returns true if ICE negotiation completed, false otherwise.
 
QList< QXmppJingleCandidatelocalCandidates () const
 Returns the list of local candidates.
 
- Public Member Functions inherited from QXmppLoggable
 QXmppLoggable (QObject *parent=nullptr)
 

Static Public Member Functions

static QList< QHostAddress > discoverAddresses ()
 Returns the list of local network addresses.
 
static QList< QUdpSocket * > reservePorts (const QList< QHostAddress > &addresses, int count, QObject *parent=nullptr)
 

Friends

class QXmppIceComponentPrivate
 
class QXmppIceConnection
 

Additional Inherited Members

- 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 QXmppIceComponent class represents a piece of a media stream requiring a single transport address, as defined by RFC 5245 (Interactive Connectivity Establishment).

Member Function Documentation

◆ component()

int QXmppIceComponent::component ( ) const

Returns the component id for the current socket, e.g. 1 for RTP and 2 for RTCP.

◆ reservePorts()

QList< QUdpSocket * > QXmppIceComponent::reservePorts ( const QList< QHostAddress > &  addresses,
int  count,
QObject *  parent = nullptr 
)
static

Tries to bind count UDP sockets on each of the given addresses.

The port numbers are chosen so that they are consecutive, starting at an even port. This makes them suitable for RTP/RTCP sockets pairs.

Parameters
addressesThe network address on which to bind the sockets.
countThe number of ports to reserve.
parentThe parent object for the sockets.

◆ sendDatagram

qint64 QXmppIceComponent::sendDatagram ( const QByteArray &  datagram)
slot

Sends a data packet to the remote party.

Parameters
datagram

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