Skip to content

Commit 961e5e5

Browse files
authored
Merge branch 'master' into feature/add-logic-message-cluster
2 parents 32dda48 + 61724ee commit 961e5e5

File tree

73 files changed

+1458
-440
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

73 files changed

+1458
-440
lines changed

examples/tv-app/android/include/account-login/AccountLoginManager.cpp

+17
Original file line numberDiff line numberDiff line change
@@ -17,6 +17,7 @@
1717
*/
1818

1919
#include "AccountLoginManager.h"
20+
#include <app-common/zap-generated/attributes/Accessors.h>
2021
#include <app/CommandHandler.h>
2122
#include <app/util/af.h>
2223
#include <json/json.h>
@@ -102,3 +103,19 @@ void AccountLoginManager::GetSetupPin(char * setupPin, size_t setupPinSize, cons
102103
}
103104
ChipLogProgress(Zcl, "Returning pin for content app for endpoint %d", mEndpointId);
104105
};
106+
107+
uint16_t AccountLoginManager::GetClusterRevision(chip::EndpointId endpoint)
108+
{
109+
if (endpoint >= MATTER_DM_CONTENT_LAUNCHER_CLUSTER_SERVER_ENDPOINT_COUNT)
110+
{
111+
return kClusterRevision;
112+
}
113+
114+
uint16_t clusterRevision = 0;
115+
bool success = (Attributes::ClusterRevision::Get(endpoint, &clusterRevision) == EMBER_ZCL_STATUS_SUCCESS);
116+
if (!success)
117+
{
118+
ChipLogError(Zcl, "AccountLoginManager::GetClusterRevision error reading cluster revision");
119+
}
120+
return clusterRevision;
121+
}

examples/tv-app/android/include/account-login/AccountLoginManager.h

+3
Original file line numberDiff line numberDiff line change
@@ -46,6 +46,7 @@ class AccountLoginManager : public AccountLoginDelegate
4646
const CharSpan & tempAccountIdentifierString) override;
4747
void GetSetupPin(char * setupPin, size_t setupPinSize, const CharSpan & tempAccountIdentifierString) override;
4848
void SetEndpointId(EndpointId epId) { mEndpointId = epId; };
49+
uint16_t GetClusterRevision(chip::EndpointId endpoint) override;
4950

5051
protected:
5152
static const size_t kSetupPinSize = 12;
@@ -54,4 +55,6 @@ class AccountLoginManager : public AccountLoginDelegate
5455
private:
5556
ContentAppCommandDelegate * mCommandDelegate;
5657
EndpointId mEndpointId;
58+
59+
static constexpr uint16_t kClusterRevision = 2;
5760
};

examples/tv-app/android/include/content-control/ContentController.cpp

+1-1
Original file line numberDiff line numberDiff line change
@@ -96,7 +96,7 @@ uint32_t ContentController::GetFeatureMap(chip::EndpointId endpoint)
9696
{
9797
if (endpoint >= MATTER_DM_CONTENT_CONTROL_CLUSTER_SERVER_ENDPOINT_COUNT)
9898
{
99-
return mDynamicEndpointFeatureMap;
99+
return kEndpointFeatureMap;
100100
}
101101

102102
uint32_t featureMap = 0;

examples/tv-app/android/include/content-control/ContentController.h

+1-1
Original file line numberDiff line numberDiff line change
@@ -58,6 +58,6 @@ class ContentController : public ContentControlDelegate
5858
protected:
5959
private:
6060
// TODO: set this based upon meta data from app
61-
uint32_t mDynamicEndpointFeatureMap = 3;
61+
static constexpr uint32_t kEndpointFeatureMap = 3;
6262
chip::EndpointId mEndpointId;
6363
};

examples/tv-app/android/include/content-launcher/AppContentLauncherManager.cpp

