Messaging with the L5


#1

How will you message with your friends and family with the Librem 5?
On release the Librem 5 will offer SMS/XMPP. Telegram should work with an addon in chatty (Telegram on the Librem 5). Matrix will probably be available with fractal that has been adapted to the L5.

At first I thought riot/matrix could be a solution. Especially with the launch of the Librem one bundle. Unfortunately, it is not usable for me for 1 to 1 chats. There are too many bugs/drawbacks: Can’t start new conversations occasionally, can’t find people, notifications are bad etc.

I stopped using Whats App around two years ago and switched to Signal. It was already a long and painful process to get my main contacts to switch to it. None would use riot/matrix in the current state.

At the moment my only hope is to be able to use the web version of Signal.

Also I don’t really see the upside of matrix compared to Signal for 1 to 1 conversations. I won’t be hosting my own instance meaning that the meta data will be on a stranger’s server - same as in Signal’s case.


#2

For Signal, I’am in the same case. I would prefer to not have to push my contacts to use another app.

There is already a Signal app for UBport.
The backend could be use on Debian based Linux, but the GUI have to be rewritten:


#3

Xmpp should work well i hope purism will launch it on their librem one free, so i will make account for my friend and i will use it.

I don’t know how a bridge for telegram work, but have it could be a good thing


#4

I also deleted my WhatsApp-Account about two years ago - I already used Telegram and Signal at this time. I go to School and all of my classmates explicitly are WhatsApp at this time. I convinced some of my “important” contacts to use Telegram, but I could not convince anyone to use Signal. It just does not a feature to convince sb. - Telegram does have nice Sticker and a customisable GUI which might be important to most of them.
So for communication with friends/family I hope I can use Telegram on my L5.
I don’t know to which one I could talk via riot/matrix


#5

XMPP can do MMS and SMS? Like send a text to a luddite with a flip phone? I thought that XMPP was a cloistered type environment.


#6

Afaik xmpp is a different protocol from mms and sms, so i think the answer is no, i dunno if there is any kind of bridge for it, but this is something i don’t really care, in my usage if i want to send sms i will just send a normal sms, we can do that with L5 with chatty. Then there is “secure comunication” so something going over IP encrypted and there is a lot of options from whatsapp to matrix, for L5 xmpp whould be the only one available from the start to send encrypted message, as fractal (matrix) will do not have this option from start, but someone is working on it.
Xmpp is a well known protocol and it’s old in a good way to be old, so i do not expect bugs and bad experience as i had with riot/matrix and that’s why i think i will use it, i just really hope purism will offer xmpp capabilities on the free bundle of their librem one, so i can switch my friends and family to use it.
If will be in a payment bundle there will be no chance, because it’s even hard to convince people to switch from a gratis service to another gratis


#7

I just hope Purism helps fix the Lurch bugs (omemo library for libpurple). As it currently stands in my experience, communication between Lurch and the mobile clients such as Conversations, ChatSecure etc that support omemo just doesn’t work…

As for SMS I’ve never seen an indication that it was an XMPP bridge, only that the same app (Chatty) would handle both SMS and XMPP.


#8

I like the idea of COI plugin in chatty… That could be an extremely good communication tool


#9

Could you please elaborate in a easier way? I wasn’t aware of that, where can we follow this issue? It’s pretty important to be able to talk with other clients, conversation is what i’d like to install on friends smarrphone to talk with me


#10

Not having the time just now to gather all the info, but if you look at the issues for the Lurch plugin,

There are a lot of issues related to communication with other clients, not being able to get/see OMEMO keys or conversations not being decrypted on both sides.

In my own experience,
These work:
gajim <-> conversations
gajim <-> pidgin (libpurple, Lurch)
gajim <-> chatsecure
chatsecure <-> conversations
Siskin, BeagleIM <-> conversations, chatsecure, gajim

These don’t work
pidgin <-> Conversations
pidgin <-> chatsecure (iOS)
pidgin <-> Monal (iOS, macOS)
pidgin <-> Siskin, Beagle IM (iOS, macOS)

So there’s a common trend there, pidgin+Lurch cannot correctly encrypt or decrypt OMEMO messages when communicating with other clients, and plenty of issues have been recorded on Github related to this with no solution still.

There’s a small possibility that this is due to my server, but after testing with other servers the issues remained.

Additionally, libpurple does NOT support MAM (Message archive managemnet), so aside from receiving offline messages (which it can do) and message carbons (which rely on other clients being online and syncing messages on the fly), libpurple clients do miss out on some messages…

