38 lines
590 B
Go
38 lines
590 B
Go
package main
|
|
|
|
import "log"
|
|
import "os"
|
|
import "os/signal"
|
|
import "udi/mqtt"
|
|
import "udi/config"
|
|
import "udi/counter"
|
|
import "udi/dispatcher"
|
|
|
|
|
|
|
|
func main() {
|
|
log.SetPrefix("UDI: ")
|
|
log.SetFlags(log.Ldate | log.Ltime | log.Lshortfile)
|
|
|
|
log.Println("UDI starting")
|
|
|
|
config.LoadConfiguration()
|
|
|
|
dispatcher.InitDispatcher()
|
|
go dispatcher.InputDispatcher()
|
|
|
|
mqtt.StartMqttClient()
|
|
defer mqtt.StopMqttClient()
|
|
|
|
counter.InitCounter()
|
|
|
|
log.Println("UDI running")
|
|
|
|
c := make(chan os.Signal, 1)
|
|
signal.Notify(c, os.Interrupt, os.Kill)
|
|
<-c
|
|
|
|
log.Println("Terminating UDI")
|
|
}
|
|
|