mirror of
https://github.com/ipnet-mesh/meshcore-hub.git
synced 2026-10-31 04:02:03 +01:00
Replace native interface with external packet capture and rename receiver to observer
Remove the meshcore_interface component in favor of external meshcore-packet-capture for data ingestion. Rename receiver_node_id to observer_node_id across all models, schemas, handlers, and API routes. Add Alembic migration for the column/table renames. Fix frontend JS property name mismatch that prevented the Receiver column from displaying observer data.
This commit is contained in:
1 parent
c7655b5242
commit
58499c420b
61 files changed
+577
-6106
No files matched your search
+12
-51
@@ -4,15 +4,15 @@
|
||||
# Configuration is grouped by service. Most deployments only need:
|
||||
# - Common Settings (always required)
|
||||
# - MQTT Settings (always required)
|
||||
# - Interface Settings (for receiver/sender services)
|
||||
# - Packet Capture Settings (for observer nodes)
|
||||
#
|
||||
# The Collector, API, and Web services typically run as a combined "core"
|
||||
# profile and share the same data directory.
|
||||
#
|
||||
# -----------------------------------------------------------------------------
|
||||
# QUICK START: Receiver/Sender Only
|
||||
# QUICK START: Observer Node
|
||||
# -----------------------------------------------------------------------------
|
||||
# For a minimal receiver or sender setup, you only need these settings:
|
||||
# For an observer node capturing mesh traffic, you need:
|
||||
#
|
||||
# MQTT_HOST=your-mqtt-broker.example.com
|
||||
# MQTT_PORT=1883
|
||||
@@ -59,7 +59,7 @@ SEED_HOME=./seed
|
||||
# =============================================================================
|
||||
# MQTT SETTINGS
|
||||
# =============================================================================
|
||||
# MQTT broker connection settings for interface, collector, and API services
|
||||
# MQTT broker connection settings for collector and API services
|
||||
|
||||
# MQTT Broker host
|
||||
# When using the local MQTT broker (--profile mqtt), use "mqtt"
|
||||
@@ -92,54 +92,21 @@ MQTT_WS_PATH=/mqtt
|
||||
MQTT_EXTERNAL_PORT=1883
|
||||
MQTT_WS_PORT=9001
|
||||
|
||||
# =============================================================================
|
||||
# INTERFACE SETTINGS (Receiver/Sender)
|
||||
# =============================================================================
|
||||
# Settings for the MeshCore device interface services
|
||||
|
||||
# Serial port for receiver device
|
||||
SERIAL_PORT=/dev/ttyUSB0
|
||||
|
||||
# Serial port for sender device (if using separate device)
|
||||
SERIAL_PORT_SENDER=/dev/ttyUSB1
|
||||
|
||||
# Baud rate for serial communication
|
||||
SERIAL_BAUD=115200
|
||||
|
||||
# Optional device/node name to set on startup
|
||||
# This name is broadcast to the mesh network in advertisements
|
||||
MESHCORE_DEVICE_NAME=
|
||||
|
||||
# Optional node address override (64-char hex string)
|
||||
# Only set if you need to override the device's public key
|
||||
NODE_ADDRESS=
|
||||
NODE_ADDRESS_SENDER=
|
||||
|
||||
# -------------------
|
||||
# Contact Cleanup Settings (RECEIVER mode only)
|
||||
# -------------------
|
||||
# Automatic removal of stale contacts from the MeshCore companion node
|
||||
|
||||
# Enable automatic removal of stale contacts from companion node
|
||||
CONTACT_CLEANUP_ENABLED=true
|
||||
|
||||
# Remove contacts not advertised for this many days
|
||||
CONTACT_CLEANUP_DAYS=7
|
||||
|
||||
# =============================================================================
|
||||
# PACKET CAPTURE SETTINGS
|
||||
# =============================================================================
|
||||
# External packet capture service (ghcr.io/agessaman/meshcore-packet-capture)
|
||||
# Replaces the native interface-receiver. Uses the "receiver" compose profile.
|
||||
# See https://github.com/agessaman/meshcore-packet-capture for documentation.
|
||||
# Uses the "receiver" compose profile.
|
||||
# Publishes captured packets to MQTT in LetsMesh upload format, ingested by
|
||||
# the collector with COLLECTOR_INGEST_MODE=letsmesh_upload.
|
||||
# the collector.
|
||||
|
||||
# Serial port for the packet capture device
|
||||
SERIAL_PORT=/dev/ttyUSB0
|
||||
|
||||
# Docker image version tag for the packet capture image
|
||||
PACKETCAPTURE_IMAGE_VERSION=latest
|
||||
|
||||
# Serial port for the packet capture device (reuses SERIAL_PORT by default)
|
||||
# PACKETCAPTURE_SERIAL_PORT=/dev/ttyUSB0
|
||||
|
||||
# Connection timeout and retry settings
|
||||
PACKETCAPTURE_TIMEOUT=30
|
||||
PACKETCAPTURE_MAX_CONNECTION_RETRIES=5
|
||||
@@ -195,13 +162,7 @@ PACKETCAPTURE_EXIT_ON_RECONNECT_FAIL=true
|
||||
# =============================================================================
|
||||
# The collector subscribes to MQTT events and stores them in the database
|
||||
|
||||
# Collector MQTT ingest mode
|
||||
# - native: expects <prefix>/<pubkey>/event/<event_name> topics (native interface-receiver)
|
||||
# - letsmesh_upload: expects LetsMesh observer uploads on
|
||||
# <prefix>/<pubkey>/(packets|status|internal)
|
||||
COLLECTOR_INGEST_MODE=letsmesh_upload
|
||||
|
||||
# LetsMesh decoder support (used only when COLLECTOR_INGEST_MODE=letsmesh_upload)
|
||||
# LetsMesh decoder support
|
||||
# Set to false to disable external packet decoding
|
||||
COLLECTOR_LETSMESH_DECODER_ENABLED=true
|
||||
|
||||
@@ -275,7 +236,7 @@ NODE_CLEANUP_DAYS=7
|
||||
# =============================================================================
|
||||
# API SETTINGS
|
||||
# =============================================================================
|
||||
# REST API for querying data and sending commands
|
||||
# REST API for querying data
|
||||
|
||||
# External API port
|
||||
API_PORT=8000
|
||||
|
||||
Reference in new issue
Block a user