Set command was realised

This commit is contained in:
2016-06-27 00:29:32 +05:00
parent dcec154ed6
commit 9e1fecd513

View File

@@ -2,20 +2,20 @@ package main
import ( import (
"flag" "flag"
"fmt"
"github.com/dedkovd/noolite" "github.com/dedkovd/noolite"
) )
func main() { func main() {
channel := flag.Int("channel", -1, "Noolite adapter channel") channel := flag.Int("channel", -1, "Noolite adapter channel")
command := flag.String("command", "", "Command") command := flag.String("command", "", "Command")
value := flag.Int("val", 0, "Set value")
red := flag.Int("r", 0, "Red channel")
green := flag.Int("g", 0, "Green channel")
blue := flag.Int("b", 0, "Blue channel")
flag.Parse() flag.Parse()
fmt.Println(*channel)
fmt.Println(*command)
if *channel == -1 { if *channel == -1 {
panic ("Channel was not set") panic("Channel was not set")
} }
if *command == "" { if *command == "" {
@@ -24,26 +24,36 @@ func main() {
n, err := noolite.DefaultNooliteAdapter() n, err := noolite.DefaultNooliteAdapter()
commands := map[string]func(int) error{
"on": n.On,
"off": n.Off,
"switch": n.Switch,
}
if err != nil { if err != nil {
panic(err) panic(err)
} }
defer n.Close() defer n.Close()
cmd, ok := commands[*command] if *command == "set" {
if *value != 0 {
err = n.SetBrightnesValue(*channel, *value)
} else if *red != 0 || *green != 0 || *blue != 0 {
err = n.SetBrightnesValues(*channel, *red, *green, *blue)
} else {
panic("Need some value")
}
} else {
commands := map[string]func(int) error{
"on": n.On,
"off": n.Off,
"switch": n.Switch,
}
if !ok { cmd, ok := commands[*command]
panic("Command not found")
if !ok {
panic("Command not found")
}
err = cmd(*channel)
} }
cmd(*channel)
if err != nil { if err != nil {
panic(err) panic(err)
} }