+17-1
Original file line numberDiff line numberDiff line change
@@ -158,10 +158,26 @@ uint32_t AppContentLauncherManager::GetFeatureMap(chip::EndpointId endpoint)
158158
{
159159
if (endpoint >= MATTER_DM_CONTENT_LAUNCHER_CLUSTER_SERVER_ENDPOINT_COUNT)
160160
{
161-
return mDynamicEndpointFeatureMap;
161+
return kEndpointFeatureMap;
162162
}
163163

164164
uint32_t featureMap = 0;
165165
Attributes::FeatureMap::Get(endpoint, &featureMap);
166166
return featureMap;
167167
}
168+
169+
uint16_t AppContentLauncherManager::GetClusterRevision(chip::EndpointId endpoint)
170+
{
171+
if (endpoint >= MATTER_DM_CONTENT_LAUNCHER_CLUSTER_SERVER_ENDPOINT_COUNT)
172+
{
173+
return kClusterRevision;
174+
}
175+
176+
uint16_t clusterRevision = 0;
177+
bool success = (Attributes::ClusterRevision::Get(endpoint, &clusterRevision) == EMBER_ZCL_STATUS_SUCCESS);
178+
if (!success)
179+
{
180+
ChipLogError(Zcl, "AppContentLauncherManager::GetClusterRevision error reading cluster revision");
181+
}
182+
return clusterRevision;
183+
}

examples/tv-app/android/include/content-launcher/AppContentLauncherManager.h

+3-2
Original file line numberDiff line numberDiff line change
@@ -52,6 +52,7 @@ class AppContentLauncherManager : public ContentLauncherDelegate
5252
void SetEndpointId(EndpointId epId) { mEndpointId = epId; };
5353

5454
uint32_t GetFeatureMap(chip::EndpointId endpoint) override;
55+
uint16_t GetClusterRevision(chip::EndpointId endpoint) override;
5556

5657
protected:
5758
std::list<std::string> mAcceptHeaderList;
@@ -61,7 +62,7 @@ class AppContentLauncherManager : public ContentLauncherDelegate
6162
EndpointId mEndpointId;
6263

6364
// TODO: set this based upon meta data from app
64-
uint32_t mDynamicEndpointFeatureMap = 3;
65-
65+
static constexpr uint32_t kEndpointFeatureMap = 3;
66+
static constexpr uint16_t kClusterRevision = 2;
6667
ContentAppAttributeDelegate * mAttributeDelegate;
6768
};

examples/tv-app/android/include/media-playback/AppMediaPlaybackManager.cpp

+17-1
Original file line numberDiff line numberDiff line change
@@ -276,10 +276,26 @@ uint32_t AppMediaPlaybackManager::GetFeatureMap(chip::EndpointId endpoint)
276276
{
277277
if (endpoint >= MATTER_DM_CONTENT_LAUNCHER_CLUSTER_SERVER_ENDPOINT_COUNT)
278278
{
279-
return mDynamicEndpointFeatureMap;
279+
return kEndpointFeatureMap;
280280
}
281281

282282
uint32_t featureMap = 0;
283283
Attributes::FeatureMap::Get(endpoint, &featureMap);
284284
return featureMap;
285285
}
286+
287+
uint16_t AppMediaPlaybackManager::GetClusterRevision(chip::EndpointId endpoint)
288+
{
289+
if (endpoint >= MATTER_DM_CONTENT_LAUNCHER_CLUSTER_SERVER_ENDPOINT_COUNT)
290+
{
291+
return kClusterRevision;
292+
}
293+
294+
uint16_t clusterRevision = 0;
295+
bool success = (Attributes::ClusterRevision::Get(endpoint, &clusterRevision) == EMBER_ZCL_STATUS_SUCCESS);
296+
if (!success)
297+
{
298+
ChipLogError(Zcl, "AppMediaPlaybackManager::GetClusterRevision error reading cluster revision");
299+
}
300+
return clusterRevision;
301+
}

examples/tv-app/android/include/media-playback/AppMediaPlaybackManager.h

+3-1
Original file line numberDiff line numberDiff line change
@@ -102,6 +102,7 @@ class AppMediaPlaybackManager : public MediaPlaybackDelegate
102102
bool HandleDeactivateTextTrack() override;
103103

104104
uint32_t GetFeatureMap(chip::EndpointId endpoint) override;
105+
uint16_t GetClusterRevision(chip::EndpointId endpoint) override;
105106

106107
void SetEndpointId(EndpointId epId) { mEndpointId = epId; };
107108

@@ -113,7 +114,8 @@ class AppMediaPlaybackManager : public MediaPlaybackDelegate
113114
EndpointId mEndpointId;
114115

115116
// TODO: set this based upon meta data from app
116-
uint32_t mDynamicEndpointFeatureMap = 3;
117+
static constexpr uint32_t kEndpointFeatureMap = 3;
118+
static constexpr uint16_t kClusterRevision = 2;
117119

118120
ContentAppAttributeDelegate * mAttributeDelegate;
119121
};

examples/tv-app/android/include/target-navigator/TargetNavigatorManager.cpp

+17
Original file line numberDiff line numberDiff line change
@@ -16,6 +16,7 @@
1616
*/
1717

1818
#include "TargetNavigatorManager.h"
19+
#include <app-common/zap-generated/attributes/Accessors.h>
1920
#include <json/json.h>
2021

2122
using namespace std;
@@ -144,3 +145,19 @@ void TargetNavigatorManager::HandleNavigateTarget(CommandResponseHelper<Navigate
144145
response.status = StatusEnum::kSuccess;
145146
helper.Success(response);
146147
}
148+
149+
uint16_t TargetNavigatorManager::GetClusterRevision(chip::EndpointId endpoint)
150+
{
151+
if (endpoint >= MATTER_DM_CONTENT_LAUNCHER_CLUSTER_SERVER_ENDPOINT_COUNT)
152+
{
153+
return kClusterRevision;
154+
}
155+
156+
uint16_t clusterRevision = 0;
157+
bool success = (Attributes::ClusterRevision::Get(endpoint, &clusterRevision) == EMBER_ZCL_STATUS_SUCCESS);
158+
if (!success)
159+
{
160+
ChipLogError(Zcl, "TargetNavigatorManager::GetClusterRevision error reading cluster revision");
161+
}
162+
return clusterRevision;
163+
}

examples/tv-app/android/include/target-navigator/TargetNavigatorManager.h

+5
Original file line numberDiff line numberDiff line change
@@ -39,6 +39,7 @@ class TargetNavigatorManager : public TargetNavigatorDelegate
3939
uint8_t HandleGetCurrentTarget() override;
4040
void HandleNavigateTarget(CommandResponseHelper<NavigateTargetResponseType> & responser, const uint64_t & target,
4141
const CharSpan & data) override;
42+
uint16_t GetClusterRevision(chip::EndpointId endpoint) override;
4243

4344
void SetEndpointId(EndpointId epId) { mEndpointId = epId; };
4445

@@ -51,4 +52,8 @@ class TargetNavigatorManager : public TargetNavigatorDelegate
5152
EndpointId mEndpointId;
5253

5354
ContentAppAttributeDelegate * mAttributeDelegate;
55+
56+
private:
57+
// TODO: set this based upon meta data from app
58+
static constexpr uint16_t kClusterRevision = 2;
5459
};

examples/tv-app/android/java/ChannelManager.cpp

+17-1
Original file line numberDiff line numberDiff line change
@@ -745,10 +745,26 @@ uint32_t ChannelManager::GetFeatureMap(chip::EndpointId endpoint)
745745
{
746746
if (endpoint >= MATTER_DM_CONTENT_LAUNCHER_CLUSTER_SERVER_ENDPOINT_COUNT)
747747
{
748-
return mDynamicEndpointFeatureMap;
748+
return kEndpointFeatureMap;
749749
}
750750

751751
uint32_t featureMap = 0;
752752
Attributes::FeatureMap::Get(endpoint, &featureMap);
753753
return featureMap;
754754
}
755+
756+
uint16_t ChannelManager::GetClusterRevision(chip::EndpointId endpoint)
757+
{
758+
if (endpoint >= MATTER_DM_CONTENT_LAUNCHER_CLUSTER_SERVER_ENDPOINT_COUNT)
759+
{
760+
return kClusterRevision;
761+
}
762+
763+
uint16_t clusterRevision = 0;
764+
bool success = (Attributes::ClusterRevision::Get(endpoint, &clusterRevision) == EMBER_ZCL_STATUS_SUCCESS);
765+
if (!success)
766+
{
767+
ChipLogError(Zcl, "ChannelManager::GetClusterRevision error reading cluster revision");
768+
}
769+
return clusterRevision;
770+
}

examples/tv-app/android/java/ChannelManager.h

+3-1
Original file line numberDiff line numberDiff line change
@@ -65,6 +65,7 @@ class ChannelManager : public ChannelDelegate
6565
const chip::ByteSpan & data) override;
6666

