Matrix and Sailfish

As you probably know then Matrix is secure, distributed, federated and modern communication network and Element (formerly Riot) is a client that has the widest coverage of Matrix specifications (messages, files, audio and video calls, end-to-end encryption, verification, etc).

TJC containes couple of threads, where we can see clear interest in native Matrix clients https://together.jolla.com/questions/scope:all/sort:activity-desc/page:1/query:Matrix/

The newest mention of Sailfish in Matrix Blog refers to https://hackmd.io/sbg763aISKCPi5SdT7tSdw

As Sailfish has had native working XMPP client from day 1 (with a limited subset of XEP’s implemented, but nevertheless mostly working fine), but Matrix has seen good uptake recently, then it would be useful to know if Jolla OY:

  1. is planning to invest in XMPP client to improve it’s features or keeps it at current functionality
  2. is planning follow latest trends in secure communications and invest in the development of native Matrix client
  3. is thinking about moving some of its developer and community communications to Matrix (as Mozilla, KDE, Pine64 and others have recently done), but as new forum has been recently released, then this may not be a reasonable question…

In this Telepathy Tank development work you see some Russian language in screenshots, so it would be interesting to know if Aurora devs are doing this or it is a separate development initiative (as Russian language does not imply only to Russia).

As there is no native client, then I have been using Riot from F-Droid (in a day or two available as Element) and I wonder if there is a way to count how many others are doing the same. I’ve looked at the server logs, and Riot’s user agent string is not unique enough to refer clearly to Sailfish - so counting hits from servers will not help a lot.

14 Likes

https://gitlab.com/cy8aer/bluepill/-/pipelines?scope=tags&page=1 - look at the youngest download (v 0.1-14). Old but a teaser for the coming (https://gitlab.com/cy8aer/bluepill/-/tree/nio)

6 Likes

Thanks a million cy8aer! I’ve been looking for this for ages. Let us know if we can send you support somewhere.

But:

  • it is slow
  • no e2e
  • functions missing
  • not really support for the client because…

…the nio branch rebuilds the whole thing with the python nio library. This will have

  • asyncio
  • e2e
  • faster
  • modular

But it takes time and there is no gui by now because I first need to buildup the backend.
Though I use the 0.1-14 daily without e2e…

4 Likes

As far as I’m aware, the current developers of Telepathy-Tank are not affiliated with AuroraOS and are working on it in their spare time.

If you’re especially interested in the Telepathy side, you might find the Telepathy IM Matrix room interesting (there is also a mailing list, but those are a wasteland at this point).

As far as I’ve noticed from the current Telepathy maintainer, there are some problematic points within the Telepathy Framework, which would be nice if they were resolved. One of the bigger issues right now is that the Telepathy protocol has no implementation for fetching server-side history. An other oneis a design oversight in the Telepathy-Qt library, which doesn’t take into account that for fetching certain informations a network request might be needed.

On the other hand, none of the Telepathy clients (the Sailfish Messages app, for example) are up to date with the current Telepathy spec, like the Sailfish OS messages application. Stuff like group messages and group info is just not displayed at all. The Sailfish Messages application also doesn’t seem to support starting new conversations with anyone who doesn’t have a phone number. And since the Sailfish Messages is closed source, these problems cannot be fixed by the community. (Maybe I should join an IRC meeting once to ask about if they’re interested in fixing up that stuff).

2 Likes

Personally I would rather prefer additional work on making XMPP closer to feature complete, especially getting OMEMO into the native client. But support for other open protocols could be a good thing, I suppose.

Hopefully we will finally have a working app. There have been so many attempts and none was complete.

1 Like

I would stick with XMPP. It is open and it is based on RFC standards. Matrix is fresh and new, but it has not had the time to become as mature as XMPP is.

How does one use XMPP netively on 3.3.0 anyway? Is XMPP still implemented?

Matrix is years old already. I use XMPP every day, but the state of desktop apps, and support on SFOS is limited: proper multi-device chat, sharing of media, multi-user chat, E2EE, while supported by various XEPs, simply isn’t supported at all on SFOS. I would consider these must-haves. Matrix has gained more traction.

