Changeset - 161a7988902f
[Not reviewed]
0 3 0
me@boku.ru - 7 years ago 2018-02-01 18:30:52
me@boku.ru
Use the default JID resource for the sender when forming carbons
3 files changed with 11 insertions and 4 deletions:
0 comments (0 inline, 0 general)
include/transport/Buddy.h
Show inline comments
 
@@ -25,6 +25,9 @@
 
#include "Swiften/Elements/VCard.h"
 
#include "Swiften/Elements/Presence.h"
 

	
 
//Default resource name which contacts use
 
#define JID_DEFAULT_RESOURCE "bot"
 

	
 
namespace Transport {
 

	
 
class RosterManager;
libtransport/Buddy.cpp
Show inline comments
 
@@ -49,7 +49,7 @@ void Buddy::sendPresence() {
 

	
 
void Buddy::generateJID() {
 
	m_jid = Swift::JID();
 
	m_jid = Swift::JID(getSafeName(), m_rosterManager->getUser()->getComponent()->getJID().toString(), "bot");
 
	m_jid = Swift::JID(getSafeName(), m_rosterManager->getUser()->getComponent()->getJID().toString(), JID_DEFAULT_RESOURCE);
 
}
 

	
 
void Buddy::setID(long id) {
libtransport/Conversation.cpp
Show inline comments
 
@@ -241,9 +241,13 @@ void Conversation::handleMessage(SWIFTEN_SHRPTR_NAMESPACE::shared_ptr<Swift::Mes
 
#ifdef SWIFTEN_SUPPORTS_CARBONS
 
		LOG4CXX_INFO(logger, "CARBON MSG");
 
		//Swap from and to
 
		Swift::JID from = message->getFrom();
 
		message->setFrom(message->getTo());
 
		message->setTo(from);
 
		Swift::JID from = message->getTo();
 
		if (from.getResource().empty()) {
 
		    //If no resource is specified, set the same that is used for legacy network contacts
 
		    from = Swift::JID(from.getNode(), from.getDomain(), JID_DEFAULT_RESOURCE);
 
		}
 
		message->setTo(message->getFrom());
 
		message->setFrom(from);
 

	
 
		//Carbons should be sent to every resource directly.
 
		//Even if we tried to send to bare jid, the server would at best route it
0 comments (0 inline, 0 general)