Structures

tsCLD_ApplianceEventsAndAlertsCallBackMessage

For an Appliance Events and Alerts event, the eEventType field of the tsZCL_CallBackEvent structure is set to E_ZCL_CBET_CLUSTER_CUSTOM. This event structure also contains an element sClusterCustomMessage, which is itself a structure containing a field pvCustomData. This field is a pointer to the following tsCLD_ApplianceEventsAndAlertsCallBackMessage structure:

typedef struct
{
 uint8     u8CommandId
 union
 {
 tsCLD_AEAA_GetAlertsResponseORAlertsNotificationPayload            
         *psGetAlertsResponseORAlertsNotificationPayload;
 tsCLD_AEAA_EventNotificationPayload                                
         *psEventNotificationPayload;
 } uMessage;
} tsCLD_ApplianceEventsAndAlertsCallBackMessage; 

where:

  • u``8CommandId indicates the type of Appliance Events and Alerts command that has been received, one of:

    • E_CLD_APPLIANCE_EVENTS_AND_ALERTS_CMD_GET_ALERTS

    • E_CLD_APPLIANCE_EVENTS_AND_ALERTS_CMD_ALERTS_NOTIFICATION

    • E_CLD_APPLIANCE_EVENTS_AND_ALERTS_CMD_EVENT_NOTIFICATION

  • u``Message is a union containing the command payload as one of (depending on the value of u8CommandId):

    • psGetAlertsResponseORAlertsNotificationPayload is a pointer to the payload of an “Get Alerts” response message or an alerts notification message (see Section 47.8.2)

    • psEventNotificationPayload is a pointer to the payload of an events notification message (see Section 47.8.3)

Parent topic:Structures

tsCLD_AEAA_GetAlertsResponseORAlertsNotificationPayload

This structure contains the payload for a ‘Get Alerts Response’ message or an ‘Alerts Notification’ message.

typedef struct
{
   zuint8  u8AlertsCount;
   zuint24 au24AlertStructure[
              CLD_APPLIANCE_EVENTS_AND_ALERTS_MAXIMUM_NUM_OF_ALERTS];
} tsCLD_AEAA_GetAlertsResponseORAlertsNotificationPayload;

where:

  • u8AlertsCount is an 8-bit bitmap containing the following alerts information:

Bits

Description

0-3

Number of reported alerts

4-7

Type of alert:

  • 0x0: Unstructured

  • 0x1-0xF: Reserved

|

  • au24AlertStructure[``] is an array of 24-bit bitmaps, with one bitmap for each reported alert, containing the following information:

Bits

Description

0-7

Alert ID:

  • 0x0: Reserved

  • 0x01-0x3F: Standardized

  • 0x40-0x7F: Non-standardized

  • 0x80-0xFF: Proprietary

| |8-11|Category:

  • 0x0: Reserved

  • 0x1: Warning

  • 0x2: Danger

  • 0x3: Failure

  • 0x4–0xF: Reserved

| |12-13|Presence or recovery:

  • 0x0: Presence (alert detected)

  • 0x1: Recovery (alert recovered)

  • 0x2–0x3: Reserved

| |14-15|Reserved (set to 0x0)| |16-23|Non-standardized or proprietary|

Parent topic:Structures

tsCLD_AEAA_EventNotificationPayload

This structure contains the payload for an ‘Event Notification’ message.

typedef struct
{
   zuint8           u8EventHeader;
   zuint8           u8EventIdentification;
} tsCLD_AEAA_EventNotificationPayload;

where:

  • u8EventHeader is reserved and set to 0

  • u8EventIdentification is the identifier of the event being notified:

    • 0x01: End of operational cycle reached

    • 0x02: Reserved

    • 0x03: Reserved

    • 0x04: Target temperature reached

    • 0x05: End of cooking process reached

    • 0x06: Switching off

    • 0xF7: Wrong data

      • (Values 0x00 to 0x3F are standardised, 0x40 to 0x7F are non-standardised, and 0x80 to 0xFF except 0xF7 are proprietary)

Parent topic:Structures

tsCLD_ApplianceEventsAndAlertsCustomDataStructure

The Appliance Events and Alerts cluster requires extra storage space to be allocated to be used by internal functions. The structure definition for this storage is shown below:

typedef struct
{
    tsZCL_ReceiveEventAddress sReceiveEventAddress;
    tsZCL_CallBackEvent sCustomCallBackEvent;
    tsCLD_ApplianceEventsAndAlertsCallBackMessage sCallBackMessage;
} tsCLD_ApplianceEventsAndAlertsCustomDataStructure;

The fields are for internal use and no knowledge of them is required.

Parent topic:Structures

Parent topic:Appliance Events and Alerts Cluster