PacktLib: Getting Started with WebRTC

Getting Started with WebRTC

Credits

About the Author

About the Reviewers

www.PacktPub.com

Preface

An Introduction to Web-based Real-Time Communication

Introducing WebRTC

Uses for WebRTC

Try WebRTC yourself right now!

Browser compatibility

Summary

A More Technical Introduction to Web-based Real-Time Communication

Setting up communication

MediaStream API

RTCPeerConnection API

RTCDataChannel API

Summary

Creating a Real-time Video Call

Setting up a simple WebRTC video call

Using a web server to connect two users

Setting up a signaling server

Creating an offer in the caller's browser

Creating an answer in the callee's browser

Previewing the local video streams

Establishing peer-to-peer streams

Stream processing options

Extending this example into a Chatroulette app

Summary

Creating an Audio Only Call

Setting up a simple WebRTC audio only call

The HTML user interface for audio only calls

Adding an audio only flow to the signaling server

Audio stream processing options

Summary

Adding Text-based Chat

Adding text-based chat to our video chat app

The HTML user interface for text-based chat

Adding JavaScript functions to enable chatting

Handling text-based chat signals on the server

Other text message processing options

Summary

Adding File Sharing

Adding file sharing to our video chat app

The HTML user interface for file sharing

Adding JavaScript for enabling file sharing

Adding files using the element

Adding support for drag-and-drop

Adding JavaScript for transferring files via WebSockets

Handling the file-sharing signals on the server

Sending a thumbnail preview before the entire file

Providing progress updates

Establishing an RTCDataChannel connection

Transfering files via an RTCDataChannel connection

Other file-sharing options

Summary

Example Application 1 – Education and E-learning

Applying WebRTC for education and e-learning

Overall application architecture

Potential issues that may be faced

Benefits that can be delivered

The opportunity for educators

Summary

Example Application 2 – Team Communication

Applying WebRTC for team communication

Overall application architecture

Potential issues that may be faced

Benefits that can be delivered

The opportunity for managers

Summary

Index