WebRTC: Real-Time Communication For The Internet Of Things

August 13, 2018 283 Views
← Back
WebRTC: Real-Time Communication For The Internet Of Things


It's been predicted that the number of Internet of Things devices will reach nearly 21 billion by 2020. Their diversity is rapidly growing as industrial products, wearables, and smart household appliances continue to emerge. Data collection and communication capabilities of IoT products have created new ways for businesses to interact with their customers as well as get new sources of marketing data.

The next step is effective networking, and this is where WebRTC (Web Real-Time Communication) comes into play. It focuses on two-way audio and video communication in real time, secured with end-to-end encryption. These capabilities can be leveraged for communication between users of IoT devices.



What is WebRTC?


What is WebRTC?




An open source project released by Google in 2011, WebRTC provides API-based communication between web browsers and mobile applications, including transmissions of audio, video, and data. Eliminating the need for native plugins and app installations, it makes these connections user-friendly and supported by all the major browsers and mobile operating systems.

The adoption of WebRTC in the tech community has grown dramatically in the past few years. Facebook, Amazon, and Google are among the major technology companies that implemented WebRTC to make their web applications faster, reliable, and more secure.

WebRTC features are also provided in off-the-shelf solutions that can be easily integrated with other software. A good example is OpenTok, a PaaS for live communications, courtesy of our business partners at TokBox. We successfully used it in a number of solutions for our clients, including an advanced authentication service based on biometric techniques.



How does WebRTC work?


How does WebRTC work?




The primary focus of WebRTC is to provide real-time audio and video communication between participants, who use web browsers to start conversations, locating each other and bypassing firewalls, if any.

WebRTC utilizes JavaScript APIs and HTML5, being embedded within a browser. The typical features of a WebRTC application are as follows:


• Send and receive streaming audio and video
• Retrieve network configuration data, e.g. IP addresses, application ports, firewalls, and NATs, which are needed to send and receive data to another client using the WebRTC API
• Open/close connections and report errors
• Transmit media data, e.g. image resolution and video codecs


 How does WebRTC work?


To send and receive streams of data, WebRTC provides the following APIs that can be used in web applications:

• RTCPeerConnection for audio and video transmissions, encryption, and bandwidth configuration
• RTCDataChannel for transmission of generic data
• MediaStream for access to multimedia data streams from such devices as digital cameras, webcams, microphones, or shared desktops

A set of standards for use of WebRTC in software is currently developed by the Internet Engineering Task Force and the Web Real-Time Communications Working Group.



Is WebRTC technology secure?


WebRTC and security




As a technology that involves transmissions of private information, WebRTC presupposes security measures to protect users from malicious intrusions. When applications use WebRTC, it is not necessary to install auxiliary plugins to secure its network connections. It uses standard encryption techniques that are proven to protect data during transmissions. WebRTC components use mandatory encryption, while all JavaScript APIs use secure HTTPS connections. Thus, the primary security issue for developers implementing a WebRTC application is to ensure the use of secure network protocols.



How to use WebRTC technology for business applications


WebRTC in business




The worldwide market value of products using WebRTC was $10.7 billion in 2016. Future Market Insights predicted in 2015 that its market value would increase to nearly $23 billion in 2025. Analysts turned more optimistic about the future prospects of WebRTC when Microsoft Edge and iOS Safari 11 began supporting it in 2017.

In terms of global coverage, the WebRTC market spans across North America, Europe, Asia, the Middle East, South America, and Africa. North America took the lead among these regions in 2016 with more than a 40% share. It is expected to remain the dominant region owing to easy access to high-speed internet and the massive number of mobile device owners.

Services with audio and video calls are the primary type of applications that involve WebRTC technologies, the most famous examples being WhatsApp, Google Hangouts, and Facebook Messenger. Yet the highest demand for WebRTC is in real-time video applications. This segment of the market alone accounted for as much as 57% of the total by 2016 and is expected to continue to lead in the future, owing to the continued adoption of WebRTC for use in consumer messaging applications. The next segment to grow in the near future is data sharing.

The flexibility of WebRTC makes it suitable for use in a variety of business sectors. Companies can take advantage of its capabilities to improve their external and in-house communication software to provide real-time video conferencing or support.



Benefits of using WebRTC for the Internet of Things


Benefits of using WebRTC for the Internet of Things


