diff --git a/include/transport/conversation.h b/include/transport/conversation.h index 032ddef36a69814145acf3de0e12dd1f12c3a4f2..241f6662e6ba9ebd6ec1dded054fc0b029a391bc 100644 --- a/include/transport/conversation.h +++ b/include/transport/conversation.h @@ -72,6 +72,7 @@ class Conversation { void handleMessage(boost::shared_ptr &message, const std::string &nickname = ""); void handleRawMessage(boost::shared_ptr &message); + void handleRawPresence(Swift::Presence::ref presence); /// Handles participant change in MUC. @@ -161,11 +162,17 @@ class Conversation { bool m_muc; Swift::JID m_jid; std::list m_jids; - std::map m_participants; - boost::shared_ptr m_subject; bool m_sentInitialPresence; bool m_nicknameChanged; + + // TODO: Move this to some extra class to cache the most used + // rooms across different accounts. Just now if we have 10 users + // connected to single room, we store all those things 10 times. + // It would be also great to store last 100 messages per room + // every time, so we can get history messages for IRC for example. + boost::shared_ptr m_subject; std::list > m_cachedMessages; + std::map m_participants; }; }