As i often say:
Each Node has to bring it’s own xmpp-server. When you log in to your mastodon, friendica or what else, you are instantely logged in in this xmpp-server.
The fediverse-id is also the xmpp-jid.
In the contact you can just click on “chat” and you will be connected with this xmpp-account.
Conversejs or jsxc bring such small-chat-windows as you know from facebook.
The roster is your contact-list.
AND conversations allows you, to add your fediverse-chat-account as additional account… so you can use it on your smartphone without being logged in in the fediservice.
Xmpp has a small footprint. So it’s ideal. Mucs are also possible for groupchats.
If it is preconfigured, and easy to install (look at snikket!), there is instantely a secure chat in the fediverse.
Why XMPP and not matrix?
I know far too little about the implementations to judge about it.
Matrix server seems hard to run with very high resource usage. Xmpp is very lightweight. Not sure if xmpp federates.
Xmpp is THE federating chat… since more than 20 years…
My take away from the headline is “hint hint, go to co-host” LOL. See you all new kids trying new things! But bye! I’ll be here if you need anything that I can’t help with.