Integration of WebRTC with the Internet of Things has its challenges. Devices come with varied requirements and capabilities that can make interoperability difficult. Cross-platform communication is generally a non-trivial task; however, without WebRTC it would become even less possible.

The current market of out-of-the-box WebRTC solutions is not rich yet. But the existing examples—such as the abovementioned OpenTok—can already boast a number of viable use cases. Any device with a browser is open to WebRTC connections, which are formed as direct encrypted pipes between peers, well-protected from outside intrusions.



Use cases


The existing use cases for WebRTC can get really diverse, so we would limit ourselves to the most promising spheres: smart home, healthcare, wearable devices, and the industrial Internet of Things.



WebRTC for smart home


How to use WebRTC for smart home applications


This is one of the most lucrative areas for WebRTC—and at the same time one of the most relevant IoT trends. For example, door intercom devices or smart mailboxes that utilize WebRTC for audio/video communication with web and mobile applications. In the former case, residents of smart homes are able to communicate with visitors, making sure no case of urgency remains unnoticed. In the latter case, residents of suburban areas, spending a significant part of the day commuting or at work, can unlock their smart mailboxes remotely in order to send and receive deliveries with the help of couriers at any time of day. We can also mention smart authentication solutions for secure access that involve WebRTC and Data Science-based face and voice recognition.



WebRTC in healthcare


How to use WebRTC in healthcare applications


The telehealth service market is expected to grow to $9.3 billion by 2021, and it has become a major sector for WebRTC. Its encryption of communications makes it attractive to healthcare providers because of their concern with safeguarding the personal health data of their patients. In the US, health data is protected on a legal level by HIPAA, and any corresponding software product must be compliant with its standards.

Real-time video feeds can be applied to such use cases as teleconferencing doctor-patient appointments, remote therapy sessions, group therapy teleconferences, clinical meetings, and remote observation of operating rooms. These cases have gained acceptance with many health insurance plans to reduce costs. A study conducted by Tokbox Live Video found that around 60% of people are likely to use live teleconferencing to talk to a doctor for non-emergencies. Mobile app stores already have about 500 telehealth applications that use WebRTC. Although it is not exactly an IoT case, it is undoubtedly worth mentioning.

As for more direct IoT development cases, we can mention smart bedside devices—such as vital sign monitors—that communicate with medical stations located at home, which help doctors check physical condition of their patients any time of day and night.



Industrial WebRTC


Industrial use cases for WebRTC applications


Industrial enterprises are rather conservative in terms of technology and innovation. However, the changing business landscape dictates the need for new solutions, which are slowly but steadily introduced by the leading businesses to their core systems.

As an example, we can name applications that trigger or enhance video feeds. A smart factory can use technology to monitor and direct automated processes with sensors. For example, if a thermostat reading indicates that a machine may overheat, it can trigger a video camera to monitor the machine remotely to check its physical condition in real time. Another case is remote support service that can use WebRTC-based video calls for urgent equipment troubleshooting purposes.



Developing WebRTC applications for your business


To sum things up, WebRTC offers a number of capabilities that enhance the development of IoT applications.

• High-definition video communication: WebRTC helps implement secure audio/video streaming between browsers, involving both audio and video.
• Mobile-to-mobile connections: Since mobile applications can use web interfaces, WebRTC is not limited to running on desktop web browsers; native libraries are available for Android and iOS.
• Machine-to-machine connections: when it comes to the Internet of Things, WebRTC can be integrated with smart devices to enable the required functionality.
• Messaging and file sharing: WebRTC establishes secure connections, shares data, and eliminates the need to store files in the cloud or data centers by delivering data directly.
• Phone-to-browser connections: WebRTC can create connections between Public Switched Telephone Network and browsers. HTML5 API and SIP Gateway are utilized to conduct calls from a single location.


Our experience, taken together with the available technologies, can make WebRTC a part of your own business solution. Please feel free to contact us with any questions!



Please feel free to contact us with any questions!




About the Author


Yuriy LucnaninovYuriy Luchaninov is the JavaScript Group Leader at MobiDev with over 17 years of development experience and numerous keynotes at tech conferences worldwide. He is into practical application of Data Science and Machine Learning in software projects and knows everything about making cross-platform apps with native responsiveness and performance.


Read more:
scroll top