MQTTでIoT通信(3)受け取ったのデータのファイル保存 プログラムをサービスとして起動する
MQTTでIoT通信(4)受け取ったのデータのファイル保存に挑戦。 sudo apt install python3-paho-mqtt で Pythonの paho-mqtt ライブラリをインストール logger.pyとして import paho.mqtt.client as mqtt import os # --- 設定 --- BROKER = "localhost" TOPIC = "sensor/#" # 受信したいトピック #LOG_FILE = "mqtt_data.csv" # 保存ファイル名 LOG_FILE_pre = "/tmp/mqtt-data-" # 保存ファイル名の接頭部分 # メッセージ受信時の処理 def on_message(client, userdata, msg): # 届いた内容を文字列に変換 payload = msg.payload.decode("utf-8") #トピックスのデータの処理 sensor/マシン名 myTOPIC = msg.topic.split('/') #myTOPIC[0]がsensorで[1]がマシン名 #ペイロードのデータの処理 mydata = payload.split(':') # mydata[0] = tmp mydata[1]が温度になるはず LOG_FILE = LOG_FILE_pre +myTOPIC[1] + '-' + mydata[0] + ".txt" #logファイルの指定 /tmp/に接頭語 マシン[> # ファイルに上書き保存(自動で閉じる仕組み) データの値だけ格納、温度だと24.45みたいな with open(LOG_FILE, "w", encoding="utf-8")...