/* * Copyright (c) 2010 Remko Tronçon * Licensed under the GNU General Public License v3. * See Documentation/Licenses/GPLv3.txt for more information. */ #include using namespace Swift; int main(int, char**) { // Set up the event loop and network classes SimpleEventLoop eventLoop; BoostNetworkFactories networkFactories(&eventLoop); // Initialize the client with the JID and password Client client( JID("echobot@wonderland.lit"), "mypass", &networkFactories); // When the client is convnected, send out initial presence client.onConnected.connect([&] { client.sendPresence(Presence::create("Send me a message")); }); // When the client receives an incoming message, echo it back client.onMessageReceived.connect([&] (Message::ref message) { message->setTo(message->getFrom()); message->setFrom(JID()); client.sendMessage(message); }); // Start the client client.connect(); // Run the event loop to start processing incoming network events eventLoop.run(); return 0; }