From 31a3d4948b3e9bccb46e7207f5804e9fb10b1e75 Mon Sep 17 00:00:00 2001 From: Bel LaPointe Date: Tue, 11 Jan 2022 07:39:07 -0500 Subject: [PATCH] separate ok and err intervals for sleep, dont exit on err --- main.go | 26 +++++++++++++++++++------- 1 file changed, 19 insertions(+), 7 deletions(-) diff --git a/main.go b/main.go index 81c773f..3817cfc 100644 --- a/main.go +++ b/main.go @@ -94,16 +94,28 @@ func parseOutStates(b []byte) []config.State { func _main() error { for { - if err := config.Refresh(); err != nil { - return err - } - if err := once(); err != nil { - return err + err := _mainOne() + if err != nil { + log.Println(err) } if config.Get().Once { - break + return err } - time.Sleep(config.Get().Interval.Get()) + if err != nil { + time.Sleep(config.Get().Interval.Error.Get()) + } else { + time.Sleep(config.Get().Interval.OK.Get()) + } + } + return nil +} + +func _mainOne() error { + if err := config.Refresh(); err != nil { + return err + } + if err := once(); err != nil { + return err } return nil }