From 40f81d08239763c2b5c05af63f17e3fd098d978d Mon Sep 17 00:00:00 2001 From: pants Date: Mon, 21 Sep 2026 14:16:02 -0700 Subject: init --- nut/iron/upssched.conf | 124 +++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 124 insertions(+) create mode 100644 nut/iron/upssched.conf (limited to 'nut/iron/upssched.conf') diff --git a/nut/iron/upssched.conf b/nut/iron/upssched.conf new file mode 100644 index 0000000..0f1b890 --- /dev/null +++ b/nut/iron/upssched.conf @@ -0,0 +1,124 @@ +# Network UPS Tools - upssched.conf sample file +# +# ============================================================================ +# +# CMDSCRIPT +# +# This script gets called to invoke commands for timers that trigger. +# It is given a single argument - the in your +# AT ... START-TIMER defines. +# +# *** This must be defined *before* the first AT line. Otherwise the +# program will complain and exit without doing anything. +# +# A shell script with a big case..esac construct should work nicely for this. +# An example has been provided to help you get started. + +CMDSCRIPT /bin/upssched-cmd + +# ============================================================================ +# +# PIPEFN +# +# This sets the file name of the FIFO that will pass communications between +# processes to start and stop timers. This should be set to some path where +# normal users can't create the file, due to the possibility of symlinking +# and other evil. +# +# Note: if you are running Solaris or similar, the permissions that +# upssched sets on this file *are not enough* to keep you safe. If +# your OS ignores the permissions on a FIFO, then you MUST put this in +# a protected directory! +# +# Note 2: by default, upsmon will run upssched as whatever user you have +# defined with RUN_AS_USER in upsmon.conf. Make sure that user can +# create files and write to files in the path you use for PIPEFN and +# LOCKFN. +# +# My recommendation: create a special directory for upssched, make it +# owned by your upsmon user, then use it for both. +# +# This is commented out by default to make you visit this file and think +# about how your system works before potentially opening a hole. +# +# PIPEFN /run/nut/upssched/upssched.pipe + +# ============================================================================ +# +# LOCKFN +# +# REQUIRED. This was added after version 1.2.1. +# +# upssched needs to be able to create this filename in order to avoid +# a race condition when two events are dispatched from upsmon at nearly +# the same time. This file will only exist briefly. It must not be +# created by any other process. +# +# You should put this in the same directory as PIPEFN. +# +# LOCKFN /run/nut/upssched/upssched.lock + +# ============================================================================ +# +# AT +# +# Define a handler for a specific event on UPS . +# +# can be the special value * to apply this handler to every +# possible value of . +# +# Run the command via your CMDSCRIPT when it happens. +# +# Note that any AT that matches both the and the +# for the current event will be used. + +# ============================================================================ +# +# Possible AT commands +# +# - START-TIMER +# +# Start a timer called that will trigger after +# seconds, calling your CMDSCRIPT with as the first +# argument. +# +# Example: +# 1) Start a timer that will execute when communication with any UPS (*) has +# been gone for 10 seconds +# +# AT COMMBAD * START-TIMER upsgone 10 +# +# 2) Start a timer that will execute when any UPS (*) has been running +# on battery for 30 seconds +# +# AT ONBATT * START-TIMER onbattwarn 30 + +# ----------------------------------------------------------------------- +# +# - CANCEL-TIMER [cmd] +# +# Cancel a running timer called , if possible. If the timer +# has passed then pass the optional argument to CMDSCRIPT. +# +# Example: +# 1) If a specific UPS (myups@localhost) communication is restored, then stop +# the timer before it triggers +# +# AT COMMOK myups@localhost CANCEL-TIMER upsgone +# +# 2) If any UPS (*) reverts to utility power, then stop the timer before it +# triggers +# +# AT ONLINE * CANCEL-TIMER onbattwarn + +# ----------------------------------------------------------------------- +# +# - EXECUTE +# +# Immediately pass as an argument to CMDSCRIPT. +# +# Example: +# If any UPS (*) reverts to utility power, then execute +# 'ups-back-on-line' via CMDSCRIPT. +# +# AT ONLINE * EXECUTE ups-back-on-line -- cgit v1.2.3