From fbaafccec8c8dd9b1e48cb170011b876da1e1167 Mon Sep 17 00:00:00 2001 From: liamcottle Date: Tue, 16 Apr 2024 16:32:26 +1200 Subject: [PATCH] collect uptime telemetry added in meshtastic v2.3.5 --- .../migration.sql | 2 ++ prisma/schema.prisma | 1 + src/mqtt.js | 1 + src/public/index.html | 16 ++++++++++++++++ 4 files changed, 20 insertions(+) create mode 100644 prisma/migrations/20240416042356_add_uptime_seconds_column_to_nodes_table/migration.sql diff --git a/prisma/migrations/20240416042356_add_uptime_seconds_column_to_nodes_table/migration.sql b/prisma/migrations/20240416042356_add_uptime_seconds_column_to_nodes_table/migration.sql new file mode 100644 index 0000000..9ddf62b --- /dev/null +++ b/prisma/migrations/20240416042356_add_uptime_seconds_column_to_nodes_table/migration.sql @@ -0,0 +1,2 @@ +-- AlterTable +ALTER TABLE `nodes` ADD COLUMN `uptime_seconds` BIGINT NULL; diff --git a/prisma/schema.prisma b/prisma/schema.prisma index 3686ae6..182f9bf 100644 --- a/prisma/schema.prisma +++ b/prisma/schema.prisma @@ -38,6 +38,7 @@ model Node { voltage Decimal? channel_utilization Decimal? air_util_tx Decimal? + uptime_seconds BigInt? neighbour_broadcast_interval_secs Int? neighbours Json? diff --git a/src/mqtt.js b/src/mqtt.js index 2525ee0..4c3262e 100644 --- a/src/mqtt.js +++ b/src/mqtt.js @@ -520,6 +520,7 @@ client.on("message", async (topic, message) => { data.voltage = telemetry.deviceMetrics.voltage !== 0 ? telemetry.deviceMetrics.voltage : null; data.channel_utilization = telemetry.deviceMetrics.channelUtilization !== 0 ? telemetry.deviceMetrics.channelUtilization : null; data.air_util_tx = telemetry.deviceMetrics.airUtilTx !== 0 ? telemetry.deviceMetrics.airUtilTx : null; + data.uptime_seconds = telemetry.deviceMetrics.uptimeSeconds !== 0 ? telemetry.deviceMetrics.uptimeSeconds : null; // create device metric try { diff --git a/src/public/index.html b/src/public/index.html index b5ca2f4..63d0fb6 100644 --- a/src/public/index.html +++ b/src/public/index.html @@ -841,6 +841,22 @@ +
  • +
    +
    +
    +
    +

    Uptime

    +

    + {{ selectedNode.uptime_seconds }} seconds + ??? +

    +
    +
    +
    +
    +
  • +