Public Slots | Signals | Public Member Functions | Static Public Member Functions

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:
QXmppLoggable

List of all members.

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 localCandidatesChanged ()
 This signal is emitted when the list of local candidates changes.

Public Member Functions

 QXmppIceComponent (bool controlling, QObject *parent=0)
 ~QXmppIceComponent ()
 Destroys the QXmppIceComponent.
void setStunServer (const QHostAddress &host, quint16 port)
QList< QXmppJingleCandidatelocalCandidates () const
 Returns the list of local candidates.
void setLocalUser (const QString &user)
void setLocalPassword (const QString &password)
int component () const
void setComponent (int component)
bool addRemoteCandidate (const QXmppJingleCandidate &candidate)
 Adds a remote STUN candidate.
void setRemoteUser (const QString &user)
void setRemotePassword (const QString &password)
bool isConnected () const
 Returns true if ICE negotiation completed, false otherwise.
void setSockets (QList< QUdpSocket * > sockets)

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=0)

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


Constructor & Destructor Documentation

QXmppIceComponent::QXmppIceComponent ( bool  controlling,
QObject *  parent = 0 
)

Constructs a new QXmppIceComponent.

Parameters:
controlling 
parent 

Member Function Documentation

int QXmppIceComponent::component (  )  const

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

QList< QUdpSocket * > QXmppIceComponent::reservePorts ( const QList< QHostAddress > &  addresses,
int  count,
QObject *  parent = 0 
) [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:
addresses The network address on which to bind the sockets.
count The number of ports to reserve.
parent The parent object for the sockets.
qint64 QXmppIceComponent::sendDatagram ( const QByteArray &  datagram  )  [slot]

Sends a data packet to the remote party.

Parameters:
datagram 
void QXmppIceComponent::setComponent ( int  component  ) 

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

Parameters:
component 
void QXmppIceComponent::setLocalPassword ( const QString &  password  ) 

Sets the local password.

Parameters:
password 
void QXmppIceComponent::setLocalUser ( const QString &  user  ) 

Sets the local user fragment.

Parameters:
user 
void QXmppIceComponent::setRemotePassword ( const QString &  password  ) 

Sets the remote password.

Parameters:
password 
void QXmppIceComponent::setRemoteUser ( const QString &  user  ) 

Sets the remote user fragment.

Parameters:
user 
void QXmppIceComponent::setSockets ( QList< QUdpSocket * >  sockets  ) 

Sets the list of sockets to use for this component.

Parameters:
sockets 
void QXmppIceComponent::setStunServer ( const QHostAddress &  host,
quint16  port 
)

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

Parameters:
host The address of the STUN server.
port The port of the STUN server.

The documentation for this class was generated from the following files:
 All Classes Functions Enumerations Enumerator