32 lines
773 B
Python
32 lines
773 B
Python
import paho.mqtt.client as mqtt
|
|
import json
|
|
import time
|
|
|
|
class MQTTService:
|
|
|
|
address : str = None
|
|
port : int = None
|
|
|
|
def __init__(self, address : str, port : int):
|
|
self.address = address
|
|
self.port = port
|
|
|
|
def publish(self, client_id : str, topic: str, data: bytes, qos: int = 0):
|
|
client = mqtt.Client(client_id=client_id)
|
|
try :
|
|
client.connect(self.address, self.port)
|
|
payload = {
|
|
"timestamp": int(time.time()),
|
|
"data": data,
|
|
}
|
|
client.publish(topic, json.dumps(payload), qos)
|
|
|
|
except Exception as e:
|
|
print(e)
|
|
finally:
|
|
client.loop_stop()
|
|
client.disconnect()
|
|
|
|
|
|
if __name__ == "__main__":
|
|
pass |