aboutsummaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
Diffstat (limited to 'src')
-rw-r--r--src/QXmppVCardManager.cpp13
-rw-r--r--src/QXmppVCardManager.h4
2 files changed, 10 insertions, 7 deletions
diff --git a/src/QXmppVCardManager.cpp b/src/QXmppVCardManager.cpp
index ae2fc5fb..dbede096 100644
--- a/src/QXmppVCardManager.cpp
+++ b/src/QXmppVCardManager.cpp
@@ -42,10 +42,13 @@ QXmppVCardManager::QXmppVCardManager(QXmppOutgoingClient* stream, QObject *paren
///
/// \param jid Jid of the specific entry in the roster
///
-void QXmppVCardManager::requestVCard(const QString& jid)
+QString QXmppVCardManager::requestVCard(const QString& jid)
{
- QXmppVCardIq vcardIq(jid);
- m_stream->sendPacket(vcardIq);
+ QXmppVCardIq request(jid);
+ if(m_stream->sendPacket(request))
+ return request.id();
+ else
+ return "";
}
void QXmppVCardManager::vCardIqReceived(const QXmppVCardIq& vcard)
@@ -90,9 +93,9 @@ void QXmppVCardManager::setClientVCard(const QXmppVCardIq& clientVCard)
/// This function requests the server for vCard of the connected user itself.
/// Once received the signal clientVCardReceived() is emitted. Received vCard
/// can be get using clientVCard().
-void QXmppVCardManager::requestClientVCard()
+QString QXmppVCardManager::requestClientVCard()
{
- requestVCard();
+ return requestVCard();
}
/// Returns true if vCard of the connected client has been
diff --git a/src/QXmppVCardManager.h b/src/QXmppVCardManager.h
index e38e3cef..e77f698e 100644
--- a/src/QXmppVCardManager.h
+++ b/src/QXmppVCardManager.h
@@ -64,11 +64,11 @@ class QXmppVCardManager : public QObject
public:
QXmppVCardManager(QXmppOutgoingClient* stream, QObject *parent = 0);
- void requestVCard(const QString& bareJid = "");
+ QString requestVCard(const QString& bareJid = "");
const QXmppVCardIq& clientVCard() const;
void setClientVCard(const QXmppVCardIq&);
- void requestClientVCard();
+ QString requestClientVCard();
bool isClientVCardReceived();
signals: