Jitsi Chat Server

I’ve been searching for a good open source pure play chat (text, images, video sharing) or chat + voice call + video call.
This is because most chat api providers are very very expensive for my use case- see below.

I have been searching online for quite some time now and haven’t come across good open source servers and clients that can handle this use case. I did come across tinode which imo is a very good server and client system. However it has only a few active contributors and it can definitely receive more help. But it is indeed surprising not finding any more chat servers beyond this.

I recently came across Jitsi and I find it solves some serious pain points in video and chat space. Given that it has already solved the video and to a great extent chat problem, if there can be a project- server (java - given that the jitsi project is in java) and client in react js and react native with chat (text, images, video sharing) or chat + voice call + video call. It would be a major boon to the ecosystem. It shouldn’t take much effort I guess given that most of the tetthing problems have already been solved for in jitsi.

It would greatly benefit the open source community and bring more chat applications beyond the one or two which exist. I have seen multiple open source projects in other domains but not many chat, images and video sharing or Chat+ call + video call.

Hoping for a positive response from the wonderful jitsi community.

Use Case:
" I’m building a two sided marketplace. (influencer marketing platform)

One side of the market place will have a lot more users (influencers)

The graph will be bipartite with conversations happening only between users of the two sides and not amongst users of a side. Ie between influencers and brands and not amongst brands or influencers.

The number of users will be high but the number of messages between users- brands and influencers will be low.

Not all brands will speak to all influencers. Not all influencers will speak with all brands.

The graph will be sparsely connected.

I am at MVP/ Pre MVP stage.

I only need in app chat and image sending facility. Offline and online sync.
Tech: ReactJS, React Native, Java.

a functionality to store data in my own AWS RDS instance, that will be even better"

Check openfire páde has almost everything you are looking for

2 Likes

I looked at OpenFire but I have been unable to identify what features and XEPs do they support. Any clue where I could find this?
Ejabberd has a list for their offering but a some useful features have not been open sourced from their business edition for some time.
Which server should I prefer?

Also wondering is there a reason why most commercial chat api providers are using websockets over XMPP?

Doing additional reading on xmpp and will then go to websockets.
Do you have an idea? Maybe it could speed things up for me.

Thanks for your previous response. It lead me to some discovery :slight_smile:

Well you should get a big picture from here

https://download.igniterealtime.org/openfire/docs/latest/documentation/protocol-support.html

Also wondering is there a reason why most commercial chat api providers are using websockets over XMPP?

I dont know probably cause its easier and most users dont use lots of XEP scenarios.

I would recommend you see your clients scenarios… that way you can decide , using XMPP is far more powerful and you reuse a lot of things already built… websockets would be easier and faster if you dont have lots of “use cases”…

Hope this helps

Regards

Edgar

Thanks a ton Edgar. You have been incredibly helpful. :slight_smile:

Just a quick question, what are your personal preferences/ which do you advise to pick/which is better between ejabberd, openfire, prosody and tigase. And the reasonings behind them.

I only know openfire and prosody.

Prosody is easy, lua is really easy to learn…

Openfire is java based so for me its really neat to extend…

Any of them should do the work for you… its a matter of personal preference.

Regards