summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorTobias Markmann <tm@ayena.de>2013-04-30 20:10:12 (GMT)
committerSwift Review <review@swift.im>2013-10-01 14:48:44 (GMT)
commitfd47dd7d5cec5155b9985959d2f0e0f3b386cd98 (patch)
treed4da57ce3f1c90f56701cab8757d75e089473c9e /Swiften/MUC/MUC.h
parenta3781c5b770c03ff32c5cf8f1280b21c2a8e2626 (diff)
downloadswift-fd47dd7d5cec5155b9985959d2f0e0f3b386cd98.zip
swift-fd47dd7d5cec5155b9985959d2f0e0f3b386cd98.tar.bz2
Adding support for impromptu MUCs.
Change-Id: I363e9d740bbec311454827645f4ea6df8bb60bed License: This patch is BSD-licensed, see Documentation/Licenses/BSD-simplified.txt for details.
Diffstat (limited to 'Swiften/MUC/MUC.h')
-rw-r--r--Swiften/MUC/MUC.h13
1 files changed, 12 insertions, 1 deletions
diff --git a/Swiften/MUC/MUC.h b/Swiften/MUC/MUC.h
index 85f4564..6a0ab75 100644
--- a/Swiften/MUC/MUC.h
+++ b/Swiften/MUC/MUC.h
@@ -45,11 +45,20 @@ namespace Swift {
return ownMUCJID.toBare();
}
+ /**
+ * Returns if the room is unlocked and other people can join the room.
+ * @return True if joinable by others; false otherwise.
+ */
+ bool isUnlocked() const {
+ return isUnlocked_;
+ }
+
void joinAs(const std::string &nick);
void joinWithContextSince(const std::string &nick, const boost::posix_time::ptime& since);
/*void queryRoomInfo(); */
/*void queryRoomItems(); */
std::string getCurrentNick();
+ std::map<std::string, MUCOccupant> getOccupants() const;
void part();
void handleIncomingMessage(Message::ref message);
/** Expose public so it can be called when e.g. user goes offline */
@@ -67,7 +76,7 @@ namespace Swift {
void cancelConfigureRoom();
void destroyRoom();
/** Send an invite for the person to join the MUC */
- void invitePerson(const JID& person, const std::string& reason = "");
+ void invitePerson(const JID& person, const std::string& reason = "", bool isImpromptu = false, bool isReuseChat = false);
void setCreateAsReservedIfNew() {createAsReservedIfNew = true;}
void setPassword(const boost::optional<std::string>& password);
@@ -85,6 +94,7 @@ namespace Swift {
boost::signal<void (const MUCOccupant&, LeavingType, const std::string& /*reason*/)> onOccupantLeft;
boost::signal<void (Form::ref)> onConfigurationFormReceived;
boost::signal<void (MUCOccupant::Affiliation, const std::vector<JID>&)> onAffiliationListReceived;
+ boost::signal<void ()> onUnlocked;
/* boost::signal<void (const MUCInfo&)> onInfoResult; */
/* boost::signal<void (const blah&)> onItemsResult; */
@@ -121,6 +131,7 @@ namespace Swift {
boost::posix_time::ptime joinSince_;
bool createAsReservedIfNew;
bool unlocking;
+ bool isUnlocked_;
boost::optional<std::string> password;
};
}