diff --git a/include/transport/Conversation.h b/include/transport/Conversation.h index ad2680081dbbeab4637d4839e06d4c0a78c6165e..705606ec82cceb4aaf414d4e255113ac85234a2c 100644 --- a/include/transport/Conversation.h +++ b/include/transport/Conversation.h @@ -64,7 +64,17 @@ class Conversation { /// \param message Message received from legacy network. /// \param nickname For MUC conversation this is nickname of room participant who sent this message. - void handleMessage(SWIFTEN_SHRPTR_NAMESPACE::shared_ptr &message, const std::string &nickname = ""); + void handleMessage(SWIFTEN_SHRPTR_NAMESPACE::shared_ptr &message, const std::string &nickname = "", const bool carbon = false); + + //Generates a carbon wrapper around the given payload and delivers it + void forwardAsCarbonSent( + const SWIFTEN_SHRPTR_NAMESPACE::shared_ptr &payload, + const Swift::JID& to); + + //Generates a impersonation request arount the given payload and delivers it + void forwardImpersonated( + SWIFTEN_SHRPTR_NAMESPACE::shared_ptr payload, + const Swift::JID& server); void handleRawMessage(SWIFTEN_SHRPTR_NAMESPACE::shared_ptr &message); void handleRawPresence(Swift::Presence::ref presence);