Versions in this module Expand all Collapse all v0 v0.0.0 Jun 6, 2022 Changes in this version + var AccessToStr = map[AttrAccess]string + var Attributes = computeAttributes() + var AttributesNames2IDs = computeNames2IDs() + var AttributesRef = map[AttrID]*AttrRef + var ErrEnumInvalidValue = errors.New("Invalid Enum value") + var ErrTimeout = errors.New("Timeout") + var MainURL = `https://www.viessmann.com/app_vitodata/VIIWebService-1.16.0.0/iPhoneWebService.asmx` + var RefreshDataWaitDuration = 8 * time.Second + var RefreshDataWaitMinDuration = 1 * time.Second + var RefreshDataWaitTimeout = 60 * time.Second + var TimesheetsNames2IDs = func() map[string]TimesheetID { ... }() + var TimesheetsRef = map[TimesheetID]*TimesheetRef + var TypeDate = (*VitodataDate)(nil) + var TypeDouble = (*VitodataDouble)(nil) + var TypeEnabledEnum = NewEnum([]string{ ... }) + var TypeInteger = (*VitodataInteger)(nil) + var TypeNames = map[string]VitodataType + var TypeOnOffEnum = NewEnum([]string{ ... }) + var TypeString = (*VitodataString)(nil) + var WriteDataWaitDuration = 4 * time.Second + var WriteDataWaitMinDuration = 1 * time.Second + var WriteDataWaitTimeout = 60 * time.Second + var WriteTimesheetDataWaitDuration = 8 * time.Second + var WriteTimesheetDataWaitMinDuration = 1 * time.Second + var WriteTimesheetDataWaitTimeout = 60 * time.Second + func AddAttributeRef(attrID AttrID, ref AttrRef) + type AttrAccess uint8 + const ReadOnly + const ReadWrite + const WriteOnly + type AttrID uint16 + const AbgasTemp + const AktuelleBetriebsartM1 + const AktuelleBetriebsartM2 + const AktuellerFehler + const AnzahlBrennerStarts + const AnzahlBrennerstunden + const AussenTemp + const BetriebsartM1 + const BetriebsartM2 + const BoilerTemp + const BrennerStatus + const DatumUhrzeit + const EnergieSparmodusM1 + const EnergieSparmodusM2 + const FerienEndeM1 + const FerienEndeM2 + const FerienStartM1 + const FerienStartM2 + const HeisswasserAusgangTemp + const HeisswasserSollTemp + const HeisswasserTemp + const HeizNormalTempM1 + const HeizNormalTempM2 + const HeizPartyTempM1 + const HeizPartyTempM2 + const HeizPumpenStatusM1 + const HeizPumpenStatusM2 + const HeizReduziertTempM1 + const HeizReduziertTempM2 + const Heizungsschema + const HeizwasserAusgangTemp + const InternerPumpenStatus + const NeigungM1 + const NeigungM2 + const NiveauM1 + const NiveauM2 + const NoAttr + const PartyModusM1 + const PartyModusM2 + const ZirkPumpenStatus + const ZustandFerienProgM1 + const ZustandFerienProgM2 + const ZustandFrostgefahrM1 + const ZustandFrostgefahrM2 + type AttrRef struct + Access AttrAccess + Custom bool + Doc string + Name string + Type VitodataType + func (r *AttrRef) String() string + type AttributeInfo struct + AttributeID AttrID + EnumValues map[uint32]string + type AttributeInfoBase struct + AttributeName string + AttributeType string + AttributeTypeValue uint32 + DataPointGroup string + DefaultValue string + HeatingCircuitID uint32 + MaxValue string + MinValue string + Readable bool + Writable bool + type Device struct + Attributes map[AttrID]*Value + DeviceID uint32 + DeviceName string + Errors []ErrorHistoryEvent + HasError bool + IsConnected bool + LocationID uint32 + LocationName string + Timesheets map[TimesheetID]map[string]TimeslotSlice + func (d *Device) FormatAttributes(attrs []AttrID) string + func (d *Device) GetData(v *Session, attrIDs []AttrID) error + func (d *Device) GetErrorHistory(v *Session) error + func (d *Device) GetTimesheetData(v *Session, id TimesheetID) error + func (d *Device) GetTypeInfo(v *Session) ([]*AttributeInfo, error) + func (d *Device) RefreshData(v *Session, attrIDs []AttrID) (string, error) + func (d *Device) RefreshDataWait(v *Session, attrIDs []AttrID) (<-chan error, error) + func (d *Device) WriteData(v *Session, attrID AttrID, value string) (string, error) + func (d *Device) WriteDataWait(v *Session, attrID AttrID, value string) (<-chan error, error) + func (d *Device) WriteTimesheetData(v *Session, id TimesheetID, data map[string]TimeslotSlice) (string, error) + func (d *Device) WriteTimesheetDataWait(v *Session, id TimesheetID, data map[string]TimeslotSlice) (<-chan error, error) + type ErrorHistoryEvent struct + Error string + IsActive bool + Message string + Time Time + func (e *ErrorHistoryEvent) String() string + type GetDataResponse struct + GetDataResult struct{ ... } + func (r *GetDataResponse) ResultHeader() *ResultHeader + type GetDevicesResponse struct + GetDevicesResult struct{ ... } + func (r *GetDevicesResponse) ResultHeader() *ResultHeader + type GetErrorHistoryResponse struct + GetErrorHistoryResult struct{ ... } + func (r *GetErrorHistoryResponse) ResultHeader() *ResultHeader + type GetTimesheetDataResponse struct + GetTimesheetDataResult struct{ ... } + func (r *GetTimesheetDataResponse) ResultHeader() *ResultHeader + type GetTypeInfoResponse struct + GetTypeInfoResult struct{ ... } + func (r *GetTypeInfoResponse) ResultHeader() *ResultHeader + type HasResultHeader interface + ResultHeader func() *ResultHeader + type LoginResponse struct + LoginResult struct{ ... } + func (r *LoginResponse) ResultHeader() *ResultHeader + type RefreshDataResponse struct + RefreshDataResult struct{ ... } + func (r *RefreshDataResponse) ResultHeader() *ResultHeader + type RequestRefreshStatusResponse struct + RequestRefreshStatusResult struct{ ... } + func (r *RequestRefreshStatusResponse) ResultHeader() *ResultHeader + type RequestWriteStatusResponse struct + RequestWriteStatusResult struct{ ... } + func (r *RequestWriteStatusResponse) ResultHeader() *ResultHeader + type ResultHeader struct + ErrorNum int + ErrorStr string + func (e *ResultHeader) Error() string + func (e *ResultHeader) IsError() bool + type Session struct + Cookies []string + Debug bool + Devices []Device + func (v *Session) GetDevices() error + func (v *Session) Login(login, password string) error + func (v *Session) RequestRefreshStatus(refreshID string) (int, error) + func (v *Session) RequestWriteStatus(refreshID string) (int, error) + type Time time.Time + func ParseVitotrolTime(value string) (Time, error) + func (t *Time) UnmarshalXML(d *xml.Decoder, start xml.StartElement) error + func (t Time) String() string + type TimesheetID uint16 + const HeatingTimesheet + const HotWaterLoopTimesheet + const HotWaterTimesheet + type TimesheetRef struct + Doc string + Name string + func (t *TimesheetRef) String() string + type Timeslot struct + From uint16 + To uint16 + func (t *Timeslot) String() string + type TimeslotSlice []Timeslot + func (t TimeslotSlice) Len() int + func (t TimeslotSlice) Less(i, j int) bool + func (t TimeslotSlice) Swap(i, j int) + type Value struct + Time Time + Value string + func (v *Value) Num() (ret float64) + type VitodataDate struct + func (v *VitodataDate) Human2VitodataValue(value string) (string, error) + func (v *VitodataDate) Type() string + func (v *VitodataDate) Vitodata2HumanValue(value string) (string, error) + func (v *VitodataDate) Vitodata2NativeValue(value string) (interface{}, error) + type VitodataDouble struct + func (v *VitodataDouble) Human2VitodataValue(value string) (string, error) + func (v *VitodataDouble) Type() string + func (v *VitodataDouble) Vitodata2HumanValue(value string) (string, error) + func (v *VitodataDouble) Vitodata2NativeValue(value string) (interface{}, error) + type VitodataEnum struct + func NewEnum(values []string) *VitodataEnum + func (v *VitodataEnum) Human2VitodataValue(value string) (string, error) + func (v *VitodataEnum) Type() string + func (v *VitodataEnum) Vitodata2HumanValue(value string) (string, error) + func (v *VitodataEnum) Vitodata2NativeValue(value string) (interface{}, error) + type VitodataInteger struct + func (v *VitodataInteger) Human2VitodataValue(value string) (string, error) + func (v *VitodataInteger) Type() string + func (v *VitodataInteger) Vitodata2HumanValue(value string) (string, error) + func (v *VitodataInteger) Vitodata2NativeValue(value string) (interface{}, error) + type VitodataString struct + func (v *VitodataString) Human2VitodataValue(value string) (string, error) + func (v *VitodataString) Type() string + func (v *VitodataString) Vitodata2HumanValue(value string) (string, error) + func (v *VitodataString) Vitodata2NativeValue(value string) (interface{}, error) + type VitodataType interface + Human2VitodataValue func(string) (string, error) + Type func() string + Vitodata2HumanValue func(string) (string, error) + Vitodata2NativeValue func(string) (interface{}, error) + type WriteDataResponse struct + WriteDataResult struct{ ... } + func (r *WriteDataResponse) ResultHeader() *ResultHeader + type WriteTimesheetDataResponse struct + WriteTimesheetDataResult struct{ ... } + func (r *WriteTimesheetDataResponse) ResultHeader() *ResultHeader