mirror of
https://gitlab.sectorq.eu/jaydee/mqtt_srv.git
synced 2025-12-14 10:34:53 +01:00
bitwarden
This commit is contained in:
39
mqtt_srv.py
39
mqtt_srv.py
@@ -19,7 +19,7 @@ import random
|
|||||||
import requests
|
import requests
|
||||||
#import psutil
|
#import psutil
|
||||||
stats = {}
|
stats = {}
|
||||||
VERSION = "1.0.26"
|
VERSION = "1.0.28"
|
||||||
curos = platform.system()
|
curos = platform.system()
|
||||||
host = platform.node().lower()
|
host = platform.node().lower()
|
||||||
print(host)
|
print(host)
|
||||||
@@ -868,8 +868,11 @@ def on_message(client, userdata, msg):
|
|||||||
else:
|
else:
|
||||||
if host == "nas" or host == "octopi":
|
if host == "nas" or host == "octopi":
|
||||||
subprocess.Popen(["/sbin/poweroff"])
|
subprocess.Popen(["/sbin/poweroff"])
|
||||||
elif host == "openmediavault" or host == "omv":
|
elif host == "openmediavault" or host == "omv" or host == "amd" or host == "ryzen":
|
||||||
subprocess.Popen(["poweroff"])
|
subprocess.Popen(["poweroff"])
|
||||||
|
elif host == "amd" or host == "ryzen":
|
||||||
|
subprocess.Popen(["systemctl suspend"])
|
||||||
|
|
||||||
else:
|
else:
|
||||||
#subprocess.Popen(["/bin/systemctl", "suspend", "-i"])
|
#subprocess.Popen(["/bin/systemctl", "suspend", "-i"])
|
||||||
#subprocess.Popen(["sudo", "pm-suspend"])
|
#subprocess.Popen(["sudo", "pm-suspend"])
|
||||||
@@ -931,7 +934,15 @@ client.will_set("home-assistant/" + host.lower() + "/hwstats", payload=payload,
|
|||||||
client.on_connect = on_connect
|
client.on_connect = on_connect
|
||||||
client.on_message = on_message
|
client.on_message = on_message
|
||||||
writeLog(MQTT_HOST)
|
writeLog(MQTT_HOST)
|
||||||
client.connect(MQTT_HOST, MQTT_PORT, 25)
|
connected = False
|
||||||
|
while not connected:
|
||||||
|
try:
|
||||||
|
client.connect(MQTT_HOST, MQTT_PORT, 25)
|
||||||
|
connected = True
|
||||||
|
except:
|
||||||
|
writeLog("Failed to connect repeating...")
|
||||||
|
time.sleep(10)
|
||||||
|
|
||||||
|
|
||||||
# client.publish("sectorq/status", payload="{'action':'connect', 'system':'" + host + "', 'ip': '" + IP + "', 'mac':'" + mac + "', 'ver':'?'}", qos=0, retain=False)
|
# client.publish("sectorq/status", payload="{'action':'connect', 'system':'" + host + "', 'ip': '" + IP + "', 'mac':'" + mac + "', 'ver':'?'}", qos=0, retain=False)
|
||||||
|
|
||||||
@@ -1054,7 +1065,8 @@ else:
|
|||||||
NEXT_CHECK = int(time.time()) + 20
|
NEXT_CHECK = int(time.time()) + 20
|
||||||
writeLog("Blalala : Next : " + str(NEXT_CHECK))
|
writeLog("Blalala : Next : " + str(NEXT_CHECK))
|
||||||
|
|
||||||
if host.lower() == "asus" or host.lower() == "morefine":
|
if host.lower() == "asus" or host.lower() == "morefine" or host.lower() == "ryzen":
|
||||||
|
writeLog("Blalala : AAA")
|
||||||
print(psutil.sensors_temperatures())
|
print(psutil.sensors_temperatures())
|
||||||
#print(psutil.sensors_fans())
|
#print(psutil.sensors_fans())
|
||||||
sences = psutil.sensors_temperatures()
|
sences = psutil.sensors_temperatures()
|
||||||
@@ -1068,19 +1080,25 @@ else:
|
|||||||
cpu_data = sences["k10temp"][0]
|
cpu_data = sences["k10temp"][0]
|
||||||
except:
|
except:
|
||||||
cpu_data = "None"
|
cpu_data = "None"
|
||||||
|
writeLog(cpu_data)
|
||||||
print("CPUDATA")
|
print("CPUDATA")
|
||||||
print(cpu_data)
|
print(cpu_data)
|
||||||
print("#"*40)
|
print("#"*40)
|
||||||
|
|
||||||
|
|
||||||
mb_data = sences["acpitz"][0]
|
|
||||||
print("MBDATA")
|
print("MBDATA")
|
||||||
print(mb_data)
|
try:
|
||||||
print(mb_data.current)
|
mb_data = sences["acpitz"][0]
|
||||||
|
print(mb_data)
|
||||||
|
print(mb_data.current)
|
||||||
|
mb_data = mb_data.current
|
||||||
|
except:
|
||||||
|
mb_data = 0
|
||||||
|
|
||||||
|
|
||||||
print("#"*40)
|
print("#"*40)
|
||||||
|
|
||||||
|
|
||||||
try:
|
try:
|
||||||
|
print(psutil.sensors_fans())
|
||||||
fan_data = psutil.sensors_fans()["asus"][0].current
|
fan_data = psutil.sensors_fans()["asus"][0].current
|
||||||
except:
|
except:
|
||||||
fan_data = "None"
|
fan_data = "None"
|
||||||
@@ -1104,7 +1122,8 @@ else:
|
|||||||
#print(str(jn1["coretemp-isa-0000"]["Package id 0"]["temp1_input"]))
|
#print(str(jn1["coretemp-isa-0000"]["Package id 0"]["temp1_input"]))
|
||||||
#print(str(jn1["asus-isa-0000"]["cpu_fan"]["fan1_input"]))
|
#print(str(jn1["asus-isa-0000"]["cpu_fan"]["fan1_input"]))
|
||||||
#client.publish("sectorq/monitor/" + host.lower(), payload="{\"mb_temp\":0,\"mem_usage\":0,\"cpu_temp\":0,\"cpu_usage\":0,\"gpu_temp\":0,\"gpu_usage\":0}", qos=0, retain=False)
|
#client.publish("sectorq/monitor/" + host.lower(), payload="{\"mb_temp\":0,\"mem_usage\":0,\"cpu_temp\":0,\"cpu_usage\":0,\"gpu_temp\":0,\"gpu_usage\":0}", qos=0, retain=False)
|
||||||
client.publish("home-assistant/" + host + "/hwstats", payload='{"status":"on", "version":"' + VERSION + '","TCPU":"NA", "MB_TEMP":' + str(mb_data.current) + ', "MEM_UTIL":' + str(mem_data.percent) + ', "CPU_TEMP":' + str(cpu_data.current) + ', "GPU_TEMP":0, "GPU_UTIL":0, "FAN_CPU":"' + str(fan_data) + '", "VMEM_UTIL":' + str(swap_data.percent) + ', "CPU_UTIL":' + str(cpu_usage) + '}', qos=0, retain=False)
|
writeLog('{"status":"on", "version":"' + VERSION + '","TCPU":"NA", "MB_TEMP":' + str(mb_data) + ', "MEM_UTIL":' + str(mem_data.percent) + ', "CPU_TEMP":' + str(cpu_data.current) + ', "GPU_TEMP":0, "GPU_UTIL":0, "FAN_CPU":"' + str(fan_data) + '", "VMEM_UTIL":' + str(swap_data.percent) + ', "CPU_UTIL":' + str(cpu_usage) + '}')
|
||||||
|
client.publish("home-assistant/" + host + "/hwstats", payload='{"status":"on", "version":"' + VERSION + '","TCPU":"NA", "MB_TEMP":' + str(mb_data) + ', "MEM_UTIL":' + str(mem_data.percent) + ', "CPU_TEMP":' + str(cpu_data.current) + ', "GPU_TEMP":0, "GPU_UTIL":0, "FAN_CPU":"' + str(fan_data) + '", "VMEM_UTIL":' + str(swap_data.percent) + ', "CPU_UTIL":' + str(cpu_usage) + '}', qos=0, retain=False)
|
||||||
client.publish("sectorq/systems/" + host.lower() + "/stat", payload="on", qos=0, retain=True)
|
client.publish("sectorq/systems/" + host.lower() + "/stat", payload="on", qos=0, retain=True)
|
||||||
elif host.lower() == "openmediavault" or host.lower() == "omv":
|
elif host.lower() == "openmediavault" or host.lower() == "omv":
|
||||||
#print(psutil.sensors_temperatures())
|
#print(psutil.sensors_temperatures())
|
||||||
|
|||||||
52
mqtt_srv.pyw
52
mqtt_srv.pyw
@@ -19,7 +19,7 @@ import random
|
|||||||
import requests
|
import requests
|
||||||
#import psutil
|
#import psutil
|
||||||
stats = {}
|
stats = {}
|
||||||
VERSION = "1.0.26"
|
VERSION = "1.0.28"
|
||||||
curos = platform.system()
|
curos = platform.system()
|
||||||
host = platform.node().lower()
|
host = platform.node().lower()
|
||||||
print(host)
|
print(host)
|
||||||
@@ -364,7 +364,7 @@ def on_connect(client, userdata, flags, rc):
|
|||||||
if host.lower() == "nas":
|
if host.lower() == "nas":
|
||||||
print("Getting VM info")
|
print("Getting VM info")
|
||||||
|
|
||||||
cmnd = "/share/ZFS530_DATA/.qpkg/QKVM/usr/bin/virsh list --all"
|
cmnd = "/share/ZFS532_DATA/.qpkg/QKVM/usr/bin/virsh list --all"
|
||||||
print(cmnd)
|
print(cmnd)
|
||||||
status, output = subprocess.getstatusoutput(cmnd)
|
status, output = subprocess.getstatusoutput(cmnd)
|
||||||
l = 1
|
l = 1
|
||||||
@@ -382,7 +382,7 @@ def on_connect(client, userdata, flags, rc):
|
|||||||
|
|
||||||
for m in VMS:
|
for m in VMS:
|
||||||
|
|
||||||
cmnd = "/share/ZFS530_DATA/.qpkg/QKVM/usr/bin/virsh domstate " + m
|
cmnd = "/share/ZFS532_DATA/.qpkg/QKVM/usr/bin/virsh domstate " + m
|
||||||
#out = subprocess.Popen(cmnd.split())
|
#out = subprocess.Popen(cmnd.split())
|
||||||
print(cmnd)
|
print(cmnd)
|
||||||
status, output = subprocess.getstatusoutput(cmnd)
|
status, output = subprocess.getstatusoutput(cmnd)
|
||||||
@@ -471,7 +471,8 @@ def on_message(client, userdata, msg):
|
|||||||
|
|
||||||
if myObj["cmd"] == "nas_cmd":
|
if myObj["cmd"] == "nas_cmd":
|
||||||
print("Executing NAS")
|
print("Executing NAS")
|
||||||
cmnd = "/share/ZFS530_DATA/.qpkg/QKVM/usr/bin/virsh domstate " + str(myObj["target"])
|
#cmnd = "/share/ZFS530_DATA/.qpkg/QKVM/usr/bin/virsh domstate " + str(myObj["target"])
|
||||||
|
cmnd = "/share/ZFS532_DATA/.qpkg/QKVM/usr/bin/virsh domstate " + str(myObj["target"])
|
||||||
print(cmnd)
|
print(cmnd)
|
||||||
status, output = subprocess.getstatusoutput(cmnd)
|
status, output = subprocess.getstatusoutput(cmnd)
|
||||||
print(output)
|
print(output)
|
||||||
@@ -487,7 +488,7 @@ def on_message(client, userdata, msg):
|
|||||||
cmd_type = "shutdown"
|
cmd_type = "shutdown"
|
||||||
|
|
||||||
|
|
||||||
cmnd = "/share/ZFS530_DATA/.qpkg/QKVM/usr/bin/virsh " + cmd_type + " " + str(myObj["target"])
|
cmnd = "/share/ZFS532_DATA/.qpkg/QKVM/usr/bin/virsh " + cmd_type + " " + str(myObj["target"])
|
||||||
subprocess.Popen(cmnd.split())
|
subprocess.Popen(cmnd.split())
|
||||||
print(cmnd)
|
print(cmnd)
|
||||||
if myObj["command"] == "start":
|
if myObj["command"] == "start":
|
||||||
@@ -867,8 +868,11 @@ def on_message(client, userdata, msg):
|
|||||||
else:
|
else:
|
||||||
if host == "nas" or host == "octopi":
|
if host == "nas" or host == "octopi":
|
||||||
subprocess.Popen(["/sbin/poweroff"])
|
subprocess.Popen(["/sbin/poweroff"])
|
||||||
elif host == "openmediavault" or host == "omv":
|
elif host == "openmediavault" or host == "omv" or host == "amd" or host == "ryzen":
|
||||||
subprocess.Popen(["poweroff"])
|
subprocess.Popen(["poweroff"])
|
||||||
|
elif host == "amd" or host == "ryzen":
|
||||||
|
subprocess.Popen(["systemctl suspend"])
|
||||||
|
|
||||||
else:
|
else:
|
||||||
#subprocess.Popen(["/bin/systemctl", "suspend", "-i"])
|
#subprocess.Popen(["/bin/systemctl", "suspend", "-i"])
|
||||||
#subprocess.Popen(["sudo", "pm-suspend"])
|
#subprocess.Popen(["sudo", "pm-suspend"])
|
||||||
@@ -930,7 +934,15 @@ client.will_set("home-assistant/" + host.lower() + "/hwstats", payload=payload,
|
|||||||
client.on_connect = on_connect
|
client.on_connect = on_connect
|
||||||
client.on_message = on_message
|
client.on_message = on_message
|
||||||
writeLog(MQTT_HOST)
|
writeLog(MQTT_HOST)
|
||||||
client.connect(MQTT_HOST, MQTT_PORT, 25)
|
connected = False
|
||||||
|
while not connected:
|
||||||
|
try:
|
||||||
|
client.connect(MQTT_HOST, MQTT_PORT, 25)
|
||||||
|
connected = True
|
||||||
|
except:
|
||||||
|
writeLog("Failed to connect repeating...")
|
||||||
|
time.sleep(10)
|
||||||
|
|
||||||
|
|
||||||
# client.publish("sectorq/status", payload="{'action':'connect', 'system':'" + host + "', 'ip': '" + IP + "', 'mac':'" + mac + "', 'ver':'?'}", qos=0, retain=False)
|
# client.publish("sectorq/status", payload="{'action':'connect', 'system':'" + host + "', 'ip': '" + IP + "', 'mac':'" + mac + "', 'ver':'?'}", qos=0, retain=False)
|
||||||
|
|
||||||
@@ -1053,7 +1065,8 @@ else:
|
|||||||
NEXT_CHECK = int(time.time()) + 20
|
NEXT_CHECK = int(time.time()) + 20
|
||||||
writeLog("Blalala : Next : " + str(NEXT_CHECK))
|
writeLog("Blalala : Next : " + str(NEXT_CHECK))
|
||||||
|
|
||||||
if host.lower() == "asus" or host.lower() == "morefine":
|
if host.lower() == "asus" or host.lower() == "morefine" or host.lower() == "ryzen":
|
||||||
|
writeLog("Blalala : AAA")
|
||||||
print(psutil.sensors_temperatures())
|
print(psutil.sensors_temperatures())
|
||||||
#print(psutil.sensors_fans())
|
#print(psutil.sensors_fans())
|
||||||
sences = psutil.sensors_temperatures()
|
sences = psutil.sensors_temperatures()
|
||||||
@@ -1067,19 +1080,25 @@ else:
|
|||||||
cpu_data = sences["k10temp"][0]
|
cpu_data = sences["k10temp"][0]
|
||||||
except:
|
except:
|
||||||
cpu_data = "None"
|
cpu_data = "None"
|
||||||
|
writeLog(cpu_data)
|
||||||
print("CPUDATA")
|
print("CPUDATA")
|
||||||
print(cpu_data)
|
print(cpu_data)
|
||||||
print("#"*40)
|
print("#"*40)
|
||||||
|
|
||||||
|
|
||||||
mb_data = sences["acpitz"][0]
|
|
||||||
print("MBDATA")
|
print("MBDATA")
|
||||||
print(mb_data)
|
try:
|
||||||
print(mb_data.current)
|
mb_data = sences["acpitz"][0]
|
||||||
|
print(mb_data)
|
||||||
|
print(mb_data.current)
|
||||||
|
mb_data = mb_data.current
|
||||||
|
except:
|
||||||
|
mb_data = 0
|
||||||
|
|
||||||
|
|
||||||
print("#"*40)
|
print("#"*40)
|
||||||
|
|
||||||
|
|
||||||
try:
|
try:
|
||||||
|
print(psutil.sensors_fans())
|
||||||
fan_data = psutil.sensors_fans()["asus"][0].current
|
fan_data = psutil.sensors_fans()["asus"][0].current
|
||||||
except:
|
except:
|
||||||
fan_data = "None"
|
fan_data = "None"
|
||||||
@@ -1103,7 +1122,8 @@ else:
|
|||||||
#print(str(jn1["coretemp-isa-0000"]["Package id 0"]["temp1_input"]))
|
#print(str(jn1["coretemp-isa-0000"]["Package id 0"]["temp1_input"]))
|
||||||
#print(str(jn1["asus-isa-0000"]["cpu_fan"]["fan1_input"]))
|
#print(str(jn1["asus-isa-0000"]["cpu_fan"]["fan1_input"]))
|
||||||
#client.publish("sectorq/monitor/" + host.lower(), payload="{\"mb_temp\":0,\"mem_usage\":0,\"cpu_temp\":0,\"cpu_usage\":0,\"gpu_temp\":0,\"gpu_usage\":0}", qos=0, retain=False)
|
#client.publish("sectorq/monitor/" + host.lower(), payload="{\"mb_temp\":0,\"mem_usage\":0,\"cpu_temp\":0,\"cpu_usage\":0,\"gpu_temp\":0,\"gpu_usage\":0}", qos=0, retain=False)
|
||||||
client.publish("home-assistant/" + host + "/hwstats", payload='{"status":"on", "version":"' + VERSION + '","TCPU":"NA", "MB_TEMP":' + str(mb_data.current) + ', "MEM_UTIL":' + str(mem_data.percent) + ', "CPU_TEMP":' + str(cpu_data.current) + ', "GPU_TEMP":0, "GPU_UTIL":0, "FAN_CPU":"' + str(fan_data) + '", "VMEM_UTIL":' + str(swap_data.percent) + ', "CPU_UTIL":' + str(cpu_usage) + '}', qos=0, retain=False)
|
writeLog('{"status":"on", "version":"' + VERSION + '","TCPU":"NA", "MB_TEMP":' + str(mb_data) + ', "MEM_UTIL":' + str(mem_data.percent) + ', "CPU_TEMP":' + str(cpu_data.current) + ', "GPU_TEMP":0, "GPU_UTIL":0, "FAN_CPU":"' + str(fan_data) + '", "VMEM_UTIL":' + str(swap_data.percent) + ', "CPU_UTIL":' + str(cpu_usage) + '}')
|
||||||
|
client.publish("home-assistant/" + host + "/hwstats", payload='{"status":"on", "version":"' + VERSION + '","TCPU":"NA", "MB_TEMP":' + str(mb_data) + ', "MEM_UTIL":' + str(mem_data.percent) + ', "CPU_TEMP":' + str(cpu_data.current) + ', "GPU_TEMP":0, "GPU_UTIL":0, "FAN_CPU":"' + str(fan_data) + '", "VMEM_UTIL":' + str(swap_data.percent) + ', "CPU_UTIL":' + str(cpu_usage) + '}', qos=0, retain=False)
|
||||||
client.publish("sectorq/systems/" + host.lower() + "/stat", payload="on", qos=0, retain=True)
|
client.publish("sectorq/systems/" + host.lower() + "/stat", payload="on", qos=0, retain=True)
|
||||||
elif host.lower() == "openmediavault" or host.lower() == "omv":
|
elif host.lower() == "openmediavault" or host.lower() == "omv":
|
||||||
#print(psutil.sensors_temperatures())
|
#print(psutil.sensors_temperatures())
|
||||||
@@ -1151,7 +1171,7 @@ else:
|
|||||||
elif host.lower() == "nas":
|
elif host.lower() == "nas":
|
||||||
print("Getting VM info")
|
print("Getting VM info")
|
||||||
|
|
||||||
cmnd = "/share/ZFS530_DATA/.qpkg/QKVM/usr/bin/virsh list --all"
|
cmnd = "/share/ZFS532_DATA/.qpkg/QKVM/usr/bin/virsh list --all"
|
||||||
writeLog(cmnd)
|
writeLog(cmnd)
|
||||||
status, output = subprocess.getstatusoutput(cmnd)
|
status, output = subprocess.getstatusoutput(cmnd)
|
||||||
l = 1
|
l = 1
|
||||||
@@ -1169,7 +1189,7 @@ else:
|
|||||||
|
|
||||||
for m in VMS:
|
for m in VMS:
|
||||||
|
|
||||||
cmnd = "/share/ZFS530_DATA/.qpkg/QKVM/usr/bin/virsh domstate " + m
|
cmnd = "/share/ZFS532_DATA/.qpkg/QKVM/usr/bin/virsh domstate " + m
|
||||||
#out = subprocess.Popen(cmnd.split())
|
#out = subprocess.Popen(cmnd.split())
|
||||||
writeLog(cmnd)
|
writeLog(cmnd)
|
||||||
status, output = subprocess.getstatusoutput(cmnd)
|
status, output = subprocess.getstatusoutput(cmnd)
|
||||||
|
|||||||
Reference in New Issue
Block a user