Client
« tiếng Việt »
updated: 2023-11-11
(remove Snikket iOS)
There are many client software (application) to chat over XMPP. Here is a list from the official page of the protocol:
You can register an address from any of client software when you receive an invitation.
Below are my recommendation for each OS.
~*~
Browser
~*~
Regardless of your OS, you can always access the XMPP network via the browser. You can try the anonymous chat service via this link.
If you already have a standard XMPP account, log-in via this link.
Caution: WebCC does not have any end-to-end encryption method.
~*~
Mobile
~*~
Smartphones have very big a problem with security. There are many
articles about them but it boils down to the operating system running on
these devices. To give you an idea of what the people who are developing
libre software think about these devices, there are specific modules in Prosŏdy that exists
just so these devices would work like they should when installed from F-Droid. They are called
mod_cloud_notify
.
Thus if you are downloading the apps below from AppStore or PlayStore, you will need to:
- Enable push notification in the app’s setting.
- Disable battery optimization in your device’s setting.
These actions are to make sure you will have a chance of getting notification. I will also pray for you.
The ‘clouds’ want very much your data such as who you are and who you are talking to and what you are talking about. Minimum data are shared with the clouds from apps that I am recommending but you should always check the privacy statements from the authors of your specific app.
iOS
Monal is a very stable app on iOS. However, version 5.4.3 still cannot do voice call over XMPP yet.
Their privacy statement is here.
Android
There are many choices for Android. I have tried Yaxim. This program is very light and very suitable for older Android devices. However, it doesn’t support any data encryption method.
Meaning not just « me » the service provider but anybody can read your data if they gain access of my server.
Thus, I recommend Conversations.
This software is very stable. Apart from supporting OMEMO and OpenPGP, this program allows you to access as many XMPP accounts as you need at the same time. You can download it from PlayStore for a small fee. (Of course there is a fee since the people developing it are not making money from your data.)
Their privacy statement is here.
There is a way that you can get it without paying money up front that is using F-Droid. This is a repo similar to PlayStore but most software on F-Droid are liberal and open source. You also don’t need to enable push notification when using this version because it is not talking to ‘the cloud’.
~*~
Desktop
~*~
Most of the clients on desktop can use multiple accounts at the same time since there are less limitations on memory and battery.
They are also much safer to use compare to mobile devices. Because you can’t misplace them. And you have more control features over them.
Mac
On the Mac, we are using Beagle. At the moment this is the only client that support video call. You can download it from AppStore But to get it from AppStore you will have to give away a truck load of personal infomation to the “cloud”. To avoid doing this, get it from Homebrew by following the instruction on Github.
Beagle and Siskin are both from Tigase.
Linux & Windows
There are endless number of client software for the desktop so its not possible for me to test all of them.
I have tried Gajim - stable and has the most features out of all the software I have tested. However, it doesn’t support audio & video call to other client software because it hasn’t been upgraded to the newer standard - XEP-0167. Apart from packaging binaries for Linux, Gajim also do releases for Microsoft’s Windows.
On Linux, I mostly use Profanity This guy has a lot of goods:
- Written in C ≈ write slow, run fast.
- Runs everywhere: BSD, Linux, Windows, MacOS, Android, if the machine has a terminal, it will probably run on it.
- Three types of encryption: OTR, OMEMO, PGP.
- Data structure is very simple, easy to understand, and very flexible.
Bads:
- Runs in a terminal so it will never be as popular as Justin Bierber.
- Video & audio calls are not supported yet.
So for calling, I have been using Dino. This program has a very clean UI.