10. Server Web

Bab-bab jaringan telah menghubungkan kamera ke jaringan dan memberikannya soket untuk berkomunikasi (Jaringan). Lalu apa? Sebagian besar aplikasi kamera bermuara pada dua hal -- mengekspos apa yang dilihat kamera ke dunia dan bereaksi terhadap apa yang dikatakan perangkat lain di jaringan. HTTP adalah cara percakapan itu terjadi, dan berfungsi dalam dua arah:

  • Sebagai server, kamera menjawab permintaan dari ponsel, browser, dan perangkat lain di jaringan. Framework microdot adalah server kamera.

  • Sebagai klien, kamera menghubungi layanan cloud untuk mengunggah, mengambil, atau mengoordinasikan. Modul requests adalah klien kamera.

Dalam 14 bab berikutnya kita akan membangun satu aplikasi kamera yang berjalan dan menggunakan keduanya.

Sebuah kamera pemicu gerak di halaman belakang dipasang di tiang di halaman, melihat apa yang terjadi, dan memberi tahu pemilik tentang hal menarik. Kita akan mengembangkan kamera dari server satu rute "Saya aktif" menjadi produk yang dapat dikirimkan: pratinjau langsung ke ponsel pemilik, dashboard dengan slider ambang batas dan log peristiwa, notifikasi push saat gerakan terdeteksi, login, HTTPS, dan arsip cloud dari setiap bingkai yang terpicu.

Setiap bab menambahkan satu fitur. Contoh kode mengasumsikan bab-bab sebelumnya sudah ada -- kita tidak menempel ulang seluruh skrip setiap saat.

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.