wattpilot

package module
v1.8.4 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Sep 4, 2024 License: Apache-2.0 Imports: 20 Imported by: 7

README

DEPRECATED Because of the poor implementation of the Wifi stack on the Fronius Wattpilot it is not possible to implement this library reliable.

The library is still available for reference.

go-wattpilot

Wattpilot API for go used primarly on evcc API Implementation is inspired from https://github.com/joscha82/wattpilot

Shell

./shell contains a shell to interact with the wattpilot to test out values

Documentation

Index

Constants

View Source
const (
	ContextTimeout   = 30 // seconds
	ReconnectTimeout = 5  // seconds
)

Variables

View Source
var PostProcess = map[string]struct {
	key string
	f   PostFunction
}{
	"voltage1": {"nrg", voltage1Process},
	"voltage2": {"nrg", voltage2Process},
	"voltage3": {"nrg", voltage3Process},
	"voltageN": {"nrg", voltageNProcess},
	"amps1":    {"nrg", amps1Process},
	"amps2":    {"nrg", amps2Process},
	"amps3":    {"nrg", amps3Process},
	"power1":   {"nrg", power1Process},
	"power2":   {"nrg", power2Process},
	"power3":   {"nrg", power3Process},
	"powerM":   {"nrg", powerNProcess},
	"power":    {"nrg", powerProcess},
}

Functions

func Keys added in v1.6.1

func Keys[K comparable, V any](m map[K]V) []K

Types

type CallHook added in v1.8.3

type CallHook struct {
	Call      func(string, string)
	LogLevels []log.Level
}

func (*CallHook) Fire added in v1.8.3

func (hook *CallHook) Fire(entry *log.Entry) error

func (*CallHook) Levels added in v1.8.3

func (hook *CallHook) Levels() []log.Level

Levels define on which log levels this hook would trigger

type PostFunction

type PostFunction func(interface{}) (string, error)

type Pubsub added in v1.3.0

type Pubsub struct {
	// contains filtered or unexported fields
}

func NewPubsub added in v1.3.0

func NewPubsub() *Pubsub

func (*Pubsub) Close added in v1.3.0

func (ps *Pubsub) Close()

func (*Pubsub) IsEmpty added in v1.6.5

func (ps *Pubsub) IsEmpty() bool

func (*Pubsub) Publish added in v1.3.0

func (ps *Pubsub) Publish(topic string, msg interface{})

func (*Pubsub) Subscribe added in v1.3.0

func (ps *Pubsub) Subscribe(topic string) <-chan interface{}

type Wattpilot

type Wattpilot struct {
	// contains filtered or unexported fields
}

func New added in v1.0.6

func New(host string, password string) *Wattpilot

func (*Wattpilot) Alias added in v1.1.2

func (w *Wattpilot) Alias() []string

func (*Wattpilot) Connect

func (w *Wattpilot) Connect() error

func (*Wattpilot) Disconnect added in v1.2.0

func (w *Wattpilot) Disconnect()

func (*Wattpilot) GetCarIdentifier added in v1.6.0

func (w *Wattpilot) GetCarIdentifier() (string, error)

func (*Wattpilot) GetCurrents

func (w *Wattpilot) GetCurrents() (float64, float64, float64, error)

func (*Wattpilot) GetHost

func (w *Wattpilot) GetHost() string

func (*Wattpilot) GetName

func (w *Wattpilot) GetName() string

func (*Wattpilot) GetNotifications added in v1.3.0

func (w *Wattpilot) GetNotifications(prop string) <-chan interface{}

func (*Wattpilot) GetPower

func (w *Wattpilot) GetPower() (float64, error)

func (*Wattpilot) GetProperty

func (w *Wattpilot) GetProperty(name string) (interface{}, error)

func (*Wattpilot) GetRFID

func (w *Wattpilot) GetRFID() (string, error)

func (*Wattpilot) GetSerial

func (w *Wattpilot) GetSerial() string

func (*Wattpilot) GetVoltages added in v1.1.1

func (w *Wattpilot) GetVoltages() (float64, float64, float64, error)

func (*Wattpilot) IsInitialized

func (w *Wattpilot) IsInitialized() bool

func (*Wattpilot) LookupAlias added in v1.1.2

func (w *Wattpilot) LookupAlias(name string) string

func (*Wattpilot) ParseLogLevel added in v1.4.0

func (w *Wattpilot) ParseLogLevel(level string) error

func (*Wattpilot) Properties added in v1.1.2

func (w *Wattpilot) Properties() []string

func (*Wattpilot) RequestStatusUpdate added in v1.6.3

func (w *Wattpilot) RequestStatusUpdate() error

func (*Wattpilot) SetCurrent

func (w *Wattpilot) SetCurrent(current float64) error

func (*Wattpilot) SetLogLevel added in v1.4.0

func (w *Wattpilot) SetLogLevel(level logrus.Level)

func (*Wattpilot) SetLogger added in v1.8.2

func (w *Wattpilot) SetLogger(delegate func(string, string))

func (*Wattpilot) SetProperty

func (w *Wattpilot) SetProperty(name string, value interface{}) error

func (*Wattpilot) StatusInfo

func (w *Wattpilot) StatusInfo()

Directories

Path Synopsis
prometheus module

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL