summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
Diffstat (limited to 'Swiften/Examples/TuneBot/TuneBot.cpp')
-rw-r--r--Swiften/Examples/TuneBot/TuneBot.cpp71
1 files changed, 0 insertions, 71 deletions
diff --git a/Swiften/Examples/TuneBot/TuneBot.cpp b/Swiften/Examples/TuneBot/TuneBot.cpp
deleted file mode 100644
index d842798..0000000
--- a/Swiften/Examples/TuneBot/TuneBot.cpp
+++ /dev/null
@@ -1,71 +0,0 @@
-#include <boost/bind.hpp>
-#include <boost/thread.hpp>
-
-#include "Swiften/Client/Client.h"
-#include "Swiften/EventLoop/SimpleEventLoop.h"
-#include "Swiften/EventLoop/MainEventLoop.h"
-#include "Swiften/Queries/Requests/GetRosterRequest.h"
-#include "Swiften/Queries/IQRouter.h"
-#include "Swiften/Elements/DiscoInfo.h"
-#include "Swiften/Elements/CapsInfo.h"
-#include "Swiften/Queries/Responders/DiscoInfoResponder.h"
-#include "Swiften/Disco/CapsInfoGenerator.h"
-
-using namespace Swift;
-using namespace boost;
-
-class TuneBot {
- public:
- TuneBot(const JID& jid, const String& password) {
- client_ = new Client(jid, password);
- router_ = new IQRouter(client_);
-
- DiscoInfo discoInfo;
- discoInfo.addIdentity(DiscoInfo::Identity("TuneBot", "client", "bot"));
- discoInfo.addFeature("http://jabber.org/protocol/tune+notify");
- capsInfo_ = boost::shared_ptr<CapsInfo>(new CapsInfo(CapsInfoGenerator("http://el-tramo.be/tunebot").generateCapsInfo(discoInfo)));
- discoResponder_ = new DiscoInfoResponder(router_);
- discoResponder_->setDiscoInfo(discoInfo);
- discoResponder_->setDiscoInfo(capsInfo_->getNode() + "#" + capsInfo_->getVersion(), discoInfo);
-
- client_->onConnected.connect(bind(&TuneBot::handleSessionStarted, this));
- client_->onMessageReceived.connect(bind(&TuneBot::handleMessage, this, _1));
- client_->connect();
- }
-
- void handleSessionStarted() {
- boost::shared_ptr<GetRosterRequest> rosterRequest(new GetRosterRequest(router_));
- rosterRequest->onResponse.connect(bind(&TuneBot::handleRosterReceived, this, _1));
- rosterRequest->send();
- }
-
- void handleRosterReceived(shared_ptr<Payload>) {
- boost::shared_ptr<Presence> presence(new Presence());
- presence->addPayload(capsInfo_);
- presence->setPriority(-1);
- client_->sendPresence(presence);
- }
-
- void handleMessage(shared_ptr<Message> message) {
- // TODO
- }
-
- private:
- Client* client_;
- IQRouter* router_;
- DiscoInfoResponder* discoResponder_;
- boost::shared_ptr<CapsInfo> capsInfo_;
-};
-
-
-int main(int argc, char* argv[]) {
- if (argc != 3) {
- std::cerr << "Usage: " << argv[0] << " <jid> <password>" << std::endl;
- return -1;
- }
-
- SimpleEventLoop eventLoop;
-
- TuneBot bot(JID(argv[1]), argv[2]);
- eventLoop.run();
-}