cta quote button

Best WEBRTC Books to Read

Read More

How Much Does It Cost to Hire Web Developers in Ukraine?

Our pricing is completely transparent: you pay your engineers’ salaries and a flat monthly fee for our services. No hidden charges.

Read More

1. Real-Time Communication with WebRTC: Peer-to-Peer in the Browser (2017)

Deliver rich audio and video real-time communication and peer-to-peer data exchange right in the browser, without the need for proprietary plug-ins. The updated second edition of this concise hands-on guide shows you how to use the emerging Web Real-Time Communication (WebRTC) technology to build a browser-to-browser application, piece by piece.

The authors’ learn-by-example approach is perfect for web programmers looking to understand real-time communication, and telecommunications architects unfamiliar with HTML5 and JavaScript-based client-server web programming. You’ll use a ten-step recipe to create a complete WebRTC system, with exercises that you can apply to your own projects.

Author(s): Salvatore Loreto, Simon Pietro Romano

2. Hacking Exposed Unified Communications & VoIP Security Secrets & Solutions, Second Edition (2013)

The latest techniques for averting UC disaster

“This book is a must-read for any security professional responsible for VoIP or UC infrastructure. This new edition is a powerful resource that will help you keep your communications systems secure.” ―Dan York, Producer and Co-Host, Blue Box: The VoIP Security Podcast

“The original edition, Hacking Exposed: Voice over IP Secrets & Solutions, provided a valuable resource for security professionals. But since then, criminals abusing VoIP and UC have become more sophisticated and prolific, with some high-profile cases ringing up huge losses. This book is a welcome update that covers these new threats with practical examples, showing the exact tools in use by the real attackers.” ―Sandro Gauci, Penetration Tester and Security Researcher, Author of SIPVicious

“Powerful UC hacking secrets revealed within. An outstanding and informative book. Hacking Exposed: Unified Communications & VoIP Security Secrets & Solutions walks the reader through powerful yet practical offensive security techniques and tools for UC hacking, which then informs defense for threat mitigation. The authors do an excellent job of weaving case studies and real-world attack scenarios with useful references. This book is essential for not only IT managers deploying UC, but also for security practitioners responsible for UC security.” ―Jason Ostrom, UC Security Researcher, Stora SANS Institute, co-author, SEC540 class

“After reading Hacking Exposed: Unified Communications & VoIP Security Secrets & Solutions, I was saddened to not have had this book published years ago. The amount of time and money I could have saved myself, and my clients, would have been enormous. Being a professional in an ITSP/MSP, I know firsthand the complexities and challenges involved with auditing, assessing, and securing VoIP-based networks. From the carrier level, right down to the managed PBX level, and everything in between, Hacking Exposed: Unified Communications & VoIP Security Secrets & Solutions is a de facto must-have book. For those learning VoIP security to those heavily involved in any VoIP-related capacity, this book is worth its weight in gold.” ―J. Oquendo, Lead Security Engineer, E–Fensive Security Strategies

Hacking Exposed: Unified Communications & VoIP Security Secrets & Solutions, includes more sophisticated attack vectors focused on UC and NGN. The authors describe in depth many new tools and techniques such as TDoS and UC interception. Using these techniques, you will learn how you can identify the security problems of VoIP/UC. This book is a masterpiece.” ―Fatih Ozavci, Senior Security Consultant at Sense of Security, Author of viproy

“This book provides you with the knowledge you need to understand VoIP threats in reality. No doom and gloom, overhyped, never to happen in the real-world scenarios. You will understand the vulnerabilities, the risks, and how to protect against them.” ―Shane Green, Senior Voice Security Analyst

Establish a holistic security stance by learning to view your unified communications infrastructure through the eyes of the nefarious cyber-criminal. Hacking Exposed Unified Communications & VoIP, Second Edition offers thoroughly expanded coverage of today’s rampant threats alongside ready-to-deploy countermeasures. Find out how to block TDoS, toll fraud, voice SPAM, voice social engineering and phishing, eavesdropping, and man-in-the-middle exploits. This comprehensive guide features all-new chapters, case studies, and examples.

  • See how hackers target vulnerable UC devices and entire networks
  • Defend against TDoS, toll fraud, and service abuse
  • Block calling number hacks and calling number spoofing
  • Thwart voice social engineering and phishing exploits
  • Employ voice spam mitigation products and filters
  • Fortify Cisco Unified Communications Manager
  • Use encryption to prevent eavesdropping and MITM attacks
  • Avoid injection of malicious audio, video, and media files
  • Use fuzzers to test and buttress your VoIP applications
  • Learn about emerging technologies such as Microsoft Lync, OTT UC, other forms of UC, and cloud and WebRTC

