User Guide
This application monitors an MMDVMHost log and sends Pushover notifications when selected DMR activity occurs.
It supports:
- Talkgroup voice calls
- Private voice calls (direct calls to you)
- DMR Call Alert (CSBK / page)
- RF traffic, network traffic, or both
- Filtering by talkgroup, caller ID, destination ID, slot, and mode
- Continuous operation using systemd
- Raspberry Pi running Pi-Star or another MMDVMHost-based image
- Internet connectivity
- Python 3
- A Pushover account and mobile app
| File | Purpose |
|---|---|
dmr_tg_pushover.py |
Main application |
dmr_tg_pushover.ini |
Configuration file |
dmr-tg-pushover.service |
systemd service |
mmdvm-current-log.service |
Updates log symlink |
mmdvm-current-log.timer |
Runs symlink update daily |
- Create an account at https://pushover.net
- Note your User Key
- Create an application and note the API Token
- Install the Pushover mobile app
These credentials are required in the configuration file.
Pi-Star rotates logs daily, for example:
/var/log/pi-star/MMDVM-YYYY-MM-DD.log
This application expects a stable log path, so a symlink is used:
/var/log/pi-star/MMDVM-current.log
A systemd timer is provided to refresh this symlink automatically at midnight.
Create dmr_tg_pushover.ini:
[main]
log = /var/log/pi-star/MMDVM-current.log
slot = 2
source = rf
mode = all
cooldown = 10
alias_ttl = 10
priority = 0
debug = false
[tg]
allow = 91,3100
[filter]
from = 1234567
to = 7654321
[pushover]
token = YOUR_PUSHOVER_APP_TOKEN
user = YOUR_PUSHOVER_USER_KEY| Option | Description |
|---|---|
log |
Path to MMDVM log |
slot |
1, 2, or 0 (any slot) |
source |
rf, network, or both |
mode |
tg, private, alert, both, all |
cooldown |
Minimum seconds between alerts |
alias_ttl |
Seconds a talker alias remains valid |
priority |
Pushover priority (-2 to 2) |
debug |
Enable debug output |
| Option | Description |
|---|---|
allow |
Allowed talkgroup IDs (comma-separated) |
Accepts numeric or alphanumeric TG identifiers.
| Option | Description |
|---|---|
from |
Only alert if caller matches this ID |
to |
Only alert if destination matches this ID |
Values may be numeric DMR IDs or any identifier exactly as it appears in the log.
| Option | Description |
|---|---|
token |
Pushover application token |
user |
Pushover user or group key |
Alert on talkgroup voice calls.
Alert on private voice calls.
Alert on DMR Call Alert CSBK.
Alert on talkgroup and private voice calls.
Alert on talkgroup, private voice, and call alerts.
python3 dmr_tg_pushover.py --config dmr_tg_pushover.iniEnable debug output:
python3 dmr_tg_pushover.py --config dmr_tg_pushover.ini --debugIf run without arguments, the script prints usage help automatically.
sudo systemctl enable --now dmr-tg-pushover.serviceCheck status:
systemctl status dmr-tg-pushover.service
journalctl -u dmr-tg-pushover.service -fsudo systemctl enable --now mmdvm-current-log.timer- Verify the log path exists
- Enable debug output
- Confirm Pushover credentials
- Ensure the script started before the event occurred
- Credentials are stored in a config file, not on the command line
- Outbound HTTPS only
- No listening sockets
This application provides real-time notification of selected DMR activity from an MMDVM hotspot, including talkgroup traffic, private calls, and call alerts.
It is designed for continuous operation and integrates cleanly with systemd.