Jitsi as a Service: a two-way street, by Tsahi Levent-Levi
Tsahi Levent-Levi, also known as BlogGeek.me, has established himself as, arguably the most prominent WebRTC analyst. He has been commenting on the industry for the past decade, while also training WebRTC professionals, co-running the testRTC business and that’s without even getting into his prior real-time comms experience with Amdocs and Radvision. We asked Tsahi if he could share his thoughts on RTC CPaaS and specifically how Jitsi as a Service fits into the space. The following is what he wrote. Enjoy!
In the past two years I’ve seen many service providers and enterprises run their own video meetings based on Jitsi. It is one of the easiest ways to get video meetings implemented today – with all the bells and whistles.
After 8×8’s acquisition of Jitsi, the Jitsi team has been hard at work on 4 different tracks:
- Continuing to develop Jitsi as an open source community project
- Integrating Jitsi into the 8×8 meetings app
- Growing and improving their meet.jit.si Jitsi Meet service
- Introducing JaaS – Jitsi as a Service – a managed CPaaS offering of Jitsi
The introduction of JaaS is a very interesting angle to Jitsi, especially when coupled in with the open source project itself.
Today’s Video API solutions
Look at today’s video API solutions – the CPaaS vendors who happen to offer video APIs so you can develop your own communication applications. What you’ll find is great platforms for developing your services, with the small caveat of being vendor-locked. The APIs of these vendors are specific to them. Any decision to switch from one vendor to another would necessitate a rewrite of the code communication aspects of the application. And they offer no open source alternative of their own – one where you can just install, host and maintain your environment on your infrastructure of their technology.
That’s not something bad or new. It is how money is made in many of the cloud API vendors across all sectors of the software industry.
Lowcode/nocode and video APIs
In recent years, we have seen a shift and focus in lowcode solutions with video APIs.
Video APIs were mostly about publish and subscribe. You could publish your microphone, webcam and/or screen, and subscribe to other publisher’s content. While this approach is quite flexible, it is also daunting and prone to performance issues. As they say, with great power comes great responsibility, only that the responsibility here was shifted towards the developers using the APIs.
Now, it is understood that this approach can’t scale and a different approach is needed. One such approach is to reduce the complexity by offering a higher level abstraction that handle the complexities on their own. These can come in the form of a reference application, new API set or a UI widget that can be embedded into applications.
Jitsi was similar in a way. It always offered a video bridge (the open source media server), but also the Jitsi Meet experience – a complete implementation of video meetings provided in open source and as a hosted end-user service.
JaaS – the WordPress of video
Enter JaaS – Jitsi as a Service
Jitsi officially announced JaaS in January 2021. It added another layer to the Jitsi story – one of CPaaS and Video APIs.
With the Jitsi ecosystem, you now had 3 different ways to make use of Jitsi:
- Take the Jitsi open source project and build your own application
- Use Jitsi Meet’s set of open source projects, install and host it on your own, making whatever changes you see fit to it
- Brand and modify the Jitsi Meet experience while having the Jitsi team host and manage the video infrastructure for you
This reminds me of the way WordPress works – you could take the WordPress framework, install, host and maintain it on your own – or you can use Automattic’s or other vendors managed hosting service for WordPress, removing a lot of that headaches and focusing on what’s important to you – the actual site content.
With Jitsi, you can decide to run and host everything on your own or use JaaS, having the Jitsi team manage and host it for you, removing a lot of the infrastructure headaches.
What I love most about this is the dogfooding part. This isn’t only about taking an open source project and making Video APIs out of it. Jitsi Meet is a managed service that has seen its own growing pains as it needed to scale in recent years. A lot of the work done in the Jitsi codebase and the DevOps scripting around it comes directly from end users who communicate and complain directly to the Jitsi team.
Jitsi a la carte
As if this weren’t enough, in November 2021, Jitsi announced a kind of an a la carte hosting offering. As that announcement states:
We are currently working on a service that would let Jitsi users easily connect their self-hosted Jitsi deployments to 8×8’s PSTN, LiveStreaming, Recording and transcriptions clouds.
This means that developers can now run their own Jitsi deployment, but then connect it to managed “features” of JaaS on a case by case basis. Want to have PSTN? Push a meeting to a live stream on YouTube? Record a session? Transcribe it? All of these things add complexity to a deployment and can now be abstracted out and “outsourced” to JaaS while maintaining your own hosted Jitsi cluster.
In a way, Jitsi unbundled their JaaS offering, making it simpler to adopt.
Towards a two-way street
From Jitsi, to JaaS through the new a la carte offering, a flexible solution has emerged for developers needing video meeting solutions. One that can be consumed in many different ways.
This reduces the vendor lock-in challenge that many video API vendors have, simply because you are never bound to the JaaS offering in any way other than them offering the best possible service. Not happy? Take your code and host it on your own. No rewriting or vendor migration necessary.
I think this gives developers a very compelling solution that is a kind of a two-way street:
1. From self hosted to managed
Developers can start by self hosting their own Jitsi Meet service.
This keeps control in the early days as they get acquainted with the platform and its nuances. At some point as they grow, it makes sense to think about a more global and scalable deployment. And one easy way to get there is to simply switch from the self hosted path towards the managed one by using JaaS.
2. From managed to self hosted
Developers can also start from the managed JaaS solution.
The beauty of it here is that if they are unhappy, or decide they want to do things differently, they can simply install their own Jitsi servers and start maintaining their own infrastructure – without changing the actual application code as they do that.
With Jitsi and JaaS you can move from a self hosted to a managed service or vice versa.
Check out the Jitsi offering
Here’s the thing. If you’re looking for a video meeting service to make your own, and only care about a bit of customization to the video experience itself, then Jitsi is a great solution.
It enables you to go the route of a self hosted open source solution or to go with a fully managed video infrastructure and video APIs approach. All that wrapped with one of the most popular WebRTC media servers on the market.