From 948e448c302833b52a170bd9f7afafd9cad94b51 Mon Sep 17 00:00:00 2001 From: "kayos@tcp.direct" Date: Tue, 11 Oct 2022 22:45:59 -0700 Subject: [PATCH] Feat: trigger light adoption --- internal/cli/commands.go | 26 ++++++++++++++++++++++++++ internal/cli/completer.go | 1 + 2 files changed, 27 insertions(+) diff --git a/internal/cli/commands.go b/internal/cli/commands.go index e493f43..d3a3787 100644 --- a/internal/cli/commands.go +++ b/internal/cli/commands.go @@ -6,6 +6,7 @@ import ( "fmt" "strconv" "strings" + "time" "github.com/amimof/huego" "github.com/davecgh/go-spew/spew" @@ -245,3 +246,28 @@ func cmdRename(br *ziggy.Bridge, args []string) error { } return nil } + +func cmdAdopt(br *ziggy.Bridge, args []string) error { + resp, err := br.FindLights() + if err != nil { + return err + } + log.Debug().Msgf(spew.Sprint(resp.Success)) + newLights, err := br.GetNewLights() + if err != nil { + return err + } + print("searching") + for count := 0; count < 10; count++ { + print(".") + time.Sleep(1 * time.Second) + } + if len(newLights.Lights) == 0 { + return errors.New("no new lights found") + } + for _, l := range newLights.Lights { + log.Info().Msgf("[+] %s", l) + log.Trace().Msgf("%v", spew.Sprint(l)) + } + return nil +} diff --git a/internal/cli/completer.go b/internal/cli/completer.go index 5412313..67b86e3 100644 --- a/internal/cli/completer.go +++ b/internal/cli/completer.go @@ -79,6 +79,7 @@ func init() { Commands["delete"] = newZiggsCommand(cmdDelete, "delete objects from bridges", "del", "remove") Commands["scan"] = newZiggsCommand(cmdScan, "scan for bridges/lights/sensors", "search", "find") Commands["rename"] = newZiggsCommand(cmdRename, "rename object in bridge", "mv") + Commands["adopt"] = newZiggsCommand(cmdAdopt, "adopt new lights to the bridge") Commands["set"] = newZiggsCommand(cmdSet, "update object properties in bridge", "update") initCompletion() }