XMPP

Introduction

XMPP is an instant messaging protocol. It stands for Extensible Messaging and Presence Protocol. It supports most things you would expect from a messaging protocol such as: Audio and video calls, Chatrooms and End to End encryption. The problem with using XMPP is that most clients for it could be a lot better. Most lack features or are just overall buggy, but it's fine for the most part.

Registration

You can register through your client. You are also able to register through a website located at: https://qwik.space:5443/register/ When registering use chat.qwik.space as server address. Once signed up your JID (Jabber ID) will be username@chat.qwik.space. People will use this address to contact you.

Clients

There are several clients to choose from. Here is a list of my client recommendations for different platforms.

Chatrooms

XMPP allows you to create public chatrooms, also known as MUCs (Multi-User Chats). You are able to create one through your client. When you are creating one, you may be prompted to provide an address. There you should write "name@muc.qwik.space"

You may be prompted to choose between a private and public room. The difference being that a private room supports encryption and to enter a private room you have to be invited. You are able to enter a public room if you know the address or have been invited.

Once created you can invite your friends through the client or give them the address. It's also possible to create invite links, you can do this like following: xmpp:qwik@muc.qwik.space?join

Audio and video calls

Some XMPP clients supports audio and video calls. If your client supports it, there will be a call button. It requires that the one on the other end has a supported client and is online. The calls are encrypted if you are using OMEMO, which I highly I recommend using.

Encryption

XMPP supports two different encryption methods: OMEMO and OTR. I personally don't recommend using anything other than OMEMO. It's the easiest to use and all the clients mentioned above supports it. Some clients support OTR, but I don't recommend using it because it doesn't support encryption for audio and video calls. It also lacks support for MUCs.

note: Gajim on Linux may require you to install an external package depending on distribution: gajim-omemo

Tor

Hostname: qwikxcv6qo7ochwil3ihobsclz6ulfkszvngy6cna4rx6a6a4bedktad.onion
Port: 5222