10. Web poslužitelji

Poglavlja o umrežavanju dovela su kameru na mrežu i dala joj sockete za komunikaciju (Umrežavanje). Što sada? Većina aplikacija za kamere svodi se na dvije stvari – izložiti svijetu ono što kamera vidi i reagirati na ono što druge stvari na mreži govore. HTTP je način na koji se taj razgovor odvija i radi u oba smjera:

  • Kao poslužitelj, kamera odgovara na zahtjeve telefona, preglednika i drugih uređaja na mreži. Okvir microdot je poslužitelj kamere.

  • Kao klijent, kamera poseže za uslugama u oblaku radi prijenosa, dohvaćanja ili koordinacije. Modul requests je klijent kamere.

Kroz sljedećih 14 poglavlja izgradit ćemo jednu radnu aplikaciju za kameru koja koristi oboje.

Kamera za okidanje pokreta u dvorištu stoji na stupu u dvorištu, vidi što se događa i obavještava vlasnika o svemu zanimljivom. Razvit ćemo kameru od poslužitelja „Živ sam” s jednom rutom do nečega isporučivog: pregled uživo na vlasnikov telefon, nadzorna ploča s klizačem praga i zapisom događaja, push obavijesti kada se pokrene pokret, prijava, HTTPS i arhiva u oblaku svake okinute sličice.

Svako poglavlje dodaje jednu značajku. Uzorci koda pretpostavljaju da su ranija poglavlja na mjestu – ne lijepimo ponovno cijelu skriptu svaki put.

The phone or laptop talks to the cam over HTTPS for the dashboard, SSE events, and WebSocket commands; the cam talks out to a cloud archive over HTTPS POST.