Wednesday, 5 August, 2020 UTC


Summary

WebRTC (Web Real-Time Communication) empowers developers to build powerful voice and video communication solutions on web pages that work across browsers and devices. No plugins necessary. Whether you're building peer-to-peer video, content sharing, messaging, or chat tools, WebRTC makes coding easy and the end experience user-friendly.
Best of all, WebRTC is completely free. This open-source project provides the simple APIs needed to get audio and video communications working seamlessly on your web pages. Apple, Microsoft, Google, Mozilla, and Opera all support WebRTC's standardization across devices and browsers, so expect this new standard to stick around for the long haul.
If you're looking to use WebRTC APIs for your on-page communication solutions, we'll walk you through everything you need to know. First, we'll start with common use cases and benefits, and then we'll move on to how you can get started with WebRTC in little-to-no time.
What Is WebRTC used for?
Businesses big and small are finding new and exciting ways to engage and communicate in real-time with their customers using WebRTC. Doctors are having secure conversations with clients, families and friends are chatting, teams are collaborating, people are talking with virtual digital assistants, and more.
WebRTC makes all of these use cases scalable, secure, and easy to use.
If you want to have real-time voice, video, and messaging functionality that works across browsers, devices, and clients, then WebRTC is the way to go.

WebRTC Browser Support

Here's a list of all the browsers that support WebRTC:
  • Microsoft Edge
  • Google Chrome
  • Mozilla Firefox
  • Safari
  • Opera
  • Vivaldi
While many mobile browsers support WebRTC, these browsers lack the ability to receive or maintain call connectivity in the background, leading to poor user experiences. Make sure you understand WebRTC limitations when creating voice and video applications for mobile devices.
Benefits of using WebRTC
  • Open-Source: WebRTC is completely free to use, and since the tech giants are invested in it, expect this technology to continue evolving and improving for years to come.
  • Available on all Modern Browsers: Edge, Chrome, Firefox, Safari, Opera—name a browser, and WebRTC is likely supported.
  • Scalable: WhatsApp uses WebRTC to deliver critical communications to customers—what more scale can you ask for?
  • Secure: WebRTC uses Secure Real-Time Transport Protocol (SRTP) to encrypt, authenticate, and protect your data and conversations.
  • Works for Mobile Applications: WebRTC isn't just for browsers and web pages—it can be used for mobile apps, too.
  • Versatile Functionality: WebRTC isn't just for voice and video calling. You can use it to build messaging and group call services, and you can even add recording functionality.
Examples of WebRTC in the wild
WebRTC is being used all around you. Likely, you've used an application already today that utilizes WebRTC. Here are a few well-known applications that use WebRTC for real-time communications:
  1. Facebook: It's no surprise that WhatsApp's parent company, Facebook, also takes advantage of WebRTC. Facebook uses WebRTC for Facebook Messenger (video chat, group video chat, messaging), Facebook Live, VR Chat, and more.
  2. Houseparty: COVID-19 quarantine has led many to discover Houseparty, a social networking group video chat that works on mobile and desktop apps. Houseparty outlines exactly how they use WebRTC to "delight Houseparty users who spend 51 minutes chatting in the app, on average, daily."
  3. Google Hangouts: Google is the mastermind behind WebRTC, so it's no surprise they use it for Google Hangouts' phone calls, SMS, video conferencing, and messaging.
WebRTC applications
You can see from the list of popular apps how powerful and dynamic WebRTC can be, but that's just a taste of possible use cases. Beyond basic video and phones calls with friends, here's a list of even more expansive uses for WebRTC:
  • File-Sharing: Keep all your conversations and relevant files in one place. With WebRTC, you can send fully encrypted files (of pretty significant size, too) straight to a colleague through your web browser rather than emailing the file or uploading/sharing it through a 3rd-party cloud storage platform.
  • Expanded Sales Enablement: Your website's chat with an agent feature doesn't have to be limited to text. WebRTC audio and video channels could allow you to demo your tool straight from the browser or hop on a voice call for further assistance (rather than requiring your customer to jump through the support call hula hoops).
  • Collaboration: With WebRTC, you shouldn't ever have to install a 3rd-party video or call platform to participate in a business meeting. WebRTC empowers you to communicate with colleagues, partners, or clients on a platform that's universally accessible, convenient, and easy to use.
  • Emergency Response: With video, audio, and chat functionality, WebRTC is evolving the way first responders receive information and improving how they respond. Safermobility, for example, uses WebRTC to allow users to send real-time video, audio, and text to the nearest authorities.
  • Healthcare: We've seen doctors and clinics' use of WebRTC functionality expand during the COVID-19 quarantine. Now, doctors can perform virtual checkups via web browsers without requiring their clients to download 3rd-party apps to engage.
  • Omnipresent Microphone: Tap to Speak used WebRTC to develop a solution that turns event participants' smartphones into microphones, eliminating the painful hassle of passing the microphone around the room.
