diff --git a/omv_backup.py b/omv_backup.py index 107d975..2532f1a 100755 --- a/omv_backup.py +++ b/omv_backup.py @@ -201,12 +201,12 @@ logging.info("Test connection") hm = socket.gethostbyaddr(BACKUP_HOST) logging.info(_RESTORE) -def send_mqtt_message(topic,msg): +def send_mqtt_message(topic,msg,qos=0,retain=False): client2 = mqtt.Client() client2.username_pw_set(USERNAME, PASSWORD) try: client2.connect(broker,1883,60) - client2.publish(topic, json.dumps(msg)) + client2.publish(topic, json.dumps(msg), qos=qos, retain=retain) client2.disconnect() logging.info(f"Message sent {topic}, {msg}") except ValueError as e: @@ -569,7 +569,7 @@ def backup_job(server): #print(len(apps)) topic = "sectorq/amd/backups" msg = {"mode":_MODE, "status":"started","bak_name":"complete","host":host,"cur_job":b,"sub":line[0],"start_time":STARTTIME,"end_time":"in progress","progress":str(round(progress)) + "%","finished":",".join(finished)} - send_mqtt_message(topic,msg) + # send_mqtt_message(topic,msg) progress = progress + step cmnd = f"rm -rf {FULL_BACKUP_LATEST}" @@ -646,7 +646,8 @@ def backup_job(server): logging.info(msg) send_mqtt_message(topic,msg) - + topic = "sectorq/backups/start" + send_mqtt_message(topic, "finished",qos=2,retain=True) topic = "sectorq/amd/restore" for s in servers: @@ -744,10 +745,9 @@ def handle_payload(payload): payload = payload.lower() if payload == 'm-server': logging.info("💡 Starting backup job") - res = backup_job(payload) - logging.info(f"💡 Finished backup job /{res}") - topic = "sectorq/backups/start" - client.publish(topic, res,qos=2,retain=True) + backup_job(payload) + logging.info(f"💡 Finished backup job") + else: logging.error(f"⚠️ Unknown command: {payload}")