Skip to main content

Module client

Module client 

Source
Expand description

Interaction Model Client implementation.

This module provides client-side functionality for sending IM requests (Read, Write, Invoke, Subscribe) to Matter devices and processing their responses.

Subscribe support covers the establishment phase only — the SubscribeRequest, the priming ReportData chunks and the terminal SubscribeResponse. Server-initiated post-establishment reports arrive on new exchanges over the same session and require a separate listening abstraction layered on top of the transport.

Structs§

InvokeRespChunk
First (possibly only) response chunk of an invoke transaction. Returned by InvokeSender::tx once the peer has ACK-ed the request.
InvokeSender
Cornerstone invoke transaction. See module docs for the pattern. Returned by ImClient::invoke_sender.
InvokeSenderSlot
Internal serialization handle for the in-flight build of an InvokeSender.
ReadRespChunk
First (possibly only) response chunk of a read transaction. Returned by ReadSender::tx once the peer has ACK-ed the request and the first ReportData chunk is parsed.
ReadSender
Cornerstone read transaction. See module docs for the pattern. Returned by ImClient::read_sender.
ReadSenderSlot
Internal serialization handle for the in-flight build of a ReadSender. See InvokeSenderSlot for the design rationale — this type exists only because TLVBuilderParent requires the Write associated type to be a named type.
SubscribeEstablished
Result of a successful subscribe-establishment: the subscription-identifier issued by the peer plus the maximum reporting interval (seconds) the peer committed to.
SubscribePrimingChunk
First (possibly only) priming ReportData chunk of a subscribe transaction. Returned by SubscribeSender::tx once the peer has ACK-ed the SubscribeRequest and the first ReportData is parsed. Same response() shape as ReadRespChunk.
SubscribeSender
Cornerstone subscribe transaction. See module docs for the pattern. Returned by ImClient::subscribe_sender.
SubscribeSenderSlot
Internal serialization handle for the in-flight build of a SubscribeSender. Same role as InvokeSenderSlot — see its docs for why this type exists.
WriteRespHandle
Handle to the (single, non-chunked) response of a write transaction. Returned by WriteSender::tx once the peer has ACK-ed the request and the response is parsed.
WriteSender
Cornerstone write transaction. See module docs for the pattern. Returned by ImClient::write_sender.
WriteSenderSlot
Internal serialization handle for the in-flight build of a WriteSender. See InvokeSenderSlot for the design rationale.

Enums§

SubscribeOutcome
What SubscribePrimingChunk::complete returns: either the next priming chunk in the sequence, or the terminal SubscribeEstablished carrying the negotiated subscription identity.
TxOutcome
Outcome of calling .tx() on a transaction sender (*Sender).

Traits§

ImClient
IM Client trait — extension over an Exchange that adds the Matter Interaction Model client operations.

Type Aliases§

AttrId
ClusterId
EndptId