MQTT new settings

This commit is contained in:
jokob-sk
2024-04-21 08:26:13 +10:00
parent 436669173b
commit 44408c8cfc
2 changed files with 41 additions and 8 deletions

View File

@@ -425,6 +425,36 @@
"string" : "Nombre de usuario utilizado para iniciar sesión en su instancia de agente de MQTT." "string" : "Nombre de usuario utilizado para iniciar sesión en su instancia de agente de MQTT."
}] }]
}, },
{
"function": "DEVICE_ID",
"type": "text",
"default_value": "netalertx",
"options": [],
"localized": ["name", "description"],
"name" : [{
"language_code": "en_us",
"string" : "Device ID"
}],
"description": [{
"language_code": "en_us",
"string" : "The root path of the sensor"
}]
},
{
"function": "DEVICE_NAME",
"type": "text",
"default_value": "NetAlertX",
"options": [],
"localized": ["name", "description"],
"name" : [{
"language_code": "en_us",
"string" : "Device name"
}],
"description": [{
"language_code": "en_us",
"string" : "The name used for the devices."
}]
},
{ {
"function": "PASSWORD", "function": "PASSWORD",
"type": "password", "type": "password",

View File

@@ -106,10 +106,12 @@ class sensor_config:
if plugObj == {}: if plugObj == {}:
self.isNew = True self.isNew = True
mylog('verbose', [f"[{pluginName}] New sensor entry name : {deviceName}"])
mylog('verbose', [f"[{pluginName}] New sensor entry mac : {mac}"]) mylog('verbose', [f"[{pluginName}] New sensor entry mac : {mac}"])
mylog('verbose', [f"[{pluginName}] New sensor entry input_string : {input_string}"])
mylog('verbose', [f"[{pluginName}] New sensor entry hash_value : {hash_value}"]) mylog('verbose', [f"[{pluginName}] New sensor entry hash_value : {hash_value}"])
else: else:
device_name = plugObj.get("Watched_Value1", "Unknown")
mylog('verbose', [f"[{pluginName}] Existing, skip Device Name : {device_name}"])
self.isNew = False self.isNew = False
@@ -171,10 +173,7 @@ def publish_mqtt(mqtt_client, topic, message):
return True return True
#------------------------------------------------------------------------------- #-------------------------------------------------------------------------------
def create_generic_device(mqtt_client): def create_generic_device(mqtt_client, deviceId, deviceName):
deviceName = 'NetAlertX'
deviceId = 'netalertx'
create_sensor(mqtt_client, deviceId, deviceName, 'sensor', 'online', 'wifi-check') create_sensor(mqtt_client, deviceId, deviceName, 'sensor', 'online', 'wifi-check')
create_sensor(mqtt_client, deviceId, deviceName, 'sensor', 'down', 'wifi-cancel') create_sensor(mqtt_client, deviceId, deviceName, 'sensor', 'down', 'wifi-cancel')
@@ -278,18 +277,22 @@ def mqtt_start(db):
mqtt_connected_to_broker = True mqtt_connected_to_broker = True
mqtt_client = mqtt_create_client() mqtt_client = mqtt_create_client()
deviceName = get_setting_value('MQTT_DEVICE_NAME')
deviceId = get_setting_value('MQTT_DEVICE_ID')
# General stats # General stats
# Create a generic device for overal stats # Create a generic device for overal stats
if get_setting_value('MQTT_SEND_STATS') == True: if get_setting_value('MQTT_SEND_STATS') == True:
# Create a new device representing overall stats # Create a new device representing overall stats
create_generic_device(mqtt_client) create_generic_device(mqtt_client, deviceId, deviceName)
# Get the data # Get the data
row = get_device_stats(db) row = get_device_stats(db)
# Publish (wrap into {} and remove last ',' from above) # Publish (wrap into {} and remove last ',' from above)
publish_mqtt(mqtt_client, "system-sensors/sensor/netalertx/state", publish_mqtt(mqtt_client, f"system-sensors/sensor/{deviceId}/state",
{ {
"online": row[0], "online": row[0],
"down": row[1], "down": row[1],