refactor: temperature

This commit is contained in:
2019-02-24 22:46:36 +01:00
parent d6f41b8105
commit 1a3a31c5f2
24 changed files with 605 additions and 292 deletions

View File

@ -2,24 +2,58 @@ package sensor
import (
"fmt"
"log"
"git.cryptic.systems/fh-trier/go-flucky/pkg/config"
"git.cryptic.systems/fh-trier/go-flucky/pkg/types"
"github.com/spf13/cobra"
)
var enabled bool
var sensorLocation, wireID, wirePath string
var location, wireID, wirePath string
var addSensorCmd = &cobra.Command{
Use: "add",
Short: "Add Sensor",
Aliases: []string{"append"},
Args: cobra.ExactArgs(3),
Example: fmt.Sprintf("flucky sensor add indoor dht11 14\nflucky sensor add --wire-id 28-011432f0bb3d outdoor ds18b20 14"),
Run: func(cmd *cobra.Command, args []string) {
// read configuration
fc, err := config.Read(cfg)
if err != nil {
log.Fatalln(err)
}
// create new sensor struct
sensor := &types.Sensor{
SensorName: args[0],
SensorType: args[1],
SensorLocation: location,
SensorEnabled: enabled,
GPIONumber: &args[2],
WireID: &wireID,
}
// // add sensor entry to list
err = fc.AddSensor(sensor)
if err != nil {
log.Fatalln(err)
}
// save new configuration
err = config.Write(fc, cfg)
if err != nil {
log.Fatalln(err)
}
},
}
func init() {
sensorCmd.AddCommand(addSensorCmd)
addSensorCmd.Flags().BoolVarP(&enabled, "enabled", "e", true, "Enable Sensor")
addSensorCmd.Flags().StringVarP(&sensorLocation, "sensor-location", "l", "", "Sensor location")
addSensorCmd.Flags().StringVarP(&location, "location", "l", "", "Sensor location")
addSensorCmd.Flags().StringVarP(&wireID, "wire-id", "i", "", "Wire-ID")
addSensorCmd.Flags().StringVarP(&wirePath, "wire-path", "w", "/sys/bus/w1/devices", "Wire device path")
}

View File

@ -1,24 +1,40 @@
package sensor
// import (
// "log"
import (
"log"
// "git.cryptic.systems/fh-trier/go-flucky/pkg/sensor"
// "github.com/spf13/cobra"
// )
"git.cryptic.systems/fh-trier/go-flucky/pkg/config"
"github.com/spf13/cobra"
)
// var disableSensorCmd = &cobra.Command{
// Use: "disable",
// Short: "Disable Sensor",
// Args: cobra.ExactArgs(1),
// Run: func(cmd *cobra.Command, args []string) {
var disableSensorCmd = &cobra.Command{
Use: "disable",
Short: "Disable Sensor",
Args: cobra.ExactArgs(1),
Example: "flucky sensor disable outdoor",
Run: func(cmd *cobra.Command, args []string) {
// if err := sensor.Disable(args[0], configDir); err != nil {
// log.Fatal(err)
// }
// },
// }
// read configuration
fc, err := config.Read(cfg)
if err != nil {
log.Fatalln(err)
}
// func init() {
// sensorCmd.AddCommand(disableSensorCmd)
// }
// disable sensor entry to list
err = fc.DisableSensor(args[0])
if err != nil {
log.Fatalln(err)
}
// save new configuration
err = config.Write(fc, cfg)
if err != nil {
log.Fatalln(err)
}
},
}
func init() {
sensorCmd.AddCommand(disableSensorCmd)
}

View File

