Changeset - 8e1c2b43a6e3
[Not reviewed]
0 1 0
Jan Kaluza - 14 years ago 2011-11-10 13:55:14
hanzz.k@gmail.com
Send unavailable presences to particular resource which disconnects
1 file changed with 18 insertions and 1 deletions:
0 comments (0 inline, 0 general)
src/user.cpp
Show inline comments
 
@@ -215,7 +215,24 @@ void User::handlePresence(Swift::Presence::ref presence) {
 
		return;
 
	}
 

	
 
	sendCurrentPresence();
 

	
 
	// User wants to disconnect this resource
 
	if (!m_component->inServerMode()) {
 
		if (presence->getType() == Swift::Presence::Unavailable) {
 
				// Send unavailable presences for online contacts
 
				m_rosterManager->sendUnavailablePresences(presence->getFrom());
 

	
 
				// Send unavailable presence for transport contact itself
 
				Swift::Presence::ref response = Swift::Presence::create();
 
				response->setTo(presence->getFrom());
 
				response->setFrom(m_component->getJID());
 
				response->setType(Swift::Presence::Unavailable);
 
				m_component->getStanzaChannel()->sendPresence(response);
 
		}
 
		else {
 
			sendCurrentPresence();
 
		}
 
	}
 

	
 

	
 
	// Change legacy network presence
0 comments (0 inline, 0 general)