diff --git a/src/buddy.cpp b/src/buddy.cpp index 725b969c410ffca3ed4031b1a69b33b84f940751..b22c4d1be21d6601e938837b3bd844f4875923de 100644 --- a/src/buddy.cpp +++ b/src/buddy.cpp @@ -22,10 +22,11 @@ #include "transport/rostermanager.h" #include "transport/user.h" #include "transport/transport.h" +#include "Swiften/Elements/BlockPayload.h" namespace Transport { -Buddy::Buddy(RosterManager *rosterManager, long id) : m_id(id), m_online(false), m_subscription("ask"), m_flags(BUDDY_NO_FLAG), m_rosterManager(rosterManager){ +Buddy::Buddy(RosterManager *rosterManager, long id) : m_id(id), m_online(false), m_blocked(false), m_subscription("ask"), m_flags(BUDDY_NO_FLAG), m_rosterManager(rosterManager){ // m_rosterManager->setBuddy(this); } @@ -112,6 +113,9 @@ Swift::Presence::ref Buddy::generatePresenceStanza(int features, bool only_new) // if (features & 0/*TRANSPORT_FEATURE_AVATARS*/) { presence->addPayload(boost::shared_ptr(new Swift::VCardUpdate (getIconHash()))); // } + if (m_blocked) { + presence->addPayload(boost::shared_ptr(new Swift::BlockPayload ())); + } } if (only_new) {