work with muc services that change the message id

Daniel Gultsch created

Change summary

src/main/java/eu/siacs/conversations/Config.java               | 2 ++
src/main/java/eu/siacs/conversations/parser/MessageParser.java | 2 +-
2 files changed, 3 insertions(+), 1 deletion(-)

Detailed changes

src/main/java/eu/siacs/conversations/Config.java 🔗

@@ -50,6 +50,8 @@ public final class Config {
 
 	public static final boolean X509_VERIFICATION = false; //use x509 certificates to verify OMEMO keys
 
+	public static final boolean IGNORE_ID_REWRITE_IN_MUC = true;
+
 	public static final long MILLISECONDS_IN_DAY = 24 * 60 * 60 * 1000;
 	public static final long MAM_MAX_CATCHUP =  MILLISECONDS_IN_DAY / 2;
 	public static final int MAM_MAX_MESSAGES = 500;

src/main/java/eu/siacs/conversations/parser/MessageParser.java 🔗

@@ -315,7 +315,7 @@ public class MessageParser extends AbstractParser implements
 					status = Message.STATUS_SEND_RECEIVED;
 					if (mXmppConnectionService.markMessage(conversation, remoteMsgId, status)) {
 						return;
-					} else if (remoteMsgId == null) {
+					} else if (remoteMsgId == null || Config.IGNORE_ID_REWRITE_IN_MUC) {
 						Message message = conversation.findSentMessageWithBody(packet.getBody());
 						if (message != null) {
 							mXmppConnectionService.markMessage(message, status);