Skip to content

Commit 3884e01

Browse files
committedFeb 7, 2024·
Adding updates per comments
1 parent 350c540 commit 3884e01

File tree

5 files changed

+26
-40
lines changed

5 files changed

+26
-40
lines changed
 

‎examples/tv-app/android/include/messages/MessagesManager.h

+6-5
Original file line numberDiff line numberDiff line change
@@ -25,11 +25,12 @@ class MessagesManager : public chip::app::Clusters::Messages::Delegate
2525
public:
2626
// Commands
2727
void HandlePresentMessagesRequest(
28-
const chip::ByteSpan & messageId, const MessagePriorityEnum & priority,
29-
const chip::BitMask<MessageControlBitmap> & messageControl, const chip::app::DataModel::Nullable<uint32_t> & startTime,
28+
const chip::ByteSpan & messageId,
29+
const chip::app::Clusters::Messages::MessagePriorityEnum & priority,
30+
const chip::BitMask<chip::app::Clusters::Messages::MessageControlBitmap> & messageControl,
31+
const chip::app::DataModel::Nullable<uint32_t> & startTime,
3032
const chip::app::DataModel::Nullable<uint16_t> & duration, const chip::CharSpan & messageText,
31-
const chip::Optional<chip::app::DataModel::DecodableList<MessageResponseOption>> & responses) override;
32-
33+
const chip::Optional<chip::app::DataModel::DecodableList<chip::app::Clusters::Messages::Structs::MessageResponseOptionStruct::DecodableType>> & responses) override;
3334
void HandleCancelMessagesRequest(const chip::app::DataModel::DecodableList<chip::ByteSpan> & messageIds) override;
3435

3536
// Attributes
@@ -41,4 +42,4 @@ class MessagesManager : public chip::app::Clusters::Messages::Delegate
4142

4243
protected:
4344
std::list<std::string> mMessages;
44-
};
45+
};

‎examples/tv-app/tv-common/clusters/messages/MessagesManager.cpp

+6-1
Original file line numberDiff line numberDiff line change
@@ -17,9 +17,12 @@
1717

1818
#include "MessagesManager.h"
1919

20+
#include <app-common/zap-generated/attributes/Accessors.h>
21+
2022
using namespace std;
2123
using namespace chip::app;
2224
using namespace chip::app::Clusters::Messages;
25+
using Message = chip::app::Clusters::Messages::Structs::MessageStruct::Type;
2326

