I see you have OpenVidu 3, but the REST API was not published for v3. I have native iOS/Android apps using REST API and custom code to communicate with OV v. 2 currently in production. I want to know if there any REST API changes and if the peer connection communication on client side need to be changed if I decided to upgrade my servers to OV 3.
I have read the notes regarding OV 3, but it doesn’t state clearly if anything need to be changed in native clients in terms of WebRTC (both in signaling plane and in media plane management).
As you probably already know from the OpenVidu v3 documentation, all APIs are now based on LiveKit’s. Any LiveKit SDK (both client and backend SDKs) is compatible with OpenVidu v3 deployments.
This means that the protocol communicating the application against the OpenVidu server has changed from v2 to v3. To upgrade an application built with OpenVidu v2 SDKs, it is direct if you deploy an OpenVidu Pro v3 cluster. It comes with a compatibility module that makes this transition fairly straightforward. An OpenVidu v2 app will work directly against an OpenVidu Pro v3 deployment at these levels:
openvidu-browser, if you upgrade your dependency to openvidu-browser-v2compatibility.
openvidu-webcomponent if you upgrade your dependency to openvidu-webcomponent-v2compatibility.
openvidu-angular if you upgrade your dependency to openvidu-angular-v2compatibility.
Unfortunately, since OpenVidu v2 never provided native SDKs for Android or iOS (and therefore our examples simply implemented the raw RPC protocol without any kind of library or encapsulation), this direct upgrade is not available for native mobile applications. So, it is necessary to change the codebase to use LiveKit SDKs for native Android, iOS and React Native applications.
At OpenVidu we are working on building a thorough guide to help with this code changes, that based on our openvidu-android and openvidu-ios tutorials shouldn’t be that complex, as these apps are pretty simple and offer only basic videoconference functionality.
All of this is carefully explained in the OpenVidu v3 announcement post. If you have any doubts about upgrading your OpenVidu v2 app to OpenVidu v3 or even require commercial support to do so, you can write to pro.support.v2apps@openvidu.io.
Thank you for your reply. I have custom solution for my user-case, this is Android and iOS apps, with custom solution based on Chromium, like original OpenVidu v2 examples.
I don’t want to adopt any SDK, I want to adopt my custom solution to the new server is it’s possible. I use quite peer connection standard negotiation process which I think is the same for all WebRTC servers, because it’s the implementation of WebRTC protocol itself. Besides that I use OpenVidu Server RPC protocol. This is probably the only thing that can possible be different from client app perspective. So my question is there RPC protocol for the new OV v3 server, is it publicly available?
Is it possible to adopt my custom native app solution to work with OV v3 server (without LiveKit SDK)?