Návrh Školení
Obsluha Mediálních Zařízení
1. Oprávnění v Prohlížeči s navigator.permissions
- Přístup k hardwaru:
- Webová kamera (webcam)
- Mikrofon
- Volitelná oprávnění:
- Lokace (geolocation)
- Oznamování (notifications)
- Schránka (read/write clipboard)
- Dotazování a stav oprávnění
- Omezení a kompatibilita s prohlížeči
2. Čtení Mediálních Zařízení s navigator.mediaDevices
- Výpis zařízení (device enumeration)
- Zpracování změn zařízení (handling device changes)
3. Kompatibilita mezi Prohlížeči
- Použití API:
- navigator.permissions.query()
- navigator.mediaDevices.enumerateDevices()
- getUserMedia()
- Fallback strategie pro Safari
4. Obsluha Mediálních Zařízení
- Inicializace zařízení: getUserMedia(constraints)
- Omezení mediálních zařízení (media device constraints)
- Spouštění a zastavování mediálních proudů
- Zpracování změn zařízení
5. Záznam Zařízení s MediaRecorder
- Spouštění a zaznamenávání streamu (start/stop streaming and recording)
- Stažení souboru .webm
- Náhled vlnových forem v reálném čase
Doplňkové Možnosti:
- Uložení ve formátu .wav pomocí ScriptProcessorNode
- Vizualizace audio FFT spektra
- Bar zvukové úrovně v decibelích
- Rozpoznávání hlasu s webkitSpeechRecognition
Připojení mezi Peer
1. Signální Servery
- Možnosti bidirekčního kanálu:
- WebSocket
- Socket.io
- SignalR
- Struktura zpráv (message structure)
- Zjednodušený WebRTC klient
- Kompletní tok signální komunikace (full signaling flow)
2. Videokonference přes WebRTC
- Architektura: Node.js + ws
- WebRTC klient: RTCPeerConnection
- Místní testování end-to-end (local E2E testing)
Doplňkové Funkce:
- Zavěšení hovoru (close connection, stop media)
- Videokonference s více uživateli (multi-user rooms)
- Jednoduchá autentizace na bázi tokenů
3. Sdílení Obrazovky
- Použití getDisplayMedia()
- Architektura a možnosti (architecture and options)
4. Protokol SDP (Session Description Protocol)
- Úvod a obsahy (introduction and contents)
- Přečtení a interpretace SDP (reading and interpreting SDP)
- Kodeky:
- Zvuk a Video
- Vyjednávání a řízení (negotiation and control)
- Fallback strategie (fallback strategies)
5. Statistiky WebRTC s getStats()
- Druhy statistik (types of statistics)
- Jak interpretovat statistiky (how to interpret stats)
- Grafy live bitrate/jitter
- Přizpůsobení kvality (quality adaptation strategies)
6. Všechna témata jsou
- Praktické příklady (hands-on use-case)
Požadavky
Toto kurzy jsou vhodné pro frontend a full-stack vývojáře, technické architekty a inženýry budující na prohlížeč orientované funkce reálného času komunikace jako videokonference, sdílení obrazovky nebo audio streamování. Účastníci by měli mít pracovní znalosti jazyka JavaScript a webových technologií s možnými zkušenostmi v Node.js a komunikaci na bázi WebSocket.
Reference (5)
Oblíbilo se mi, jak Gunnar psal téměř všechny kódy na běhu, zatímco jsme probírali materiál, ale byla tam také spousta připraveného materiálu na Google Drive, ke kterému se mohu později vrátit. Kód, který Gunnar napsal na základě ukázkových dat, která jsem mu poskytl v předem, byl také velmi užitečný a díky tomu bylo školení relevantní pro naše vlastní soubory dat.
Ranvir - Schroders Personal Wealth
Kurz - Visual Studio Code
Přeloženo strojem
Několik příkladů pro každý modul a skvělá znalost vyučujícího.
Sebastian - BRD
Kurz - Secure Developer Java (Inc OWASP)
Přeloženo strojem
Modul 3 Útoky a exploitace aplikací, XSS, SQL injekce Modul 4 Útoky a exploitace serverů, DoS, BOF
Tshifhiwa - Vodacom
Kurz - How to Write Secure Code
Přeloženo strojem
Reálné příklady.
Kristoffer Opdahl - Buypass AS
Kurz - Web Security with the OWASP Testing Framework
Přeloženo strojem
Tréninkový vedoucí měl vynikající znalosti předmětu a způsob, jakým byly relace uspořádány tak, aby publikum mohlo snadno následovat demonstrace, skutečně pomohl pevněji zakotvit tato znalosti ve srovnání s tím, kdy by se účastníci jen posazovali a naslouchali.
Jack Allan - RSM UK Management Ltd.
Kurz - Secure Developer .NET (Inc OWASP)
Přeloženo strojem