Provided by: nut-server_2.7.1-1ubuntu1.2_amd64 bug

NAME

       dummy-ups - Driver for multi-purpose UPS emulation

NOTE

       This man page only documents the specific features of the dummy-ups driver. For
       information about the core driver, see nutupsdrv(8).

DESCRIPTION

       This program is a multi-purpose UPS emulation tool. Its behavior depends on the running
       mode:

   Dummy Mode
       dummy-ups looks like a standard device driver to upsd(8) and allows one to change any
       value for testing purposes. It is both interactive, controllable through the upsrw(1) and
       upscmd(1) commands (or equivalent graphical tool), and batchable through script files. It
       can be configured, launched and used as any other real driver. This mode is mostly useful
       for development and testing purposes.

   Repeater Mode
       dummy-ups acts as a NUT client, simply forwarding data. This can be useful for supervision
       purposes. This can also allow some load sharing between several UPS instances, using a
       point-to-point communication with the UPS.

IMPLEMENTATION

       The port specification depends on the running mode, and allows the driver to select the
       right mode.

   Dummy Mode
       Port is a definition file name for dummy-ups. This can either be an absolute or a relative
       path name. In the latter case the NUT sysconfig directory (ie /etc/nut,
       /usr/local/ups/etc, ...) is prepended.

       For instance:

           [dummy]
                   driver = dummy-ups
                   port = evolution500.dev
                   desc = "dummy-ups in dummy mode"

       This file is generally named "something.dev". It contains a list of all valid data and
       associated values, and has the same format as an upsc(8) dump (<varname>: <value>). So you
       can easily create definition files from an existing UPS using "upsc > file.dev". It can
       also be empty, in which case only a basic set of data is available: device., driver.,
       ups.mfr, ups.model, ups.status

       Samples definition files are available in the "data" directory of the nut source tree, and
       generally in the sysconfig directory of your system distribution.

       Since dummy-ups will loop on reading this file, you can dynamically modify it to interact
       with the driver. This will avoid message spam into your system log files, if you are using
       NUT default configuration.

       You can also use the "TIMER <seconds>" instruction to create scheduled events sequences.
       For example, the following sequence will loop on switching ups.status between "OL", "OB"
       and "OB LB" every minute:

           ups.status: OL
           TIMER 60
           ups.status: OB
           TIMER 60
           ups.status: LB
           TIMER 60

       It is wise to end the script with a TIMER. Otherwise dummy-ups will directly go back to
       the beginning of the file.

   Repeater Mode
       Port is the name of a remote UPS, using the NUT form, ie:

           <upsname>[@<hostname>[:<port>]]

       For instance:

           [repeater]
                       driver = dummy-ups
                       port = ups@hostname
                       desc = "dummy-ups in repeater mode"

INTERACTION

       Once the driver is loaded in dummy mode, you can change any variables, except those of the
       driver.* and server.* collections. You can do this by either editing the definition file,
       or use the upsrw(1) and upscmd(1) commands.

       Note that in simulation mode, new variables can be added on the fly, by adding these to
       the definition file. Conversely, if you need to remove variable (such as transient ones,
       like ups.alarm), simply update these by setting an empty value. As a result, they will get
       removed from the data.

       In repeater mode, the driver acts according to the capabilities of the UPS, and so support
       the same instant commands and settable values.

BACKGROUND

       This driver was written in one evening to replace the previous dummycons testing driver.
       It was too limited and required to work from a terminal to interact.

       dummy-ups is useful for NUT client development, and other testing purpose.

       It also helps the NUT Quality Assurance effort, by automating some tests on the NUT
       framework.

       It now offers a repeater mode. This will help in building the Meta UPS approach, which
       allows one to build a virtual device, composed of several other devices (either UPS,
       PDUs).

BUGS

       Instant commands are not yet supported in Dummy Mode, and data need name/value checking
       enforcement, as well as boundaries or enumeration definition.

AUTHOR

       Arnaud Quette

SEE ALSO

       upscmd(1), upsrw(1), ups.conf(5), nutupsdrv(8)

   Internet Resources:
       The NUT (Network UPS Tools) home page: http://www.networkupstools.org/