From c9c0f74a41c0cb6e5c9561a3f0e50ddc596a1cc2 Mon Sep 17 00:00:00 2001 From: Dimitri Sokolyuk Date: Sun, 11 Dec 2016 03:21:39 +0100 Subject: wip --- advertisement.go | 19 ++++++++++++++++++- 1 file changed, 18 insertions(+), 1 deletion(-) (limited to 'advertisement.go') diff --git a/advertisement.go b/advertisement.go index 443ae1d..87e51ed 100644 --- a/advertisement.go +++ b/advertisement.go @@ -1,5 +1,7 @@ package anki +import "fmt" + const ( stateFullBattery = 1 << 4 stateLowBattery = 1 << 5 @@ -7,12 +9,27 @@ const ( ) type VehicleAdvInfo struct { - VehicleAdvState uint8 // Battery + VehicleAdvState uint8 // Battery level bits Version uint16 Reserved [5]uint8 Name [13]byte // UTF8: 12 bytes + NULL } +func (v VehicleAdvInfo) String() string { + b := "unknown" + if v.FullBattery() { + b = "full" + } + if v.LowBattery() { + b = "low" + } + if v.OnCharger() { + b = "charging" + } + return fmt.Sprintf("Battery: %v, Version %v, Name: %v", + b, v.Version, string(v.Name[:12])) +} + func (v VehicleAdvInfo) FullBattery() bool { return v.VehicleAdvState&stateFullBattery != 0 } -- cgit v1.2.3