6767
uint32_t GetFeatureMap(chip::EndpointId endpoint) override;
68+
uint16_t GetClusterRevision(chip::EndpointId endpoint) override;
6869

6970
private:
7071
chip::JniGlobalReference mChannelManagerObject;
@@ -81,5 +82,6 @@ class ChannelManager : public ChannelDelegate
8182
jmethodID mCancelRecordProgramMethod = nullptr;
8283

8384
// TODO: set this based upon meta data from app
84-
uint32_t mDynamicEndpointFeatureMap = 3;
85+
static constexpr uint32_t kEndpointFeatureMap = 3;
86+
static constexpr uint16_t kClusterRevision = 2;
8587
};

examples/tv-app/android/java/ContentLauncherManager.cpp

+16
Original file line numberDiff line numberDiff line change
@@ -286,3 +286,19 @@ uint32_t ContentLauncherManager::GetFeatureMap(chip::EndpointId endpoint)
286286
Attributes::FeatureMap::Get(endpoint, &featureMap);
287287
return featureMap;
288288
}
289+
290+
uint16_t ContentLauncherManager::GetClusterRevision(chip::EndpointId endpoint)
291+
{
292+
if (endpoint >= MATTER_DM_CONTENT_LAUNCHER_CLUSTER_SERVER_ENDPOINT_COUNT)
293+
{
294+
return kClusterRevision;
295+
}
296+
297+
uint16_t clusterRevision = 0;
298+
bool success = (Attributes::ClusterRevision::Get(endpoint, &clusterRevision) == EMBER_ZCL_STATUS_SUCCESS);
299+
if (!success)
300+
{
301+
ChipLogError(Zcl, "ContentLauncherManager::GetClusterRevision error reading cluster revision");
302+
}
303+
return clusterRevision;
304+
}

examples/tv-app/android/java/ContentLauncherManager.h

+4
Original file line numberDiff line numberDiff line change
@@ -49,11 +49,15 @@ class ContentLauncherManager : public ContentLauncherDelegate
4949
uint32_t HandleGetSupportedStreamingProtocols() override;
5050

5151
uint32_t GetFeatureMap(chip::EndpointId endpoint) override;
52+
uint16_t GetClusterRevision(chip::EndpointId endpoint) override;
5253

5354
private:
5455
chip::JniGlobalReference mContentLauncherManagerObject;
5556
jmethodID mGetAcceptHeaderMethod = nullptr;
5657
jmethodID mGetSupportedStreamingProtocolsMethod = nullptr;
5758
jmethodID mLaunchContentMethod = nullptr;
5859
jmethodID mLaunchUrlMethod = nullptr;
60+
61+
// TODO: set this based upon meta data from app
62+
static constexpr uint16_t kClusterRevision = 2;
5963
};

examples/tv-app/android/java/KeypadInputManager.cpp

+1-1
Original file line numberDiff line numberDiff line change
@@ -96,7 +96,7 @@ uint32_t KeypadInputManager::GetFeatureMap(chip::EndpointId endpoint)
9696
{
9797
if (endpoint >= MATTER_DM_CONTENT_LAUNCHER_CLUSTER_SERVER_ENDPOINT_COUNT)
9898
{
99-
return mDynamicEndpointFeatureMap;
99+
return kEndpointFeatureMap;
100100
}
101101

102102
uint32_t featureMap = 0;

examples/tv-app/android/java/KeypadInputManager.h

+1-1
Original file line numberDiff line numberDiff line change
@@ -42,5 +42,5 @@ class KeypadInputManager : public KeypadInputDelegate
4242
jmethodID mSendKeyMethod = nullptr;
4343

4444
// TODO: set this based upon meta data from app
45-
uint32_t mDynamicEndpointFeatureMap = 7;
45+
static constexpr uint32_t kEndpointFeatureMap = 7;
4646
};

examples/tv-app/android/java/MediaPlaybackManager.cpp

