Changeset - 25390730f602
[Not reviewed]
0 1 0
HanzZ - 14 years ago 2011-12-09 15:03:46
hanzz.k@gmail.com
Don't pass subscription in PresenceEracle
1 file changed with 2 insertions and 2 deletions:
0 comments (0 inline, 0 general)
src/presenceoracle.cpp
Show inline comments
 
@@ -50,17 +50,17 @@ void PresenceOracle::handleIncomingPresence(Presence::ref presence) {
 
	bool isMUC = presence->getPayload<MUCPayload>() != NULL || *presence->getTo().getNode().c_str() == '#';
 
	// filter out login/logout presence spam
 
	if (!presence->getTo().getNode().empty() && isMUC == false)
 
		return;
 

	
 
	JID bareJID(presence->getFrom().toBare());
 
	if (presence->getType() == Presence::Subscribe) {
 
	if (presence->getType() == Presence::Subscribe || presence->getType() == Presence::Subscribed) {
 
	}
 
	else {
 
		Presence::ref passedPresence = presence;
 
		if (presence->getType() == Presence::Unsubscribe) {
 
		if (presence->getType() == Presence::Unsubscribe || presence->getType() == Presence::Unsubscribed) {
 
			/* 3921bis says that we don't follow up with an unavailable, so simulate this ourselves */
 
			passedPresence = Presence::ref(new Presence());
 
			passedPresence->setType(Presence::Unavailable);
 
			passedPresence->setFrom(bareJID);
 
			passedPresence->setStatus(presence->getStatus());
 
		}
0 comments (0 inline, 0 general)