|
|
@@ -9,6 +9,7 @@ import (
|
|
|
"net/http"
|
|
|
"strings"
|
|
|
"strconv"
|
|
|
+ "time"
|
|
|
)
|
|
|
|
|
|
func sendCommand(mutex *sync.Mutex, command string, channel, value, r, g, b int) error {
|
|
|
@@ -20,8 +21,15 @@ func sendCommand(mutex *sync.Mutex, command string, channel, value, r, g, b int)
|
|
|
return errors.New("Command was not set")
|
|
|
}
|
|
|
|
|
|
- mutex.Lock()
|
|
|
- defer mutex.Unlock()
|
|
|
+ mutex.Lock() // Lock for sync call
|
|
|
+
|
|
|
+ timedUnlock := func(m *sync.Mutex) {
|
|
|
+ time.Sleep(time.Millisecond * 200) // Without timeout not worked
|
|
|
+ m.Unlock()
|
|
|
+ }
|
|
|
+
|
|
|
+ defer timedUnlock(mutex)
|
|
|
+
|
|
|
n, err := noolite.DefaultNooliteAdapter()
|
|
|
|
|
|
if err != nil {
|