+17-1
Original file line numberDiff line numberDiff line change
@@ -598,10 +598,26 @@ uint32_t MediaPlaybackManager::GetFeatureMap(chip::EndpointId endpoint)
598598
{
599599
if (endpoint >= MATTER_DM_CONTENT_LAUNCHER_CLUSTER_SERVER_ENDPOINT_COUNT)
600600
{
601-
return mDynamicEndpointFeatureMap;
601+
return kEndpointFeatureMap;
602602
}
603603

604604
uint32_t featureMap = 0;
605605
Attributes::FeatureMap::Get(endpoint, &featureMap);
606606
return featureMap;
607607
}
608+
609+
uint16_t MediaPlaybackManager::GetClusterRevision(chip::EndpointId endpoint)
610+
{
611+
if (endpoint >= MATTER_DM_CONTENT_LAUNCHER_CLUSTER_SERVER_ENDPOINT_COUNT)
612+
{
613+
return kClusterRevision;
614+
}
615+
616+
uint16_t clusterRevision = 0;
617+
bool success = (Attributes::ClusterRevision::Get(endpoint, &clusterRevision) == EMBER_ZCL_STATUS_SUCCESS);
618+
if (!success)
619+
{
620+
ChipLogError(Zcl, "MediaPlaybackManager::GetClusterRevision error reading cluster revision");
621+
}
622+
return clusterRevision;
623+
}

examples/tv-app/android/java/MediaPlaybackManager.h

+3-1
Original file line numberDiff line numberDiff line change
@@ -104,6 +104,7 @@ class MediaPlaybackManager : public MediaPlaybackDelegate
104104
bool HandleDeactivateTextTrack() override;
105105

106106
uint32_t GetFeatureMap(chip::EndpointId endpoint) override;
107+
uint16_t GetClusterRevision(chip::EndpointId endpoint) override;
107108

108109
private:
109110
chip::JniGlobalReference mMediaPlaybackManagerObject;
@@ -121,5 +122,6 @@ class MediaPlaybackManager : public MediaPlaybackDelegate
121122
HandleMediaRequest(MediaPlaybackRequest mediaPlaybackRequest, uint64_t deltaPositionMilliseconds);
122123

123124
// TODO: set this based upon meta data from app
124-
uint32_t mDynamicEndpointFeatureMap = 3;
125+
static constexpr uint32_t kEndpointFeatureMap = 3;
126+
static constexpr uint16_t kClusterRevision = 2;
125127
};

examples/tv-app/tv-common/clusters/account-login/AccountLoginManager.cpp

+17
Original file line numberDiff line numberDiff line change
@@ -17,6 +17,7 @@
1717
*/
1818

1919
#include "AccountLoginManager.h"
20+
#include <app-common/zap-generated/attributes/Accessors.h>
2021
#include <app/CommandHandler.h>
2122
#include <app/util/af.h>
2223

@@ -64,3 +65,19 @@ void AccountLoginManager::HandleGetSetupPin(CommandResponseHelper<GetSetupPINRes
6465
response.setupPIN = CharSpan::fromCharString(mSetupPin);
6566
helper.Success(response);
6667
}
68+
69+
uint16_t AccountLoginManager::GetClusterRevision(chip::EndpointId endpoint)
70+
{
71+
if (endpoint >= MATTER_DM_CONTENT_LAUNCHER_CLUSTER_SERVER_ENDPOINT_COUNT)
72+
{
73+
return kClusterRevision;
74+
}
75+
76+
uint16_t clusterRevision = 0;
77+
bool success = (Attributes::ClusterRevision::Get(endpoint, &clusterRevision) == EMBER_ZCL_STATUS_SUCCESS);
78+
if (!success)
79+
{
80+
ChipLogError(Zcl, "AccountLoginManager::GetClusterRevision error reading cluster revision");
81+
}
82+
return clusterRevision;
83+
}

examples/tv-app/tv-common/clusters/account-login/AccountLoginManager.h

+6
Original file line numberDiff line numberDiff line change
@@ -46,7 +46,13 @@ class AccountLoginManager : public AccountLoginDelegate
4646
CopyString(setupPin, setupPinSize, mSetupPin);
4747
};
4848

49+
uint16_t GetClusterRevision(chip::EndpointId endpoint) override;
50+
4951
protected:
5052
static const size_t kSetupPinSize = 12;
5153
char mSetupPin[kSetupPinSize];
54+
55+
private:
56+
// TODO: set this based upon meta data from app
57+
static constexpr uint16_t kClusterRevision = 2;
5258
};

0 commit comments

Comments
 (0)