Documentation ¶
Index ¶
- type Channels
- type Connection
- func (c *Connection) ChannelExists(channel int) error
- func (c *Connection) CurrentPower() (float64, error)
- func (c *Connection) Enable(enable bool) error
- func (c *Connection) Enabled() (bool, error)
- func (c *Connection) SmlPower() (float64, error)
- func (c *Connection) SmlTotalEnergy() (float64, error)
- func (c *Connection) TotalEnergy() (float64, error)
- type PowerResponse
- type StatusResponse
- type StatusSNSResponse
- type StatusSTSResponse
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type Channels ¶
type Channels []float64
Channels is a Tasmota specifc helper type to handle meter value lists and single meter values
func (*Channels) UnmarshalJSON ¶
type Connection ¶
Connection is the Tasmota connection
func NewConnection ¶
func NewConnection(uri, user, password string, channel int, cache time.Duration) (*Connection, error)
NewConnection creates a Tasmota connection
func (*Connection) ChannelExists ¶
func (c *Connection) ChannelExists(channel int) error
channelExists checks the existence of the configured relay channel interface
func (*Connection) CurrentPower ¶
func (c *Connection) CurrentPower() (float64, error)
CurrentPower implements the api.Meter interface
func (*Connection) Enable ¶
func (c *Connection) Enable(enable bool) error
Enable implements the api.Charger interface
func (*Connection) Enabled ¶
func (c *Connection) Enabled() (bool, error)
Enabled implements the api.Charger interface
func (*Connection) SmlPower ¶
func (c *Connection) SmlPower() (float64, error)
SmlPower provides the sml sensor power
func (*Connection) SmlTotalEnergy ¶
func (c *Connection) SmlTotalEnergy() (float64, error)
SmlTotalEnergy provides the sml sensor total import energy
func (*Connection) TotalEnergy ¶
func (c *Connection) TotalEnergy() (float64, error)
TotalEnergy implements the api.MeterEnergy interface
type PowerResponse ¶
type PowerResponse struct { Power string // ON, OFF, Error Power1 string // ON, OFF, Error Power2 string // ON, OFF, Error Power3 string // ON, OFF, Error Power4 string // ON, OFF, Error Power5 string // ON, OFF, Error Power6 string // ON, OFF, Error Power7 string // ON, OFF, Error Power8 string // ON, OFF, Error }
PowerResponse is the Tasmota Power command Status response https://tasmota.github.io/docs/Commands/#with-web-requests
type StatusResponse ¶
type StatusResponse struct { Status struct { Module int DeviceName string FriendlyName []string Topic string ButtonTopic string Power int PowerOnState int LedState int LedMask string SaveData int SaveState int SwitchTopic string SwitchMode []int ButtonRetain int SwitchRetain int SensorRetain int PowerRetain int InfoRetain int StateRetain int } }
StatusResponse is the Status part of the Tasmota Status 0 command response https://tasmota.github.io/docs/JSON-Status-Responses/
type StatusSNSResponse ¶
type StatusSNSResponse struct { StatusSNS struct { Time string // Energy readings Energy struct { TotalStartTime string Total float64 Yesterday float64 Today float64 Power Channels ApparentPower Channels ReactivePower Channels Factor Channels Frequency Channels Voltage Channels Current Channels } // SML sensor readings SML struct { TotalIn float64 `json:"total_in"` TotalOut float64 `json:"total_out"` PowerCurr int `json:"power_curr"` } } }
StatusSNSResponse is the Tasmota Status 8 command Status response https://tasmota.github.io/docs/JSON-Status-Responses/
type StatusSTSResponse ¶
type StatusSTSResponse struct { StatusSTS struct { Power string // ON, OFF, Error Power1 string // ON, OFF, Error Power2 string // ON, OFF, Error Power3 string // ON, OFF, Error Power4 string // ON, OFF, Error Power5 string // ON, OFF, Error Power6 string // ON, OFF, Error Power7 string // ON, OFF, Error Power8 string // ON, OFF, Error } }
StatusSTSResponse is the StatusSTS part of the Tasmota Status 0 command response https://tasmota.github.io/docs/JSON-Status-Responses/