eCLD_IASACESetZoneParameter

teZCL_Status eCLD_IASACESetZoneParameter(
    uint8 u8SourceEndPointId,
    teCLD_IASACE_ZoneParameterID eParameterId,
    uint8 u8ZoneID,
    uint8 u8ParameterLength,
    uint8 *pu8ParameterValue);

Description

This function can be used on an IAS ACE cluster server to set the value of a Zone parameter. The Zone parameters for a particular Zone ID are held on the server in a tsCLD_IASACE_ZoneParameter structure (see Section 38.7.3) and this function can be used to write a value to one parameter in the structure. The specified zone must have been enrolled in the local Zone table. Before attempting the write, the function verifies that the specified Zone ID is present in the Zone table and that the specified parameter identifier is valid.

If this function is used to set the Zone parameter eZoneStatus, an IAS ACE Zone Status Changed command is automatically sent to all bound clients.

The function requires the parameter value to be provided as a uint8 array. This is to allow one of the array parameters, au8ZoneLabel[] or au8ArmDisarmCode[], to be set - the corresponding string parameter, sZoneLabel or sArmDisarmCode, will be set automatically. The function eCLD_IASACESetZoneParameterValue() provides an easier way of setting one of the non-array/non-string parameters.

Parameters

  • u8SourceEndPointId: Number of the endpoint on which the IAS ACE cluster resides

  • eParameterId : Enumeration identifying the Zone parameter to be set, one of:

  • : E_CLD_IASACE_ZONE_PARAMETER_ZONE_CONFIG_FLAG

  • E_CLD_IASACE_ZONE_PARAMETER_ZONE_STATUS_FLAG

  • E_CLD_IASACE_ZONE_PARAMETER_ZONE_STATUS

  • E_CLD_IASACE_ZONE_PARAMETER_AUDIBLE_NOTIFICATION

  • E_CLD_IASACE_ZONE_PARAMETER_ZONE_LABEL

  • E_CLD_IASACE_ZONE_PARAMETER_ARM_DISARM_CODE

  • u8ZoneID: Zone ID of zone information to be updated

  • u8ParameterLength: Number of uint8 elements in the array containing the parameter value to be set

  • pu8ParameterValue: Pointer to a location containing the first element of the array containing the parameter value to be set

Returns

  • E_ZCL_SUCCESS (Zone parameter successfully set)

  • E_ZCL_ERR_CLUSTER_NOT_FOUND (cluster instance not found)

  • E_ZCL_ERR_ATTRIBUTE_NOT_FOUND (Zone parameter identifier invalid)

  • E_ZCL_ERR_NO_REPORT_ENTRIES (Zone ID not found in Zone table)

  • E_ZCL_ERR_PARAMETER_NULL (Pointer to location containing value is NULL)

  • E_ZCL_ERR_PARAMETER_RANGE (specified array length too long to be stored)

Parent topic:Functions