Skip to content

[FEAT] Unified Messaging: Add Send capability with permissions and safeties #3045

@Yeraze

Description

@Yeraze

Feature Request: Send via Unified Messaging

Summary:
MeshMonitor's Unified Messaging view currently aggregates inbound messages across all connected sources (MQTT, BLE, Serial). This issue tracks adding outbound Send support to that interface, with proper channel targeting, permissions, and safety guards.


Proposed Behavior

  • A Send input/action is available within the Unified Messaging panel
  • User selects the target channel or preset before sending (no implicit broadcast to all sources)
  • Send is gated behind a permission level — read-only roles cannot send; only users with explicit send rights can
  • A confirmation step is required when sending to multiple sources simultaneously
  • All outbound messages are audit-logged (timestamp, sender, target channel, message content)

Permissions Model

Role Can Read Can Send
Viewer
Operator ✅ (single channel)
Admin ✅ (multi-channel, with confirmation)

Permissions should integrate with MeshMonitor's existing role/auth system rather than a standalone send-specific gate.


Safety Requirements

  • Explicit channel selection — no default "send everywhere" behavior
  • Confirmation dialog for multi-channel or broadcast sends
  • Rate limiting — prevent accidental message floods (suggested: max N messages per minute per user)
  • Send receipts / delivery status shown in the Unified Messaging view where protocol supports it
  • Audit log accessible to admins showing all sent messages

Why This Is Scoped Here

The Unified Messaging panel already has the context needed to route a message to the correct source. Adding Send here (rather than per-source) gives operators a single place to communicate across their mesh topology without switching views.


Authored by NodeZero 0️⃣

Metadata

Metadata

Assignees

No one assigned

    Labels

    enhancementNew feature or request

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions