diff --git a/backends/libpurple/main.cpp b/backends/libpurple/main.cpp index 1808444a..9db75849 100644 --- a/backends/libpurple/main.cpp +++ b/backends/libpurple/main.cpp @@ -74,6 +74,7 @@ class SpectrumNetworkPlugin : public NetworkPlugin { purple_accounts_add(account); } + m_sessions[user] = account; purple_account_set_password(account, password.c_str()); purple_account_set_enabled(account, "spectrum", TRUE); @@ -88,6 +89,7 @@ class SpectrumNetworkPlugin : public NetworkPlugin { const char *protocol = CONFIG_STRING(config, "service.protocol").c_str(); PurpleAccount *account = purple_accounts_find(legacyName.c_str(), protocol); if (account) { + m_sessions[user] = NULL; purple_account_set_enabled(account, "spectrum", FALSE); // Remove conversations. @@ -109,8 +111,7 @@ class SpectrumNetworkPlugin : public NetworkPlugin { void handleMessageSendRequest(const std::string &user, const std::string &legacyName, const std::string &message) { const char *protocol = CONFIG_STRING(config, "service.protocol").c_str(); - PurpleAccount *account = purple_accounts_find(user.c_str(), protocol); - std::cout << user << "\n"; + PurpleAccount *account = m_sessions[user]; if (account) { PurpleConversation *conv = purple_find_conversation_with_account(PURPLE_CONV_TYPE_IM, legacyName.c_str(), account); if (!conv) { @@ -122,6 +123,7 @@ class SpectrumNetworkPlugin : public NetworkPlugin { } } + std::map m_sessions; std::map m_accounts; private: Config *config; diff --git a/docs/Doxyfile b/docs/Doxyfile index 45a29656..8b58ca9b 100644 --- a/docs/Doxyfile +++ b/docs/Doxyfile @@ -1445,7 +1445,7 @@ DOT_IMAGE_FORMAT = png # The tag DOT_PATH can be used to specify the path where the dot tool can be # found. If left blank, it is assumed the dot tool can be found in the path. -DOT_PATH = "/usr/bin" +DOT_PATH = "" # The DOTFILE_DIRS tag can be used to specify one or more directories that # contain dot files that are included in the documentation (see the diff --git a/spectrum/src/sample.cfg b/spectrum/src/sample.cfg index c02142fa..b564a4dc 100644 --- a/spectrum/src/sample.cfg +++ b/spectrum/src/sample.cfg @@ -4,8 +4,8 @@ password = secret server = 127.0.0.1 port = 5222 server_mode = 1 -#backend=../../backends/libpurple/libpurple_backend -backend=../../backends/libircclient-qt/libircclient-qt_backend +backend=../../backends/libpurple/libpurple_backend +#backend=../../backends/libircclient-qt/libircclient-qt_backend protocol=prpl-jabber [database]