I forgot about the template system, im still learning, my ups is USB Rocketfish 1025VA similar to the cyberpower powerpannel brand.

I'm just this minute reading up on NUT, there are three config files to edit http://www.linux.com/archive/feature/128099the next thing after that is to work out how to send the command through ssh, that way you can shutdown windows to using Cygwin

Or in case of not having a smart UPS (with RS-232 interface), you can build your own sensor.... using a resistor, relay and make the RS-232 interface. See http://www.linuxjunkies.org/html/UPS-HOWTO.htmlIn my early days as sysadmin, i had one of this self-build sensor and the daemon... and it worked for years.... just adjusting times when the UPS battery banks changed.

I guess at some point I'm gonna have to buy an rs232 card, but then my question is why do i need to go back in time when we have USB it's like the TV card linux will support the old one and not the new ones.Anyway, I'm guessing i would need to install NUT as it does have the drivers for the unit but i cant find how i can get nut to run a bash script on events or even integrate NUT with the core,Remember I'm new so thing don't look easy to me

Maybe I'm missing something, but if you lose power then either the other computers are on a UPS of their own (or are a laptop) or they are already down. Unless of course it's just local to the core, knocked power cord out or tripped a breaker, in which case the other systems will continue to have power. If the other computers have their own UPS it makes sense for each of them to monitor their own.

The ups/controlled shutdown on power loss is a good idea, I'm just a bit confused as to the benefit of trying to shutdown other systems when you lose power on the core.

Not every system is gonna be PXE booted i look at LinuxMCE as a brain for the house, that controls everything possible.In having the core communicate with the UPS it can a lot more function like for alarm systems etc.My system can keep power to three PC's for around 30 minutes and I tested it with just the core and it kept it up for 64 minutes.All my PC's are connected to the UPS power source but only one PC can communicate with the UPS unit.

So, all the 3 pcs and the core can get an USB to RS-232 adapter (around US$ 2,50 on ebay) and run the powerd or upsd daemon.When there's a power outage, they will shutdown in 20 minutes.The relay power feed will be done by the normal electrical line (not connected to the UPS).Cheap, simple, clean.Check which ones are supported by the linux kernel (google will help).

Any DCE device can emit events, that the rest of the system can respond to. If you can communicate with the UPS, and get status data, then you can write a DCE device with DCEGen (for C++), or GSD (using Ruby). Events can be added by the Web Admin, into the database, and from that point, referenced by the code.

i am willing to code it other wise i would not of ask "What would be the easy rout for a none programmer" in the terms of what language would be easiest to get it going and maybe some pointers as to how i would integrate with MCE, yes i can read all the wiki's and faq's out there if i want to create it next year or i could get a point in the right direction and getting it done with in a month or so. not every one is lazy in the forum that asks for help. Sorry but I don't mean to write like this but i did not mean to get a response like that as if to imply that i'm lazy or in fact dumb.

You specify which one you wish to use, when you create the new device template.

The purpose of the device template, is to define what it is, what commands and events the device can emit and accept, and any information the plug and play plugin can use to determine how to detect the device. There are plenty of links to allow the creation of new Manufacturers, device categories, command and event categories, and new events and commands, as needed..but please, only do this if an appropriate group does not exist.

Once this device template has been created, it can be checked into sqlCVS. Once it has been checked in and approved in sqlCVS, you can run DCEGen (if it is C++), or start writing the Device Template in the Edit Ruby Codes section of the device template. If you choose the latter, you should check in your code changes via sqlCVS.

If it is a C++ device, then DCEGen should be run from src/DCEGen of your source code checkout, followed by sql2cpp from src/sql2cpp to generate the needed constants. These packages can be installed via apt as pluto-dcegen and pluto-sql2cpp respectively, and since they are installed in /usr/pluto/bin, you'll need to use the full path to refer to them.

DCEgen will create a full C++ project, with all the scaffolding needed, you fill in the blanks of each command method with code to deal with the commands. For events, you'd have to spawn a thread, and emit events within it.

There are plenty of example devices in both the Ruby and C++ realm, that can help you. Hopefully this should give you enough to start digging for info.