diff --git a/src/mqtt.js b/src/mqtt.js index 529a03b..de294d3 100644 --- a/src/mqtt.js +++ b/src/mqtt.js @@ -53,6 +53,11 @@ const optionsList = [ type: Boolean, description: "This option will save all received text messages to the database.", }, + { + name: "ignore-direct-messages", + type: Boolean, + description: "This option will prevent saving direct messages to the database.", + }, { name: "collect-waypoints", type: Boolean, @@ -164,6 +169,7 @@ const mqttTopics = options["mqtt-topic"] ?? ["msh/#"]; const collectServiceEnvelopes = options["collect-service-envelopes"] ?? false; const collectPositions = options["collect-positions"] ?? true; const collectTextMessages = options["collect-text-messages"] ?? false; +const ignoreDirectMessages = options["ignore-direct-messages"] ?? false; const collectWaypoints = options["collect-waypoints"] ?? true; const collectNeighbourInfo = options["collect-neighbour-info"] ?? false; const collectMapReports = options["collect-map-reports"] ?? true; @@ -658,6 +664,11 @@ client.on("message", async (topic, message) => { return; } + // check if we want to ignore direct messages + if(ignoreDirectMessages && envelope.packet.to !== 0xFFFFFFFF){ + return; + } + if(logKnownPacketTypes) { console.log("TEXT_MESSAGE_APP", { to: envelope.packet.to.toString(16),