We are thrilled to announce the General Availability of BrowserSDK 2.0, the next version of our webSDK. While the BrowserSDK 2.0 already enables you to integrate the ability to make and receive calls in your web application it also provides the following three major benefits.
- Web Applications that embed the new SDK can now provide details on the quality of the calls that are made by Users.
- The SDK supports collecting real time feedback from users. These feedback can be related to different aspects of the call such as audio quality, caller ID or digits entered during the call.
- Offers better flexibility for the developers to reduce CPU utilization, improve QoS and configure the application based on user needs.
Let’s look at each of the benefits in a little more detail.
Visibility into call quality metrics
Whenever a call is made or received using BrowserSDK 2.0, the application can track metrics such as Latency, Jitter, Packet loss and mos-score. Tracking these metrics will help in both assessing the quality of the call and debugging any issues as well.
Apart from tracking the metrics, the SDK also detects real-time network issues using these metrics. These issues are provided as events which your application can handle and help end users take actions to resolve issues on their side.
Gather user feedback on the call
You can now collect feedback on call from end users using this SDK. The feedback is taken in a 5 point scale with pre-defined reasons spanning across audio quality, caller ID and digits entered. Since this feedback is associated with a callUUID, it is easy to aggregate and act on issues faced by end users.
New features providing more flexibility to developers
BrowserSDK 2.0 offers more flexibility to developers to tailor their applications. With the new SDK developers can now:
- Enable or disable AEC and AGC. This will help in supporting conditions when the CPU utilization is required to be low.
- Enable or disable DSCP. This will help in managing QoS if DSCP is supported.
- Configure input, output and ring devices using our Audio Device APIs.
- The SDK allows developers to override the default GeoIP location and explicitly set the current region of the user. This would help Plivo route calls through the nearest servers thereby reducing audio latency.
- The SDK detects audio issues such as one way audio or no microphone access and exposes them as events that can be handled by the application.
- The SDK also offers additional methods for retrieving call details to debug and troubleshoot issues.
Please visit the documentation page, for a complete list of all the features and information on implementing them.
We have also made the following performance improvements in this SDK.
- The SDK reduces CPU utilization by 15% by using microphone access on demand.
- BrowserSDK 2.0 supports OPUS codec. OPUS is more tolerant to network issues and customers would not experience significant issues in audio quality even at 20% packet loss in their network.
BrowserSDK 2.0 supports both Firefox (51 and above) and Chrome (55 and above).Also, this version of the SDK is not backward compatible with our earlier webSDK. We strongly recommend building your application on BrowserSDK 2.0 as it is more robust, feature rich and is actively worked upon. In case you have any questions about migrating your existing application to BrowserSDK 2.0, please contact us on our support portal.
webSDK v1 will not be supported and deprecated from 31st Dec 2017.
To help you get started, we have built a sample application demonstrating all the features of the new SDK. The complete documentation of the SDK is available here.