Xabber is an open-source XMPP client for Android. It is used to connect to XMPP servers where users have an XMPP account.
Extensible Messaging and Presence Protocol (XMPP) is a decentralized communications protocol for instant messaging. It enables the near-real-time exchange of messages between any two or more network entities.
Unlike most instant messaging protocols, XMPP is defined in an openstandard and uses an open systems approach of development and application, by which anyone may implement an XMPP service and interoperate with other organizations' implementations.
Anyone can run his own XMPP service and connect it to federated network.
To register an XMPP account you must find an XMPP server and register an account there. There is no official registry of XMPP servers, but you might try google it.
After you have acquired an XMPP account, you should choose "I already have XMPP account" button. Then enter your credentials into Xabber and press add button. If you have entered correct username and password you should connect to XMPP server.
Then you can add some friends to chat with.
Xabber Account is required to use services provided by Redsolution — company that created Xabber. It is also used to enhance XMPP experience of Xabber, allowing easy device set-up and synchronization.
No, Xabber Account is not necessary to use Xabber. You can connect to your third-party XMPP account and work as usual. Enhancements enabled by Xabber Account won't work, of course.
Currently Xabber Account is used to quickly login to new device with connected social accounts (Google+,Facebook, Twitter and GitHub) and to synchronize XMPP accounts and their settings between devices. Currently Xabber Account allows synchronization of these settings:
- XMPP accounts & their order
- account colors
We plan to add more synchronized parameters soon. We'll sync contact list settings, notifications settings,
Xabber Account is free to use. However, in the future it can be used to subcribe to commercial services provided by Redsolution.
You can register Xabber Account in personal area of this website, or from Xabber application. Account registration wizard is available at application launch or in settings.
Connecting Xabber to XMPP server
Xabber is a client application, to function properly it requires an XMPP account to connect to.
Currently you can not register XMPP account with Xabber. This was done because most public servers have removed registration to prevent automated registrations.
To connect Xabber to XMPP account you must enter valid credentials:
- XMPP ID (usually looks like firstname.lastname@example.org)
Some servers might require additional information to set up connection:
- Custom server host
- Connection port
- Data compression
- Proxy information
If your server requires some custom settings to connect to, contact server administration. Xabber for Web can not connect to servers with custom connection settings.
On Xabber for Android, to add contact you should press "more" button (three dots in top right corner of interface), then enter XMPP ID of your contact. If you have several XMPP accounts you should also choose what account should be used for adding contact.
On Xabber for Web, press "plus" icon (Looks like + symbol) in toolbar near the left edge of screen, select "Add contact" option. Then, enter XMPP ID of your contact. If you have several XMPP accounts you should also choose what account should be used for adding contact.
If added contact is online and will allow you to communicate with him, you will be able to initiate a chat.
This constant notification is required for Android OS to prevent unloading Xabber from memory. Since XMPP relies on direct communication between client and server, XMPP client should always be on and be active in memory. Android actively suppresses background apps and shuts them down, so it's recommended to use push notifications for communicating with an app. However, most XMPP servers don't support push.
Xabber will obtain push support in the near future, but it will work only with XMPP accounts provided by our company and on servers that will integrate with us. This is due to the fact that developers only can send push notification to their app, and that makes life of independent federated clients much harder.
TLDR, it's necessary evil to prevent Xabber from stopping and losing your messages.
We could lower priority so persistent notification would not occupy space in your notification bar, but it'll still be seen when notifications are expanded. As a negative result it would unload more often.