Definitions for the ZLL Commissioning Client plugin.
License#
Copyright 2018 Silicon Laboratories Inc. www.silabs.com
The licensor of this software is Silicon Laboratories Inc. Your use of this software is governed by the terms of Silicon Labs Master Software License Agreement (MSLA) available at www.silabs.com/about-us/legal/master-software-license-agreement. This software is distributed to you in Source Code format and is governed by the sections of the MSLA applicable to Source Code.
/***************************************************************************/
#ifndef SL_ZIGBEE_ZLL_COMMISSIONING_CLIENT_H
#define SL_ZIGBEE_ZLL_COMMISSIONING_CLIENT_H
EmberStatus emberAfZllInitiateTouchLink(void);
EmberStatus emberAfZllDeviceInformationRequest(void);
EmberStatus emberAfZllIdentifyRequest(void);
EmberStatus emberAfZllResetToFactoryNewRequest(void);
void emberAfZllAbortTouchLink(void);
// end of name API
void emberAfPluginZllCommissioningClientTouchLinkFailedCallback(EmberAfZllCommissioningStatus status);
// END addtogroup
// For legacy code
#define emberAfPluginZllCommissioningTouchLinkFailedCallback \
emberAfPluginZllCommissioningClientTouchLinkFailedCallback
// end of zll_commissioning_cb // end of name Callbacks // end of zll-commissioning-client
#endif // SL_ZIGBEE_ZLL_COMMISSIONING_CLIENT_H
API#
Initiate the touch link procedure.
Initiate a touch link to retrieve information about a target device.
Initiate a touch link to cause a target device to identify itself.
Initiate a touch link for the purpose of resetting a target device.
Abort the touch link procedure.
Callbacks#
Touch link failed.
Macros#
API Documentation#
emberAfZllInitiateTouchLink#
EmberStatus emberAfZllInitiateTouchLink (void )
Initiate the touch link procedure.
Type | Direction | Argument Name | Description |
---|---|---|---|
void | N/A |
This function causes the stack to broadcast a series of ScanRequest commands via inter-PAN messaging. The plugin selects the target that sent a ScanResponse command with the strongest RSSI and attempts to link with it. If touch linking completes successfully, the plugin calls emberAfPluginZllCommissioningTouchLinkCompleteCallback with information about the network and the target. If touch linking fails, the plugin calls emberAfPluginZllCommissioningTouchLinkFailedCallback.
Returns
An EmberStatus value that indicates the success or failure of the command.
emberAfZllDeviceInformationRequest#
EmberStatus emberAfZllDeviceInformationRequest (void )
Initiate a touch link to retrieve information about a target device.
Type | Direction | Argument Name | Description |
---|---|---|---|
void | N/A |
As with a traditional touch link, this function causes the stack to broadcast messages to discover a target device. When the target is selected (based on RSSI), the plugin will retrieve information about it by unicasting a series of DeviceInformationRequest commands via inter-PAN messaging. If the process completes successfully, the plugin calls emberAfPluginZllCommissioningTouchLinkCompleteCallback with information about the target. If touch linking fails, the plugin calls emberAfPluginZllCommissioningTouchLinkFailedCallback.
Returns
An EmberStatus value that indicates the success or failure of the command.
emberAfZllIdentifyRequest#
EmberStatus emberAfZllIdentifyRequest (void )
Initiate a touch link to cause a target device to identify itself.
Type | Direction | Argument Name | Description |
---|---|---|---|
void | N/A |
As with a traditional touch link, this function causes the stack to broadcast messages to discover a target device. When the target is selected (based on RSSI), the plugin will cause it to identify itself by unicasting an IdentifyRequest command via inter-PAN messaging. If the process completes successfully, the plugin calls emberAfPluginZllCommissioningTouchLinkCompleteCallback with information about the target. If touch linking fails, the plugin calls emberAfPluginZllCommissioningTouchLinkFailedCallback.
Returns
An EmberStatus value that indicates the success or failure of the command.
emberAfZllResetToFactoryNewRequest#
EmberStatus emberAfZllResetToFactoryNewRequest (void )
Initiate a touch link for the purpose of resetting a target device.
Type | Direction | Argument Name | Description |
---|---|---|---|
void | N/A |
As with a traditional touch link, this function causes the stack to broadcast messages to discover a target device. When the target is selected (based on RSSI), the plugin will reset it by unicasting a ResetToFactoryNewRequest command via inter-PAN messaging. If the process completes successfully, the plugin calls emberAfPluginZllCommissioningTouchLinkCompleteCallback with information about the target. If touch linking fails, the plugin calls emberAfPluginZllCommissioningTouchLinkFailedCallback.
Returns
An EmberStatus value that indicates the success or failure of the command.
emberAfZllAbortTouchLink#
void emberAfZllAbortTouchLink (void )
Abort the touch link procedure.
Type | Direction | Argument Name | Description |
---|---|---|---|
void | N/A |
This function can be called to cancel the touch link procedure. This can be useful, for example, if the touch link target is incorrect.
Callbacks Documentation#
emberAfPluginZllCommissioningClientTouchLinkFailedCallback#
void emberAfPluginZllCommissioningClientTouchLinkFailedCallback (EmberAfZllCommissioningStatus status)
Touch link failed.
Type | Direction | Argument Name | Description |
---|---|---|---|
EmberAfZllCommissioningStatus | N/A | status | The reason the touch link failed. Ver.: always |
This function is called by the ZLL Commissioning Client plugin if touch linking fails.