Actually, I can’t even use XMPP on my XA2, due to this issue. But given the aforementioned lack of features, I don’t even bother anymore.

I do not agree. I know that you are right with the facts, but I have a different perspective on them.
We have seen so many messaging apps come and go on Sailfish. As soon as a messaging provider like Facebook or WhatsApp has changed its protocol or API, we were shut out. Matrix is not in its baby shoes any more, but compared to 1998 when XMPP was released, it is young. And we all know, how bitchy zero day attacks can come even after 20 years of using pieces of software.
XMPP is a standardized protocol and no matter what application you use, it will work like a horse even on Raspberry 3’s with more than 100 accouts. This way, you can choose any app you would get - on your computer OS and on SFOS. These days, Sailfish with AlienDalvik can use Conversations from F-droid as long as we don’t have a native app. Yes, the software on computers might not look perfect, but it is solid, the server load is much lower than with matrix, E2EE with OTR or OMEMO is builtin, if the app provides it. We just need to build the app and combine the libs. There is just no one trying any more, because they have tried with WhatsApp and Facebook and have lost hope, because people went to use apps on AlienDalvik.

Anyone here, who would like to crowdfund it? I am offering 20 euros for a start! I am just an interested user, but I would like to contribute as a tester and I have a lot of time to spend for discussion about UI and stuff.

I’m afraid that my experience of XMPP (admittedly with non-technical users) has been the exact opposite of yours: all sorts of reliability problems and issues exchanging media (images in particular). I have tried several times, and been forced to give up - non-techies have a pretty low tolerance for anything that requires investigation and/or debugging effort to get to work, and XMPP has turned into a complete non-starter for me for this reason. By contrast, Matrix has been pretty reliable.

Also a grateful shout for @cy8aer and bluepill: I depend on it even more now that the Android apps are starting to require Android 5 (I am using an Xperia X).

2 Likes

Don’t think this thread is about XMPP vs Matrix. The both should have decent clients on SFOS and it is great that @cy8aer is working on it. Hopefully, we could start seeing the development on our devices as well. (Release early, release often?)

2 Likes

You have the code. But that does not work because it is a 2TIER and I work on TIER1 (backend) :frowning: - a fake backend client which produces fake data compatible to the backend is needed to build the frontend. It is existing but can only login by now.

Just look what the backend does (https://gitlab.com/cy8aer/bluepill/snippets/1948322), watch the output and build a testclient which generates fake output like this and then build the qml code for this.

Although it is (obviously) an unofficial room, everyone is welcome to bring some liveliness to the Sailfish OS Matrix room at #sailfishos:matrix.org (via https://matrix.to/#/#sailfishos:matrix.org).

Join us, if you’re not there already :wink: !

@cy8aer: not sure how to reply to that. I will pass for now and will not join yet any matrix client development, would better work on other projects.

@paulvt: we already have matrix room at #freenode_#sailfishos:matrix.org - its IRC bridged to telegram and matrix as well as logged.

@rinigus you already have some heavy projects running :wink: For my bluepill project: This is a quite crazy project for one but it is doable. And now the core engine works well and the next step (ui) has now high priority…

Discussions for this can also go here https://matrix.to/#/#bluepill:g3la.de

1 Like

@rinigus I used to be in that channel via IRC, but #freenode_sailfishos:matrix.org seems just the IRC room representation on Matrix? If you look in the room directory, it is not there nor does it seem discoverable, so that’s why I and 70 other people hang out on #sailfishos:matrix.org I guess. I wonder if there is a way to fix this?

1 Like

Yes, it is not discoverable, indeed. As for how to make it clearer, I don’t know enough about matrix to suggest it.

It can’t if you have a Sailfish device that doesn’t have AlienDalvik (or if you simply don’t want to use it), i.e. every device where Sailfish is ported by the community.

1 Like

I have installed the Android app for Element.io (available in F-Droid and free of any Google Play Services) and it wioks great!

There is 1 issue with notifications (the app kept send a notification every 2 minutes on the homescreen) but that is something that can be fixed by getting into the Android settings of the app.