ApiRTC Training

Goals and presentation

Acquire the fundamentals of WebRTC architecture, protocols and associated software technologies. Understand WebRTC by theoretical analyzes of varied use-cases, and experimental work on platform. Get an introduction to its potential in term of new services.

 

WebRTC is a project initiated by the W3C and the IETF, whose objective is to achieve real-time mutimedia communications between web browsers. By introducing a native convergence of synchronous/asynchronous communication services, landline/ mobile, voice/data… This new approach made the web the natural support and definitively any professional or public communication service.

Participants and requirements

  • Computer and/or network engineers, developers of telecommunications services, web developers, technical managers.
  • Knowledge of network protocols TCP/IP,HTTP,HTML et JavaScript languages are required to take better advantage of training.

Program

Introduction

 

  • WebRTC origins and history
  • WebRTC Standardization
  • Use-cases and deployments

Technical description of WebRTC

 

WebRTC support (browsers, devices, mobile …)

 

WebRTC APIs

  • MediaStream – getUserMedia
    • API explanation with Web sample
    • Media devices acceptation: HTTPS
    • Media constraints usage (Video resolution, QoS…)
    • Media devices selection
    • Screensharing
  • Peerconnection
    • Datachannel

 

SDP – Session description

  • Peer-to-Peer call sample with ApiRTC: Media routing on a local network
  • Network capture analyses and SDP exchange
  • offer / answer/ candidates

 

DTLS – SRTP : Protocoles

DTLS – SCTP : Protocoles

Encryptions

  • Keys exchanges description s et analyse des paramètres dans les offres SDP

 

Audio, video and DTMF

Audio and video codecs in WebRTC – OPUS audio codec

 

Network address Traversal – Media communication with Firewall

  • STUN, TURN, ICE: protocols description
  • SDP description (offer / answer/ candidates)
  • TrickleIce mechanism

 

WebRTC issues and how ApiRTC will help in your deployment

  • Signalling
  • API evolutions
  • Browser interoperability
  • Restrictive firewall traversal

Technical description of ApiRTC

 

This part of the training includes practical work on platform for use-case analysis and development of a service.

 

Browser compatibility

ApiRTC platform architecture description (SaaS – On-premise deployment)

ApiRTC Library architecture description

Starting with ApiRTC

  • apiKey / apiCCId
  • events management
  • Version management
  • Log management

ApiRTC Dashboard description

Offline features (UserAgent: Whiteboard…)

Signalling

  • ApiRTC connexion (Long-polling and WebSocket)
  • Disconnection management / retry
  • Presence group management / userData

 

Calls management (tutorial 3)

  • Audio / video call
  • Error management
  • Call end management
  • Safari
  • Hangup
  • Mute
  • Accept/Refuse call – (tutorial 4)
  • Media Device selection – (tutorial 8)
  • Resolution configuration – (tutorial 9)
  • Recording calls – (tutorial 7)
  • External stream usage: Stream tutorial
  • Disconnection management / retry during calls
    • Call hand over with/without network change
  • Call Forking

 

Media routing

  • ApiRTC media routing mode sample
  • Restrictive firewall traversal

 

Conference calls – (tutorial 12 + record tutorial 15)

  • Media routing with ApiRTC in conference: P2P / SFU
  • Quality of service (QoS) adaptation mechanisms

 

Chat with history management: Chat sample

Group Chat

 

SendData usage:  JSON data transfer

 

File transfer (tutorial 14 + DataChannel sample)

Datachannel to server

 

Whiteboard (tutorial 13)

  • Disconnection management
  • Whiteboard hand over with/without network change

 

Video pointer sharing

 

Call establishment with PSTN

  • SIP Trunk interconnection for call and conference access

 

Security aspects on ApiRTC

  • Media flows – DTLS/SRTP
  • Datachannel flows – DTLS/SCTP
  • Users authentication

 

WebRTC monitoring tool:

  • Browser tools : Chrome / Firefox
    • WebRTC QoS Statistics display: bandwidth, delay, packet lost, jitter…
  • Diagnostic tools :
    • Precall test
    • WebRTC test

Summary and conclusion

Duration

2 days-training
2 000€
Up to 5 participants

Person in charge

Frédéric LUART

CTO and co-founder of Apizee, Frederic has a large experience delivering VoIP systems for telecom carriers and is an established expert in WebRTC technology and WebRTC based multimedia applications development.

Get your API key