On Sat, 25 Jun 2022, PeReZ via Nut-upsuser wrote:

Hi,I create a script to build a file for the dummy-ups to simulate an UPS from other two in redundant mode for devices that allows monitoring only one UPS.

The diagram: https://imgur.com/a/z4ZUuNw

I tried this with three different browsers, but all I got was all-black screens or a javascript error.

I made some configurations that I put here:
https://pastebin.com/yiQ1ju10

Can you look at them and tell me if it can works before I try physically?
Just saw an error on upsmon.conf where I put a symbolic IP address for the two 
UPSes but I must put the name in ups.conf instead.

My doubts are in upsmon.conf where I defined a custom script to be called on 
NOTIFYCMD and I don't know if now the upssched will be called anyway by NUT.
I don't know if upssched is needed to power off the UPSes.

Then in upsd.conf should I put the static IP other than 127.0.0.1?

There is also a dummy.dev file with default values to be sure that the dummy 
ups can read something even before the start of the script.

 # *** ups.conf ***
 [UPS1]
 driver = usbhid-ups
 ...
 [UPS2]
 ...
 [SOT]
 driver = dummy-ups
 port = /etc/nut/dummy.dev
 desc = "Sum Of Two"

 # *** upsmon.conf ***
 MONITOR [email protected] 1 ups_admin PASSWORD master
 MONITOR [email protected] 1 ups_admin PASSWORD master
 MINSUPPLIES 1

Why "1" ?  Surely you need them both.

 NOTIFYCMD "/etc/nut/notifycmd.sh"

This says which program is to be invoked when upsmon detects a NOTIFY event flagged as EXEC. This is often used to point to /sbin/upssched, but in your case you point directly to your own script. Does NUT expect a script or a configuration file?

 NOTIFYFLAG ONBATT     SYSLOG+WALL+EXEC
 ...

 # *** upssched.conf ***

This file is never used

 CMDSCRIPT /etc/nut/upssched-cmd

This script is never called.

 # *** notifycmd.sh ***
 #! /bin/bash
 # notifycmd.sh
 # This script notify user of all updates on two physical UPSes
 # then it creates the file that will be read from dummy-ups
 EMAIL='[email protected]'
 echo -e "Subject: [NUT] $NOTIFYTYPE\r\n\r\nUPS: $UPSNAME\r\nAlert type: 
$NOTIFYTYPE\r\n\r\n`upsc $UPSNAME`" | msmtp -a default $EMAIL

It would probably be useful for debugging to echo this to the command line together with the arguments received by the script.

 CHARGE = $( upsc $UPS1 battery.charge )
 ...

 if [ $CHARGE -ge $CHARGE2 ]; then
        $CHARGE = $CHARGE2
 fi
 ...
 cat > /etc/nut/dummy.dev << _EOF_
 battery.charge: ${ CHARGE }
 ...
 _EOF_

You rewrite dummy.dev for every UPS event.

Why don't you use upssched? What is it that prevents you from using the upsmon.conf option MINSUPPLIES 2 ?

Roger

_______________________________________________
Nut-upsuser mailing list
[email protected]
https://alioth-lists.debian.net/cgi-bin/mailman/listinfo/nut-upsuser

Reply via email to