Author(s): Mark Collier, David Endler

3. High Performance Browser Networking: What every web developer should know about networking and web performance (2013)

How prepared are you to build fast and efficient web applications? This eloquent book provides what every web developer should know about the network, from fundamental limitations that affect performance to major innovations for building even more powerful browser applications–including HTTP 2.0 and XHR improvements, Server-Sent Events (SSE), WebSocket, and WebRTC.

Author Ilya Grigorik, a web performance engineer at Google, demonstrates performance optimization best practices for TCP, UDP, and TLS protocols, and explains unique wireless and mobile network optimization requirements. You’ll then dive into performance characteristics of technologies such as HTTP 2.0, client-side network scripting with XHR, real-time streaming with SSE and WebSocket, and P2P communication with WebRTC.

  • Deliver optimal TCP, UDP, and TLS performance
  • Optimize network delivery over 3G/4G mobile networks
  • Develop fast and energy-efficient mobile applications
  • Address bottlenecks in HTTP 1.x and other browser protocols
  • Plan for and deliver the best HTTP 2.0 performance
  • Enable efficient real-time streaming in the browser
  • Create efficient peer-to-peer videoconferencing and low-latency applications with real-time WebRTC transports

Author(s): Ilya Grigorik

4. JavaScript with Promises: Managing Asynchronous Code (2015)

Asynchronous JavaScript is everywhere, whether you’re using Ajax, AngularJS, Node.js, or WebRTC. This practical guide shows intermediate to advanced JavaScript developers how Promises can help you manage asynchronous code effectively—including the inevitable flood of callbacks as your codebase grows. You’ll learn the inner workings of Promises and ways to avoid difficulties and missteps when using them.

The ability to asynchronously fetch data and load scripts in the browser broadens the capabilities of JavaScript applications. But if you don’t understand how the async part works, you’ll wind up with unpredictable code that’s difficult to maintain. This book is ideal whether you’re new to Promises or want to expand your knowledge of this technology.

  • Understand how async JavaScript works by delving into callbacks, the event loop, and threading
  • Learn how Promises organize callbacks into discrete steps that are easier to read and maintain
  • Examine scenarios you’ll encounter and techniques you can use when writing real-world applications
  • Use features in the Bluebird library and jQuery to work with Promises
  • Learn how the Promise API handles asynchronous errors
  • Explore ECMAScript 6 language features that simplify Promise-related code

Author(s): Daniel Parker

5. WebRTC Cookbook (2015)

Get to grips with advanced real-time communication applications and services on WebRTC with practical, hands-on recipes

About This Book

  • Explore task-based recipes on integrating your WebRTC application with systems such as Asterisk and Freeswitch
  • Set up cutting-edge communicating networks by understanding the fundamentals of debugging, security, integration, attendant services, and more
  • Gain advanced knowledge of WebRTC with these incredibly effective recipes

Who This Book Is For

If you are a JavaScript developer with a basic knowledge of WebRTC and software development, but want to explore how to use it in more depth, this book is for you.

What You Will Learn

  • Understand the concepts of WebRTC while setting up rich web applications
  • Create a signaling server using Java or Erlang
  • Secure your WebRTC application by configuring your own STUN/TURN server
  • Integrate with VoIP platforms such as Asterisk and FreeSWITCH and abstract the complexities of communications protocols
  • Get acquainted with advanced debugging and troubleshooting techniques
  • Process videos using HTML5 filters
  • Develop native mobile applications using WebRTC and integrate them with web services
  • Discover advanced WebRTC techniques and solutions

In Detail

Using WebRTC, it is easy to develop in-browser applications and web services with extended multimedia features such as audio/video calls, VoIP, screen casting, peer-to-peer file transferring and more, without installing any third-party components/plugins on the client. In this book, you’ll explore practical recipes covering the core aspects of application and service development with WebRTC. After a recap of the basics of developing rich media web applications and services, you will delve into core functionalities such as security and SSL, integration with other technologies such as VoIP and SIP, debugging clients and servers, working with filters, native applications for mobile platforms, and using third-party components.

By the end of this book, you will be able set up advanced, real-time, communicating networks with a full understanding of core WebRTC features.

Author(s): Andrii Sergiienko

6. Cross-Platform Desktop Applications: Using Node, Electron, and NW.js (2017)

