chore: use charge status mapper (#9305)
This commit is contained in:
parent
c63bb70f06
commit
682ab053ad
3 changed files with 4 additions and 25 deletions
|
|
@ -42,6 +42,8 @@ const (
|
|||
StatusF ChargeStatus = "F" // Fzg. angeschlossen: ja Laden aktiv: nein Fehler EVSE oder Abstecken simulieren (CP-Wake-up, -12V)
|
||||
)
|
||||
|
||||
var StatusEasA = map[ChargeStatus]ChargeStatus{StatusE: StatusA}
|
||||
|
||||
// ChargeStatusString converts a string to ChargeStatus
|
||||
func ChargeStatusString(s string) (ChargeStatus, error) {
|
||||
status := strings.ToUpper(strings.TrimSpace(strings.Trim(s, "\x00")))
|
||||
|
|
|
|||
|
|
@ -19,7 +19,6 @@ package charger
|
|||
|
||||
import (
|
||||
"encoding/binary"
|
||||
"fmt"
|
||||
"math"
|
||||
"sync"
|
||||
"time"
|
||||
|
|
@ -127,18 +126,7 @@ func (wb *Alfen) Status() (api.ChargeStatus, error) {
|
|||
return api.StatusNone, err
|
||||
}
|
||||
|
||||
switch r := rune(b[0]); r {
|
||||
case 'A', 'B', 'D', 'E', 'F':
|
||||
return api.ChargeStatusStringWithMapping(string(r), map[api.ChargeStatus]api.ChargeStatus{api.StatusE: api.StatusA})
|
||||
case 'C':
|
||||
// C1 is "connected"
|
||||
if rune(b[1]) == '1' {
|
||||
return api.StatusB, nil
|
||||
}
|
||||
return api.StatusC, nil
|
||||
default:
|
||||
return api.StatusNone, fmt.Errorf("invalid status: %0x", b[:1])
|
||||
}
|
||||
return api.ChargeStatusStringWithMapping(string(b), api.StatusEasA)
|
||||
}
|
||||
|
||||
// Enabled implements the api.Charger interface
|
||||
|
|
|
|||
|
|
@ -96,18 +96,7 @@ func (wb *Innogy) Status() (api.ChargeStatus, error) {
|
|||
return api.StatusNone, err
|
||||
}
|
||||
|
||||
switch r := rune(b[0]); r {
|
||||
case 'A', 'B', 'D', 'E', 'F':
|
||||
return api.ChargeStatusStringWithMapping(string(r), map[api.ChargeStatus]api.ChargeStatus{api.StatusE: api.StatusA})
|
||||
case 'C':
|
||||
// C1 is "connected"
|
||||
if rune(b[1]) == '1' {
|
||||
return api.StatusB, nil
|
||||
}
|
||||
return api.StatusC, nil
|
||||
default:
|
||||
return api.StatusNone, fmt.Errorf("invalid status: %0x", b[:1])
|
||||
}
|
||||
return api.ChargeStatusStringWithMapping(string(b), api.StatusEasA)
|
||||
}
|
||||
|
||||
// Enabled implements the api.Charger interface
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue