# Name of the plugin.
name=Color Control Cluster Server
category=Home Automation

# Any string is allowable here.  Generally though it is Production Ready, Test Tool, Extension Needed
qualityString=Production Ready
# This is one of the following:  productionReady, testTool, extensionNeeded
quality=productionReady

introducedIn=zcl-1.0-07-5123-03

# Description of the plugin.
description=Implementation of the color server.  It supports color temperature, CIE 1931, and hue/saturation.  It supports smooth transitions within a particular color mode.  

# List of .c files that need to be compiled and linked in.
sourceFiles=color-control-server.c

# List of callbacks implemented by this plugin
implementedCallbacks=emberAfColorControlClusterServerInitCallback,emberAfColorControlClusterStopMoveStepCallback

options=xy, temp, hsv, minReportInterval, maxReportInterval, colorXyChange, colorTempChange, hueChange, saturationChange

xy.name=CIE 1931
xy.description=Support CIE 1931 Commands.  Note:  selecting this option requires the current X and current Y attributes be selected.  Also, a default report table entries will be created for these attributes.  
xy.type=BOOLEAN
xy.default=true
xy.callbacks=emberAfColorControlClusterMoveToColorCallback,emberAfColorControlClusterMoveColorCallback,emberAfColorControlClusterStepColorCallback

temp.name=Color Temperature
temp.description=Support Color Temperature Commands.  Note:  selecting this option requires the color temperature attribute be selected.  Also, a default report table entries will be created for this attribute.  
temp.type=BOOLEAN
temp.default=true
temp.callbacks=emberAfColorControlClusterMoveToColorTemperatureCallback,emberAfColorControlClusterMoveColorTemperatureCallback,emberAfColorControlClusterStepColorTemperatureCallback,emberAfPluginLevelControlCoupledColorTempChangeCallback

hsv.name=Hue Saturation 
hsv.description=Support Hue Saturation Commands.  Note:  selecting this option requires the current hue and current saturation attributes be selected.  Also, a default report table entry will be created for these attributes.
hsv.type=BOOLEAN
hsv.default=true
hsv.callbacks=emberAfColorControlClusterMoveToHueAndSaturationCallback,emberAfColorControlClusterMoveHueCallback,emberAfColorControlClusterMoveSaturationCallback,emberAfColorControlClusterMoveToHueCallback,emberAfColorControlClusterMoveToSaturationCallback,emberAfColorControlClusterStepHueCallback,emberAfColorControlClusterStepSaturationCallback

minReportInterval.name=Min Reporting Interval
minReportInterval.description=Default minimum Reporting Interval in Seconds for the color control server.
minReportInterval.type=NUMBER:1,65535
minReportInterval.default=1

maxReportInterval.name=Max Reporting Interval
maxReportInterval.description=Default maximum Reporting Interval in Seconds for the color control server.
maxReportInterval.type=NUMBER:1,65535
maxReportInterval.default=65535

colorXyChange.name=Color XY Reportable Change
colorXyChange.dependsOn=xy
colorXyChange.description=Default minimum reportable change for the colorX and colorY attributes.
colorXyChange.type=NUMBER:1,65535
colorXyChange.default=1

colorTempChange.name=Color Temperature Reportable Change
colorTempChange.dependsOn=temp
colorTempChange.description=Default minimum reportable change for the color temperature attribute.
colorTempChange.type=NUMBER:1,65535
colorTempChange.default=1

hueChange.name=Hue Reportable Change
hueChange.dependsOn=hsv
hueChange.description=Default minimum reportable change for the hue attribute.
hueChange.type=NUMBER:1,255
hueChange.default=1

saturationChange.name=Saturation Reportable Change
saturationChange.dependsOn=hsv
saturationChange.description=Default minimum reportable change for the saturation attribute.
saturationChange.type=NUMBER:1,255
saturationChange.default=1

includedByDefault=false

# Which clusters does it depend on
dependsOnClusterServer=color control

events=tempTransition,xyTransition,hueSatTransition