I worked it out, apologies to all for the unnecessary emails.
I missed the line in man upsmon that says:
"It also receives the notification message (see below) as the first
(and only) argument, so you can deliver a preformatted message too."
This works fine:
echo -e "Subject: UPS alert: $1\n\nUPS: $UPSNAME\r\nAlert type:
$NOTIFYTYPE\r\nDetail: $1" | msmtp $EMAIL
Simon.
----- Message from Simon Wilson via Nut-upsuser
<[email protected]> ---------
Date: Sun, 27 Nov 2022 13:01:14 +1000
From: Simon Wilson via Nut-upsuser <[email protected]>
Reply-To: [email protected]
Subject: [Nut-upsuser] NOTIFYMSG as content of email
To: [email protected]
Hi, new NUT user here, so please bear with me.
I have setup my Eaton 5SX, and am trying to do a simple notification
email, without going to the more complex upssched examples.
I have a simple notification command listed in upsmon.conf, and have
added +EXEC to the NOTIFYFLAGs:
NOTIFYCMD /etc/ups/notifycmd.sh
NOTIFYFLAG ONLINE SYSLOG+EXEC
NOTIFYFLAG ONBATT SYSLOG+EXEC
...the script passes the variables to msmtp to send an email on an event:
#!/bin/bash
EMAIL='[email protected]'
echo -e "Subject: UPS ALERT: $NOTIFYTYPE\n\nUPS: $UPSNAME\r\nAlert
type: $NOTIFYTYPE" | msmtp $EMAIL
That results in an email saying (e.g.):
Subject: UPS ALERT: ONBATT
UPS: eaton5sx@localhost
Alert type: ONBATT
I'd like it to read per the NOTIFYMSG content in upsmon.conf, e.g.:
Subject: UPS ALERT: UPS eaton5sx is on battery
UPS: eaton5sx@localhost
Alert type: UPS eaton5sx is on battery
...but I can't work out how to read the NOTIFYMSG into the script
instead of NOTIFYTYPE. How do I do that?
Simon.
----- End message from Simon Wilson via Nut-upsuser
<[email protected]> -----
--
Simon Wilson
M: 0400 12 11 16
_______________________________________________
Nut-upsuser mailing list
[email protected]
https://alioth-lists.debian.net/cgi-bin/mailman/listinfo/nut-upsuser