mirror of
https://github.com/ipnet-mesh/meshcore-hub.git
synced 2026-08-06 17:02:59 +02:00
Merge pull request #216 from ipnet-mesh/chore/packet-capture-tweaks
Updates
This commit is contained in:
@@ -4,12 +4,12 @@
|
||||
# Copy this file to .env and update the values below.
|
||||
#
|
||||
# This observer captures MeshCore mesh traffic from a serial device and
|
||||
# forwards decoded packets to one or more MQTT brokers. By default it sends
|
||||
# to your community Hub and optionally to the LetsMesh network (US/EU).
|
||||
# forwards decoded packets to one or more MQTT brokers.
|
||||
# By default it sends to IPNet's MeshCore Hub MQTT broker.
|
||||
# Optionally, it can send to LetsMesh (EU/US) and MeshRank.net
|
||||
#
|
||||
# Prerequisites:
|
||||
# - A Meshtastic device connected via USB (or modify CONNECTION_TYPE for network)
|
||||
# - Your community Hub's MQTT broker must be accessible (WSS with TLS recommended)
|
||||
# - A MeshCore companion device connected via USB (or modify CONNECTION_TYPE for network)
|
||||
#
|
||||
# Quick start:
|
||||
# cp .env.example .env # then edit .env
|
||||
@@ -40,38 +40,45 @@ ORIGIN=observer
|
||||
# Hours between self-advertisement broadcasts (default: 11).
|
||||
ADVERT_INTERVAL_HOURS=11
|
||||
|
||||
# ---------------------------------------------------------------------------
|
||||
# IPNet (required)
|
||||
# ---------------------------------------------------------------------------
|
||||
# Contribute packets to IPNet MeshCore Hub's MQTT broker.
|
||||
# See: https://ipnt.uk/pages/join
|
||||
# Enable IPNet MQTT endpoint
|
||||
IPNET_ENABLE=true
|
||||
|
||||
# ---------------------------------------------------------------------------
|
||||
# LetsMesh (optional)
|
||||
# ---------------------------------------------------------------------------
|
||||
# Contribute captured packets to the LetsMesh network.
|
||||
# See https://letsmesh.net for more info.
|
||||
# See: https://letsmesh.net
|
||||
# Region: "eu" or "us"
|
||||
|
||||
# Enable LetsMesh MQTT endpoint
|
||||
LETSMESH_ENABLE=false
|
||||
# Specify LetsMesh MQTT region ("eu" or "us")
|
||||
LETSMESH_REGION=eu
|
||||
|
||||
# ---------------------------------------------------------------------------
|
||||
# MeshRank (optional)
|
||||
# ---------------------------------------------------------------------------
|
||||
# Contribute captured packets to the MeshRank.
|
||||
# See https://meshrank.net/become-an-observer for more info.
|
||||
# See: https://meshrank.net/become-an-observer
|
||||
|
||||
# Enable MeshRank MQTT endpoint
|
||||
MESHRANK_ENABLE=false
|
||||
# Specify MeshRank MQTT configuration
|
||||
MESHRANK_UPLINK_KEY=
|
||||
|
||||
# ---------------------------------------------------------------------------
|
||||
# Community Hub MQTT Broker (required)
|
||||
# Custom MQTT Endpoint (optional)
|
||||
# ---------------------------------------------------------------------------
|
||||
# Your community MeshCore Hub's MQTT broker. Captured packets are sent here
|
||||
# for your local network dashboard.
|
||||
# Contribute captured packets to a custom MQTT broker.
|
||||
|
||||
# Enable MeshCore Hub MQTT endpoint
|
||||
MESHCOREHUB_ENABLE=false
|
||||
# Specify MeshCore Hub MQTT credentials/configuration
|
||||
MESHCOREHUB_MQTT_HOST=mqtt.example.com
|
||||
MESHCOREHUB_MQTT_PORT=443
|
||||
MESHCOREHUB_MQTT_TLS=true
|
||||
MESHCOREHUB_MQTT_AUDIENCE=mqtt.example.com
|
||||
# CUSTOM_ENABLE=false
|
||||
# CUSTOM_MQTT_SERVER=
|
||||
# CUSTOM_MQTT_PORT=
|
||||
# CUSTOM_MQTT_USE_TLS=
|
||||
# CUSTOM_MQTT_TLS_VERIFY=
|
||||
# CUSTOM_MQTT_USERNAME=
|
||||
# CUSTOM_MQTT_PASSWORD=
|
||||
# CUSTOM_MQTT_KEEPALIVE=
|
||||
# CUSTOM_MQTT_TOPIC_PACKETS=
|
||||
# CUSTOM_MQTT_TOPIC_STATUS=
|
||||
|
||||
@@ -9,41 +9,54 @@ services:
|
||||
volumes:
|
||||
- data:/app/data
|
||||
environment:
|
||||
# Connection
|
||||
- PACKETCAPTURE_CONNECTION_TYPE=${CONNECTION_TYPE:-serial}
|
||||
- PACKETCAPTURE_SERIAL_PORTS=${SERIAL_PORT:-/dev/ttyUSB0}
|
||||
# MQTT Broker 1 - LetsMesh Analyzer
|
||||
- PACKETCAPTURE_MQTT1_ENABLED=${LETSMESH_ENABLE:-false}
|
||||
- PACKETCAPTURE_MQTT1_SERVER=mqtt-${LETSMESH_REGION:-eu}-v1.letsmesh.net
|
||||
- PACKETCAPTURE_MQTT1_PORT=443
|
||||
- PACKETCAPTURE_MQTT1_TRANSPORT=websockets
|
||||
- PACKETCAPTURE_MQTT1_USE_TLS=true
|
||||
- PACKETCAPTURE_MQTT1_USE_AUTH_TOKEN=true
|
||||
- PACKETCAPTURE_MQTT1_TOKEN_AUDIENCE=mqtt-${LETSMESH_REGION:-eu}-v1.letsmesh.net
|
||||
- PACKETCAPTURE_MQTT1_KEEPALIVE=120
|
||||
# MQTT Broker 2 - MeshRank.net
|
||||
- PACKETCAPTURE_MQTT2_ENABLED=${MESHRANK_ENABLE:-false}
|
||||
- PACKETCAPTURE_MQTT2_SERVER=meshrank.net
|
||||
- PACKETCAPTURE_MQTT2_PORT=8883
|
||||
- PACKETCAPTURE_MQTT2_TRANSPORT=tcp
|
||||
- PACKETCAPTURE_MQTT2_USE_TLS=true
|
||||
- PACKETCAPTURE_MQTT2_TLS_VERIFY=true
|
||||
- PACKETCAPTURE_MQTT2_KEEPALIVE=120
|
||||
- PACKETCAPTURE_MQTT2_TOPIC_PACKETS=meshrank/uplink/${MESHRANK_UPLINK_KEY}/{PUBLIC_KEY}/packets
|
||||
- PACKETCAPTURE_MQTT2_TOPIC_STATUS=meshrank/uplink/${MESHRANK_UPLINK_KEY}/{PUBLIC_KEY}/status
|
||||
# MQTT Broker 3 - MeshCore Hub
|
||||
- PACKETCAPTURE_MQTT3_ENABLED=${MESHCOREHUB_ENABLE:-false}
|
||||
- PACKETCAPTURE_MQTT3_SERVER=${MESHCOREHUB_MQTT_HOST}
|
||||
- PACKETCAPTURE_MQTT3_PORT=${MESHCOREHUB_MQTT_PORT:-443}
|
||||
- PACKETCAPTURE_MQTT3_TOKEN_AUDIENCE=${MESHCOREHUB_MQTT_AUDIENCE}
|
||||
- PACKETCAPTURE_MQTT3_USE_TLS=${MESHCOREHUB_MQTT_TLS:-true}
|
||||
- PACKETCAPTURE_MQTT3_TRANSPORT=websockets
|
||||
- PACKETCAPTURE_MQTT3_USE_AUTH_TOKEN=true
|
||||
- PACKETCAPTURE_MQTT3_KEEPALIVE=120
|
||||
# Area/Origin
|
||||
- PACKETCAPTURE_IATA=${IATA:-STN}
|
||||
- PACKETCAPTURE_ORIGIN=${ORIGIN:-observer}
|
||||
# Schedule/Timeouts
|
||||
- PACKETCAPTURE_ADVERT_INTERVAL_HOURS=${ADVERT_INTERVAL_HOURS:-11}
|
||||
# MQTT Broker 1 - IPNet
|
||||
- PACKETCAPTURE_MQTT1_ENABLED=${IPNET_ENABLE:-false}
|
||||
- PACKETCAPTURE_MQTT1_SERVER=mqtt.ipnt.uk
|
||||
- PACKETCAPTURE_MQTT1_PORT=443
|
||||
- PACKETCAPTURE_MQTT1_TOKEN_AUDIENCE=mqtt.ipnt.uk
|
||||
- PACKETCAPTURE_MQTT1_USE_TLS=true
|
||||
- PACKETCAPTURE_MQTT1_TRANSPORT=websockets
|
||||
- PACKETCAPTURE_MQTT1_USE_AUTH_TOKEN=true
|
||||
- PACKETCAPTURE_MQTT1_KEEPALIVE=120
|
||||
# MQTT Broker 2 - LetsMesh Analyzer
|
||||
- PACKETCAPTURE_MQTT2_ENABLED=${LETSMESH_ENABLE:-false}
|
||||
- PACKETCAPTURE_MQTT2_SERVER=mqtt-${LETSMESH_REGION:-eu}-v1.letsmesh.net
|
||||
- PACKETCAPTURE_MQTT2_PORT=443
|
||||
- PACKETCAPTURE_MQTT2_TRANSPORT=websockets
|
||||
- PACKETCAPTURE_MQTT2_USE_TLS=true
|
||||
- PACKETCAPTURE_MQTT2_USE_AUTH_TOKEN=true
|
||||
- PACKETCAPTURE_MQTT2_TOKEN_AUDIENCE=mqtt-${LETSMESH_REGION:-eu}-v1.letsmesh.net
|
||||
- PACKETCAPTURE_MQTT2_KEEPALIVE=120
|
||||
# MQTT Broker 3 - MeshRank.net
|
||||
- PACKETCAPTURE_MQTT3_ENABLED=${MESHRANK_ENABLE:-false}
|
||||
- PACKETCAPTURE_MQTT3_SERVER=meshrank.net
|
||||
- PACKETCAPTURE_MQTT3_PORT=8883
|
||||
- PACKETCAPTURE_MQTT3_TRANSPORT=tcp
|
||||
- PACKETCAPTURE_MQTT3_USE_TLS=true
|
||||
- PACKETCAPTURE_MQTT3_TLS_VERIFY=true
|
||||
- PACKETCAPTURE_MQTT3_KEEPALIVE=120
|
||||
- PACKETCAPTURE_MQTT3_TOPIC_PACKETS=meshrank/uplink/${MESHRANK_UPLINK_KEY}/{PUBLIC_KEY}/packets
|
||||
- PACKETCAPTURE_MQTT3_TOPIC_STATUS=meshrank/uplink/${MESHRANK_UPLINK_KEY}/{PUBLIC_KEY}/status
|
||||
# MQTT Broker 4 - Custom
|
||||
- PACKETCAPTURE_MQTT4_ENABLED=${CUSTOM_ENABLE:-false}
|
||||
- PACKETCAPTURE_MQTT4_SERVER=${CUSTOM_MQTT_SERVER}
|
||||
- PACKETCAPTURE_MQTT4_PORT=${CUSTOM_MQTT_PORT:-8883}
|
||||
- PACKETCAPTURE_MQTT4_TRANSPORT=${CUSTOM_MQTT_TRANSPORT:-tcp
|
||||
- PACKETCAPTURE_MQTT4_USE_TLS=${CUSTOM_MQTT_USE_TLS:-true}
|
||||
- PACKETCAPTURE_MQTT4_TLS_VERIFY=${CUSTOM_MQTT_TLS_VERIFY:-true}
|
||||
- PACKETCAPTURE_MQTT4_USERNAME=${CUSTOM_MQTT_USERNAME}
|
||||
- PACKETCAPTURE_MQTT4_PASSWORD=${CUSTOM_MQTT_PASSWORD}
|
||||
- PACKETCAPTURE_MQTT4_KEEPALIVE=${CUSTOM_MQTT_KEEPALIVE:-120}
|
||||
- PACKETCAPTURE_MQTT4_TOPIC_PACKETS=${CUSTOM_MQTT_TOPIC_PACKETS}
|
||||
- PACKETCAPTURE_MQTT4_TOPIC_STATUS=${CUSTOM_MQTT_TOPIC_STATUS}
|
||||
restart: unless-stopped
|
||||
|
||||
volumes:
|
||||
|
||||
Reference in New Issue
Block a user