Compound that with another fact: Conversations does NOT support “offline messages”! So if you want Conversations to be able to get all messages, the only reliable way I found was to have my serer, ejabberd, route ALL messages to MAM and skip offline messages. So that makes pidgin less reliable, Conversations more reliable… I can live with that, so can my friends, but it’s kindof a mess…

Mostly the OMEMO (Lurch library) part is a mess.


#11

Thanks for your reply i appreciate it a lot.
So there is a chance that chatty could not talk with conversation because of lurch, and as i understood, there is another problem where if i write to someone that is offline the message will not be sended?
That’s a really bad news because i can’t use it work at this manner.

So usually the server do not store a message if the receiver is offline?

You talk a lot about pidgin and conversation, what about chatty and conversation or anything else available on android?
My purpose is to comunicate using chatty from my side and something else on android, i need encrypted message and be able to send and receive message if both client aren’t online at same time, any suggestion?


#12

That’s correct, depending on server features and client features, messages may or may not reach you or your contacts when one of you is offline. Most servers to implement XEP-0160 (offline messages) these days as well as MAM (XEP-0313), so the chances of messages NOT being stored by the server when a contact is offline are low.

The issue comes from libpurple and Conversations supporting only one or the other, and hard choices that have to be made by the server admins. In my case since my server is not used by many people, we chose to apply the fix below to send ALL messages straight to MAM rather than the offline messages storage, which hurts libpurple but helps Conversations.

I’m assuming most servers probably use the default, which is to store in offline messages store first, which hurts Conversations but helps most clients.

Hopefully Conversations adds support for Offline Messages soon…

Here is the fix I applied on my own server to send all messages to MAM, which Conversations can handle (but libpurple cannot). Since my main clients are Gajim (on desktop) and ChatSecure (on iOS), this was no problem:

Based on this https://conversations.im/#xmpp , Conversations still doesn’t support XEP-0160 (offline messages).

None of this helps the OMEMO situation though, which IMO is a lot worse when it comes to libpurple+Lurch… I really should raise yet another issue on the Lurch github. I wonder if Purism has been trying it out and encountered these kinds of issues?


#13

You would have to ask Andrea, the main Chatty developer directly in order to learn about her experiences dealing with Lurch and OMEMO. She is kind and (in my personal experience) fast to respond. I think you should ask her directly in the Chatty matrix channel …

Cheers,
orrence.


#14

Very good info, will do so!


#15

That’s a mess, i hope someone will fix this issue asap.
If you talk with her please report here what’s new, hoping for good news
Thank you

Edit: in f droid i found atalk, dunno if will be more compatible with chatty/libpurple did you test it?


#16

Have never tried atalk… Looks like it supports OMEMO. I suppose I could bring my android phone out of retirement and try it out…


#17

If you can try it should be really welcome, i hope to use chatty with L5 and something else to my android friends phone at day one, let’s cross fingers


#18

I have good news - not only is development continuing on Lurch, even though there are bugs and issues left, however:

  • I’ve updated my version of Lurch, and after some suggestions from Andrea on the Chatty matrix channel, was able to exchange OMEMO messages between Pidgin and ChatSecure!!
  • Moreover, I acquired the qemu image of the Librem 5 pureos, manually installed Lurch, and was able to use it in Chatty
  • And after some fiddling (mostly connecting/disconnecting plus sending plain text messages to let some kind of “handshaking” happen between the clients), eventually I was able to exchange OMEMO messages between all my clients - chatty, pidgin, gajim, chatsecure

I have yet to test atalk, however, I’m satisfied that things are heading in a postiive direction!


#19

That’s awesome
Could you please try chatty-conversation and chatty-atalk mixing online and offline stuff from both clients? Just to be sure that everything work like “watsapp” so when purism release their xmpp i can finally switch friends and family to this service


#20

Will try atalk tomorrow.

Conversations is working fine with both Chatty and pidgin, after the updates suggested by Andrea.

outside of my own server where offline messages are all directed to MAM, which is incompatible with Pidgin/Chatty, I’ve tried another public server, and Chatty was able to receive offline messages, even with OMEMO.

As it is, Pureos on the L5 (qemu image) does NOT have notifications it seems, and chatty is not running at boot, so no messages are coming in until chatty is manually launched. On the other hand, I’m pretty sure Pureos doesn’t kill tasks in the bg like iOs and Android do, because when I switch away to a browser on the L5, send messages to Chatty, and come back, the messages are already there.