27 #include <TelepathyQt/IncomingStreamTubeChannel>
28 #include <TelepathyQt/Debug>
36 kDebug() <<
"Initializing tubes manager";
38 Tp::enableDebug(
true);
39 Tp::enableWarnings(
true);
44 m_stubeClient = Tp::StreamTubeClient::create(
45 QStringList() << QLatin1String(
"rfb"),
47 QLatin1String(
"krdc_rfb_handler"));
49 m_stubeClient->setToAcceptAsTcp();
51 connect(m_stubeClient.data(),
52 SIGNAL(tubeAcceptedAsTcp(QHostAddress,quint16,QHostAddress,quint16,
53 Tp::AccountPtr,Tp::IncomingStreamTubeChannelPtr)),
54 SLOT(onTubeAccepted(QHostAddress,quint16,QHostAddress,quint16,
55 Tp::AccountPtr,Tp::IncomingStreamTubeChannelPtr)));
60 kDebug() <<
"Destroying tubes manager";
65 if (m_tubes.contains(url)) {
66 m_tubes.take(url)->requestClose();
70 void TubesManager::onTubeAccepted(
71 const QHostAddress & listenAddress, quint16 listenPort,
72 const QHostAddress & sourceAddress, quint16 sourcePort,
73 const Tp::AccountPtr & account,
74 const Tp::IncomingStreamTubeChannelPtr & tube)
76 Q_UNUSED(sourceAddress);
82 url.setHost(listenAddress.toString());
83 url.setPort(listenPort);
85 kDebug() <<
"newConnection:" << url;
86 m_tubes.insert(url, tube);
void closeTube(const KUrl &url)
TubesManager(QObject *parent)