Fora komputila kontrolo per retumilo

Antaŭ proksimume ses monatoj mi decidis fari programon por kontroli komputilon per retumilo. Mi komencis per simpla unu-inga HTTP-servilo, kiu transdonis bildojn al la retumilo kaj ricevis kursorajn koordinatojn por kontrolo.

En certa etapo mi rimarkis, ke WebRTC-teknologio estas bone taŭga por ĉi tiuj celoj. La Chrome-retumilo havas tian solvon; ĝi estas instalita per etendaĵo. Sed mi volis fari malpezan programon, kiu funkcius sen instalado.

Unue mi provis uzi la bibliotekon provizitan de Guglo, sed post kompilo ĝi okupas 500MB. Mi devis efektivigi la tutan WebRTC-stakon preskaŭ de nulo, kaj sukcesis enmeti ĉion en 2.5MB-exe-dosieron. Amiko helpis pri la interfaco en JS, kaj jen kion ni finis.

Ni rulu la programon:

Fora komputila kontrolo per retumilo
Malfermu la ligilon en retumila langeto kaj ricevu plenan aliron al la labortablo:

Fora komputila kontrolo per retumilo
Mallonga animacio de la procezo de agordo de konekto:

Fora komputila kontrolo per retumilo
Subtenata de Chrome, Firefox, Safari, Opera.

Eblas transdoni sonon, sonalvokon, administri la tondujo, translokigi dosierojn kaj voki varmajn klavojn.

Laborante pri la programo, mi devis studi dekduon da RFC-oj kaj kompreni, ke ne ekzistas sufiĉe da informoj en la Interreto pri la funkciado de la WebRTC-protokolo. Mi volas skribi artikolon pri la teknologioj uzataj en ĝi, mi ŝatus ekscii, kiuj el la sekvaj demandoj interesas la komunumon:

  • SDP-flua datumpriskriba protokolo
  • ICE-kandidatoj kaj establante ligon inter du punktoj, STUN kaj TURN-serviloj
  • DTLS-konekto kaj translokigo de ŝlosiloj al RTP-sesio
  • RTP kaj RTСP-protokoloj kun ĉifrado por transdoni amaskomunikilajn datumojn
  • Transloku H264, VP8 kaj Opus per RTP
  • SCTP-konekto por translokigo de binaraj datumoj

fonto: www.habr.com

Aldoni komenton