Package: Zone Manager

Author: HCA Central
Version: 3
Added to Library: 11-Nov-23
HCAVersion needed: 17
Keywords: Utility

Package Description:
What's new in this version?

Various bug fixes.

A zone is simply created by adding a "Zones" tag to any device and setting the tag value to a comma separated list of zone names the device participates in. Zone names can be anything you want. For example, suppose that you have a device in the "Kitchen" room. To add it to the "First Floor" and "House" zones add a tag and set the tag value to:

First Floor, House

There is a special zone name called "Self". If you add "self" to the zone name list, the zone name is the same as the room/folder name.

In the "Kitchen" example above, if the "Zones" tag was set to:

self, First Floor, House

Then this device would be in three zones: Kitchen, First Floor, and House.

Instead of using "self" you could just use "kitchen" but this way if you change the room/folder name or move the device it is automatically in the zone of the new folder/room.

Program: Any Zone Device On

Program Description:
Supplied with a list of device names as created by "Create Zone Device List" determines if any device in the zone is OK. If so, the zone is considered on.

Return value: Returns 0 if the zone is off, 1 otherwise

Parameters:

Name Type Description Default
deviceList Value List of devices that comprise a zone  

Program: AssembleRGB

Program Description:
Has one parameter which is a text string of the form R,G,B. For example, "57,122,181". Uses the _RGB function to create the color code.

Return value: The color code

Parameters:

Name Type Description Default
ThreeParts Value RGB as three numbers seperated by commas 255,255,255

Program: Create Zone Device List

Program Description:
Supplied with a zone name returns a CSV list of all devices in that zone. The zone name could be the name of a folder or room in which case it looks at only the devices in that folder or room. If the zone name is not a folder or room name then it finds all devices in any folder or room that participates in that zone.

To assign a device into a zone, add a "Zones" tag to the device. The value of this tag is a CSV list of zone names. The special zone name "self" means the name of the folder or room.

Return value: CSV list of all devices in the zone

Parameters:

Name Type Description Default
ZoneName Value Zone name to find the list of devices for  

Program: Is Zone On

Program Description:
Determines if any device ion a zone is on.

Return value: Returns 0 if the zone is off, 1 otherwise

Parameters:

Name Type Description Default
ZoneName Value Name of the zone to check  

Program: State Change responder

Program Description:
State change responder for any device. Saves the zone state as a tag on the package program "Zones". Also, if the tag "UpdateTiles" is present on this program, then any tile with the same name as the zone is updated. The update is done by changing the color of the tile background and text. These colors are specified in these tags - given as RGB in CSV format.

TileOnColor

TileOnColorText

TileOffColor

TileOffColorText

Parameters:

Name Type Description Default
Device Object Device object that changed state. Supplied by HCA when the trigger happens.  
Value Value New percent the device is at. Supplied by HCA when the trigger happens.  

Program: Zone Off

Program Description:
Supplied with a zone name controls all devices in that zone OFF

Parameters:

Name Type Description Default
zoneName Value Name of zone to control  

Program: Zone On

Program Description:
Supplied with a zone name controls all devices in that zone ON

Parameters:

Name Type Description Default
zoneName Value Name of zone to control  

Program: Zones

Program Description:
Not a program that does anything. Just used so that tags on this program can be used to save an indication of which zones are on or off. This makes it easy for other programs to check for zone state.