import paho.mqtt.client as mqtt import json import argparse from datetime import datetime import time import yaml parser = argparse.ArgumentParser() parser.add_argument('-config',help='') args = parser.parse_args() with open(f'/usr/local/sdt/app/{args.config}/config.yaml', encoding='UTF-8') as f: yamlData = yaml.load(f, Loader=yaml.FullLoader) mqttc = mqtt.Client() # puclisher 이름 mqttc.username_pw_set("sdt", "251327") mqttc.connect("13.209.39.139", 32259) while True: dataList = [] for n in range(10): data = { "timestamp": datetime.now().timestamp(), "current": [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0], "voltage": [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0], "do": [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0], "er1": [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0], "er2": [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0], } dataList.append(data) time.sleep(0.1) dataBody = { "slot": 1, "chamber": 1, "channel": 1, "list": dataList, } datas = json.dumps({ "modeCode": "test1", "assetCode": "perfermance", "dataType":"DATA", "data": dataBody }) mqttc.publish(f"/device-data/{yamlData['topic']}", datas) # topic, message # mqttc.publish(f"/device-data/perfermance", datas) # topic, message