aboutsummaryrefslogtreecommitdiff
path: root/example/example_2_rosterHandling/xmppClient.cpp
diff options
context:
space:
mode:
authorManjeet Dahiya <manjeetdahiya@gmail.com>2009-11-08 08:34:43 +0000
committerManjeet Dahiya <manjeetdahiya@gmail.com>2009-11-08 08:34:43 +0000
commit92308f9cd705d3bbe05605ff36dfe6ecf647c2e4 (patch)
tree9037593e837d98f2f5e1bbf851da8e41fed45470 /example/example_2_rosterHandling/xmppClient.cpp
parent15c5fa63a82c593403c77ace0e717e88abac75dd (diff)
downloadqxmpp-92308f9cd705d3bbe05605ff36dfe6ecf647c2e4.tar.gz
roster example
Diffstat (limited to 'example/example_2_rosterHandling/xmppClient.cpp')
-rw-r--r--example/example_2_rosterHandling/xmppClient.cpp74
1 files changed, 74 insertions, 0 deletions
diff --git a/example/example_2_rosterHandling/xmppClient.cpp b/example/example_2_rosterHandling/xmppClient.cpp
new file mode 100644
index 00000000..72fc2220
--- /dev/null
+++ b/example/example_2_rosterHandling/xmppClient.cpp
@@ -0,0 +1,74 @@
+/*
+ * Copyright (C) 2008-2009 Manjeet Dahiya
+ *
+ * Author:
+ * Manjeet Dahiya
+ *
+ * Source:
+ * http://code.google.com/p/qxmpp
+ *
+ * This file is a part of QXmpp library.
+ *
+ * This library is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU Lesser General Public
+ * License as published by the Free Software Foundation; either
+ * version 2.1 of the License, or (at your option) any later version.
+ *
+ * This library is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Lesser General Public License for more details.
+ *
+ */
+
+
+#include "xmppClient.h"
+#include "QXmppMessage.h"
+#include "QXmppRoster.h"
+#include <iostream>
+
+xmppClient::xmppClient(QObject *parent)
+ : QXmppClient(parent)
+{
+ bool check = connect(this, SIGNAL(connected()),
+ SLOT(clientConnected()));
+ Q_ASSERT(check);
+
+ check = connect(&this->getRoster(), SIGNAL(rosterReceived()),
+ SLOT(rosterReceived()));
+ Q_ASSERT(check);
+
+ /// Then QXmppRoster::presenceChanged() is emitted whenever presence of someone
+ /// in roster changes
+ check = connect(&this->getRoster(),
+ SIGNAL(presenceChanged(const QString&, const QString&)),
+ SLOT(presenceChanged(const QString&, const QString&)));
+ Q_ASSERT(check);
+}
+
+xmppClient::~xmppClient()
+{
+
+}
+
+void xmppClient::clientConnected()
+{
+ std::cout<<"example_2_rosterHandling:: CONNECTED"<<std::endl;
+}
+
+void xmppClient::rosterReceived()
+{
+ std::cout<<"example_2_rosterHandling:: Roster Received"<<std::endl;
+ QStringList list = getRoster().getRosterBareJids();
+ for(int i = 0; i < list.size(); ++i)
+ {
+ std::cout<<"Roster Received:: "<<qPrintable(list.at(i))<<std::endl;
+ }
+}
+
+void xmppClient::presenceChanged(const QString& bareJid,
+ const QString& resource)
+{
+ std::cout<<"Presence changed:: "<< qPrintable(bareJid)
+ << qPrintable(resource)<<std::endl;
+}