kappanhang/main.go

43 lines
560 B
Go
Raw Normal View History

2020-10-16 17:13:46 +02:00
package main
import (
2020-10-16 19:25:02 +02:00
"os"
"os/signal"
"syscall"
2020-10-16 17:13:46 +02:00
"github.com/nonoo/kappanhang/log"
)
2020-10-18 10:33:47 +02:00
var streams struct {
control controlStream
audio audioStream
2020-10-17 23:53:33 +02:00
}
2020-10-16 17:13:46 +02:00
func exit(err error) {
streams.control.SendDisconnect()
if err == nil {
os.Exit(0)
} else {
log.Error(err.Error())
os.Exit(1)
}
}
2020-10-16 19:25:02 +02:00
func setupCloseHandler() {
c := make(chan os.Signal)
signal.Notify(c, os.Interrupt, syscall.SIGTERM)
go func() {
<-c
log.Print("disconnecting")
exit(nil)
2020-10-16 19:25:02 +02:00
}()
}
2020-10-16 17:13:46 +02:00
func main() {
log.Init()
parseArgs()
2020-10-16 19:25:02 +02:00
setupCloseHandler()
2020-10-16 17:13:46 +02:00
2020-10-18 10:33:47 +02:00
streams.control.Start()
2020-10-16 17:13:46 +02:00
}