54 lines
1.2 KiB
Go
54 lines
1.2 KiB
Go
package grpc
|
|
|
|
import (
|
|
"gitea.nik4nao.com/nik/home-services/ha-gateway/internal/core/domain"
|
|
hav1 "gitea.nik4nao.com/nik/home-services/gen/ha/v1"
|
|
)
|
|
|
|
func domainStateToProto(s *domain.EntityState) *hav1.EntityState {
|
|
return &hav1.EntityState{
|
|
EntityId: string(s.EntityID),
|
|
State: s.State,
|
|
Attributes: s.Attributes,
|
|
LastChanged: s.LastChanged.Format("2006-01-02T15:04:05Z07:00"),
|
|
LastUpdated: s.LastUpdated.Format("2006-01-02T15:04:05Z07:00"),
|
|
}
|
|
}
|
|
|
|
func protoTurnOnToParams(r *hav1.TurnOnRequest) domain.TurnOnParams {
|
|
p := domain.TurnOnParams{
|
|
EntityID: domain.EntityID(r.EntityId),
|
|
}
|
|
if r.BrightnessPct != nil {
|
|
v := r.GetBrightnessPct()
|
|
p.BrightnessPct = &v
|
|
}
|
|
if r.ColorTempKelvin != nil {
|
|
v := r.GetColorTempKelvin()
|
|
p.ColorTempKelvin = &v
|
|
}
|
|
if r.RgbColor != nil {
|
|
p.RGBColor = &domain.RGBColor{
|
|
R: uint8(r.RgbColor.R),
|
|
G: uint8(r.RgbColor.G),
|
|
B: uint8(r.RgbColor.B),
|
|
}
|
|
}
|
|
if r.Transition != nil {
|
|
v := r.GetTransition()
|
|
p.Transition = &v
|
|
}
|
|
return p
|
|
}
|
|
|
|
func protoTurnOffToParams(r *hav1.TurnOffRequest) domain.TurnOffParams {
|
|
p := domain.TurnOffParams{
|
|
EntityID: domain.EntityID(r.EntityId),
|
|
}
|
|
if r.Transition != nil {
|
|
v := r.GetTransition()
|
|
p.Transition = &v
|
|
}
|
|
return p
|
|
}
|