C
Conversations
conversations.im · Company blog · on HN since 2015
Site for Conversations, an open source Jabber/XMPP chat client for Android, with posts on OMEMO encryption.
What HN saysCommenters call it the best Android XMPP client, praise its early OMEMO encryption support, and value that it avoids lock-in.
64HN people shared it
60linked it in comments
12stories submitted
31story points
1 year agolast shared
2015people per year2026
Most-shared posts
- 1Conversations 2.17.0 – Jabber/XMPP client for Android42 people · 23 points · first shared 2015 · 1 comments on HN
- 2Omemo Multi-End Message and Object Encryption23 people · 5 points · first shared 2015 · discussion on HN
- 3Audit.pdf6 people · first shared 2016
- 4Compliance4 people · first shared 2018
- 5XEP-Xxxx: Omemo Encryption2 people · 1 points · first shared 2016 · discussion on HN
- 6OMEMO Multi-End Message and Object Encryption1 people · 2 points · first shared 2015 · discussion on HN
- 7>1 people · first shared 2017
- 8[email protected]1 people · first shared 2021
What HN people wrote when they linked it
deaddabe · 2023-01-19
Conversations [1] is the best Android XMPP client I know. IIRC they pushed the adoption of OMEMO and implemented it first, before the desktop clients could catch up.
[1] https://conversations.im/
qwertox · 2022-01-10
It angers me so much when my browser tries to connect to a port other than 80 or 443 and the firewall pops up [0] and even more if I decline the request and it keeps popping up because the page doesn't understand that I don't want to accept this.
Other than that, I absolutely love XMPP. It's the platform my servers and applications use to inform me of events, and with Conversations [1] there's a really nice Android app as a client.
[0] https://matrix.cactus.chat:8448/_matrix/client/r0/register?kind=guest
[1] https://conversations.im/
pmlnr · 2021-01-10
I'm one of them, and I love it. Desktop clients are lagging in support compared to Conversations[^1] on Android, but even Pidgin can be flogged into an acceptable state[^2] - no video or audio though, I couldn't get that working, unlike with Prosody and Conversations[^3].
The thing with XMPP vs Matrix is weight: and XMPP server is featherweight compared to Matrix due to their different nature, so I honestly believe that XMPP still has a future.
(And maybe one day, Pidgin 3 will see the light[^4])
[^1]: https://conversations.im/
[^2]: https://github.com/petermolnar/awesome-pidgin-plugins
[^3]: https://gist.github.com/petermolnar/10d815eae0b7cbda2b1e5948db157d6a
[^4]: https://pidgin.im/development/building/3.0.0/
cJ0th · 2021-01-07
I like conversations. The app is straight forward and it uses xmpp with omemo encryption. Therefore, there is no "lock in" (https://conversations.im/).
I guess Signal would be the best bet as an alternative because of where it is right now in terms of market share.
Shoothe · 2018-03-12
> I would like to see an alternate history where Slack is built entirely on XMPP, with plenty of extensions to support all the customisations for every feature they have now.
Writing and maintaining a protocol and a client and a server is certainly harder than just having a private proprietary protocol.
For what it is worth it seems XMPP is cherry picking features proven in proprietary protocols and standardizing them. It seems like there is a small set of such critical features as can be seen by supported XEPs in modern clients (https://dino.im/ https://conversations.im/).
ge0rg · 2018-02-23
The major hurdle in this situation is that most XMPP clients are developed by FOSS volunteers or small underfunded developer groups. There is no VC monetization concept to be built on top of federated messaging, and there is no benevolent billionaire spending 50M USD for the development of awesome XMPP clients.
Matrix has created great clients for the major platforms with a dozen paid developers; Signal had a handful of developers as well. Conversations[0] on Android is a proof that a single dedicated developer can create a great and standards-compliant XMPP messenger.
[0] https://conversations.im/
SamWhited · 2016-11-05
I highly recommend Conversations (disclaimer: I've worked on it in the past, although I'm not a project "member" per say): https://conversations.im/
It's open source, uses a federated, open protocol, and can do multiple types of encryption including OTR and OMEMO (an XMPP wire format that uses the Axolotl ratched devised for signal). It does not do VoIP, so it would just be for chat (although there is a large bounty on Jingle-based voip support open). It has also had a public security audit, and is designed to be white labeled so you can tweak a few variables in the source and build your own hardended version or encrypted-only version, etc.
schlowmo · 2016-11-02
> "but I haven't found anything better than IRC for chat"
If IRC was your best bet so far, you might want to have a look at good ol' XMPP aka Jabber. If you're into Android, with Conversations [0] there's a suitable client which supports end-to-end encryption. For other OS there are many other choices with different encryption options. While OTR (Off-The-Record Messaging) might be the most popular one, it unfortunately makes multi-device-support kind of a bumpy experience.
[0] https://conversations.im/
nextos · 2016-11-02
Came in to suggest Matrix and its client http://riot.im. Otherwise XMPP with http://conversations.im is also a great option.
_yy · 2015-11-16
Not true, XMPP does have that feature and there are multiple clients which implement this. It works amazingly well. It's not an extension, but part of the standard.
Example:
http://conversations.im/
Leace · 2019-03-18
The problem of XMPP is just lack of good clients on some platforms, most notably for iOS. For Android there is an excellent Conversations.im client [0] that I've successfully use with my non-technical family and friends. (There is also Quicksy [1] that uses phone numbers for onboarding but it's XMPP all the way down). Conversations doesn't use a lot of battery (anecdata but it's 1% on my phone) and just works.
[0]: https://conversations.im/
[1]: https://quicksy.im/
As for servers ejabberd is successfully used from small deployments to big MMORPGs. The team is extremely focused on performance and from what they say XML isn't actually a big performance problem. Prosody, another server, is in my opinion also high quality, even though it's developed in free time (AFAIK).
The "myriad of extensions" is mostly solved problem due to Compliance Suites and automated testers [2] (think SSLLabs) that people use to get their servers in shape.
[2]: https://compliance.conversations.im/
For the record I've used Matrix for work too and it's not bad, the clients are decent (I've used web client), but it's not a revolution especially if one's contacts can use Conversations, that, in my opinion, is just very good.
perlgod · 2019-03-12
Although most of my friends prefer Matrix these days, XMPP is still my favorite way of chatting. You can easily run your own Prosody instance [1] on a $5/month VPS and have a very modern chat experience - offline messages, syncing between devices, OMEMO end-to-end encryption, group chats, push notifications, HTTP file upload, etc. My wife and I use it for all our communications.
There are some great clients for Android [2], iOS [3] and Linux/Windows [4] that support all the modern XEPs. Sadly, there aren't any mature, actively developed clients for OS X that I've found. Adium is pretty much abandoned. Monal is in active development though and seems promising.
It's so nice to use an open protocol with native clients. Most other self-hosted chat solutions require electron apps, which can be painful to use unless you have top of the line hardware.
[1] https://github.com/cullum/dank-selfhosted/blob/master/roles/prosody/te…
[2] https://conversations.im/
[3] https://chatsecure.org/
[4] https://gajim.org
JepZ · 2017-07-29
Well, buffering that kind of stuff, is one of the more complex parts of an XMPP server (XEP-0013, XEP-0160, XEP-0280, XEP-0313). AFAIK IRC bouncers tunnel all the traffic and are not mobile aware. So to reduce battery usage, XMPP has some functionality within the protocol (XEP-0198, XEP-0352). So after optimizing your bouncer approach you will probably come up with what XMPP does (more or less, maybe with a few minor exceptions).
XMPP also knows how to do P2P connections (that is what 'jingle' is actually about, not just calls), but I think that the problems of P2P are actually the reason why there are still so many problems with XMPP calls. I mean if you want to build P2P that 'just-works' you will need STUN/TURN servers and while XMPP servers like ejabberd bring them with a standard installation, TURN servers require a lot of ressources (bandwith). At the same time the others parts of a XMPP server are very lightweight so that the TURN server causes scaling issues.
For anyone interessted in the matter I highly recommend taking a look at the 'conversations' website (https://conversations.im/#optimizations).
at612 · 2016-12-09
Now gents, a number of you in the comments have wondered about what other alternatives are out there. You may have seen that I specifically advise against Signal, and other users have also expressed concerns about a number other applications, amongst which Wire and Telegram.
One that, to my knowledge has not been mentioned yet, but which would appear to meet some common measure of functionality versus convenience expressed here, is XMPP messaging application Conversations (https://conversations.im/).
I am not going to give it my personal recommendation because having tested it, I did not like a number of design decisions the developers have made, and I did not like their overall vision for the app. With that said, it's horses for courses.
On the end to end encryption front (all the rage these days, eh?), it appears that the Conversations devs have taken Signal's protocol and _done it right_. That means, they actually specced it (https://conversations.im/omemo/) and had it audited (https://conversations.im/omemo/audit.pdf), along with a couple important improvements such as eliminating the requirement for a trusted server or Google Play, which greatly reduces the attack surface.
Again, I personally do not like Conversations and I'm not going to use it myself--that's a personal preference thing, but kudos to the devs for doing a professional job, especially while everyone else are busy selling snake oil.
I say, go give Conversations a try, it may be the thing you were…
topdancing · 2021-10-25
You can very easily build your own WhatsApp server today by simply deploying https://www.ejabberd.im/ on a box and using https://conversations.im/ on an Android phone.
mbirth · 2020-12-07
XMPP is anything but dead yet. There were a lot of XEPs added and updated in recent years and it turned into a modern protocol being able to provide all features you could expect from a modern messaging service.
It's just that you need a client and server that supports those features. Daniel Gultsch has written an Android client[1], that's as good as it can be. He also offers a maintained XMPP server [2] providing the full-featured counterpart. But if you want to self-host, ejabberd supports all the features as does Prosody. For iOS users, there's Monal which is slowly getting there.
[1] https://conversations.im
[2] https://account.conversations.im
Reventlov · 2020-02-01
> How do you handle push notifications with XMPP?
XEP 0357, implemented in servers ( https://modules.prosody.im/mod_cloud_notify.html for prosody, for example), and implemented by clients ( https://github.com/siacs/Conversations/issues/1171, for conversations for example).
Conversations also uses XEP 0198 and XEP 0352 for battery optimization: https://conversations.im/#optimizations
arendtio · 2019-03-14
Just to throw in another alternative: Some might know XMPP [1] for being the IETF standardized instant messaging protocol and Conversations [2] as one of the modern XMPP clients.
Recently, the main author of Conversations created a new version of his app called 'Quicksy'. Quicksy is still an XMPP client but with the ease of use other messangers deliver. For example, you don't have to choose a provider. Yet you still have features like federation available. So a perfect solution to invite others to join the XMPP world.
- https://play.google.com/store/apps/details?id=im.quicksy.client
- https://quicksy.im
[1] https://en.wikipedia.org/wiki/XMPP
[2] https://conversations.im
bhhaskin · 2019-03-12
Checkout conversations[0]. It isn't free, but is way better than Xabber imo. It also does e2e encryption unlike Xabber.
[0]: https://conversations.im/
Zash · 2018-10-16
Boulth · 2018-08-01
https://conversations.im the same security primitives as in Signal, but open and decentralized.
NoGravitas · 2018-05-14
What would really help with XMPP is some idea of profiles - like a Jabber2018 profile that requires all of the XEPs used by Conversations[0]. That way, client and server implementers would know exactly what they need to be compliant with other implementations using the same profile.
[0]: https://conversations.im/
mimi89999 · 2017-10-17
Please consider https://conversations.im/
You might also want to help with F-Droid.
unicornporn · 2017-04-09
I just tried https://conversations.im/ and I must I'm very impressed.
problems · 2017-02-20
They're pretty critical of XMPP but aren't there direct counter examples to it, like Conversations https://conversations.im for one.
ycmbntrthrwaway · 2017-02-04
> Unrestricted distribution allows entities to profit
It is the other way round. Restricted distribution drives up the price and allows entities to profit. That is how copyright and pretty much any other monopoly works.
Just try to profit from free (libre) software distribution. You can set whatever price you want and try to sell it, like, for example, https://conversations.im/ does, but you will get no profit besides what you get from selling additional services and making donations more convenient.
rishnaxi · 2017-01-16
Conversations https://conversations.im/ is an awesome XMPP client for Android, just use good software only.
upofadown · 2016-12-20
XMPP used to have power consumption issues on mobile because of the constant TCP connection from the client to the server. There were also problems with network disconnections/changes on mobile for the same reason. XMPP uses TLS certificates for client to client and server to server connections and such things used to be a pain before Let's Encrypt for those hoping to run their own servers. The end to end encryption used to be OTR which tended to be a bit clunky to use in practice.
That was then. Those issues have been more or less fixed these days. XMPP is actually starting to look interesting again. For an example of a modern XMPP client (and discussion about the issues mentioned above) see here:
* https://conversations.im
gmazza · 2016-09-21
And that is exactly why open IM protocols and 3rd party clients are so important.
If both you and your correspondents do use 3rd party IM client ([1], [2], etc), then just run OTR2 or OMEMO on top of the protocol, and let google store whatever it pleases - it's not going to be much use for them.
[1] https://pidgin.im/
[2] https://conversations.im/
kuschku · 2016-08-25
Why not use Conversations.im? https://conversations.im/
It’s actually usable, supports a lot more encryption methods, is more up to date, and actually looks okay.