mirror of
https://github.com/tomahawk-player/tomahawk.git
synced 2025-01-19 15:37:01 +01:00
Use SipInfo class
This commit is contained in:
parent
4973768078
commit
4bc38491e4
@ -59,10 +59,10 @@ public slots:
|
||||
void disconnectPlugin();
|
||||
void configurationChanged();
|
||||
|
||||
void sendMsg( const QString& to, const QString& msg )
|
||||
void sendMsg( const QString& peerId, const SipInfo& info )
|
||||
{
|
||||
Q_UNUSED( to );
|
||||
Q_UNUSED( msg );
|
||||
Q_UNUSED( peerId );
|
||||
Q_UNUSED( info );
|
||||
}
|
||||
|
||||
void broadcastMsg( const QString &msg )
|
||||
@ -70,9 +70,9 @@ public slots:
|
||||
Q_UNUSED( msg );
|
||||
}
|
||||
|
||||
void addContact( const QString &jid, const QString& msg = QString() )
|
||||
void addContact( const QString &peerId, const QString& msg = QString() )
|
||||
{
|
||||
Q_UNUSED( jid );
|
||||
Q_UNUSED( peerId );
|
||||
Q_UNUSED( msg );
|
||||
}
|
||||
|
||||
|
@ -425,32 +425,17 @@ XmppSipPlugin::errorMessage( Jreen::Client::DisconnectReason reason )
|
||||
|
||||
|
||||
void
|
||||
XmppSipPlugin::sendMsg( const QString& to, const QString& msg )
|
||||
XmppSipPlugin::sendMsg( const QString& to, const SipInfo& info )
|
||||
{
|
||||
qDebug() << Q_FUNC_INFO << to << msg;
|
||||
qDebug() << Q_FUNC_INFO << to << info;
|
||||
|
||||
if ( !m_client )
|
||||
return;
|
||||
|
||||
/*******************************************************
|
||||
* Obsolete this by a SipMessage class
|
||||
*/
|
||||
QJson::Parser parser;
|
||||
bool ok;
|
||||
QVariant v = parser.parse( msg.toAscii(), &ok );
|
||||
if ( !ok || v.type() != QVariant::Map )
|
||||
{
|
||||
qDebug() << "Invalid JSON in Xmpp msg";
|
||||
return;
|
||||
}
|
||||
|
||||
QVariantMap m = v.toMap();
|
||||
/*******************************************************/
|
||||
|
||||
TomahawkXmppMessage *sipMessage;
|
||||
if ( m["visible"].toBool() )
|
||||
if ( info.isVisible() )
|
||||
{
|
||||
sipMessage = new TomahawkXmppMessage( m["ip"].toString(), m["port"].toInt(), m["uniqname"].toString(), m["key"].toString() );
|
||||
sipMessage = new TomahawkXmppMessage( info.host().hostName(), info.port(), info.uniqname(), info.key() );
|
||||
}
|
||||
else
|
||||
sipMessage = new TomahawkXmppMessage();
|
||||
@ -467,13 +452,6 @@ XmppSipPlugin::sendMsg( const QString& to, const QString& msg )
|
||||
void
|
||||
XmppSipPlugin::broadcastMsg( const QString& msg )
|
||||
{
|
||||
if ( !m_client )
|
||||
return;
|
||||
|
||||
foreach ( const Jreen::JID& jid, m_peers.keys() )
|
||||
{
|
||||
sendMsg( jid.full(), msg );
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
|
@ -86,8 +86,8 @@ public slots:
|
||||
virtual void disconnectPlugin();
|
||||
virtual void checkSettings();
|
||||
virtual void configurationChanged();
|
||||
virtual void sendMsg( const QString& to, const QString& msg );
|
||||
virtual void addContact( const QString& jid, const QString& msg = QString() );
|
||||
virtual void sendMsg( const QString& peerId, const SipInfo& info );
|
||||
virtual void addContact( const QString& peerId, const QString& msg = QString() );
|
||||
|
||||
void broadcastMsg( const QString& msg );
|
||||
void showAddFriendDialog();
|
||||
|
@ -64,7 +64,7 @@ public slots:
|
||||
|
||||
void advertise();
|
||||
|
||||
void sendMsg( const QString& , const QString& ) {}
|
||||
void sendMsg( const QString& peerId , const SipInfo& ) {}
|
||||
void broadcastMsg( const QString & ) {}
|
||||
void addContact( const QString &, const QString& ) {}
|
||||
|
||||
|
@ -118,50 +118,47 @@ SipHandler::hookUpPlugin( SipPlugin* sip )
|
||||
|
||||
|
||||
void
|
||||
SipHandler::onPeerOnline( const QString& jid )
|
||||
SipHandler::onPeerOnline( const QString& peerId )
|
||||
{
|
||||
// qDebug() << Q_FUNC_INFO;
|
||||
tDebug() << "SIP online:" << jid;
|
||||
tDebug() << "SIP online:" << peerId;
|
||||
|
||||
SipPlugin* sip = qobject_cast<SipPlugin*>(sender());
|
||||
|
||||
QVariantMap m;
|
||||
SipInfo info;
|
||||
if( Servent::instance()->visibleExternally() )
|
||||
{
|
||||
QString key = uuid();
|
||||
ControlConnection* conn = new ControlConnection( Servent::instance(), QString() );
|
||||
|
||||
const QString& nodeid = Database::instance()->impl()->dbid();
|
||||
conn->setName( jid.left( jid.indexOf( "/" ) ) );
|
||||
conn->setName( peerId.left( peerId.indexOf( "/" ) ) );
|
||||
conn->setId( nodeid );
|
||||
|
||||
Servent::instance()->registerOffer( key, conn );
|
||||
m["visible"] = true;
|
||||
m["ip"] = Servent::instance()->externalAddress();
|
||||
m["port"] = Servent::instance()->externalPort();
|
||||
m["key"] = key;
|
||||
m["uniqname"] = nodeid;
|
||||
info.setVisible( true );
|
||||
info.setHost( QHostInfo::fromName( Servent::instance()->externalAddress() ) );
|
||||
info.setPort( Servent::instance()->externalPort() );
|
||||
info.setKey( key );
|
||||
info.setUniqname( nodeid );
|
||||
|
||||
qDebug() << "Asking them to connect to us:" << m;
|
||||
tDebug() << "Asking them to connect to us:" << info;
|
||||
}
|
||||
else
|
||||
{
|
||||
m["visible"] = false;
|
||||
qDebug() << "We are not visible externally:" << m;
|
||||
info.setVisible( false );
|
||||
tDebug() << "We are not visible externally:" << info;
|
||||
}
|
||||
|
||||
QJson::Serializer ser;
|
||||
QByteArray ba = ser.serialize( m );
|
||||
|
||||
sip->sendMsg( jid, QString::fromAscii( ba ) );
|
||||
sip->sendMsg( peerId, info );
|
||||
}
|
||||
|
||||
|
||||
void
|
||||
SipHandler::onPeerOffline( const QString& jid )
|
||||
SipHandler::onPeerOffline( const QString& peerId )
|
||||
{
|
||||
// qDebug() << Q_FUNC_INFO;
|
||||
qDebug() << "SIP offline:" << jid;
|
||||
tDebug() << "SIP offline:" << peerId;
|
||||
}
|
||||
|
||||
|
||||
|
@ -67,7 +67,7 @@ public slots:
|
||||
virtual void configurationChanged() = 0;
|
||||
|
||||
virtual void addContact( const QString &jid, const QString& msg = QString() ) = 0;
|
||||
virtual void sendMsg( const QString& to, const QString& msg ) = 0;
|
||||
virtual void sendMsg( const QString& to, const SipInfo& info ) = 0;
|
||||
|
||||
signals:
|
||||
void peerOnline( const QString& );
|
||||
|
Loading…
x
Reference in New Issue
Block a user