From d22da95cce996c8420c45a92f8f7dcd80797f93c Mon Sep 17 00:00:00 2001 From: Mike Bloy Date: Sun, 15 Sep 2024 00:51:34 -0500 Subject: [PATCH] start making kiosk mode --- kiosk/kiosk.go | 29 +++++++++++++++++++++++++++++ kiosk/mqtt.go | 27 +++++++++++++++++++++++++++ mqtt/mqtt.go | 7 ------- 3 files changed, 56 insertions(+), 7 deletions(-) create mode 100644 kiosk/kiosk.go create mode 100644 kiosk/mqtt.go delete mode 100644 mqtt/mqtt.go diff --git a/kiosk/kiosk.go b/kiosk/kiosk.go new file mode 100644 index 0000000..e5ee8e0 --- /dev/null +++ b/kiosk/kiosk.go @@ -0,0 +1,29 @@ +package kiosk + +import ( + "log/slog" + + "github.com/spf13/viper" +) + +type handler func(area string, present bool) + +type configObj struct { + logger *slog.Logger + broker string + username string + password string + presenceTopic string +} + +var config = configObj{} + +func Run(rootLogger *slog.Logger, exitch chan bool) { + config.logger = rootLogger.With("component", "kiosk") + config.broker = viper.GetString("mqtt_broker_url") + config.username = viper.GetString("mqtt_broker_user") + config.password = viper.GetString("mqtt_broker_password") + config.presenceTopic = viper.GetString("mqtt_presence_topic") + brokerConsume() + exitch <- true +} diff --git a/kiosk/mqtt.go b/kiosk/mqtt.go new file mode 100644 index 0000000..88d6749 --- /dev/null +++ b/kiosk/mqtt.go @@ -0,0 +1,27 @@ +package kiosk + +import ( + "fmt" + "os" + + MQTT "github.com/eclipse/paho.mqtt.golang" +) + +func brokerConsume() { + opts := MQTT.NewClientOptions() + opts.AddBroker(config.broker) + hostname, err := os.Hostname() + if err != nil { + panic(err) + } + opts.SetClientID(fmt.Sprintf("hasskiosk-%s-%d", hostname, os.Getpid())) + opts.SetUsername(config.username) + opts.SetPassword(config.password) + opts.SetDefaultPublishHandler(func(client MQTT.Client, msg MQTT.Message) { + + }) +} + +func defaultMQTTHandler(client MQTT.Client, msg MQTT.Message) { + +} diff --git a/mqtt/mqtt.go b/mqtt/mqtt.go deleted file mode 100644 index 4d563b5..0000000 --- a/mqtt/mqtt.go +++ /dev/null @@ -1,7 +0,0 @@ -package mqtt - -import mqtt "github.com/eclipse/paho.mqtt.golang" - -func init() { - mqtt.NewClient() -}