Max::Room - Class to represent a group of eQ-3 Max! devices
use Max;
for my $room ($max->rooms) { ... }
my $room = $max->room(42);
$room->set_temperature(21.5);
Represents a "room" or "group" of thermostatic devices in the "eQ-3 MAX!" system.
Considered an internal method; should not be called directly.
Given a Max::Device object, adds it to the room object. Does not update the Cube's configuration; use $device->set_room
for that.
Returns a list of discovered devices as Max::Device objects. The order is not guaranteed.
In scalar context, returns the number of devices.
Returns the configured name, or a string comprised of the word "room" and the rooms' numeric ID. The ID is added, even for rooms that have a configured name, if the argument $include_id
is true.
Returns the configured name (binary).
Sets a new name, but does not write the metadata to the cube. Use $max->write_metadata
to store the new name.
Returns the configured target temperature as reported by a device in the room. If a wall thermostat is present, its temperature is preferred. Without any wall thermostat, will use any other device's reported setpoint.
Returns undef if the setting is not known.
Sends a new manual setpoint temperature to all the devices in the room. The new temperature must be a multiple of 0.5.
Currently does not handle errors.
Returns the actual temperature as reported by a wall thermostat in the room. Returns undef if the temperature is not known.
Returns true if the measured temperature is more than $maxdelta
degrees colder than the setpoint. The parameter defaults to 0. Returns undef if the temperature or setpoint is not known.
Very little parameter checking is done.
Because
set_temperature
sets the mode to "manual", the setting is kept. The suggested use of this library is to set programs on a computer (via cron) rather than directly on the devices.
Pick your favourite OSI approved license :)
http://www.opensource.org/licenses/alphabetical
Juerd Waalboer <#####@juerd.nl> <http://juerd.nl/>