Documentation
¶
Index ¶
- Constants
- Variables
- func NodeTypeIsTool(t int) bool
- func NodeTypeToString(t int) string
- type ACNode
- type ACNodeHandler
- func (h *ACNodeHandler) AddListener(l *HandlerListener)
- func (h *ACNodeHandler) AddNode(node ACNodeRec)
- func (h *ACNodeHandler) GetNodeByMqttName(name string) ACNode
- func (h *ACNodeHandler) GetNodes() []ACNode
- func (h *ACNodeHandler) OnNodeUpdate(node ACNode)
- func (h *ACNodeHandler) RemoveListener(l *HandlerListener)
- type ACNodeRec
- func (node *ACNodeRec) GetAPIRecord() apitypes.ACNode
- func (node *ACNodeRec) GetId() int
- func (node *ACNodeRec) GetInService() bool
- func (node *ACNodeRec) GetInUse() bool
- func (node *ACNodeRec) GetIsTransient() bool
- func (node *ACNodeRec) GetLastSeen() time.Time
- func (node *ACNodeRec) GetLastSeenAPI() time.Time
- func (node *ACNodeRec) GetLastSeenMQTT() time.Time
- func (node *ACNodeRec) GetLastStarted() time.Time
- func (node *ACNodeRec) GetMqttName() string
- func (node *ACNodeRec) GetName() string
- func (node *ACNodeRec) GetPrinterStatus() *PrinterStatus
- func (node *ACNodeRec) GetType() int
- func (node *ACNodeRec) SetEepromSettingsVersion(ver int)
- func (node *ACNodeRec) SetId(id int)
- func (node *ACNodeRec) SetInService(inService bool)
- func (node *ACNodeRec) SetInUse(inuse bool)
- func (node *ACNodeRec) SetIsTransient(transient bool)
- func (node *ACNodeRec) SetLastSeenAPI(t time.Time)
- func (node *ACNodeRec) SetLastSeenMQTT(t time.Time)
- func (node *ACNodeRec) SetLastStarted(t time.Time)
- func (node *ACNodeRec) SetMemoryStats(free int, used int)
- func (node *ACNodeRec) SetName(name string)
- func (node *ACNodeRec) SetResetCause(rstc string)
- func (node *ACNodeRec) SetSettingsVersion(ver int)
- func (node *ACNodeRec) SetStatusMessage(m string)
- func (node *ACNodeRec) SetType(t int)
- func (node *ACNodeRec) SetVersion(ver string)
- type Announcement
- type Bell
- type HandlerListener
- type MemoryNodePersistence
- type NodePersistence
- type PrinterStatus
- type RedisNodePersistence
- type Status
- type StatusMem
Constants ¶
View Source
const ( NodeTypeTool = iota NodeTypeDoor = iota NodeTypePrinter = iota )
Variables ¶
View Source
var NodeNotFound = errors.New("node not found")
Functions ¶
func NodeTypeIsTool ¶
func NodeTypeToString ¶
Types ¶
type ACNode ¶
type ACNode interface {
GetId() int
SetId(id int)
GetType() int
GetInService() bool
SetInService(inService bool)
GetName() string
SetName(name string)
GetMqttName() string
SetType(t int)
SetMemoryStats(free int, used int)
SetVersion(ver string)
GetLastSeen() time.Time
GetLastSeenAPI() time.Time
SetLastSeenAPI(t time.Time)
GetLastSeenMQTT() time.Time
SetLastSeenMQTT(t time.Time)
GetLastStarted() time.Time
SetLastStarted(t time.Time)
SetStatusMessage(m string)
GetAPIRecord() apitypes.ACNode
SetSettingsVersion(ver int)
SetEepromSettingsVersion(ver int)
SetResetCause(rstc string)
GetPrinterStatus() *PrinterStatus
GetIsTransient() bool
SetIsTransient(transient bool)
GetInUse() bool
SetInUse(inuse bool)
}
type ACNodeHandler ¶
type ACNodeHandler struct {
// contains filtered or unexported fields
}
func CreateACNodeHandler ¶
func CreateACNodeHandler(persistence NodePersistence) ACNodeHandler
func (*ACNodeHandler) AddListener ¶
func (h *ACNodeHandler) AddListener(l *HandlerListener)
func (*ACNodeHandler) AddNode ¶
func (h *ACNodeHandler) AddNode(node ACNodeRec)
func (*ACNodeHandler) GetNodeByMqttName ¶
func (h *ACNodeHandler) GetNodeByMqttName(name string) ACNode
func (*ACNodeHandler) GetNodes ¶
func (h *ACNodeHandler) GetNodes() []ACNode
func (*ACNodeHandler) OnNodeUpdate ¶
func (h *ACNodeHandler) OnNodeUpdate(node ACNode)
func (*ACNodeHandler) RemoveListener ¶
func (h *ACNodeHandler) RemoveListener(l *HandlerListener)
type ACNodeRec ¶
type ACNodeRec struct {
Id int
Name string
MqttName string
NodeType int
InService bool
InUse bool
// last known status
LastSeen time.Time // old LastSeen field
LastSeenMQTT time.Time
LastSeenAPI time.Time
LastStarted time.Time
MemFree int
MemUsed int
StatusMessage string
Version string
SettingsVersion int
EEPROMSettingsVersion int
ResetCause string
Transient bool
PrinterStatus *PrinterStatus
// contains filtered or unexported fields
}
func (*ACNodeRec) GetAPIRecord ¶
func (*ACNodeRec) GetInService ¶
func (*ACNodeRec) GetIsTransient ¶
func (*ACNodeRec) GetLastSeen ¶
func (*ACNodeRec) GetLastSeenAPI ¶
func (*ACNodeRec) GetLastSeenMQTT ¶
func (*ACNodeRec) GetLastStarted ¶
func (*ACNodeRec) GetMqttName ¶
func (*ACNodeRec) GetPrinterStatus ¶
func (node *ACNodeRec) GetPrinterStatus() *PrinterStatus
func (*ACNodeRec) SetEepromSettingsVersion ¶
func (*ACNodeRec) SetInService ¶
func (*ACNodeRec) SetIsTransient ¶
func (*ACNodeRec) SetLastSeenAPI ¶
func (*ACNodeRec) SetLastSeenMQTT ¶
func (*ACNodeRec) SetLastStarted ¶
func (*ACNodeRec) SetMemoryStats ¶
func (*ACNodeRec) SetResetCause ¶
func (*ACNodeRec) SetSettingsVersion ¶
func (*ACNodeRec) SetStatusMessage ¶
func (*ACNodeRec) SetVersion ¶
type Announcement ¶
type HandlerListener ¶
type HandlerListener struct {
// contains filtered or unexported fields
}
func CreateHandlerChangeListener ¶
func CreateHandlerChangeListener(handler *ACNodeHandler, name string) *HandlerListener
func (*HandlerListener) Disconnect ¶
func (sub *HandlerListener) Disconnect()
func (*HandlerListener) SetOnNodeAddedHandler ¶
func (sub *HandlerListener) SetOnNodeAddedHandler(h func(ACNode))
func (*HandlerListener) SetOnNodeChangedHandler ¶
func (sub *HandlerListener) SetOnNodeChangedHandler(h func(ACNode))
type MemoryNodePersistence ¶
type MemoryNodePersistence struct {
// contains filtered or unexported fields
}
func (*MemoryNodePersistence) GetAllNodes ¶
func (np *MemoryNodePersistence) GetAllNodes() ([]ACNodeRec, error)
func (*MemoryNodePersistence) GetNodeByMqttName ¶
func (np *MemoryNodePersistence) GetNodeByMqttName(name string) (*ACNodeRec, error)
type NodePersistence ¶
type NodePersistence interface {
GetNodeByMqttName(name string) (*ACNodeRec, error)
StoreNode(node *ACNodeRec) (*ACNodeRec, error)
GetAllNodes() ([]ACNodeRec, error)
}
func CreateMemoryNodePersistence ¶
func CreateMemoryNodePersistence() NodePersistence
func GetRedisNodePersistence ¶
func GetRedisNodePersistence(redis *redis.Client) NodePersistence
type PrinterStatus ¶
type PrinterStatus struct {
MqttConneced bool
// each status field has a value and a timestamp - this allows us to figure out which
// topic has the newest information on it
OctoprintConnected bool
OctoprintConnectedTimestamp uint64
PrinterStatus string
PrinterStatusTimestamp uint64
FirmwareVersion string
FirmwareVersionTimestamp uint64
ZHeight float32
ZHeightTimestamp uint64
PiUndervoltage bool
PiOverheat bool
PiThrottleTimestamp uint64
HotendTemperature float32
HotendTemperatureTimestamp uint64
BedTemperature float32
BedTemperatureTimestamp uint64
}
Tracks Octoprint status
func GetDefaultPrinterStatus ¶
func GetDefaultPrinterStatus() *PrinterStatus
type RedisNodePersistence ¶
type RedisNodePersistence struct {
// contains filtered or unexported fields
}
func (*RedisNodePersistence) GetAllNodes ¶
func (np *RedisNodePersistence) GetAllNodes() ([]ACNodeRec, error)
func (*RedisNodePersistence) GetNodeByMqttName ¶
func (np *RedisNodePersistence) GetNodeByMqttName(name string) (*ACNodeRec, error)
type Status ¶
type Status struct {
Type string `json:"Type"`
Message string `json:"Message,omitempty"`
Mem StatusMem `json:"mem,omitempty"`
// START message
FWVersion string `json:"Version,omitempty"`
GitHash string `json:"Git,omitempty"`
SettingsVersion int `json:"SettingsVersion,omitempty"`
EEPROMSettingsVersion int `json:"EEPROMSettingsVersion,omitempty"`
ResetCause string `json:"Cause,omitempty"`
}
Click to show internal directories.
Click to hide internal directories.