2427
// Commands
2528
void MessagesManager::HandlePresentMessagesRequest(
@@ -72,5 +75,7 @@ CHIP_ERROR MessagesManager::HandleGetActiveMessageIds(chip::app::AttributeValueE
7275
// Global Attributes
7376
uint32_t MessagesManager::GetFeatureMap(chip::EndpointId endpoint)
7477
{
75-
return 1;
78+
uint32_t featureMap = 0;
79+
Attributes::FeatureMap::Get(endpoint, &featureMap);
80+
return featureMap;
7681
}

‎examples/tv-app/tv-common/clusters/messages/MessagesManager.h

+7-12
Original file line numberDiff line numberDiff line change
@@ -22,22 +22,17 @@
2222
#include <iostream>
2323
#include <list>
2424

25-
using MessagesDelegate = chip::app::Clusters::Messages::Delegate;
26-
using MessagePriorityEnum = chip::app::Clusters::Messages::MessagePriorityEnum;
27-
using MessageControlBitmap = chip::app::Clusters::Messages::MessageControlBitmap;
28-
using MessageResponseOption = chip::app::Clusters::Messages::Structs::MessageResponseOptionStruct::Type;
29-
using Message = chip::app::Clusters::Messages::Structs::MessageStruct::Type;
30-
31-
class MessagesManager : public MessagesDelegate
25+
class MessagesManager : public chip::app::Clusters::Messages::Delegate
3226
{
3327
public:
34-
MessagesManager() : MessagesDelegate(){};
3528
// Commands
3629
void HandlePresentMessagesRequest(
37-
const chip::ByteSpan & messageId, const MessagePriorityEnum & priority,
38-
const chip::BitMask<MessageControlBitmap> & messageControl, const chip::app::DataModel::Nullable<uint32_t> & startTime,
30+
const chip::ByteSpan & messageId,
31+
const chip::app::Clusters::Messages::MessagePriorityEnum & priority,
32+
const chip::BitMask<chip::app::Clusters::Messages::MessageControlBitmap> & messageControl,
33+
const chip::app::DataModel::Nullable<uint32_t> & startTime,
3934
const chip::app::DataModel::Nullable<uint16_t> & duration, const chip::CharSpan & messageText,
40-
const chip::Optional<chip::app::DataModel::DecodableList<MessageResponseOption>> & responses) override;
35+
const chip::Optional<chip::app::DataModel::DecodableList<chip::app::Clusters::Messages::Structs::MessageResponseOptionStruct::Type>> & responses) override;
4136
void HandleCancelMessagesRequest(const chip::app::DataModel::DecodableList<chip::ByteSpan> & messageIds) override;
4237

4338
// Attributes
@@ -48,5 +43,5 @@ class MessagesManager : public MessagesDelegate
4843
uint32_t GetFeatureMap(chip::EndpointId endpoint) override;
4944

5045
protected:
51-
std::list<Message> mMessages;
46+
std::list<chip::app::Clusters::Messages::Structs::MessageStruct::Type> mMessages;
5247
};

‎src/app/clusters/messages-server/messages-delegate.h

-3
Original file line numberDiff line numberDiff line change
@@ -31,9 +31,6 @@ namespace Messages {
3131

3232
using MessageResponseOption = chip::app::Clusters::Messages::Structs::MessageResponseOptionStruct::Type;
3333

34-
/** @brief
35-
* Defines methods for implementing application-specific logic for the Content Launcher Cluster.
36-
*/
3734
class Delegate
3835
{
3936
public:

‎src/app/clusters/messages-server/messages-server.cpp

+7-19
Original file line numberDiff line numberDiff line change
@@ -15,13 +15,6 @@
1515
* limitations under the License.
1616
*/
1717

18-
/****************************************************************************
19-
* @file
20-
* @brief Routines for the Media Playback plugin, the
21-
*server implementation of the Media Playback cluster.
22-
*******************************************************************************
23-
******************************************************************************/
24-
2518
#include <app/clusters/messages-server/messages-delegate.h>
2619
#include <app/clusters/messages-server/messages-server.h>
2720

@@ -43,7 +36,7 @@ using chip::app::LogEvent;
4336
using chip::Protocols::InteractionModel::Status;
4437

4538
static constexpr size_t kMessagesDelegateTableSize =
46-
EMBER_AF_MESSAGES_CLUSTER_SERVER_ENDPOINT_COUNT + CHIP_DEVICE_CONFIG_DYNAMIC_ENDPOINT_COUNT;
39+
MATTER_DM_MESSAGES_CLUSTER_SERVER_ENDPOINT_COUNT + CHIP_DEVICE_CONFIG_DYNAMIC_ENDPOINT_COUNT;
4740
static_assert(kMessagesDelegateTableSize <= kEmberInvalidEndpointIndex, "Messages Delegate table size error");
4841

4942
// -----------------------------------------------------------------------------
@@ -57,7 +50,7 @@ Delegate * GetDelegate(EndpointId endpoint)
5750
{
5851
ChipLogProgress(Zcl, "MessagesCluster NOT returning delegate for endpoint:%u", endpoint);
5952

60-
uint16_t ep = emberAfGetClusterServerEndpointIndex(endpoint, Messages::Id, EMBER_AF_MESSAGES_CLUSTER_SERVER_ENDPOINT_COUNT);
53+
uint16_t ep = emberAfGetClusterServerEndpointIndex(endpoint, Messages::Id, MATTER_DM_MESSAGES_CLUSTER_SERVER_ENDPOINT_COUNT);
6154
return (ep >= kMessagesDelegateTableSize ? nullptr : gDelegateTable[ep]);
6255
}
6356

@@ -79,15 +72,12 @@ namespace Messages {
7972

8073
void SetDefaultDelegate(EndpointId endpoint, Delegate * delegate)
8174
{
82-
uint16_t ep = emberAfGetClusterServerEndpointIndex(endpoint, Messages::Id, EMBER_AF_MESSAGES_CLUSTER_SERVER_ENDPOINT_COUNT);
75+
uint16_t ep = emberAfGetClusterServerEndpointIndex(endpoint, Messages::Id, MATTER_DM_MESSAGES_CLUSTER_SERVER_ENDPOINT_COUNT);
8376
// if endpoint is found
8477
if (ep < kMessagesDelegateTableSize)
8578
{
8679
gDelegateTable[ep] = delegate;
8780
}
88-
else
89-
{
90-
}
9181
}
9282

9383
bool Delegate::HasFeature(chip::EndpointId endpoint, Feature feature)
@@ -196,9 +186,8 @@ bool emberAfMessagesClusterPresentMessagesRequestCallback(
196186

197187
Delegate * delegate = GetDelegate(endpoint);
198188
VerifyOrExit(isDelegateNull(delegate, endpoint) != true, err = CHIP_ERROR_INCORRECT_STATE);
199-
{
200-
delegate->HandlePresentMessagesRequest(messageId, priority, messageControl, startTime, duration, messageText, responses);
201-
}
189+
190+
delegate->HandlePresentMessagesRequest(messageId, priority, messageControl, startTime, duration, messageText, responses);
202191

203192
exit:
204193
if (err != CHIP_NO_ERROR)
@@ -226,9 +215,8 @@ bool emberAfMessagesClusterCancelMessagesRequestCallback(
226215

227216
Delegate * delegate = GetDelegate(endpoint);
228217
VerifyOrExit(isDelegateNull(delegate, endpoint) != true, err = CHIP_ERROR_INCORRECT_STATE);
229-
{
230-
delegate->HandleCancelMessagesRequest(messageIds);
231-
}
218+
219+
delegate->HandleCancelMessagesRequest(messageIds);
232220

233221
exit:
234222
if (err != CHIP_NO_ERROR)

0 commit comments

Comments
 (0)
Please sign in to comment.