# Copyright (c) 2021 Project CHIP Authors
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
# You may obtain a copy of the License at
#
# http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS,
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# See the License for the specific language governing permissions and
# limitations under the License.
# Auto-generated scripts for harness use only, please review before automation. The endpoints and cluster names are currently set to default

name:
    3.4.2. [TC-IDM-4.2] Subscription Response Messages from DUT Test Cases.
    [{DUT_Server}]

PICS:
    - MCORE.IDM.S

config:
    nodeId: 0x12344321
    cluster: "Basic"
    endpoint: 0

tests:
    - label:
          "TH sends a subscription message to the DUT with MaxIntervalCeiling
          set to a value greater than 60 mins. DUT sends a report data action to
          the TH. TH sends a success status response to the DUT. DUT sends a
          Subscribe Response Message to the TH to activate the subscription."
      verification: |
          The cluster used in the below command is an example, User can use any supported chip cluster.
           onoff subscribe on-off  100  3900(65 mins) 1 1
          On TH, verify that the report data message is received from DUT and check it contains all the data which mentioned in expected outcome
          m RetransTable on exchange 33626i
          [1657449840.232430][11635:11640] CHIP:DMG: ReportDataMessage =
          [1657449840.232485][11635:11640] CHIP:DMG: {
          [1657449840.232536][11635:11640] CHIP:DMG:      SubscriptionId = 0xaa467997,
          [1657449840.232588][11635:11640] CHIP:DMG:      AttributeReportIBs =
          [1657449840.232654][11635:11640] CHIP:DMG:      [
          [1657449840.232704][11635:11640] CHIP:DMG:              AttributeReportIB =
          [1657449840.232773][11635:11640] CHIP:DMG:              {
          [1657449840.232827][11635:11640] CHIP:DMG:                      AttributeDataIB =
          [1657449840.232858][11635:11640] CHIP:DMG:                      {
          [1657449840.232885][11635:11640] CHIP:DMG:                              DataVersion = 0x1979c37,
          [1657449840.232911][11635:11640] CHIP:DMG:                              AttributePathIB =
          [1657449840.232940][11635:11640] CHIP:DMG:                              {
          [1657449840.232969][11635:11640] CHIP:DMG:                                      Endpoint = 0x1,
          [1657449840.232998][11635:11640] CHIP:DMG:                                      Cluster = 0x6,
          [1657449840.233028][11635:11640] CHIP:DMG:                                      Attribute = 0x0000_0000,
          [1657449840.233055][11635:11640] CHIP:DMG:                              }
          [1657449840.233085][11635:11640] CHIP:DMG:
          [1657449840.233175][11635:11640] CHIP:DMG:                              Data = false,
          [1657449840.233204][11635:11640] CHIP:DMG:                      },
          [1657449840.233234][11635:11640] CHIP:DMG:
          [1657449840.233257][11635:11640] CHIP:DMG:              },
          [1657449840.233284][11635:11640] CHIP:DMG:
          [1657449840.233305][11635:11640] CHIP:DMG:      ],
          [1657449840.233334][11635:11640] CHIP:DMG:
          [1657449840.233355][11635:11640] CHIP:DMG:      InteractionModelRevision = 1
          [1657449840.233405][11635:11640] CHIP:DMG: }
          [1657449840.233501][11635:11640] CHIP:TOO: Endpoint: 1 Cluster: 0x0000_0006 Attribute 0x0000_0000 DataVersion: 26713143
          [1657449840.233534][11635:11640] CHIP:TOO:   OnOff: FALSE
          [1657449840.233567][11635:11640] CHIP:DMG: MoveToState ReadClient[0xffff94008e30]: Moving to [AwaitingSu]

          [1657449840.235116][11635:11640] CHIP:EM: Removed CHIP MessageCounter:190733039 from RetransTable on exchange 33626i
          [1657449840.235199][11635:11640] CHIP:DMG: SubscribeResponseMessage =
          [1657449840.235231][11635:11640] CHIP:DMG: {
          [1657449840.235259][11635:11640] CHIP:DMG:      SubscriptionId = 0xaa467997,
          [1657449840.235301][11635:11640] CHIP:DMG:      MaxInterval = 0xf3c,
          [1657449840.235331][11635:11640] CHIP:DMG:      InteractionModelRevision = 1
          [1657449840.235356][11635:11640] CHIP:DMG: }
          [1657449840.235485][11635:11640] CHIP:DMG: Subscription established with SubscriptionID = 0xaa467997 MinInterval = 100s MaxInterval = 3900s Peer = 01:0000000000000001
          [1657449840.235531][11635:11640] CHIP:DMG: MoveToState ReadClient[0xffff94008e30]: Moving to [Subscripti]
           MaxInterval and MaxIntervalCeiling are different parameters. One is sent from the TH the other from DUT, verify MaxInterval >=  MaxIntervalCeiling
      disabled: true

    - label:
          "TH sends a subscription message to the DUT with MaxIntervalCeiling
          set to a value less than 60 mins. DUT sends a report data action to
          the TH. TH sends a success status response to the DUT. DUT sends a
          Subscribe Response Message to the TH to activate the subscription."
      verification: |
          The cluster used in the below command is an example, User can use any supported chip cluster.
           basic subscribe location 10 2400 1 0
          On TH, verify that the report data message is received from DUT and check it contains all the data which mentioned in expected outcome
          m RetransTable on exchange 33628i
          [1657450022.756280][11635:11640] CHIP:DMG: ReportDataMessage =
          [1657450022.756349][11635:11640] CHIP:DMG: {
          [1657450022.756411][11635:11640] CHIP:DMG:      SubscriptionId = 0x28f88a5d,
          [1657450022.756475][11635:11640] CHIP:DMG:      AttributeReportIBs =
          [1657450022.756552][11635:11640] CHIP:DMG:      [
          [1657450022.756614][11635:11640] CHIP:DMG:              AttributeReportIB =
          [1657450022.756704][11635:11640] CHIP:DMG:              {
          [1657450022.756765][11635:11640] CHIP:DMG:                      AttributeDataIB =
          [1657450022.756841][11635:11640] CHIP:DMG:                      {
          [1657450022.756923][11635:11640] CHIP:DMG:                              DataVersion = 0x59b457fc,
          [1657450022.757002][11635:11640] CHIP:DMG:                              AttributePathIB =
          [1657450022.757083][11635:11640] CHIP:DMG:                              {
          [1657450022.757168][11635:11640] CHIP:DMG:                                      Endpoint = 0x0,
          [1657450022.757257][11635:11640] CHIP:DMG:                                      Cluster = 0x28,
          [1657450022.757337][11635:11640] CHIP:DMG:                                      Attribute = 0x0000_0006,
          [1657450022.757418][11635:11640] CHIP:DMG:                              }
          [1657450022.757497][11635:11640] CHIP:DMG:
          [1657450022.757584][11635:11640] CHIP:DMG:                              Data = "XX",
          [1657450022.757654][11635:11640] CHIP:DMG:                      },
          [1657450022.757737][11635:11640] CHIP:DMG:
          [1657450022.757800][11635:11640] CHIP:DMG:              },
          [1657450022.757837][11635:11640] CHIP:DMG:
          [1657450022.757867][11635:11640] CHIP:DMG:      ],
          [1657450022.757905][11635:11640] CHIP:DMG:
          [1657450022.757937][11635:11640] CHIP:DMG:      InteractionModelRevision = 1
          [1657450022.757967][11635:11640] CHIP:DMG: }
          [1657450022.758081][11635:11640] CHIP:TOO: Endpoint: 0 Cluster: 0x0000_0028 Attribute 0x0000_0006 DataVersion: 1504991228
          [1657450022.758127][11635:11640] CHIP:TOO:   Location: XX
          [1657450022.758172][11635:11640] CHIP:DMG: MoveToState ReadClient[0xffff94008c70]: Moving to [AwaitingSu]


          [1657450022.759670][11635:11640] CHIP:EM: Removed CHIP MessageCounter:190733045 from RetransTable on exchange 33628i
          [1657450022.759741][11635:11640] CHIP:DMG: SubscribeResponseMessage =
          [1657450022.759775][11635:11640] CHIP:DMG: {
          [1657450022.759805][11635:11640] CHIP:DMG:      SubscriptionId = 0x28f88a5d,
          [1657450022.759839][11635:11640] CHIP:DMG:      MaxInterval = 0x960,
          [1657450022.759871][11635:11640] CHIP:DMG:      InteractionModelRevision = 1
          [1657450022.759900][11635:11640] CHIP:DMG: }
          [1657450022.759933][11635:11640] CHIP:DMG: Subscription established with SubscriptionID = 0x28f88a5d MinInterval = 10s MaxInterval = 2400s Peer = 01:0000000000000001

           MaxInterval and MaxIntervalCeiling are different parameters. One is sent from the TH the other from DUT, verify MaxInterval >=  MaxIntervalCeiling
      disabled: true

    - label:
          "Setup TH2 such that it does not have access to an attribute on a
          specific cluster and endpoint. TH2 sends a subscription message to
          subscribe to an attribute for which it does not have access.
          AttributePath = [[Attribute = Attribute, Cluster = ClusterID, Endpoint
          = EndpointID ]]."
      verification: |
          https://github.com/CHIP-Specifications/chip-test-plans/issues/1700
      disabled: true

    - label:
          "Setup TH2 such that it does not have access to all attributes on a
          specific cluster and endpoint. TH2 sends a subscription request to
          subscribe to all attributes for which it does not have access.
          AttributePath = [[Cluster = ClusterID, Endpoint = EndpointID ]]."
      verification: |
          https://github.com/CHIP-Specifications/chip-test-plans/issues/1700
      disabled: true

    - label:
          "Setup TH2 such that it does not have access to an Endpoint. TH2 sends
          a subscription request to subscribe to all attributes on all clusters
          on a specific Endpoint for which it does not have access.
          AttributePath = [[ Endpoint = EndpointID ]]."
      verification: |
          The cluster used in the below command is an example, User can use any supported chip cluster.

          To Setup the TH2 such that it should not have the privilege for the cluster in the path. , 1st we need to send below mentioned ACL command
          Here by sending below mentioned ACL command giving only access for identify cluster(3), So except identify cluster command if try to send any other command will get status as unsupported access.

           accesscontrol write acl "[{"fabricIndex": 1, "privilege": 5, "authMode": 2, "subjects": [112233], "targets":[{ "cluster": 3, "endpoint": 1, "deviceType": null }]}]" 1 0

          thermostatuserinterfaceconfiguration subscribe temperature-display-mode 100 1000 1 1

          on TH verify DUT is responsds with UNSUPPORTED_ACCESS  for the data sent in the above command

          [1654862486.785468][32309:32314] CHIP:DMG: ReportDataMessage =
          [1654862486.785508][32309:32314] CHIP:DMG: {
          [1654862486.785544][32309:32314] CHIP:DMG:         SubscriptionId = 0x111a3e69,
          [1654862486.785581][32309:32314] CHIP:DMG:         AttributeReportIBs =
          [1654862486.785627][32309:32314] CHIP:DMG:         [
          [1654862486.785662][32309:32314] CHIP:DMG:                 AttributeReportIB =
          [1654862486.785713][32309:32314] CHIP:DMG:                 {
          [1654862486.785752][32309:32314] CHIP:DMG:                         AttributeStatusIB =
          [1654862486.785797][32309:32314] CHIP:DMG:                         {
          [1654862486.785842][32309:32314] CHIP:DMG:                                 AttributePathIB =
          [1654862486.785895][32309:32314] CHIP:DMG:                                 {
          [1654862486.785945][32309:32314] CHIP:DMG:                                         Endpoint = 0x1,
          [1654862486.785998][32309:32314] CHIP:DMG:                                         Cluster = 0x204,
          [1654862486.786050][32309:32314] CHIP:DMG:                                         Attribute = 0x0000_0000,
          [1654862486.786099][32309:32314] CHIP:DMG:                                 }
          [1654862486.786153][32309:32314] CHIP:DMG:
          [1654862486.786204][32309:32314] CHIP:DMG:                                 StatusIB =
          [1654862486.786253][32309:32314] CHIP:DMG:                                 {
          [1654862486.786302][32309:32314] CHIP:DMG:                                         status = 0x7e (UNSUPPORTED_ACCESS),
          [1654862486.786350][32309:32314] CHIP:DMG:                                 },
          [1654862486.786399][32309:32314] CHIP:DMG:
          [1654862486.786441][32309:32314] CHIP:DMG:                         },
          [1654862486.786489][32309:32314] CHIP:DMG:
          [1654862486.786528][32309:32314] CHIP:DMG:                 },
          [1654862486.786572][32309:32314] CHIP:DMG:
          [1654862486.786606][32309:32314] CHIP:DMG:         ],
          [1654862486.786650][32309:32314] CHIP:DMG:
          [1654862486.786685][32309:32314] CHIP:DMG:         InteractionModelRevision = 1
          [1654862486.786720][32309:32314] CHIP:DMG: }
          [1654862486.786862][32309:32314] CHIP:TOO: Response Failure: IM Error 0x0000057E: General error: 0x7e (UNSUPPORTED_ACCESS)
          [1654862486.786918][32309:32314] CHIP:DMG: MoveToState ReadClient[0xffff840040e0]: Moving to


          With the above command, we are overwriting the default privilege that chip-tool has as an admin. After this test step you need to factory reset the DUT and reprovision the DUT again, Otherwise the below steps can not be executed.
      disabled: true

    - label:
          "Setup TH2 such that it does not have access to the Node. TH2 sends a
          subscription request to subscribe to all attributes on all clusters on
          all endpoints on a Node for which it does not have access.
          AttributePath = [[ ]]."
      verification: |
          https://github.com/CHIP-Specifications/chip-test-plans/issues/1700
      disabled: true

    - label:
          "TH sends a subscription request action for an attribute with an empty
          DataVersionFilters field. DUT sends a report data action with the data
          of the attribute along with the data version. Tear down the
          subscription for that attribute. Start another subscription with the
          DataVersionFilter field set to the data version received above."
      verification: |
          The cluster used in the below command is an example, User can use any supported chip cluster.

          onoff  subscribe start-up-on-off  50 800 1 1

          On reference app verify that subscription is activated between TH and DUT

          [1657450742.453824][11635:11640] CHIP:EM: Removed CHIP MessageCounter:190733047 from RetransTable on exchange 33629i
          [1657450742.453885][11635:11640] CHIP:DMG: ReportDataMessage =
          [1657450742.453915][11635:11640] CHIP:DMG: {
          [1657450742.453940][11635:11640] CHIP:DMG:      SubscriptionId = 0x6e65b0f2,
          [1657450742.453966][11635:11640] CHIP:DMG:      AttributeReportIBs =
          [1657450742.453997][11635:11640] CHIP:DMG:      [
          [1657450742.454023][11635:11640] CHIP:DMG:              AttributeReportIB =
          [1657450742.454074][11635:11640] CHIP:DMG:              {
          [1657450742.454103][11635:11640] CHIP:DMG:                      AttributeDataIB =
          [1657450742.454135][11635:11640] CHIP:DMG:                      {
          [1657450742.454166][11635:11640] CHIP:DMG:                              DataVersion = 0x1979c37,
          [1657450742.454195][11635:11640] CHIP:DMG:                              AttributePathIB =
          [1657450742.454226][11635:11640] CHIP:DMG:                              {
          [1657450742.454258][11635:11640] CHIP:DMG:                                      Endpoint = 0x1,
          [1657450742.454292][11635:11640] CHIP:DMG:                                      Cluster = 0x6,
          [1657450742.454325][11635:11640] CHIP:DMG:                                      Attribute = 0x0000_4003,
          [1657450742.454356][11635:11640] CHIP:DMG:                              }
          [1657450742.454389][11635:11640] CHIP:DMG:
          [1657450742.454421][11635:11640] CHIP:DMG:                              Data = NULL[1657450742.454449][11635:11640] CHIP:DMG:                      },
          [1657450742.454480][11635:11640] CHIP:DMG:
          [1657450742.454506][11635:11640] CHIP:DMG:              },
          [1657450742.454536][11635:11640] CHIP:DMG:
          [1657450742.454561][11635:11640] CHIP:DMG:      ],
          [1657450742.454591][11635:11640] CHIP:DMG:
          [1657450742.454616][11635:11640] CHIP:DMG:      InteractionModelRevision = 1
          [1657450742.454639][11635:11640] CHIP:DMG: }
          [1657450742.454732][11635:11640] CHIP:TOO: Endpoint: 1 Cluster: 0x0000_0006 Attribute 0x0000_4003 DataVersion: 26713143
          [1657450742.454768][11635:11640] CHIP:TOO:   StartUpOnOff: null
          [1657450742.454805][11635:11640] CHIP:DMG: MoveToState ReadClient[0xffff940092b0]: Moving to [AwaitingSu]

           onoff  subscribe start-up-on-off  50 800 1 1 --data-version  0x1979c37
          [1657450845.854472][11635:11640] CHIP:EM: Removed CHIP MessageCounter:190733050 from RetransTable on exchange 33630i
          [1657450845.854526][11635:11640] CHIP:DMG: ReportDataMessage =
          [1657450845.854555][11635:11640] CHIP:DMG: {
          [1657450845.854581][11635:11640] CHIP:DMG:      SubscriptionId = 0x6139c55e,
          [1657450845.854607][11635:11640] CHIP:DMG:      InteractionModelRevision = 1
          [1657450845.854631][11635:11640] CHIP:DMG: }
          [1657450845.854675][11635:11640] CHIP:DMG: MoveToState ReadClient[0xffff94002cb0]: Moving to [AwaitingSu]
          [1657450845.854728][11635:11640] CHIP:EM: Piggybacking Ack for MessageCounter:11055899 on exchange: 33630i
          [1657450845.854786][11635:11640] CHIP:IN: Prepared secure message 0xffff94002458 to 0x0000000000000001 (1)  of type 0x1 and protocolId (0, 1) on exchange 33630i with MessageCounter:190733051.
          [1657450845.854822][11635:11640] CHIP:IN: Sending encrypted msg 0xffff94002458 with MessageCounter:190733051 to 0x0000000000000001 (1) at monotonic time: 0000000000B04EDB msec
          [1657450845.855783][11635:11640] CHIP:EM: Received message of type 0x4 with protocolId (0, 1) and MessageCounter:11055900 on exchange 33630i
          [1657450845.855818][11635:11640] CHIP:EM: Found matching exchange: 33630i, Delegate: 0xffff94002cb0
          [1657450845.855856][11635:11640] CHIP:EM: Rxd Ack; Removing MessageCounter:190733051 from Retrans Table on exchange 33630i
          [1657450845.855876][11635:11640] CHIP:EM: Removed CHIP MessageCounter:190733051 from RetransTable on exchange 33630i
          [1657450845.855921][11635:11640] CHIP:DMG: SubscribeResponseMessage =
          [1657450845.855943][11635:11640] CHIP:DMG: {
          [1657450845.855963][11635:11640] CHIP:DMG:      SubscriptionId = 0x6139c55e,
          [1657450845.855985][11635:11640] CHIP:DMG:      MaxInterval = 0x320,
          [1657450845.856006][11635:11640] CHIP:DMG:      InteractionModelRevision = 1
          [1657450845.856026][11635:11640] CHIP:DMG: }
          [1657450845.856050][11635:11640] CHIP:DMG: Subscription established with SubscriptionID = 0x6139c55e MinInterval = 50s MaxInterval = 800s Peer = 01:0000000000000001
      disabled: true

    - label:
          "TH sends a subscription request action for an attribute and sets the
          MinIntervalFloor value to be same as MaxIntervalCeiling. Activate the
          Subscription between TH and DUT. Modify the attribute which has been
          subscribed to on the DUT."
      verification: |
          The cluster used in the below command is an example, User can use any supported chip cluster.


          onoff subscribe on-time 100 100 1 1

          On TH verify that the DUT sends a report data with the value of the attribute after the MinIntervalFloor time.

          [1657450934.856825][11635:11640] CHIP:EM: Removed CHIP MessageCounter:190733053 from RetransTable on exchange 33631i
          [1657450934.856955][11635:11640] CHIP:DMG: ReportDataMessage =
          [1657450934.857025][11635:11640] CHIP:DMG: {
          [1657450934.857088][11635:11640] CHIP:DMG:      SubscriptionId = 0x4b34909f,
          [1657450934.857152][11635:11640] CHIP:DMG:      AttributeReportIBs =
          [1657450934.857262][11635:11640] CHIP:DMG:      [
          [1657450934.857326][11635:11640] CHIP:DMG:              AttributeReportIB =
          [1657450934.857409][11635:11640] CHIP:DMG:              {
          [1657450934.857475][11635:11640] CHIP:DMG:                      AttributeDataIB =
          [1657450934.857553][11635:11640] CHIP:DMG:                      {
          [1657450934.857633][11635:11640] CHIP:DMG:                              DataVersion = 0x1979c37,
          [1657450934.857719][11635:11640] CHIP:DMG:                              AttributePathIB =
          [1657450934.857801][11635:11640] CHIP:DMG:                              {
          [1657450934.857885][11635:11640] CHIP:DMG:                                      Endpoint = 0x1,
          [1657450934.857974][11635:11640] CHIP:DMG:                                      Cluster = 0x6,
          [1657450934.858061][11635:11640] CHIP:DMG:                                      Attribute = 0x0000_4001,
          [1657450934.858142][11635:11640] CHIP:DMG:                              }
          [1657450934.858228][11635:11640] CHIP:DMG:
          [1657450934.858314][11635:11640] CHIP:DMG:                              Data = 0,
          [1657450934.858391][11635:11640] CHIP:DMG:                      },
          [1657450934.858471][11635:11640] CHIP:DMG:
          [1657450934.858539][11635:11640] CHIP:DMG:              },
          [1657450934.858612][11635:11640] CHIP:DMG:
          [1657450934.858672][11635:11640] CHIP:DMG:      ],
          [1657450934.858747][11635:11640] CHIP:DMG:
          [1657450934.858808][11635:11640] CHIP:DMG:      InteractionModelRevision = 1
          [1657450934.858866][11635:11640] CHIP:DMG: }
          [1657450934.859074][11635:11640] CHIP:TOO: Endpoint: 1 Cluster: 0x0000_0006 Attribute 0x0000_4001 DataVersion: 26713143
          [1657450934.859155][11635:11640] CHIP:TOO:   OnTime: 0
          [1657450934.859242][11635:11640] CHIP:DMG: MoveToState ReadClient[0xffff940027a0]: Moving to [AwaitingSu]
      disabled: true

    - label:
          "TH sends a subscription request action for an attribute and set the
          MinIntervalFloor value to be greater than MaxIntervalCeiling. +"
      verification: |
          The cluster used in the below command is an example, User can use any supported chip cluster.

           onoff subscribe on-time 500 100 1 1

          On TH Verify that the DUT sends an error message
          [1657451028.957761][11635:11640] CHIP:EM: Removed CHIP MessageCounter:190733056 from RetransTable on exchange 33632i
          [1657451028.957867][11635:11640] CHIP:DMG: StatusResponseMessage =
          [1657451028.957963][11635:11640] CHIP:DMG: {
          [1657451028.958028][11635:11640] CHIP:DMG:      Status = 0x01 (FAILURE),
          [1657451028.958094][11635:11640] CHIP:DMG:      InteractionModelRevision = 1
          [1657451028.958175][11635:11640] CHIP:DMG: }
          [1657451028.958236][11635:11640] CHIP:IM: Received status response, status is 0x01 (FAILURE)
          [1657451028.958324][11635:11640] CHIP:DMG: mResubscribePolicy is null
      disabled: true

    - label:
          "TH sends a subscription request to subscribe to a specific global
          attribute from all clusters on all endpoints. AttributePath =
          [[Attribute = Global Attribute]]. +"
      verification: |
          The cluster used in the below command is an example, User can use any supported chip cluster.

           any subscribe-by-id 0xFFFFFFFF 0xFFFD  10 300 1 0xFFFF

          On TH Verify that the Subscription succeeds and the DUT sends back the attribute values for the global attribute
      disabled: true

    - label:
          "TH sends a subscription request to subscribe to a global attribute on
          an endpoint on all clusters. AttributePath = [[Attribute = Global
          Attribute, Endpoint = EndpointID ]]. +"
      verification: |
          The cluster used in the below command is an example, User can use any supported chip cluster.

          any subscribe-by-id 0xFFFFFFFF 0xFFFD  10 300 1 0

          On TH Verify that the Subscription succeeds and the DUT sends back the attribute values for the global attribute

          [1657451191.595630][11635:11640] CHIP:DMG:      InteractionModelRevision = 1
          [1657451191.595654][11635:11640] CHIP:DMG: }
          [1657451191.596003][11635:11640] CHIP:TOO: Endpoint: 0 Cluster: 0x0000_0003 Attribute 0x0000_FFFD DataVersion: 1247215770
          [1657451191.596042][11635:11640] CHIP:TOO:   ClusterRevision: 4
          [1657451191.596102][11635:11640] CHIP:TOO: Endpoint: 0 Cluster: 0x0000_0004 Attribute 0x0000_FFFD DataVersion: 3391062846
          [1657451191.596129][11635:11640] CHIP:TOO:   ClusterRevision: 4
          [1657451191.596187][11635:11640] CHIP:TOO: Endpoint: 0 Cluster: 0x0000_001D Attribute 0x0000_FFFD DataVersion: 4071202320
          [1657451191.596214][11635:11640] CHIP:TOO:   ClusterRevision: 1
          [1657451191.596271][11635:11640] CHIP:TOO: Endpoint: 0 Cluster: 0x0000_001E Attribute 0x0000_FFFD DataVersion: 2618211726
          [1657451191.596299][11635:11640] CHIP:TOO:   ClusterRevision: 1
          [1657451191.596356][11635:11640] CHIP:TOO: Endpoint: 0 Cluster: 0x0000_001F Attribute 0x0000_FFFD DataVersion: 2563208108
          [1657451191.596382][11635:11640] CHIP:TOO:   ClusterRevision: 1
          [1657451191.596439][11635:11640] CHIP:TOO: Endpoint: 0 Cluster: 0x0000_0028 Attribute 0x0000_FFFD DataVersion: 1504991228
          [1657451191.596466][11635:11640] CHIP:TOO:   ClusterRevision: 1
          [1657451191.596523][11635:11640] CHIP:TOO: Endpoint: 0 Cluster: 0x0000_002A Attribute 0x0000_FFFD DataVersion: 3503114671
          [1657451191.596550][11635:11640] CHIP:TOO:   ClusterRevision: 1
          [1657451191.596607][11635:11640] CHIP:TOO: Endpoint: 0 Cluster: 0x0000_002B Attribute 0x0000_FFFD DataVersion: 655424947
          [1657451191.596634][11635:11640] CHIP:TOO:   ClusterRevision: 1
          [1657451191.596691][11635:11640] CHIP:TOO: Endpoint: 0 Cluster: 0x0000_002C Attribute 0x0000_FFFD DataVersion: 2421456926
          [1657451191.596717][11635:11640] CHIP:TOO:   ClusterRevision: 1
          [1657451191.596774][11635:11640] CHIP:TOO: Endpoint: 0 Cluster: 0x0000_002D Attribute 0x0000_FFFD DataVersion: 3528791487
          [1657451191.596800][11635:11640] CHIP:TOO:   ClusterRevision: 1
          [1657451191.596857][11635:11640] CHIP:TOO: Endpoint: 0 Cluster: 0x0000_002E Attribute 0x0000_FFFD DataVersion: 968449410
          [1657451191.596883][11635:11640] CHIP:TOO:   ClusterRevision: 1
          [1657451191.596940][11635:11640] CHIP:TOO: Endpoint: 0 Cluster: 0x0000_002F Attribute 0x0000_FFFD DataVersion: 2811758882
          [1657451191.596967][11635:11640] CHIP:TOO:   ClusterRevision: 1
          [1657451191.597023][11635:11640] CHIP:TOO: Endpoint: 0 Cluster: 0x0000_0030 Attribute 0x0000_FFFD DataVersion: 1035240738
          [1657451191.597050][11635:11640] CHIP:TOO:   ClusterRevision: 1
          [1657451191.597107][11635:11640] CHIP:TOO: Endpoint: 0 Cluster: 0x0000_0031 Attribute 0x0000_FFFD DataVersion: 1760092942
          [1657451191.597133][11635:11640] CHIP:TOO:   ClusterRevision: 1
          [1657451191.597191][11635:11640] CHIP:TOO: Endpoint: 0 Cluster: 0x0000_0032 Attribute 0x0000_FFFD DataVersion: 2220680799
          [1657451191.597217][11635:11640] CHIP:TOO:   ClusterRevision: 1
          [1657451191.597275][11635:11640] CHIP:TOO: Endpoint: 0 Cluster: 0x0000_0033 Attribute 0x0000_FFFD DataVersion: 3326056069
          [1657451191.597301][11635:11640] CHIP:TOO:   ClusterRevision: 1
          [1657451191.597360][11635:11640] CHIP:TOO: Endpoint: 0 Cluster: 0x0000_0034 Attribute 0x0000_FFFD DataVersion: 3433535141
          [1657451191.597386][11635:11640] CHIP:TOO:   ClusterRevision: 1
          [1657451191.597443][11635:11640] CHIP:TOO: Endpoint: 0 Cluster: 0x0000_0035 Attribute 0x0000_FFFD DataVersion: 3003261549
          [1657451191.597470][11635:11640] CHIP:TOO:   ClusterRevision: 1
          [1657451191.597526][11635:11640] CHIP:TOO: Endpoint: 0 Cluster: 0x0000_0036 Attribute 0x0000_FFFD DataVersion: 3106710214
          [1657451191.597553][11635:11640] CHIP:TOO:   ClusterRevision: 1
          [1657451191.597610][11635:11640] CHIP:TOO: Endpoint: 0 Cluster: 0x0000_0037 Attribute 0x0000_FFFD DataVersion: 3053018824
          [1657451191.597637][11635:11640] CHIP:TOO:   ClusterRevision: 1
          [1657451191.597694][11635:11640] CHIP:TOO: Endpoint: 0 Cluster: 0x0000_003C Attribute 0x0000_FFFD DataVersion: 1257168122
          [1657451191.597721][11635:11640] CHIP:TOO:   ClusterRevision: 1
          [1657451191.597777][11635:11640] CHIP:TOO: Endpoint: 0 Cluster: 0x0000_003E Attribute 0x0000_FFFD DataVersion: 2262465581
          [1657451191.597804][11635:11640] CHIP:TOO:   ClusterRevision: 1
          [1657451191.597861][11635:11640] CHIP:TOO: Endpoint: 0 Cluster: 0x0000_003F Attribute 0x0000_FFFD DataVersion: 901334231
          [1657451191.597888][11635:11640] CHIP:TOO:   ClusterRevision: 1
          [1657451191.597945][11635:11640] CHIP:TOO: Endpoint: 0 Cluster: 0x0000_0040 Attribute 0x0000_FFFD DataVersion: 4191161303
          [1657451191.597972][11635:11640] CHIP:TOO:   ClusterRevision: 1
          [1657451191.598030][11635:11640] CHIP:TOO: Endpoint: 0 Cluster: 0x0000_0041 Attribute 0x0000_FFFD DataVersion: 2358987419
          [1657451191.598057][11635:11640] CHIP:TOO:   ClusterRevision: 1
          [1657451191.598114][11635:11640] CHIP:TOO: Endpoint: 0 Cluster: 0x0000_0405 Attribute 0x0000_FFFD DataVersion: 2403664035
          [1657451191.598141][11635:11640] CHIP:TOO:   ClusterRevision: 3
          [1657451191.598261][11635:11640] CHIP:DMG: MoveToState ReadClient[0xffff94006d20]: Moving to [AwaitingSu]
          [1657451191.598325][11635:11640] CHIP:EM: Piggybacking Ack for MessageCounter:11055908 on exchange: 33634i
          [1657451191.598398][11635:11640] CHIP:IN: Prepared secure message 0xffff940026a8 to 0x0000000000000001 (1)  of type 0x1 and protocolId (0, 1) on exchange 33634i with MessageCounter:190733064.
          [1657451191.598437][11635:11640] CHIP:IN: Sending encrypted msg 0xffff940026a8 with MessageCounter:190733064 to 0x0000000000000001 (1) at monotonic time: 0000000000B5956B msec
          [1657451191.599445][11635:11640] CHIP:EM: Received message of type 0x4 with protocolId (0, 1) and MessageCounter:11055909 on exchange 33634i
          [1657451191.599480][11635:11640] CHIP:EM: Found matching exchange: 33634i, Delegate: 0xffff94006d20
          [1657451191.599517][11635:11640] CHIP:EM: Rxd Ack; Removing MessageCounter:190733064 from Retrans Table on exchange 33634i
          [1657451191.599544][11635:11640] CHIP:EM: Removed CHIP MessageCounter:190733064 from RetransTable on exchange 33634i
          [1657451191.599595][11635:11640] CHIP:DMG: SubscribeResponseMessage =
          [1657451191.599623][11635:11640] CHIP:DMG: {
          [1657451191.599647][11635:11640] CHIP:DMG:      SubscriptionId = 0x22d38d78,
          [1657451191.599674][11635:11640] CHIP:DMG:      MaxInterval = 0x12c,
          [1657451191.599700][11635:11640] CHIP:DMG:      InteractionModelRevision = 1
          [1657451191.599723][11635:11640] CHIP:DMG: }
          [1657451191.599751][11635:11640] CHIP:DMG: Subscription established with SubscriptionID = 0x22d38d78 MinInterval = 10s MaxInterval = 300s Peer = 01:0000000000000001
      disabled: true