@ -1,24 +1,39 @@
package sensor
// import (
// "log"
import (
"log"
// "git.cryptic.systems/fh-trier/go-flucky/pkg/sensor"
// "github.com/spf13/cobra"
// )
"git.cryptic.systems/fh-trier/go-flucky/pkg/config"
"github.com/spf13/cobra"
)
// var enableSensorCmd = &cobra.Command{
// Use: "enable",
// Short: "Enable Sensor",
// Args: cobra.ExactArgs(1),
// Run: func(cmd *cobra.Command, args []string) {
var enableSensorCmd = &cobra.Command{
Use: "enable",
Short: "Enable Sensor",
Example: "flucky sensor enable outdoor",
Args: cobra.ExactArgs(1),
Run: func(cmd *cobra.Command, args []string) {
// if err := sensor.Enable(args[0], configDir); err != nil {
// log.Fatal(err)
// }
// },
// }
// read configuration
fc, err := config.Read(cfg)
if err != nil {
log.Fatalln(err)
}
// func init() {
// sensorCmd.AddCommand(enableSensorCmd)
// }
// disable sensor entry to list
err = fc.EnableSensor(args[0])
if err != nil {
log.Fatalln(err)
}
// save new configuration
err = config.Write(fc, cfg)
if err != nil {
log.Fatalln(err)
}
},
}
func init() {
sensorCmd.AddCommand(enableSensorCmd)
}

View File

@ -1,29 +1,38 @@
package sensor
// import (
// "log"
// "os"
import (
"log"
"os"
// "git.cryptic.systems/fh-trier/go-flucky/pkg/sensor"
// "github.com/spf13/cobra"
// )
"git.cryptic.systems/fh-trier/go-flucky/pkg/config"
"github.com/spf13/cobra"
)
// var quiet bool
var listSensorCmd = &cobra.Command{
Use: "ls",
Short: "List Sensors",
Aliases: []string{"list"},
Run: func(cmd *cobra.Command, args []string) {
// read configuration
fc, err := config.Read(cfg)
if err != nil {
log.Fatalln(err)
}
// var listSensorCmd = &cobra.Command{
// Use: "ls",
// Short: "List Sensors",
// Aliases: []string{"list"},
// Run: func(cmd *cobra.Command, args []string) {
// if err := sensor.Print(os.Stdout, configDir, quiet); err != nil {
// log.Fatal(err)
// }
// },
// //28-01143277168e
// }
// print sensors on stdout
err = fc.PrintSensors(os.Stdout)
if err != nil {
log.Fatalln(err)
}
// func init() {
// sensorCmd.AddCommand(listSensorCmd)
// save new configuration
err = config.Write(fc, cfg)
if err != nil {
log.Fatalln(err)
}
},
}
// listSensorCmd.Flags().BoolVarP(&quiet, "quiet", "q", false, "List only sensor id's")
// }
func init() {
sensorCmd.AddCommand(listSensorCmd)
}

View File

@ -1,24 +1,39 @@
package sensor
// import (
// "log"
import (
"log"
// "git.cryptic.systems/fh-trier/go-flucky/pkg/sensor"
// "github.com/spf13/cobra"
// )
"git.cryptic.systems/fh-trier/go-flucky/pkg/config"
"github.com/spf13/cobra"
)
// var rmSensorCmd = &cobra.Command{
// Use: "rm",
// Short: "Remove Sensor",
// Aliases: []string{"remove"},
// Args: cobra.ExactArgs(1),
// Run: func(cmd *cobra.Command, args []string) {
// if err := sensor.Remove(args[0], configDir); err != nil {
// log.Fatal(err)
// }
// },
// }
var rmSensorCmd = &cobra.Command{
Use: "rm",
Short: "Remove Sensor",
Example: "flucky sensor rm outdoor",
Aliases: []string{"remove"},
Args: cobra.ExactArgs(1),
Run: func(cmd *cobra.Command, args []string) {
// read configuration
fc, err := config.Read(cfg)
if err != nil {
log.Fatalln(err)
}
// func init() {
// sensorCmd.AddCommand(rmSensorCmd)
// }
// // add remote entry to list
err = fc.RemoveSensor(args[0])
if err != nil {
log.Fatalln(err)
}
// save new configuration
err = config.Write(fc, cfg)
if err != nil {
log.Fatalln(err)
}
},
}
func init() {
sensorCmd.AddCommand(rmSensorCmd)
}