mirror of
https://github.com/Xevion/go-ha.git
synced 2025-12-09 10:07:25 -06:00
listeners working, sunrise/sunset working with string offset
This commit is contained in:
@@ -2,7 +2,6 @@ package main
|
||||
|
||||
import (
|
||||
"log"
|
||||
"time"
|
||||
|
||||
ga "github.com/saml-dev/gome-assistant"
|
||||
)
|
||||
@@ -10,31 +9,25 @@ import (
|
||||
func main() {
|
||||
app := ga.NewApp("192.168.86.67:8123")
|
||||
defer app.Cleanup()
|
||||
s := ga.ScheduleBuilder().Call(lightsOut).Every(time.Second * 5).Build()
|
||||
s2 := ga.ScheduleBuilder().Call(cool).Every(time.Millisecond * 500).Build()
|
||||
s3 := ga.ScheduleBuilder().Call(c).Every(time.Minute * 1).Build()
|
||||
s := ga.ScheduleBuilder().Call(lightsOut).Daily().At(app.Sunset("1h")).Build()
|
||||
app.RegisterSchedule(s)
|
||||
app.RegisterSchedule(s2)
|
||||
app.RegisterSchedule(s3)
|
||||
|
||||
simpleListener := ga.EntityListenerBuilder().
|
||||
EntityIds("light.entryway_lamp").
|
||||
EntityIds("group.office_ceiling_lights").
|
||||
Call(listenerCB).
|
||||
// OnlyBetween(ga.TimeOfDay(22, 00), ga.TimeOfDay(07, 00)).
|
||||
// OnlyBetween("07:00", "14:00").
|
||||
Build()
|
||||
app.RegisterEntityListener(simpleListener)
|
||||
|
||||
app.Start()
|
||||
|
||||
log.Println(s)
|
||||
log.Println(s2)
|
||||
}
|
||||
|
||||
func lightsOut(service *ga.Service, state *ga.State) {
|
||||
// service.InputDatetime.Set("input_datetime.garage_last_triggered_ts", time.Now())
|
||||
// service.HomeAssistant.Toggle("group.living_room_lamps", map[string]any{"brightness_pct": 100})
|
||||
// service.Light.Toggle("light.entryway_lamp", map[string]any{"brightness_pct": 100})
|
||||
service.HomeAssistant.Toggle("light.el_gato_key_lights")
|
||||
service.HomeAssistant.Toggle("light.entryway_lamp")
|
||||
log.Default().Println("running lightsOut")
|
||||
// service.HomeAssistant.Toggle("light.entryway_lamp")
|
||||
// log.Default().Println("A")
|
||||
}
|
||||
@@ -48,4 +41,8 @@ func c(service *ga.Service, state *ga.State) {
|
||||
// log.Default().Println("C")
|
||||
}
|
||||
|
||||
func listenerCB(service *ga.Service, data *ga.EntityData) {}
|
||||
func listenerCB(service *ga.Service, data ga.EntityData) {
|
||||
log.Default().Println("hi katie")
|
||||
}
|
||||
|
||||
// TODO: randomly placed, add .Throttle to Listener
|
||||
|
||||
Reference in New Issue
Block a user