10. Webサーバー

ネットワークの章では、カメラをネットワークに接続し、通信するためのソケットを与えました(ネットワーキング)。では次は何でしょうか。ほとんどのカメラアプリケーションは2つのことに集約されます。つまり カメラが見ているものを世界に公開する ことと、ネットワーク上の他のものが言うことに反応する ことです。HTTPはその会話が行われる手段であり、両方向で機能します。

  • サーバー として、カメラはネットワーク上のスマートフォン、ブラウザ、その他のデバイスからのリクエストに応答します。microdot フレームワークがカメラのサーバーです。

  • クライアント として、カメラはアップロード、取得、連携のためにクラウドサービスに接続します。requests モジュールがカメラのクライアントです。

次の14章にわたって、両方を活用する 1つの 実際に動くカメラアプリケーションを構築します。

裏庭のモーショントリガーカメラ は庭のポールに設置され、何が起きているかを見て、興味深いことがあれば所有者に知らせます。このカメラを、ルートが1つだけの「私は生きています」サーバーから、出荷可能なものへと成長させていきます。所有者のスマートフォンへのライブプレビュー、しきい値スライダーとイベントログを備えたダッシュボード、モーション発火時のプッシュ通知、ログイン、HTTPS、そしてトリガーされたすべてのフレームのクラウドアーカイブです。

各章では 1つの 機能を追加します。コードサンプルは前の章の内容がすでに用意されていることを前提としており、毎回スクリプト全体を再掲することはしません。

スマートフォンやノートPCは、ダッシュボード、SSEイベント、 WebSocketコマンドのためにHTTPS経由でカメラと通信し、 カメラはHTTPS POSTでクラウドアーカイブに送信します。