package econetgrpc import ( rheemcloud "github.com/kevinburke/rheemcloud-go" "google.golang.org/protobuf/types/known/timestamppb" pb "gitea.libretechconsulting.com/rmcguire/econet-exporter/api/econet/v1alpha1" ) func deviceToProto(d *rheemcloud.Device) *pb.Device { min, max := d.SetpointLimits() return &pb.Device{ SerialNumber: d.SerialNumber(), DeviceId: d.DeviceID(), FriendlyName: d.FriendlyName(), Type: d.Type().String(), GenericType: d.GenericType(), Connected: d.Connected(), WifiSignal: int32(d.WiFiSignal()), Mode: d.Mode().String(), Enabled: d.Enabled(), Running: d.Running(), RunningState: d.RunningState(), Setpoint: int32(d.Setpoint()), SetpointMin: int32(min), SetpointMax: int32(max), HotWaterAvailability: int32(d.HotWaterAvailability()), AlertCount: int32(d.AlertCount()), Away: d.Away(), LastUpdated: timestamppb.New(d.LastUpdated), } }