Open Bug 1802691 Opened 2 years ago Updated 5 months ago

Sync all Matrix messages

Categories

(Chat Core :: Matrix, enhancement)

Thunderbird 115
enhancement

Tracking

(Not tracked)

People

(Reporter: linus.kardell, Unassigned)

References

(Depends on 1 open bug)

Details

Steps to reproduce:

Log into my Matrix account
Open a conversation

This is with 102.4.2 on OpenSUSE Tumbleweed, with a self-hosted Matrix Synapse server.

Actual results:

It shows one or a few recent messages, or even none at all. I've seen this in both encrypted and unencrypted rooms. And what messages it does sync is split up by some "earlier conversations" thing, even though it's part of the same conversation.

Expected results:

It syncs all messages in the conversation (or it might do it lazily and not sync them until you scroll up to them)

Component: Untriaged → Instant Messaging

I can confirm the same behavior in both Thunderbird 102.11 and the Daily build. It only ever syncs unread messages, meaning that if you also read messages using a different Matrix client there are gaps in the conversation history.

At the very least I'd request that this be a user configurable option, as I'd like to be able to use Element on my mobile but still have access to the entire chat history in Thunderbird for when I'm at my desktop computer.

I can also confirm this behaviour using Thunderbird 102.12.0 in Gentoo Linux. At first I thought that it had something to do with the encrypted rooms/contacts being "Unverified", but it turns out that Thunderbird is only syncing new/unread messages. Without being able to see the full encrypted chat history, Thunderbird is not really useful as a Matrix client. Other clients (e.g. Element or SchildiChat in Android) should the full transcripts.

I see the same results in Thunderbird 115.0.1 in Gentoo Linux as well. Can the "Version" field be updated accordingly so that this bug may get some traction for the current release?

Version: Thunderbird 102 → Thunderbird 115

It would be lovely if this got addressed sooner rather than later. There are hardly any Matrix that support multiple accounts, Thunderbird being one of them. This bug is the only thing preventing me from using the Matrix functionality far more heavily.

Additionally, there are not many Matrix clients that are as convenient (in my opinion) as having it integrated within Thunderbird. For instance, many clients are mobile-only, or are Electron apps, or have a large number of dependencies that I don't want in my minimalist environments, or require session cross-authentication every time (e.g. browsers that are in private mode). Thunderbird doesn't have any of those shortcomings to me.

If there is anything that I can do to help contribute, please let me know as this is a very valuable feature.

It only ever syncs unread messages, meaning that if you also read messages using a different Matrix client there are gaps in the conversation history.

This is the currently implemented behavior. (Pulling read messages in is a bit difficult since the chat framework doesn't support backscrolling properly; see bug 955007 and its dependencies.)

Status: UNCONFIRMED → NEW
Type: defect → enhancement
Component: Instant Messaging → Matrix
Depends on: 955007
Ever confirmed: true
Product: Thunderbird → Chat Core
Summary: Does not sync all Matrix messages → Sync all Matrix messages

Thank you for the background information, Patrick. That bug was filed nearly 10 years ago, so I'm guessing that implementation is fairly unlikely at this point. It's unfortunate, but I guess I will have to continue my search for a decent Matrix client for Linux on the desktop.

It is a difficult problem to solve in our current framework and somewhat depends on a new chat theme being developed. I'm hopeful that we'll solve it eventually, but yes it isn't likely to be supported in short order. I would very much like it if Thunderbird would fully backfill (so you can use it as an archive of all your communications), but we're not there yet.

I can reproduce this exactly in Thunderbird 115.6.0. This is a deal-breaker as it renders Thunderbird essentially useless as a Matrix chat client. The whole point of such a client is NOT to have gaps in the chat record!

What a shame, it was a promising integration but seems like it is some considerable way from being useful in practise.

Is there any way to contribute funds to Mozilla to directly support development of a certain feature like this one?

Some planning notes Martin had a different document:

Room history replay should show the start of the room when accepting a DM invitation from another user. We currently only show events starting from when we joined the room. This might be complicated to do with the current append-only conversation browser, since our server first has to load in all the other messages in the conversation if the join is over federation.

You need to log in before you can comment on or make changes to this bug.