Tietokoneen etäohjaus selaimen kautta

Noin puoli vuotta sitten päätin tehdä ohjelman, jolla ohjataan tietokonetta selaimen kautta. Aloitin yksinkertaisella yksikantaisella HTTP-palvelimella, joka siirsi kuvat selaimeen ja vastaanotti kohdistimen koordinaatit ohjausta varten.

Tietyssä vaiheessa tajusin, että WebRTC-tekniikka sopii hyvin näihin tarkoituksiin. Chrome-selaimessa on tällainen ratkaisu, se asennetaan laajennuksen kautta. Mutta halusin tehdä kevyen ohjelman, joka toimisi ilman asennusta.

Ensin yritin käyttää Googlen tarjoamaa kirjastoa, mutta kääntämisen jälkeen se vie 500 Mt. Jouduin toteuttamaan koko WebRTC-pinon melkein tyhjästä ja onnistuin sovittamaan kaiken 2.5 Mt:n exe-tiedostoon. Ystävä auttoi käyttöliittymän kanssa JS:ssä, ja tähän päädyimme.

Suoritetaan ohjelma:

Tietokoneen etäohjaus selaimen kautta
Avaa linkki selaimen välilehdellä ja saat täyden pääsyn työpöydälle:

Tietokoneen etäohjaus selaimen kautta
Lyhyt animaatio yhteydenmuodostusprosessista:

Tietokoneen etäohjaus selaimen kautta
Tukee Chrome, Firefox, Safari, Opera.

On mahdollista lähettää ääntä, äänipuhelua, hallita leikepöytää, siirtää tiedostoja ja soittaa pikanäppäimiin.

Työskennellessään ohjelman parissa minun piti tutkia tusinaa RFC:tä ja ymmärtää, että Internetissä ei ole tarpeeksi tietoa WebRTC-protokollan toiminnasta. Haluan kirjoittaa artikkelin siinä käytetyistä teknologioista, haluaisin selvittää, mitkä seuraavista kysymyksistä kiinnostavat yhteisöä:

  • SDP-suoratoistodatan kuvausprotokolla
  • ICE-ehdokkaat ja yhteyden muodostaminen kahden pisteen, STUN- ja TURN-palvelimien välille
  • DTLS-yhteys ja avainten siirto RTP-istuntoon
  • RTP- ja RTСP-protokollat ​​salauksella mediatietojen lähettämiseen
  • Siirrä H264, VP8 ja Opus RTP:n kautta
  • SCTP-yhteys binääritietojen siirtoon

Lähde: will.com

Lisää kommentti