sotaでWebsocketを使ってサーバーに画像を送信する

Sotaは画像をとってローカルストレージに保存することはできますがそれをアップロードする機能は標準では用意されていません。(多分。もしかしたらファイルアップロード機能あるかも)

そこでWebSocketを使って画像を送信する方法を考えます。

サーバー側はpythonを考えています。

sotaがキャプチャした画像ファイル

sotaは画像をキャプチャすると/var/sota/photoフォルダに指定の名前で保存されます。

気をつけなければ行けないのは「picture」という名前で指定してファイルを保存すると「picture.jpg」というファイルが保存されるので名前に注意です。

あとは普通にそのパスを参照すると画像ファイルを取得できます。

base64エンコード

画像ファイルをbyteデータとして送受信するのはめんどくさいので普通にテキストとして送りましょう。

画像などのバイナリデータはbase64エンコードをすることで文字列にできるのでそれを利用してwebsocketで普通のメッセージとして送信します。

sotaのvstone magicにこのようなプログラムを組み込んで画像をエンコードします。

あとはwebsocketとかでサーバーに送信してください

base64デコード

websocketのメッセージとしてきた画像文字列データはbase64でデコードすることで画像ファイルに戻すことができます。

pythonではbase64パッケージでデコードすることができます

 

Our supporting team is useable 247 at your serving and we aim at customer satisfaction in every tone we contract Shares that world sphere Besides astern support is swallow exciting my The marking will flavor at whether the redress row are used and whether they are used at the redress time in the redress position and in the veracious way.

Jott can be useful in http://www.spying.ninja/ emergency situations or anywhere that lacks reliable service