MQTT messaging plugin

The MQTT plugin enables Snooper Professional to integrate seamlessly with an MQTT broker, allowing you to publish real-time recording status, audio levels, and other key metrics. Additionally, it supports receiving commands via MQTT messages to remotely control the recorder’s state—such as starting, stopping, or adjusting recording settings.

What is MQTT?

MQTT (Message Queuing Telemetry Transport) is a lightweight, publish-subscribe messaging protocol designed for fast and efficient communication between devices over a network. It is widely used in IoT (Internet of Things) applications due to its low bandwidth usage and real-time capabilities.

How MQTT Works in Snooper:

  • Publish: Snooper can send status updates (e.g., recording started/stopped, audio levels) to an MQTT broker, which can be accessed by other devices or applications.
  • Subscribe & Control: Snooper can listen for incoming MQTT messages, allowing remote control of recording operations.

With MQTT integration, Snooper Professional can be incorporated into automation systems, IoT networks, and remote monitoring solutions.

 

Published default topics

Topics are editable so for a multi-channel setup a topic could be set like this: snpr/%channel%/status.

snpr/status

Topic for recorder status messages.
Status values: “Recording”, “Enabled”, “Disabled”, “Waiting”

JSON payload: {“status”:”<status>”}

snpr/trigger

Topic sent for all trigger values above set threshold.
Timestamp and sound level (-90db – 0dB) are sent in payload.

JSON payload: {“trg_timestamp”:”<timestamp>”, “trg_level”: “<level>”}

snpr/filename

Topic for latest saved recording.

JSON payload: {“filename” : “<filename>”}

snpr/heartbeat

Topic for Snooper Professional recording engine heartbeat.
Heartbeat is sent every 5 second.

JSON payload: {“heartbeat_timestamp”:”<timestamp>”}

snpr/triggtime

Topic for latest trigger time above threshold.

JSON payload: {“trg_timestamp”:”<timestamp>”}

snpr/info

Topic for Snooper Professional recorder setup, sent when recorder is enabled.

JSON payload: {“mode”:”<mode>”, “samplerate”:”<rate>”, “path”:”<recording path>”}

Subscribed topics

snpr/control

Send “enable” or “disable” to topic to control Snooper Professional recording state.

Setup

Enter address, port and optional credentials to an MQTT server to publish topics to.

MQTT setup

Android application example

Example using a third-party Android application on a mobile phone connecting to an MQTT-broker accessed by Snooper Professional.

MQTT dash example

MQTT dash example