forked from qxmpp-project/qxmpp
-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathusing.doc
110 lines (84 loc) · 2.9 KB
/
using.doc
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
/*! \page using Using QXmpp
<h2>Example: example_0_connected</h2>
This example just connects to the xmpp server. And starts receiving presences (updates) from the server.
After running this example, you can see this user online, if it's added in your roster (friends list).
Logging type has been set to stdout. You can see the progress on the command line.
This example is also available with the source code in the example directory.
\code
#include <QtCore/QCoreApplication>
#include "QXmppClient.h"
#include "QXmppLogger.h"
int main(int argc, char *argv[])
{
// create a Qt application
QCoreApplication a(argc, argv);
// setting the logging type to stdout
QXmppLogger::getLogger()->setLoggingType(QXmppLogger::StdoutLogging);
// creating the object of the client class QXmppClient
// and then calling the connectToServer function to connect to gtalk server
QXmppClient client;
client.connectToServer("[email protected]", "qxmpp123");
// run the application main loop
return a.exec();
}
\endcode
<h2>Example: example_1_echoClient</h2>
This is a very simple bot which echoes the message sent to it.
Run this example, send it a message from a friend of this bot. You will receive the message back.
This example shows how to receive and send messages.
This example is also available with the source code in the example directory.
\code
// subclass the QXmppClient and create a new class echoClient
// in the contructor the signal QXmppClient::messageReceived(const QXmppMessage&)
// is connected to the slot echoClient::messageReceived(const QXmppMessage&)
// in the slot one can process the message received
#include "QXmppClient.h"
class echoClient : public QXmppClient
{
Q_OBJECT
public:
echoClient(QObject *parent = 0);
~echoClient();
public slots:
void messageReceived(const QXmppMessage&);
};
}}}
\endcode
\code
#include "echoClient.h"
#include "QXmppMessage.h"
echoClient::echoClient(QObject *parent)
: QXmppClient(parent)
{
bool check = connect(this, SIGNAL(messageReceived(const QXmppMessage&)),
SLOT(messageReceived(const QXmppMessage&)));
Q_ASSERT(check);
}
echoClient::~echoClient()
{
}
// slot where message sent to this client is received
// here getFrom() gives the sender and getBody() gives the message
// using the function sendPacket message is sent back to the sender
void echoClient::messageReceived(const QXmppMessage& message)
{
QString from = message.getFrom();
QString msg = message.getBody();
sendPacket(QXmppMessage("", from, "Your message: " + msg));
}
}}}
\endcode
\code
#include <QtCore/QCoreApplication>
#include "echoClient.h"
#include "QXmppLogger.h"
int main(int argc, char *argv[])
{
QCoreApplication a(argc, argv);
QXmppLogger::getLogger()->setLoggingType(QXmppLogger::StdoutLogging);
echoClient client;
client.connectToServer("[email protected]", "qxmpp123");
return a.exec();
}
\endcode
*/