QXmpp
Version:0.9.3
|
The QXmppIceConnection class represents a set of UDP sockets capable of performing Interactive Connectivity Establishment (RFC 5245). More...
#include <QXmppStun.h>
Public Types | |
enum | GatheringState { NewGatheringState, BusyGatheringState, CompleteGatheringState } |
Public Slots | |
void | close () |
Closes the ICE connection. | |
void | connectToHost () |
Starts ICE connectivity checks. | |
Signals | |
void | connected () |
This signal is emitted once ICE negotiation succeeds. | |
void | disconnected () |
This signal is emitted when ICE negotiation fails. | |
void | gatheringStateChanged () |
This signal is emitted when the gathering state of local candidates changes. | |
void | localCandidatesChanged () |
This signal is emitted when the list of local candidates changes. | |
Public Member Functions | |
QXmppIceConnection (QObject *parent=0) | |
QXmppIceComponent * | component (int component) |
void | addComponent (int component) |
void | setIceControlling (bool controlling) |
QList< QXmppJingleCandidate > | localCandidates () const |
QString | localUser () const |
Returns the local user fragment. | |
QString | localPassword () const |
Returns the local password. | |
void | addRemoteCandidate (const QXmppJingleCandidate &candidate) |
void | setRemoteUser (const QString &user) |
void | setRemotePassword (const QString &password) |
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) |
bool | bind (const QList< QHostAddress > &addresses) |
bool | isConnected () const |
Returns true if ICE negotiation completed, false otherwise. | |
GatheringState | gatheringState () const |
Properties | |
QXmppIceConnection::GatheringState | gatheringState |
The QXmppIceConnection class represents a set of UDP sockets capable of performing Interactive Connectivity Establishment (RFC 5245).
A typical example is:
QXmppIceConnection *connection = new QXmppIceConnection(); connection->setIceControlling(true); connection->addComponent(1); // if needed, set STUN / TURN configuration // connection->setStunServer(..); // connection->setTurnServer(..); // start listening connection->bind(QXmppIceComponent::discoverAddresses()); // receive remote information: user, password, candidates // ... // set remote information and start connecting connection->setRemoteUser("foo"); connection->setRemoteUser("bar"); connection->addRemoteCandidate(..); connection->connectToHost();
QXmppIceConnection::QXmppIceConnection | ( | QObject * | parent = 0 | ) |
Constructs a new ICE connection.
parent |
void QXmppIceConnection::addComponent | ( | int | component | ) |
Adds a component to this ICE connection, for instance 1 for RTP or 2 for RTCP.
component |
void QXmppIceConnection::addRemoteCandidate | ( | const QXmppJingleCandidate & | candidate | ) |
Adds a candidate for one of the remote components.
candidate |
bool QXmppIceConnection::bind | ( | const QList< QHostAddress > & | addresses | ) |
Binds the local sockets to the specified addresses.
addresses | The addresses on which to listen. |
QXmppIceComponent * QXmppIceConnection::component | ( | int | component | ) |
Returns the given component of this ICE connection.
component |
QList< QXmppJingleCandidate > QXmppIceConnection::localCandidates | ( | ) | const |
Returns the list of local HOST CANDIDATES candidates by iterating over the available network interfaces.
void QXmppIceConnection::setIceControlling | ( | bool | controlling | ) |
Sets whether the local party has the ICE controlling role.
note This must be called only once, immediately after creating the connection.
void QXmppIceConnection::setRemotePassword | ( | const QString & | password | ) |
Sets the remote password.
password |
void QXmppIceConnection::setRemoteUser | ( | const QString & | user | ) |
Sets the remote user fragment.
user |
void QXmppIceConnection::setStunServer | ( | const QHostAddress & | host, |
quint16 | port = 3478 |
||
) |
Sets the STUN server to use to determine server-reflexive addresses and ports.
host | The address of the STUN server. |
port | The port of the STUN server. |
void QXmppIceConnection::setTurnPassword | ( | const QString & | password | ) |
Sets the password used for authentication with the TURN server.
password |
void QXmppIceConnection::setTurnServer | ( | const QHostAddress & | host, |
quint16 | port = 3478 |
||
) |
Sets the TURN server to use to relay packets in double-NAT configurations.
host | The address of the TURN server. |
port | The port of the TURN server. |
void QXmppIceConnection::setTurnUser | ( | const QString & | user | ) |
Sets the user used for authentication with the TURN server.
user |
QXmppIceConnection::GatheringState QXmppIceConnection::gatheringState [read] |
Returns the ICE gathering state, that is the discovery of local candidates.