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

Reply via email to