Skip to main content


XMPP/Live-Chat in Friendica


Man kann einen Ejabberd bzw. Prosody relativ problemfrei mit XMPP koppeln. Das habe ich auf pirati.ca und squeet.me bereits erledigt. Was fehlt ist ein Frontend.
Ich habs grad nochmal auf Peertube ausprobiert.
Wenn ich in Peertube eingeloggt bin, und auf ein Video mit Live-Chat gehe, dann bin ich automatisch mit meinem Peertube-User im Chat eingeloggt.
@Jakob :friendica:
I don't understand german so I have no idea what you have said so far - but I am 100% adding my +1 vote to adding/enabling #XMPP #chat into #Friendica.
Even if it is as simple as adding some javascript, ie: #ConverseJS
@Jakob :friendica:
I already have a prosody that authenticates against my friendica, using this:

authentication = "http_async";
http_auth_url = "https://librenet.co.za/api/account/verify_credentials.json";

Works great. Once you have an account in friendica, you can simply login to any XMPP client with the same credentials.
So all I would really need is a chat widget in the friendica interface that automatically authenticates me.
This sounds good.

Can you please describe it a little more?

And if it really works that easy... there must be better integration of a webclient in friendica...
@Jakob :friendica:
Not sure how much more there is to say.
Install #Prosody as per usual, and use http_async for the auth method instead of "internal hashed".
I basically just reviewed the instructions for doing this with #eJabberd -> https://wiki.friendi.ca/docs/install-ejabberd (and adapted for Prosody - although I see now that they have actually included the prosody instructions there as well).
hmmm...
http_async seems to be a module.
But in Debian it ist not in the package prosody_modules...

where do i get it from?
I use a repository for additional prosody extensions. I'd need to look in my setup for the URL. But I'm pretty sure the info can also be found on the official prosody website.
I found also a repo on github...

But i'm wondering, why this module is not in debian... 🤷‍♂️

But i was too tired yesterday to work on it longer.

Is this a single sign on or does it only use the userbase from friendica?

If i use a conversejs in friendica, i have to login extra?

And... is there a pissibility, to feed the roster with my followings/followers/contacts?
@Jakob :friendica:@Steffen K9 🐰
I don't think you can populate your xmpp roster with friendica contacts? It will only pick your existing XMPP contacts?
But would be very cool if it could "find" the xmpp:// link of all your fedi contacts and add them to your xmpp roster :D

Do you aim to add conversejs to friendica? how would you do this? You would have to add/inject the javascript into the php page somewhere or something, maybe write an addon (which I would if I had the knowledge)

(not a dev! forgive my ignorance with these things)
My idea is...

Every friendica-instance (and later every fediverse-indtance) has a builtin xmmp-server.

So every fediverse-id is also a xmpp-id.

You do not need tor grab an xmpp-id from the bio or frim elswhere... just use the fedi-handle.
✌️
@Jakob :friendica: oh - I'm sorry, of course (I forgot that it's a "community" module)
https://prosody.im/community_modules
Ok.

And is it a SSO, or doi have to login extra?
Or can i make autologin, when i login in friendica?
In peertube is autologin in the running prosody from the logged in peertube-account.

So it dhould work somehow.
@Jakob :friendica:

ok, but how about we up the ante:

I have a Friendica and a Peertube.
- Of course the PT is on a subdomain with its own separate login and a different handle (user@peertube.frndomain.tld vs user@frndomain.tld)

What if the xmpp in PT can authenticate with Friendica (which is at the main domain). That way I can share a single XMPP handle across both of those?

:D

lol - perhaps I expect too much.
Yes, this is right an issue...

But...

What if you have only one friendica- or mastodob-account.
It works.

Most users have just one fediverse-account.

On the other side, my xmpp-server runs on xmpp.schuerz.at, but my jabber-id is jakob@schuerz.at

Jabber can handle this.
@Jakob :friendica: yeah I have a similiar setup with my xmpp server -> runs on chat.librenet but my jabber id is falgn0n@librenet, which is the same as my main fedi id
@Jakob :friendica: What Activitypub services needs is a trusted Identity Provider (IDP) that all the services should integrate to. Then when you "sign up" to a new service, say XMPP or PeerTube, it should be an option to select your Fediverse IDP instance, regardless of what platform that is on, which should create access for you on the new service and thus for the user increasing capabilities in what they can do without requiring a new login or another account. Some people will choose to create a new/separate account because that is their preference. Most of the rest of us would be happy to just use one and the same login for uploading videos or sharing photos as you already use to post text updates.

However, all of what I just said is very easy to type. Not as easy to implement and do. Even harder to get all the services to agree to. So for now that is just my "IMHO". :)