Preparing search index...
The search index is not available
matter.js-monorepo
matter.js-monorepo
@project-chip/matter.js
interaction
InteractionServer
Class InteractionServer
Translates interactions from the Matter protocol to matter.js APIs.
Implements
ProtocolHandler
InteractionRecipient
Index
Constructors
constructor
Accessors
is
Closing
max
Paths
Per
Invoke
Methods
close
get
Id
handle
Invoke
Request
handle
Read
Request
handle
Subscribe
Request
handle
Timed
Request
handle
Write
Request
invoke
Command
on
New
Exchange
read
Attribute
read
Event
write
Attribute
Constructors
constructor
new
Interaction
Server
(
context
)
:
InteractionServer
Parameters
context
:
InteractionContext
Returns
InteractionServer
Accessors
Protected
is
Closing
get
isClosing
(
)
:
boolean
Returns
boolean
max
Paths
Per
Invoke
get
maxPathsPerInvoke
(
)
:
number
Returns
number
Methods
close
close
(
)
:
Promise
<
void
>
Returns
Promise
<
void
>
get
Id
get
Id
(
)
:
number
Returns
number
handle
Invoke
Request
handle
Invoke
Request
(
exchange
,
__namedParameters
,
messenger
,
message
)
:
Promise
<
void
>
Parameters
exchange
:
MessageExchange
__namedParameters
:
TypeFromFields
<
{
interactionModelRevision
:
FieldType
<
number
>
;
invokeRequests
:
FieldType
<
TypeFromFields
<
{
commandFields
:
OptionalFieldType
<
TlvStream
>
;
commandPath
:
FieldType
<
TypeFromFields
<
{
clusterId
:
FieldType
<
ClusterId
>
;
commandId
:
FieldType
<
CommandId
>
;
endpointId
:
OptionalFieldType
<
EndpointNumber
>
;
}
>
>
;
commandRef
:
OptionalFieldType
<
number
>
;
}
>
[]
>
;
suppressResponse
:
FieldType
<
boolean
>
;
timedRequest
:
FieldType
<
boolean
>
;
}
>
messenger
:
InteractionServerMessenger
message
:
Message
Returns
Promise
<
void
>
handle
Read
Request
handle
Read
Request
(
exchange
,
__namedParameters
,
message
)
:
Promise
<
DataReportPayload
>
Parameters
exchange
:
MessageExchange
__namedParameters
:
TypeFromFields
<
{
attributeRequests
:
OptionalFieldType
<
TypeFromFields
<
{
attributeId
:
OptionalFieldType
<
AttributeId
>
;
clusterId
:
OptionalFieldType
<
ClusterId
>
;
enableTagCompression
:
OptionalFieldType
<
boolean
>
;
endpointId
:
OptionalFieldType
<
EndpointNumber
>
;
listIndex
:
OptionalFieldType
<
null
|
number
>
;
nodeId
:
OptionalFieldType
<
NodeId
>
;
wildcardPathFlags
:
OptionalFieldType
<
TypeFromPartialBitSchema
<
{
reserved1
:
BitFlag
;
skipAttributeList
:
BitFlag
;
skipChangesOmittedAttributes
:
BitFlag
;
skipCommandLists
:
BitFlag
;
skipCustomElements
:
BitFlag
;
skipDiagnosticsClusters
:
BitFlag
;
skipFixedAttributes
:
BitFlag
;
skipGlobalAttributes
:
BitFlag
;
skipRootNode
:
BitFlag
;
}
>
>
;
}
>
[]
>
;
dataVersionFilters
:
OptionalFieldType
<
TypeFromFields
<
{
dataVersion
:
FieldType
<
number
>
;
path
:
FieldType
<
TypeFromFields
<
{
clusterId
:
FieldType
<
ClusterId
>
;
endpointId
:
FieldType
<
EndpointNumber
>
;
nodeId
:
OptionalFieldType
<
NodeId
>
;
}
>
>
;
}
>
[]
>
;
eventFilters
:
OptionalFieldType
<
TypeFromFields
<
{
eventMin
:
FieldType
<
number
|
bigint
>
;
nodeId
:
OptionalFieldType
<
NodeId
>
;
}
>
[]
>
;
eventRequests
:
OptionalFieldType
<
TypeFromFields
<
{
clusterId
:
OptionalFieldType
<
ClusterId
>
;
endpointId
:
OptionalFieldType
<
EndpointNumber
>
;
eventId
:
OptionalFieldType
<
EventId
>
;
isUrgent
:
OptionalFieldType
<
boolean
>
;
nodeId
:
OptionalFieldType
<
NodeId
>
;
}
>
[]
>
;
interactionModelRevision
:
FieldType
<
number
>
;
isFabricFiltered
:
FieldType
<
boolean
>
;
}
>
message
:
Message
Returns
Promise
<
DataReportPayload
>
handle
Subscribe
Request
handle
Subscribe
Request
(
exchange
,
__namedParameters
,
messenger
,
message
)
:
Promise
<
void
>
Parameters
exchange
:
MessageExchange
__namedParameters
:
TypeFromFields
<
{
attributeRequests
:
OptionalFieldType
<
TypeFromFields
<
{
attributeId
:
OptionalFieldType
<
AttributeId
>
;
clusterId
:
OptionalFieldType
<
ClusterId
>
;
enableTagCompression
:
OptionalFieldType
<
boolean
>
;
endpointId
:
OptionalFieldType
<
EndpointNumber
>
;
listIndex
:
OptionalFieldType
<
null
|
number
>
;
nodeId
:
OptionalFieldType
<
NodeId
>
;
wildcardPathFlags
:
OptionalFieldType
<
TypeFromPartialBitSchema
<
{
reserved1
:
BitFlag
;
skipAttributeList
:
BitFlag
;
skipChangesOmittedAttributes
:
BitFlag
;
skipCommandLists
:
BitFlag
;
skipCustomElements
:
BitFlag
;
skipDiagnosticsClusters
:
BitFlag
;
skipFixedAttributes
:
BitFlag
;
skipGlobalAttributes
:
BitFlag
;
skipRootNode
:
BitFlag
;
}
>
>
;
}
>
[]
>
;
dataVersionFilters
:
OptionalFieldType
<
TypeFromFields
<
{
dataVersion
:
FieldType
<
number
>
;
path
:
FieldType
<
TypeFromFields
<
{
clusterId
:
FieldType
<
ClusterId
>
;
endpointId
:
FieldType
<
EndpointNumber
>
;
nodeId
:
OptionalFieldType
<
NodeId
>
;
}
>
>
;
}
>
[]
>
;
eventFilters
:
OptionalFieldType
<
TypeFromFields
<
{
eventMin
:
FieldType
<
number
|
bigint
>
;
nodeId
:
OptionalFieldType
<
NodeId
>
;
}
>
[]
>
;
eventRequests
:
OptionalFieldType
<
TypeFromFields
<
{
clusterId
:
OptionalFieldType
<
ClusterId
>
;
endpointId
:
OptionalFieldType
<
EndpointNumber
>
;
eventId
:
OptionalFieldType
<
EventId
>
;
isUrgent
:
OptionalFieldType
<
boolean
>
;
nodeId
:
OptionalFieldType
<
NodeId
>
;
}
>
[]
>
;
interactionModelRevision
:
FieldType
<
number
>
;
isFabricFiltered
:
FieldType
<
boolean
>
;
keepSubscriptions
:
FieldType
<
boolean
>
;
maxIntervalCeilingSeconds
:
FieldType
<
number
>
;
minIntervalFloorSeconds
:
FieldType
<
number
>
;
}
>
messenger
:
InteractionServerMessenger
message
:
Message
Returns
Promise
<
void
>
handle
Timed
Request
handle
Timed
Request
(
exchange
,
__namedParameters
)
:
void
Parameters
exchange
:
MessageExchange
__namedParameters
:
TypeFromFields
<
{
interactionModelRevision
:
FieldType
<
number
>
;
timeout
:
FieldType
<
number
>
;
}
>
Returns
void
handle
Write
Request
handle
Write
Request
(
exchange
,
__namedParameters
,
message
)
:
Promise
<
TypeFromFields
<
{
interactionModelRevision
:
FieldType
<
number
>
;
writeResponses
:
FieldType
<
TypeFromFields
<
{
path
:
FieldType
<
TypeFromFields
<
{
attributeId
:
OptionalFieldType
<
(
...
)
>
;
clusterId
:
OptionalFieldType
<
(
...
)
>
;
enableTagCompression
:
OptionalFieldType
<
(
...
)
>
;
endpointId
:
OptionalFieldType
<
(
...
)
>
;
listIndex
:
OptionalFieldType
<
(
...
)
>
;
nodeId
:
OptionalFieldType
<
(
...
)
>
;
wildcardPathFlags
:
OptionalFieldType
<
(
...
)
>
;
}
>
>
;
status
:
FieldType
<
TypeFromFields
<
{
clusterStatus
:
OptionalFieldType
<
(
...
)
>
;
status
:
OptionalFieldType
<
(
...
)
>
;
}
>
>
;
}
>
[]
>
;
}
>
>
Parameters
exchange
:
MessageExchange
__namedParameters
:
TypeFromFields
<
{
interactionModelRevision
:
FieldType
<
number
>
;
moreChunkedMessages
:
OptionalFieldType
<
boolean
>
;
suppressResponse
:
OptionalFieldType
<
boolean
>
;
timedRequest
:
FieldType
<
boolean
>
;
writeRequests
:
FieldType
<
TypeFromFields
<
{
data
:
FieldType
<
TlvStream
>
;
dataVersion
:
OptionalFieldType
<
number
>
;
path
:
FieldType
<
TypeFromFields
<
{
attributeId
:
OptionalFieldType
<
AttributeId
>
;
clusterId
:
OptionalFieldType
<
ClusterId
>
;
enableTagCompression
:
OptionalFieldType
<
boolean
>
;
endpointId
:
OptionalFieldType
<
EndpointNumber
>
;
listIndex
:
OptionalFieldType
<
(
...
)
|
(
...
)
>
;
nodeId
:
OptionalFieldType
<
NodeId
>
;
wildcardPathFlags
:
OptionalFieldType
<
TypeFromPartialBitSchema
<
(
...
)
>
>
;
}
>
>
;
}
>
[]
>
;
}
>
message
:
Message
Returns
Promise
<
TypeFromFields
<
{
interactionModelRevision
:
FieldType
<
number
>
;
writeResponses
:
FieldType
<
TypeFromFields
<
{
path
:
FieldType
<
TypeFromFields
<
{
attributeId
:
OptionalFieldType
<
(
...
)
>
;
clusterId
:
OptionalFieldType
<
(
...
)
>
;
enableTagCompression
:
OptionalFieldType
<
(
...
)
>
;
endpointId
:
OptionalFieldType
<
(
...
)
>
;
listIndex
:
OptionalFieldType
<
(
...
)
>
;
nodeId
:
OptionalFieldType
<
(
...
)
>
;
wildcardPathFlags
:
OptionalFieldType
<
(
...
)
>
;
}
>
>
;
status
:
FieldType
<
TypeFromFields
<
{
clusterStatus
:
OptionalFieldType
<
(
...
)
>
;
status
:
OptionalFieldType
<
(
...
)
>
;
}
>
>
;
}
>
[]
>
;
}
>
>
Protected
invoke
Command
invoke
Command
(
_path
,
command
,
exchange
,
commandFields
,
message
,
endpoint
,
_receivedWithinTimedInteraction
?
)
:
Promise
<
{
clusterCode
?:
number
;
code
:
Status
;
response
:
TlvStream
;
responseId
:
CommandId
;
}
>
Parameters
_path
:
CommandPath
command
:
CommandServer
<
any
,
any
>
exchange
:
MessageExchange
commandFields
:
any
message
:
Message
endpoint
:
EndpointInterface
Optional
_receivedWithinTimedInteraction
:
boolean
Returns
Promise
<
{
clusterCode
?:
number
;
code
:
Status
;
response
:
TlvStream
;
responseId
:
CommandId
;
}
>
on
New
Exchange
on
New
Exchange
(
exchange
)
:
Promise
<
void
>
Parameters
exchange
:
MessageExchange
Returns
Promise
<
void
>
Protected
read
Attribute
read
Attribute
(
_path
,
attribute
,
exchange
,
isFabricFiltered
,
message
,
_endpoint
,
offline
?
)
:
Promise
<
{
value
:
any
;
version
:
number
;
}
>
Parameters
_path
:
AttributePath
attribute
:
AnyAttributeServer
<
any
>
exchange
:
MessageExchange
isFabricFiltered
:
boolean
message
:
Message
_endpoint
:
EndpointInterface
Optional
offline
:
boolean
Returns
Promise
<
{
value
:
any
;
version
:
number
;
}
>
Protected
read
Event
read
Event
(
_path
,
eventFilters
,
event
,
exchange
,
isFabricFiltered
,
message
,
_endpoint
)
:
Promise
<
EventStorageData
<
any
>
[]
>
Parameters
_path
:
EventPath
eventFilters
:
undefined
|
TypeFromFields
<
{
eventMin
:
FieldType
<
number
|
bigint
>
;
nodeId
:
OptionalFieldType
<
NodeId
>
;
}
>
[]
event
:
AnyEventServer
<
any
,
any
>
exchange
:
MessageExchange
isFabricFiltered
:
boolean
message
:
Message
_endpoint
:
EndpointInterface
Returns
Promise
<
EventStorageData
<
any
>
[]
>
Protected
write
Attribute
write
Attribute
(
_path
,
attribute
,
value
,
exchange
,
message
,
_endpoint
,
_receivedWithinTimedInteraction
?
,
isListWrite
?
)
:
Promise
<
void
>
Parameters
_path
:
AttributePath
attribute
:
AttributeServer
<
any
>
value
:
any
exchange
:
MessageExchange
message
:
Message
_endpoint
:
EndpointInterface
Optional
_receivedWithinTimedInteraction
:
boolean
Optional
isListWrite
:
boolean
Returns
Promise
<
void
>
Settings
Member Visibility
Protected
Inherited
External
Theme
OS
Light
Dark
On This Page
Constructors
constructor
Accessors
is
Closing
max
Paths
Per
Invoke
Methods
close
get
Id
handle
Invoke
Request
handle
Read
Request
handle
Subscribe
Request
handle
Timed
Request
handle
Write
Request
invoke
Command
on
New
Exchange
read
Attribute
read
Event
write
Attribute
matter.js-monorepo
Loading...
Translates interactions from the Matter protocol to matter.js APIs.