switch to js protobufs
This commit is contained in:
@ -1,10 +1,12 @@
|
||||
const path = require('path');
|
||||
const express = require('express');
|
||||
const compression = require('compression');
|
||||
const protobufjs = require("protobufjs");
|
||||
const commandLineArgs = require("command-line-args");
|
||||
const commandLineUsage = require("command-line-usage");
|
||||
|
||||
// protobuf imports
|
||||
const { Mesh, Config } = require("@meshtastic/protobufs");
|
||||
|
||||
// create prisma db client
|
||||
const { PrismaClient } = require("@prisma/client");
|
||||
const prisma = new PrismaClient();
|
||||
@ -50,24 +52,21 @@ if(options.help){
|
||||
// get options and fallback to default values
|
||||
const port = options["port"] ?? 8080;
|
||||
|
||||
// load protobufs
|
||||
const root = new protobufjs.Root();
|
||||
root.resolvePath = (origin, target) => path.join(__dirname, "protos", target);
|
||||
root.loadSync('meshtastic/mqtt.proto');
|
||||
const HardwareModel = root.lookupEnum("HardwareModel");
|
||||
const Role = root.lookupEnum("Config.DeviceConfig.Role");
|
||||
const RegionCode = root.lookupEnum("Config.LoRaConfig.RegionCode");
|
||||
const ModemPreset = root.lookupEnum("Config.LoRaConfig.ModemPreset");
|
||||
// load protobuf enums
|
||||
const HardwareModel = Mesh.HardwareModel;
|
||||
const Role = Config.Config_DeviceConfig_Role;
|
||||
const RegionCode = Config.Config_LoRaConfig_RegionCode;
|
||||
const ModemPreset = Config.Config_LoRaConfig_ModemPreset;
|
||||
|
||||
// appends extra info for node objects returned from api
|
||||
function formatNodeInfo(node) {
|
||||
return {
|
||||
...node,
|
||||
node_id_hex: "!" + node.node_id.toString(16),
|
||||
hardware_model_name: HardwareModel.valuesById[node.hardware_model] ?? null,
|
||||
role_name: Role.valuesById[node.role] ?? null,
|
||||
region_name: RegionCode.valuesById[node.region] ?? null,
|
||||
modem_preset_name: ModemPreset.valuesById[node.modem_preset] ?? null,
|
||||
hardware_model_name: HardwareModel[node.hardware_model] ?? null,
|
||||
role_name: Role[node.role] ?? null,
|
||||
region_name: RegionCode[node.region] ?? null,
|
||||
modem_preset_name: ModemPreset[node.modem_preset] ?? null,
|
||||
};
|
||||
}
|
||||
|
||||
|
Reference in New Issue
Block a user