XMPP is a open protocol that can be used for many different things. For example it is used to implement communication in game lobbies (in the RTS game 0ad), can be used to control devices for home automation but is most widely used for instant messaging.
It is a free and open alternative to proprietary procotols or closed networks like WhatsApp, Telegram and the like.
You can either create your own XMPP server, to have full control. Or can use one of the many free servers. Furthermore you have the freedom to choose between different clients. So you can choose the one that suits your needs and fits your workflow and still can communicate with people who like their client to behave another way.
Generally you can encrypt your conversations either via PGP, OTR or OMEMO. But this depends on whether your client supports them.
In this document we will list you the most common clients, their advantages and disadvantages and will tell you which XMPP server software you can install with openSUSE.
XMPP and XEPs
XMPP is just the protocol and there exists a whole bunch of extensions (called XEP) which extend the protocol with functionality which is mandatory to have a good experience when using multiple devices and mobile connections.
Wikipedia has a list of clients, though its not quite up to date. We recommend Zashs Overview for a more up to date one. However the latter lists only the most widely used clients which implement the basic extensions and skips the older ones.
On Android there exist the following clients:
Where Conversations is by far the most outstanding one. We highly recommend to use this one as it implements all the XEPs which are needed to have a pleasant chat experience.
Unfortunately neither of them is as good or complete as Conversations for Android is.