Summary

Cross-Platform Desktop Applications guides you step-by-step through creating Node.js desktop applications with NW.js and Electron from GitHub. Foreword by Cheng Zhao, creator of Electron.

Purchase of the print book includes a free eBook in PDF, Kindle, and ePub formats from Manning Publications.

About the Technology

Desktop application development has traditionally required high-level programming languages and specialized frameworks. With Electron and NW.js, you can apply your existing web dev skills to create desktop applications using only HTML, CSS, and JavaScript. And those applications will work across Windows, Mac, and Linux, radically reducing development and training time.

About the Book

Cross-Platform Desktop Applications guides you step by step through the development of desktop applications using Electron and NW.js. This example-filled guide shows you how to create your own file explorer, and then steps through some of the APIs provided by the frameworks to work with the camera, access the clipboard, make a game with keyboard controls, and build a Twitter desktop notification tool. You’ll then learn how to test your applications, and debug and package them as binaries for various OSs.

What’s Inside

  • Create a selfie app with the desktop camera
  • Learn how to test Electron apps with Devtron
  • Learn how to use Node.js with your application

About the Reader

Written for developers familiar with HTML, CSS, and JavaScript.

About the Author

Paul Jensen works at Starcount and lives in London, UK.

Table of Contents

    PART 1 – WELCOME TO NODE.JS DESKTOP APPLICATION DEVELOPMENT

  1. Introducing Electron and NW.js
  2. Laying the foundation for your first desktop application
  3. Building your first desktop application
  4. Shipping your first desktop application
  5. PART 2 – DIVING DEEPER

  6. Using Node.js within NW.js and Electron
  7. Exploring NW.js and Electron’s internals
  8. PART 3 – MASTERING NODE.JS DESKTOP APPLICATION DEVELOPMENT

  9. Controlling how your desktop app is displayed
  10. Creating tray applications
  11. Creating application and context menus
  12. Dragging and dropping files and crafting the UI
  13. Using a webcam in your application
  14. Storing app data
  15. Copying and pasting contents from the clipboard
  16. Binding on keyboard shortcuts
  17. Making desktop notifications
  18. PART 4 – GETTING READY TO RELEASE

  19. Testing desktop apps
  20. Improving app performance with debugging
  21. Packaging the application for the wider world

Author(s): Paul B. Jensen

7. Getting Started with WebRTC (2013)

If you have basic HTML and JavaScript, you’re well on the way to adding real time, peer-to-peer communication to your web applications using WebRTC. This book shows you how through a totally practical, structured course.

Overview

  • Set up video calls easily with a low bandwidth audio only option using WebRTC
  • Extend your application using real-time text-based chat, and collaborate easily by adding real-time drag-and-drop file sharing
  • Create your own fully working WebRTC application in minutes

In Detail

WebRTC delivers web-based real-time communication and is set to revolutionize our view of what the Web really is. Streaming audio and video from browser to browser, as well as opening raw access to the camera and microphone, is already creating a whole new dynamic web. WebRTC also introduces real-time data channels that will allow interaction with dynamic data feeds from sensors and other devices. This really is a great time to be a web developer!

Getting Started with WebRTC provides all of the practical information you need to quickly understand what WebRTC is, how it works, and how you can add it to your own web applications. It includes clear working examples designed to help you get started building your own WebRTC-enabled applications right away.

Getting Started with WebRTC will guide you through the process of creating your own WebRTC application that can be applied in a number of different real-world situations, using well documented and clearly explained code examples.

You will learn how to quickly and easily create a practical peer-to-peer video chat application, an audio only call option, and how a Web-Socket-based signaling server can also be used to enable real-time text-based chat. You will also be shown how this same server and application structure can easily be extended to include simple drag-and-drop file sharing with transfer updates and thumbnail previews.

What you will learn from this book

  • Discover how to offer an audio only option as an alternative
  • Create an extensible Web Socket signaling server
  • Detect which browsers support WebRTC
  • Extend your application with real-time text-based chat
  • Add rich collaboration with drag-and-drop file sharing
  • Use RTCDataChannels to share real-time data
  • Design a state-based user interface for WebRTC apps
  • Explore the options available for image and audio post-processing and analysis

Approach

The book will follow a step-by-step tutorial approach to construct an application that allows video conferencing and calls between two browsers and a system for sharing files among a group.

Who this book is written for

This book is ideal for developers new to the WebRTC standards who are interested in adding sensor-driven, real-time, peer-to-peer communication to their web applications. You will only need basic experience with HTML and JavaScript.

