バイナリファイルの受信はmosquitto_subではちょっと面倒じゃないかな、なんてこと言ってましたが、Paho-mqttで簡単なクライアントを作ってバイナリファイルの転送を試して見ました。
コードは先の投稿で拾ってきたPaho-mqtt(python)のテストコードをちょちょいと改造しました。
|
|
これを実行しておいて、別のコンソール(あるいはPC)から、jpgファイルをパブリッシュしてみます。
こちらは、mosquitto。sh publish a binary file as a test data
$ mosquitto_pub -h my.broker.jp -t topic/binary/jpeg -f mypicture.jpg
とします。
すると、先程のpythonスクリプトからtest.jpgのファイルが出力されました。実際に表示させてみると、問題なく絵を見ることが出来ました。
mosquitto_subのコマンドラインからですと、出力したファイルはコマンドを終了しない限りずっとオープンしっぱなしなので、スクリプトなどで横取りすることできませんでした。今回のこのpaho版では、ファイルを読み込んだら一回クローズしてしまいますので、横取りできます。
ま、きちんとpythonで全部のスクリプトを書く、というのが筋でしょうけど。