Phase 7 — Post-commissioning and cloud confirm
Layer: Native MTR → RN/SDK → native
After NOC install, MTR finishes Matter commissioning on-device. Native reads device metadata and triggers cloud confirm.
Inside ESPMatterModule (post-commission)
- Descriptor scan — reads server clusters from all endpoints (
detectDeviceTypeImmediate). - RainMaker cluster check — cluster ID
0x131bfc00. - Branch:
- RainMaker hybrid device: read RainMaker node ID → send Matter node ID to device → read challenge → emit
COMMISSIONING_CONFIRMATION_REQUEST. - Pure Matter device: build cloud metadata (
buildCloudMatterMetadata) → emitCOMMISSIONING_CONFIRMATION_REQUEST(no challenge).
- RainMaker hybrid device: read RainMaker node ID → send Matter node ID to device → read challenge → emit
Cloud confirm loop (main RN runtime)
Device name: Pulled from App Group (ESPMatterEcosystemInfo.getDeviceName()) set by the extension’s configureDevice(named:); cleaned up after use.
What could go wrong
RainMaker cluster read fails → falls back to pure Matter confirm path. Challenge mismatch → SDK confirm fails → COMMISSIONING_CONFIRMATION_RESPONSE with non-success status → UI error via handleConfirmResponse. Device on fabric locally but cloud confirm rejected.