And that's just the beginning. WebRTC's flexibility makes it adaptable to practically any communications use case.
How to get started with WebRTC
Getting started with WebRTC is simple. Google's built a helpful tutorial to show you the basics for tapping into the WebRTC JavaScript APIs:
  1. Visit the WebRTC GitHub pages to find the JavaScript API samples you need for your audio or video use case. The 3 main WebRTC API components are:
    1. MediaStream (getUserMedia): Accesses device cameras and microphones using JavaScript
    2. RTCPeerConnection: Creates direct connections between peers
    3. RTCDataChannel: Empowers the bi-directional transferring of any data type
  2. Download and open the source code.
  3. Add a pinch of HTML and Javascript to:
    1. Stream video from your webcam
    2. Set up a secure RTCPeerConnection
    3. Use RTCDataChannel to exchange data
    4. Set up a signaling service to exchange messages
  4. Voilà—you've built a real time video streaming and data exchange app.
  5. Try out other live demos on GitHub.
How to get started with WebRTC in no time in Twilio Client
If you’re interested in building with WebRTC, look no further than Twilio Client. Everything you need to build a complete solution (from browser abstraction to signaling and registration) is packaged in one JavaScript file
Twilio Client is powered by Twilio's global, elastically scalable platform, low latency media relay, and intelligent call control. You don’t need to build out the server side components—plus, you only pay for what you use. Twilio WebRTC client provides the security and reliability major enterprises need.
Twilio Client is powered by WebRTC, allowing developers to build everything from Call Centers to Hosted PBX. Here's how to get started with Twilio's WebRTC-powered voice calling:
  1. Complete the Twilio Client Quickstart to build an application capable of making and receiving phone calls from your browser.
  2. Set up your device and establish a connection to Twilio.
  3. Twilio sends you a webhook to get the TwiML instructions
  4. You respond with TwiML instructions
  5. Twilio connects to the intended number
Easy as that. Get started now with a free trial account and be up and running in less than 5 minutes!
Why choose Twilio Client?
Twilio's cloud infrastructure handles everything you need to establish high-quality calling experiences. From browser abstraction to signaling protocols and registration, everything you need is packaged into one JavaScript file.
Twilio makes it easy for you to connect WebRTC to anything: browser-based users, users on mobile, SIP endpoints, PSTN telephone numbers—you name it, and Twilio can do it. Plus, our APIs make it simple to programmatically. control, conference, or record WebRTC calls.
Our global-media routing makes for real-time end-to-end quality calls, regardless of where your web users are in the world. Twilio analyzes how media is streamed and relayed to improve call quality and to provide global low latency.
Twilio Client takes your WebRTC real-time communications above and beyond. To learn more about how businesses are using Twilio to build topnotch WebRTC solutions, check out these case studies:
  • RedBeacon & The Home Depot Build the Call Center They Need
  • Datalot Optimized Lead Qualification With WebRTC
  • SendHub Makes Business Phones Easy with Twilio
  • How Zendesk Gave Voice to Customers in 40 Countries and Counting
Jesse Sumrak is a Content Marketing Associate at Twilio focused on writing killer content and producing captivating webinars. A writing zealot by day and an ultramarathon runner by night (and early-early morning), you can usually find Jesse preparing for the apocalypse on a precipitous peak somewhere in the Rocky Mountains. He can be reached at jsumrak [at] twilio.com.