From ebd0796fc0a37cac1d449bd1b8fe7958fa5548c2 Mon Sep 17 00:00:00 2001 From: Christian Helmuth Date: Tue, 8 Sep 2015 10:29:54 +0200 Subject: [PATCH] run: plugin for Gembird EnerGenie powerplug The plugin works just like the netio plugin and uses the following parameters --power-off-energenie-host network address of device --power-off-energenie-password password for device --power-off-energenie-port target port of device --- tool/run/power_off/energenie | 34 ++++++++++++++++++++++++++++++++++ tool/run/power_on/energenie | 36 ++++++++++++++++++++++++++++++++++++ 2 files changed, 70 insertions(+) create mode 100644 tool/run/power_off/energenie create mode 100644 tool/run/power_on/energenie diff --git a/tool/run/power_off/energenie b/tool/run/power_off/energenie new file mode 100644 index 000000000..ef093c5f2 --- /dev/null +++ b/tool/run/power_off/energenie @@ -0,0 +1,34 @@ +## +# Reset the target machine via EnerGenie poweplug by Gembird +# +# \param --power-off-energenie-host network address of device +# \param --power-off-energenie-password password for device +# \param --power-off-energenie-port target port of device +# + + +proc power_off_energenie_host { } { + return [get_cmd_arg_first --power-off-energenie-host 1] +} + + +proc power_off_energenie_password { } { + return [get_cmd_arg_first --power-off-energenie-password 1] +} + + +proc power_off_energenie_port { } { + return [get_cmd_arg_first --power-off-energenie-port 1] +} + + +proc run_power_off { } { + set host [power_off_energenie_host] + set password [power_off_energenie_password] + set power_port [power_off_energenie_port] + + puts "switch port $power_port off" + exec curl -s -o /dev/null -d pw=$password http://$host/login.html + exec curl -s -o /dev/null -d ctl$power_port=0 http://$host/status.html + exec curl -s -o /dev/null http://$host/login.html +} diff --git a/tool/run/power_on/energenie b/tool/run/power_on/energenie new file mode 100644 index 000000000..eb5f2baa0 --- /dev/null +++ b/tool/run/power_on/energenie @@ -0,0 +1,36 @@ +## +# Reset the target machine via EnerGenie poweplug by Gembird +# +# \param --power-on-energenie-host network address of device +# \param --power-on-energenie-password password for device +# \param --power-on-energenie-port target port of device +# + + +proc power_on_energenie_host { } { + return [get_cmd_arg_first --power-on-energenie-host 1] +} + + +proc power_on_energenie_password { } { + return [get_cmd_arg_first --power-on-energenie-password 1] +} + + +proc power_on_energenie_port { } { + return [get_cmd_arg_first --power-on-energenie-port 1] +} + + +proc run_power_on { } { + set host [power_on_energenie_host] + set password [power_on_energenie_password] + set power_port [power_on_energenie_port] + + puts "switch port $power_port on" + + # login - switch - logout + exec curl -s -o /dev/null -d pw=$password http://$host/login.html + exec curl -s -o /dev/null -d ctl$power_port=1 http://$host/status.html + exec curl -s -o /dev/null http://$host/login.html +}