Our good friends at Quobis wanted to give insight into how they’re working with Dialogic. This is a guest blog from Santiago Troncoso, Product Manager at Quobis, on his experience with PowerMedia XMS.
Quobis: who we are?
Quobis first established ourselves by integrating different vendor solutions in VoIP, but recently, WebRTC application development has become our flagship business. We are now composed of Independent Software Vendors, WebRTC app developers, and system integrators.
One important thing to take into account is that Quobis works on several verticals such as healthcare, e-commerce, banking, enterprise, and call centers. Collaborative communications do not depend on a specific environment, so software and equipment we use need to be open and be able to cover multiple uses cases.
Ever since we started creating WebRTC applications, we looked for new use cases for interactive media with the webcam and microphone. We didn’t want to focus on image processing so we started to implement use cases where a user video could be attractive. This is the reason why we started to work on collaborative use cases where a MRF was mandatory.
MRF is a multimedia server in the IMS architecture. It enhances media communications by providing features and backend capabilities such as video and audio conferencing, transcoding, recording, and streaming. It’s the entity that actually plays the prompts and mixes audio.
XMS: what is it?
The Dialogic PowerMedia XMS is a media server with IMS MRF and multi-conferencing features. It’s combined role of media manager and interface for applications makes it an all-in-a-box solution with an easy learning curve and a complete toolset where you can design and implement your application.
We started to play with the Dialogic PowerMedia XMS media server due to a specific opportunity, but soon understood the power and versatility of the product. While the Dialogic PowerMedia XMS was initially just a WebRTC-to-SIP gateway for us, we played with its different APIs.
We explored the potential of PowerMedia XMS by testing peer-to-peer communications, n-to-n sessions, video broadcasting, voice and video recording, etc. In a few months we were ready to make our leads and our proof-of-concepts were becoming more and more creative. At the time, the market was demanding recording capabilities on WebRTC-based applications, so soon PowerMedia XMS was positioned as the key element for this. Now PowerMedia XMS is a relevant element in many other use cases we have implemented.
One of the WebRTC technologies we developed is the Sippo WAC (WebRTC Application Controller), an application server with the role to orchestrate all the required elements and communications needed for a complete WebRTC application. This means it not only manages registration and credentials, but it also includes all the complementary elements required for a rich HTML5 communication experience: chat, contacts, cookie management, ID verification, file transfer, recording, etc.
All the communications and application management is centralized on the Sippo WAC by exposing a management and reporting REST API, and allowing the control of third party elements from the WAC using the Sippo Connectors. These are specific backends developed for integration that allows a unique integration experience and a customized solution from a unique tool. For example, a contact on the agenda could be stored locally on the Google contacts backend or centralized on an enterprise LDAP.
Our software solution includes the Sippo WAC, so we rely all the logical on this application server, keeping the WebRTC applications as simple as possible. This approach grants better support on multi-device deployments and a simpler architecture on the user endpoint.
In order to have success with WebRTC deployments, a wide coverage is mandatory. Keeping your applications simple will improve this coverage. Your application should be valid for the latest browsers, but also must cover the old-school guys...
PowerMedia XMS is open to work on different environments. We can keep the PowerMedia XMS centralized, keeping recordings and communications stored on the customer DMZ, without exposing it to external clouds or API services. Dialogic PowerMedia XMS can be deployed as a cloud service and for worldwide consumption. Dialogic also offers NFV capabilities with XMS, allowing it to be expanded on demand. This is done via the Media Resource Broker (MRB). Media resource brokers manage the availability of media servers and the media resource demands of application servers.
In comparison with other solutions, the PowerMedia XMS has a nice balance between performance and simplicity. My assessment is based on a MCU architecture, where all the video streams are sent to a central point and only one single stream is sent back to the peers. The SFU vs MCU discussion is covered all around the Internet, but, after all, the best solution always depends on your needs and your scenario.
Use cases for XMS
Just to enumerate a few of the potential use cases and ad-hoc implementations, based on PowerMedia XMS and other elements, we were involved in projects such as:
- Social TV - Residential users can share a favorite program or live show with his/her friends, who can connect from any device, browser, and location. They can watch the program together while having a group chat or video call. This is a nice example of how this technology and relying infrastructure could improve interaction between viewers.
- Recording solutions - Calls can be recorded, stored, and indexed on a secure environment. This is required for legal compliance, legal eavesdropping, or big data analytics.
- Conference rooms - On-demand or static virtual conference rooms where users can interact on a dynamic environment. As an administrator you can monitor and define the different connections. In addition, you can interconnect it with other voice networks, so everyone will be welcome, not only your application users.
- Broadcasting - This universality and scalability of PowerMedia XMS enables broadcasting for master classes and/or webinars.
Our next goal is an interactive video menu, something real-time between web and phone. This includes workflows that go directly to our application server. The video played and the final call destination can be decided by the users.
The web applications will give you all the interaction that you want with your Application Server (in our case the Sippo WAC), and from this element, you can handle all the media. But you will feel the temptation to move everything to the WebRTC world, and even try to send a fax over the browser. WebRTC is a way to link the voice and the data, the telephones and the browsers - but let you keep the best of both worlds (Do not try to send a fax over WebRTC - use file-transfer and data-channels for this J).
Dialogic PowerMedia XMS is a smart element, and I strongly recommend it for many scenarios. Of course, it is not suitable for everything because it lacks the SFU features and an outbound RTSP interconnection. But it has amazing features like the signaling layer, the ICE protocol, UDP-RTP or DTLS-SRTP profile supports and REST or MSML APIs for media management. This makes a perfect solution to deal with media complexity on most of your scenarios.
Give it a try. It will be worth it!