diff --git a/spectrum/src/main.cpp b/spectrum/src/main.cpp index 82540d1124573ce29e389f51f262c5b3076e3093..45d8b594ec50841a260980a439651c9d06d7280e 100644 --- a/spectrum/src/main.cpp +++ b/spectrum/src/main.cpp @@ -14,6 +14,9 @@ #include "transport/util.h" #include "transport/gatewayresponder.h" #include "transport/logging.h" +#include "transport/discoitemsresponder.h" +#include "transport/adhocmanager.h" +#include "transport/settingsadhoccommand.h" #include "Swiften/EventLoop/SimpleEventLoop.h" #include #include @@ -114,7 +117,7 @@ static void daemonize(const char *cwd, const char *lock_file) { int main(int argc, char **argv) { - Config config; + Config config(argc, argv); boost::program_options::variables_map vm; bool no_daemon = false; @@ -147,7 +150,7 @@ int main(int argc, char **argv) boost::program_options::positional_options_description p; p.add("config", -1); boost::program_options::store(boost::program_options::command_line_parser(argc, argv). - options(desc).positional(p).run(), vm); + options(desc).positional(p).allow_unregistered().run(), vm); boost::program_options::notify(vm); if (vm.count("version")) { @@ -313,6 +316,15 @@ int main(int argc, char **argv) GatewayResponder gatewayResponder(transport.getIQRouter(), &userManager); gatewayResponder.start(); + DiscoItemsResponder discoItemsResponder(&transport); + discoItemsResponder.start(); + + AdHocManager adhocmanager(&transport, &discoItemsResponder); + adhocmanager.start(); + + SettingsAdHocCommandFactory settings; + adhocmanager.addAdHocCommand(&settings); + eventLoop_ = &eventLoop; eventLoop.run();