Documentation
¶
Index ¶
Constants ¶
This section is empty.
Variables ¶
View Source
var Library = &Zcl{cluster.NewClusterLibrary()}
the default library. not sure if we ever need additional ones?
Functions ¶
This section is empty.
Types ¶
type ClusterQuery ¶
type CommandExtractor ¶
type CommandExtractor func(commandDescriptors map[uint8]*cluster.CommandDescriptor) (uint8, *cluster.CommandDescriptor, error)
type CommandQuery ¶
type Zcl ¶
type Zcl struct {
// contains filtered or unexported fields
}
func (*Zcl) ToZclIncomingMessage ¶
func (z *Zcl) ToZclIncomingMessage(m *znp.AfIncomingMessage) (*ZclIncomingMessage, error)
returns ~ 1:1 AfIncomingMessage but its Data is parsed as specified by (cluster, command) pair
type ZclFrame ¶
type ZclFrame struct { FrameControl *ZclFrameControl ManufacturerCode uint16 TransactionSequenceNumber uint8 CommandIdentifier uint8 CommandName string // TODO: make Command an interface that has Name()? Command interface{} }
type ZclFrameControl ¶
type ZclIncomingMessage ¶
type ZclIncomingMessage struct { // TODO: instead make most of the shared attributes composed from AfIncomingMessage? GroupID uint16 ClusterID cluster.ClusterId SrcAddr string SrcEndpoint zigbee.EndpointId DstEndpoint zigbee.EndpointId WasBroadcast bool LinkQuality uint8 SecurityUse bool Timestamp uint32 TransactionSeqNumber uint8 Data *ZclFrame }
mapped almost 1:1 from znp.AfIncomingMessage, but Data is decoded
Click to show internal directories.
Click to hide internal directories.