Author(s): Rob Manson

8. Desarrollo de sitios Web utilizando MEAN, WebSockets y WebRTC: Una aproximación paso a paso (Spanish Edition) (2017)

El acrónimo MEAN hace referencia a cuatro importantes tecnologías, utilizas en la actualidad para desarrollar aplicaciones Web modernas. Se trata de un sistema de gestión de bases de datos NoSQL, una plataforma para crear aplicaciones Web en el lado del cliente, y una plataforma para crear aplicaciones Web en el lado del servidor. Una de las principales características de MEAN es que todo gira alrededor del lenguaje de programación JavaScript, lo que hace que la curva de aprendizaje se reduzca. En resumen, MEAN es lo que se conoce como un opinionated fullstack JavaScript framework, lo que significa que permite crear todo tipo de aplicaciones Web, basadas en JavaScript y siguiendo unas pautas comúnmente establecidas. Para ello se utilizan fundamentalmente las tecnologías NodeJS, AngularJS, MongoDB y Express. Por otra parte, WebSockets y WebRTC son un conjunto de tecnologías en continuo proceso de estandarización con un brillante futuro que merece la pena conocer. La primera permite realizar una comunicación bidireccional entre cliente y servidor de forma asíncrona y la segunda permite realizar una comunicación punto a punto entre clientes para transmitir contenido multimedia y datos. Juntas, abren la puerta a un número ilimitado de aplicaciones colaborativas, en las que los contenidos multimedia pueden transmitirse de forma limpia, escalable y estandarizada. Se pretende mostrar todo el proceso a través de un ejemplo que se irá construyendo durante los siguientes capítulos. La aplicación que se desarrollará es un sitio Web denominado “Multichat” en el que se combinarán diferentes posibilidades de colaboración entre sus usuarios. Básicamente habrá ocho secciones, que iremos construyendo paso a paso a lo largo del libre: 1. Listado de todos los usuarios logeados en el sistema. 2. Lista de mensajes enviados por los usuarios. Se podrán insertar textos e iconos y se podrán adjuntar ficheros binarios e imágenes. 3. Video broadcast, con el que se podrán seleccionar videos para que todos los usuarios conectados, que lo deseen, puedan visualizarlo. 4. Radio broadcast, con el que se podrán seleccionar audios (o emisoras de radio) para que todos los usuarios conectados, que lo deseen, puedan escucharlo. 5. Videoconferencia con audio y video, para ser transmitido a todos los usuarios conectados que lo deseen. 6. Geoposicionamiento de los usuarios conectados. 7. Dibujo colaborativo entre todos los usuarios conectados. 8. Muestra de presentaciones colaborativas entre todos los usuarios conectados.

Author(s): Dr. Vicente García Díaz, Dr. Jordán Pascual Espada

9. WebRTC Blueprints (2014)

Develop your very own media applications and services using WebRTC

About This Book

  • Create interactive web applications using WebRTC
  • Get introduced to advanced technologies such as WebSocket and Erlang
  • Develop your own secure web applications and services with practical projects

Who This Book Is For

If you are a WebRTC developer and want to build complex WebRTC applications and projects, or if you want to gain practical experience in developing web applications, advanced WebRTC media handling, Server and client signalling, call flows, third party integration, then this book is perfect for you. It is essential to have prior knowledge about building simple applications using WebRTC.

What You Will Learn

  • Create video conference web services that work without installing plugins or additional third-party software
  • Use ICE and STUN to pass through NAT and firewalls
  • Learn how to create and use direct peer-to-peer data channels to secure exchange data
  • Build a cross-platform signalling server for WebRTC applications
  • Work with user files from JavaScript code using the modern HTML5 File API
  • Install and configure your own TURN/STUN server
  • Integrate your application with a TURN server using authentication
  • Make your application more secure and safe using HTTPS
  • Develop your own secure web applications and services with practical projects

In Detail

This book introduces you to WebRTC and how you can utilize its open API. Each chapter covers a new concept of the technology with thoroughly explained code examples of completed applications to help you learn quickly and efficiently. You will learn about the client and server sides of a WebRTC application in a practical manner, as well as how to implement data exchange between peers using the WebRTC Data API. The book also guides you through how to develop applications for desktop sharing and prerecorded video streaming. The book also teaches you how to use HTTPS with a WebRTC application and why it can be useful. You will also learn how to implement authentication in an application and integrate it with your own TURN server.

Author(s): Andrii Sergiienko