Note 1: Valid ranges (maximum and minimum values) for the four mandatory attributes can alternatively be set
6.5 Poll Control Events
6.6.3 Client Functions
The following Poll Control cluster functions are provided in the HA API and can be used on a cluster client only:
Function Page
eCLD_PollControlSetLongPollIntervalSend 102 eCLD_PollControlSetShortPollIntervalSend 104
eCLD_PollControlFastPollStopSend 106
Poll Control Cluster
eCLD_PollControlSetLongPollIntervalSend
Description
This function can be used on a cluster client to send a ‘Set Long Poll Interval’
command to the cluster server. This command requests the ‘long poll interval’ for normal poll mode on the End Device to be set to the specified value.
On receiving the command, the ‘long poll interval’ attribute is only modified by the server if the specified value is within the valid range for the attribute (including greater than or equal to the optional user-defined minimum, if set) - see Section 6.2. If this is not the case, the server replies to the client with a ZCL ‘default response’ indicating an invalid value.
The change will take effect immediately. So, if the End Device is in normal poll mode when the ‘long poll interval’ is modified, the polling period will be immediately re-timed to the new value.
You are required to provide a pointer to a location to receive a Transaction Sequence Number (TSN) for the message. The TSN in the response will be set to match the TSN in the request, allowing an incoming response to be paired with a request. This is useful when sending more than one request to the same destination endpoint.
Parameters
u8SourceEndPointId Number of local endpoint on which cluster client resides
u8DestinationEndPointId Number of remote endpoint on which cluster server resides
psDestinationAddress Pointer to a structure containing the destination address of the server node
pu8TransactionSequenceNumber Pointer to a location to receive the Transaction Sequence Number (TSN) of the message psPayload Pointer to structure containing the payload for the
command (see Section 6.9.3), including the desired long poll interval
Returns
E_ZCL_SUCCESS E_ZCL_FAIL
E_ZCL_ERR_PARAMETER_NULL E_ZCL_ERR_EP_RANGE
E_ZCL_ERR_EP_UNKNOWN
E_ZCL_ERR_CLUSTER_NOT_FOUND E_ZCL_ERR_ZBUFFER_FAIL
E_ZCL_ERR_ZTRANSMIT_FAIL
Poll Control Cluster
eCLD_PollControlSetShortPollIntervalSend
Description
This function can be used on a cluster client to send a ‘Set Short Poll Interval’
command to the cluster server. This command requests the ‘short poll interval’ for fast poll mode on the End Device to be set to the specified value.
On receiving the command, the ‘short poll interval’ attribute is only modified by the server if the specified value is within the valid range for the attribute (including greater than or equal to the optional user-defined minimum, if set) - see Section 6.2. If this is not the case, the server replies to the client with a ZCL ‘default response’ indicating an invalid value.
The change will take effect immediately. So, if the End Device is in fast poll mode when the ‘short poll interval’ is modified, the polling period will be immediately re-timed to the new value.
You are required to provide a pointer to a location to receive a Transaction Sequence Number (TSN) for the message. The TSN in the response will be set to match the TSN in the request, allowing an incoming response to be paired with a request. This is useful when sending more than one request to the same destination endpoint.
Parameters
u8SourceEndPointId Number of local endpoint on which cluster client resides
u8DestinationEndPointId Number of remote endpoint on which cluster server resides
psDestinationAddress Pointer to a structure containing the destination address of the server node
pu8TransactionSequenceNumber Pointer to a location to receive the Transaction Sequence Number (TSN) of the message psPayload Pointer to structure containing the payload for the
command (see Section 6.9.4), including the desired short poll interval
Returns
E_ZCL_SUCCESS E_ZCL_FAIL
E_ZCL_ERR_PARAMETER_NULL E_ZCL_ERR_EP_RANGE
E_ZCL_ERR_EP_UNKNOWN
E_ZCL_ERR_CLUSTER_NOT_FOUND E_ZCL_ERR_ZBUFFER_FAIL
E_ZCL_ERR_ZTRANSMIT_FAIL
Poll Control Cluster
eCLD_PollControlFastPollStopSend
Description
This function can be used on a cluster client to send a ‘Fast Poll Stop’ command to the cluster server. This command is intended to abort a fast poll mode episode which has been started on the server as the result of a ‘Check-in Response’. Therefore, the command allows fast poll mode to be exited before the mode’s timeout is reached.
The cluster server will only stop fast poll mode on the destination End Device if a matching ‘Fast Poll Stop’ command has been received for every request to start the current episode of fast poll mode. Therefore, if the current fast poll mode episode resulted from multiple start requests from multiple clients, the episode cannot be prematurely stopped (before the timeout is reached) unless a ‘Fast Poll Stop’
command is received from each of those clients.
You are required to provide a pointer to a location to receive a Transaction Sequence Number (TSN) for the message. The TSN in the response will be set to match the TSN in the request, allowing an incoming response to be paired with a request. This is useful when sending more than one request to the same destination endpoint.
Parameters
u8SourceEndPointId Number of local endpoint on which cluster client resides
u8DestinationEndPointId Number of remote endpoint on which cluster server resides
psDestinationAddress Pointer to a structure containing the destination address of the server node
pu8TransactionSequenceNumber Pointer to a location to receive the Transaction Sequence Number (TSN) of the message
Returns