diff --git a/src/rostermanager.cpp b/src/rostermanager.cpp index 23b19a7f..44264588 100644 --- a/src/rostermanager.cpp +++ b/src/rostermanager.cpp @@ -285,8 +285,8 @@ void RosterManager::handleSubscription(Swift::Presence::ref presence) { // using roster pushes. if (m_component->inServerMode()) { Swift::Presence::ref response = Swift::Presence::create(); - response->setTo(presence->getFrom()); - response->setFrom(presence->getTo()); + response->setTo(presence->getFrom().toBare()); + response->setFrom(presence->getTo().toBare()); Buddy *buddy = getBuddy(Buddy::JIDToLegacyName(presence->getTo())); if (buddy) { LOG4CXX_INFO(logger, m_user->getJID().toString() << ": Subscription received and buddy " << Buddy::JIDToLegacyName(presence->getTo()) << " is already there => answering"); @@ -342,7 +342,7 @@ void RosterManager::handleSubscription(Swift::Presence::ref presence) { Swift::Presence::ref response = Swift::Presence::create(); Swift::Presence::ref currentPresence; response->setTo(presence->getFrom().toBare()); - response->setFrom(presence->getTo().toBare().toString() + "/bot"); + response->setFrom(presence->getTo().toBare()); Buddy *buddy = getBuddy(Buddy::JIDToLegacyName(presence->getTo())); if (buddy) { diff --git a/src/usermanager.cpp b/src/usermanager.cpp index ccb036f4..08823715 100644 --- a/src/usermanager.cpp +++ b/src/usermanager.cpp @@ -306,8 +306,8 @@ void UserManager::handleSubscription(Swift::Presence::ref presence) { // answer to subscibe for transport itself if (presence->getType() == Swift::Presence::Subscribe && presence->getTo().getNode().empty()) { Swift::Presence::ref response = Swift::Presence::create(); - response->setFrom(presence->getTo()); - response->setTo(presence->getFrom()); + response->setFrom(presence->getTo().toBare()); + response->setTo(presence->getFrom().toBare()); response->setType(Swift::Presence::Subscribed); m_component->getStanzaChannel()->sendPresence(response);