From 6030c00649a52a65f6e25a56e2374b72a4dcaf72 Mon Sep 17 00:00:00 2001 From: Boris Zbarsky Date: Mon, 10 Feb 2025 17:09:57 -0500 Subject: [PATCH] Log attempts to commission a device in Matter.framework. Also logs the SSID when doing commmissioning onto a Wi-Fi network. --- .../Framework/CHIP/MTRCommissioningParameters.mm | 12 ++++++++++++ .../Framework/CHIP/MTRDeviceController_Concrete.mm | 2 ++ 2 files changed, 14 insertions(+) diff --git a/src/darwin/Framework/CHIP/MTRCommissioningParameters.mm b/src/darwin/Framework/CHIP/MTRCommissioningParameters.mm index 72308a910ad3c7..3a957af096fc07 100644 --- a/src/darwin/Framework/CHIP/MTRCommissioningParameters.mm +++ b/src/darwin/Framework/CHIP/MTRCommissioningParameters.mm @@ -45,6 +45,18 @@ - (void)setFailSafeExpiryTimeoutSecs:(NSNumber * _Nullable)failSafeExpiryTimeout self.failSafeTimeout = failSafeExpiryTimeoutSecs; } +- (NSString *)description +{ + // SSID is not required to be UTF-8, but almost always is. + NSString * ssidString; + if (self.wifiSSID) { + ssidString = [[NSString alloc] initWithData:self.wifiSSID encoding:NSUTF8StringEncoding]; + } else { + ssidString = nil; + } + return [NSString stringWithFormat:@"", self, ssidString]; +} + @end NS_ASSUME_NONNULL_END diff --git a/src/darwin/Framework/CHIP/MTRDeviceController_Concrete.mm b/src/darwin/Framework/CHIP/MTRDeviceController_Concrete.mm index 04b541fc7783a6..d9fd8a1a735a7f 100644 --- a/src/darwin/Framework/CHIP/MTRDeviceController_Concrete.mm +++ b/src/darwin/Framework/CHIP/MTRDeviceController_Concrete.mm @@ -950,6 +950,8 @@ - (BOOL)commissionNodeWithID:(NSNumber *)nodeID commissioningParams:(MTRCommissioningParameters *)commissioningParams error:(NSError * __autoreleasing *)error { + MTR_LOG("%@ trying to commission node with ID 0x%016llX parameters %@", self, nodeID.unsignedLongLongValue, commissioningParams); + if (self.suspended) { MTR_LOG_ERROR("%@ suspended: can't commission device ID 0x%016llX with parameters %@", self, nodeID.unsignedLongLongValue, commissioningParams); // TODO: Can we do a better error here?