Skip to content

Commit

Permalink
[im] Land ReadAttribute using Interaction Model protocol (#7634)
Browse files Browse the repository at this point in the history
* [im] Implement cluster reading

* Cleanup ember code for attribute reading

* Disable CRMP for AttributeReading

* Address comments

* Revert changes to callback types.

* Add TLVDataFilter for checking values in TLV

* Fix python script for attribute reading

* Address comments

* Add secure session handle to SendReadRequest

* Run codegen
  • Loading branch information
erjiaqing authored Jun 28, 2021
1 parent 4f64f50 commit f88fe0a
Show file tree
Hide file tree
Showing 73 changed files with 5,176 additions and 3,199 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -21,6 +21,7 @@
#include <cstdint>

#include "chip-zcl-zpro-codec-api.h"
#include <gen/CHIPClientCallbacks.h>
#include <lib/support/Span.h>

namespace chip {
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -752,22 +752,6 @@ emberAfPostAttributeChangeCallback(EndpointId endpoint, ClusterId clusterId, Att
uint16_t manufacturerCode, uint8_t type, uint16_t size, uint8_t * value)
{}

/** @brief Read Attributes Response
*
* This function is called by the application framework when a Read Attributes
* Response command is received from an external device. The application should
* return true if the message was processed or false if it was not.
*
* @param clusterId The cluster identifier of this response. Ver.: always
* @param buffer Buffer containing the list of read attribute status records.
* Ver.: always
* @param bufLen The length in bytes of the list. Ver.: always
*/
bool __attribute__((weak)) emberAfReadAttributesResponseCallback(ClusterId clusterId, uint8_t * buffer, uint16_t bufLen)
{
return false;
}

/** @brief External Attribute Read
*
* Like emberAfExternalAttributeWriteCallback above, this function is called
Expand Down
13 changes: 0 additions & 13 deletions examples/all-clusters-app/all-clusters-common/gen/callback.h
Original file line number Diff line number Diff line change
Expand Up @@ -4722,19 +4722,6 @@ EmberAfStatus emberAfPreAttributeChangeCallback(chip::EndpointId endpoint, chip:
void emberAfPostAttributeChangeCallback(chip::EndpointId endpoint, chip::ClusterId clusterId, chip::AttributeId attributeId,
uint8_t mask, uint16_t manufacturerCode, uint8_t type, uint16_t size, uint8_t * value);

/** @brief Read Attributes Response
*
* This function is called by the application framework when a Read Attributes
* Response command is received from an external device. The application should
* return true if the message was processed or false if it was not.
*
* @param clusterId The cluster identifier of this response. Ver.: always
* @param buffer Buffer containing the list of read attribute status records.
* Ver.: always
* @param bufLen The length in bytes of the list. Ver.: always
*/
bool emberAfReadAttributesResponseCallback(chip::ClusterId clusterId, uint8_t * buffer, uint16_t bufLen);

/** @brief External Attribute Read
*
* Like emberAfExternalAttributeWriteCallback above, this function is called
Expand Down
1 change: 1 addition & 0 deletions examples/bridge-app/bridge-common/gen/CHIPClusters.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -21,6 +21,7 @@
#include <cstdint>

#include "chip-zcl-zpro-codec-api.h"
#include <gen/CHIPClientCallbacks.h>
#include <lib/support/Span.h>

namespace chip {
Expand Down
16 changes: 0 additions & 16 deletions examples/bridge-app/bridge-common/gen/callback-stub.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -480,22 +480,6 @@ emberAfPostAttributeChangeCallback(EndpointId endpoint, ClusterId clusterId, Att
uint16_t manufacturerCode, uint8_t type, uint16_t size, uint8_t * value)
{}

/** @brief Read Attributes Response
*
* This function is called by the application framework when a Read Attributes
* Response command is received from an external device. The application should
* return true if the message was processed or false if it was not.
*
* @param clusterId The cluster identifier of this response. Ver.: always
* @param buffer Buffer containing the list of read attribute status records.
* Ver.: always
* @param bufLen The length in bytes of the list. Ver.: always
*/
bool __attribute__((weak)) emberAfReadAttributesResponseCallback(ClusterId clusterId, uint8_t * buffer, uint16_t bufLen)
{
return false;
}

/** @brief External Attribute Read
*
* Like emberAfExternalAttributeWriteCallback above, this function is called
Expand Down
13 changes: 0 additions & 13 deletions examples/bridge-app/bridge-common/gen/callback.h
Original file line number Diff line number Diff line change
Expand Up @@ -1644,19 +1644,6 @@ EmberAfStatus emberAfPreAttributeChangeCallback(chip::EndpointId endpoint, chip:
void emberAfPostAttributeChangeCallback(chip::EndpointId endpoint, chip::ClusterId clusterId, chip::AttributeId attributeId,
uint8_t mask, uint16_t manufacturerCode, uint8_t type, uint16_t size, uint8_t * value);

/** @brief Read Attributes Response
*
* This function is called by the application framework when a Read Attributes
* Response command is received from an external device. The application should
* return true if the message was processed or false if it was not.
*
* @param clusterId The cluster identifier of this response. Ver.: always
* @param buffer Buffer containing the list of read attribute status records.
* Ver.: always
* @param bufLen The length in bytes of the list. Ver.: always
*/
bool emberAfReadAttributesResponseCallback(chip::ClusterId clusterId, uint8_t * buffer, uint16_t bufLen);

/** @brief External Attribute Read
*
* Like emberAfExternalAttributeWriteCallback above, this function is called
Expand Down
1 change: 1 addition & 0 deletions examples/lighting-app/lighting-common/gen/CHIPClusters.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -21,6 +21,7 @@
#include <cstdint>

#include "chip-zcl-zpro-codec-api.h"
#include <gen/CHIPClientCallbacks.h>
#include <lib/support/Span.h>

namespace chip {
Expand Down
16 changes: 0 additions & 16 deletions examples/lighting-app/lighting-common/gen/callback-stub.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -464,22 +464,6 @@ emberAfPostAttributeChangeCallback(EndpointId endpoint, ClusterId clusterId, Att
uint16_t manufacturerCode, uint8_t type, uint16_t size, uint8_t * value)
{}

/** @brief Read Attributes Response
*
* This function is called by the application framework when a Read Attributes
* Response command is received from an external device. The application should
* return true if the message was processed or false if it was not.
*
* @param clusterId The cluster identifier of this response. Ver.: always
* @param buffer Buffer containing the list of read attribute status records.
* Ver.: always
* @param bufLen The length in bytes of the list. Ver.: always
*/
bool __attribute__((weak)) emberAfReadAttributesResponseCallback(ClusterId clusterId, uint8_t * buffer, uint16_t bufLen)
{
return false;
}

/** @brief External Attribute Read
*
* Like emberAfExternalAttributeWriteCallback above, this function is called
Expand Down
13 changes: 0 additions & 13 deletions examples/lighting-app/lighting-common/gen/callback.h
Original file line number Diff line number Diff line change
Expand Up @@ -1490,19 +1490,6 @@ EmberAfStatus emberAfPreAttributeChangeCallback(chip::EndpointId endpoint, chip:
void emberAfPostAttributeChangeCallback(chip::EndpointId endpoint, chip::ClusterId clusterId, chip::AttributeId attributeId,
uint8_t mask, uint16_t manufacturerCode, uint8_t type, uint16_t size, uint8_t * value);

/** @brief Read Attributes Response
*
* This function is called by the application framework when a Read Attributes
* Response command is received from an external device. The application should
* return true if the message was processed or false if it was not.
*
* @param clusterId The cluster identifier of this response. Ver.: always
* @param buffer Buffer containing the list of read attribute status records.
* Ver.: always
* @param bufLen The length in bytes of the list. Ver.: always
*/
bool emberAfReadAttributesResponseCallback(chip::ClusterId clusterId, uint8_t * buffer, uint16_t bufLen);

/** @brief External Attribute Read
*
* Like emberAfExternalAttributeWriteCallback above, this function is called
Expand Down
1 change: 1 addition & 0 deletions examples/lock-app/lock-common/gen/CHIPClusters.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -21,6 +21,7 @@
#include <cstdint>

#include "chip-zcl-zpro-codec-api.h"
#include <gen/CHIPClientCallbacks.h>
#include <lib/support/Span.h>

namespace chip {
Expand Down
16 changes: 0 additions & 16 deletions examples/lock-app/lock-common/gen/callback-stub.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -456,22 +456,6 @@ emberAfPostAttributeChangeCallback(EndpointId endpoint, ClusterId clusterId, Att
uint16_t manufacturerCode, uint8_t type, uint16_t size, uint8_t * value)
{}

/** @brief Read Attributes Response
*
* This function is called by the application framework when a Read Attributes
* Response command is received from an external device. The application should
* return true if the message was processed or false if it was not.
*
* @param clusterId The cluster identifier of this response. Ver.: always
* @param buffer Buffer containing the list of read attribute status records.
* Ver.: always
* @param bufLen The length in bytes of the list. Ver.: always
*/
bool __attribute__((weak)) emberAfReadAttributesResponseCallback(ClusterId clusterId, uint8_t * buffer, uint16_t bufLen)
{
return false;
}

/** @brief External Attribute Read
*
* Like emberAfExternalAttributeWriteCallback above, this function is called
Expand Down
13 changes: 0 additions & 13 deletions examples/lock-app/lock-common/gen/callback.h
Original file line number Diff line number Diff line change
Expand Up @@ -1360,19 +1360,6 @@ EmberAfStatus emberAfPreAttributeChangeCallback(chip::EndpointId endpoint, chip:
void emberAfPostAttributeChangeCallback(chip::EndpointId endpoint, chip::ClusterId clusterId, chip::AttributeId attributeId,
uint8_t mask, uint16_t manufacturerCode, uint8_t type, uint16_t size, uint8_t * value);

/** @brief Read Attributes Response
*
* This function is called by the application framework when a Read Attributes
* Response command is received from an external device. The application should
* return true if the message was processed or false if it was not.
*
* @param clusterId The cluster identifier of this response. Ver.: always
* @param buffer Buffer containing the list of read attribute status records.
* Ver.: always
* @param bufLen The length in bytes of the list. Ver.: always
*/
bool emberAfReadAttributesResponseCallback(chip::ClusterId clusterId, uint8_t * buffer, uint16_t bufLen);

/** @brief External Attribute Read
*
* Like emberAfExternalAttributeWriteCallback above, this function is called
Expand Down
Loading

0 comments on commit f88fe0a

Please sign in to comment.