huego
An extensive Philips Hue client library for Go
About huego
Huego
An extensive Philips Hue client library for Go with an emphasis on simplicity. It is designed to be clean, unbloated and extensible. With Huego you can interact with any Philips Hue bridge and its resources including Lights, Groups, Scenes, Sensors, Rules, Schedules, Resourcelinks, Capabilities and Configuration .

Installation
Get the package and import it in your code.
go get github.com/amimof/huego
You may use New() if you have already created an user and know the IP address to your bridge.
package main
import (
"github.com/amimof/huego"
"fmt"
)
func main() {
bridge := huego.New("192.168.1.59", "username")
l, err := bridge.GetLights()
if err != nil {
panic(err)
}
fmt.Printf("Found %d lights", len(l))
}
Or discover a bridge on your network with Discover() and create a new user with CreateUser(). To successfully create a user, the link button on your bridge must have been pressed before calling CreateUser() in order to authorise the request.
func main() {
bridge, _ := huego.Discover()
user, _ := bridge.CreateUser("my awesome hue app") // Link button needs to be pressed
bridge = bridge.Login(user)
light, _ := bridge.GetLight(3)
light.Off()
}
Documentation
See godoc.org/github.com/amimof/huego for the full package documentation.
Contributing
All help in any form is highly appreciated and your are welcome participate in developing Huego together. To contribute submit a Pull Request. If you want to provide feedback, open up a Github Issue or contact me personally.
Frequently Asked Questions
What is huego?
huego is a IoT (Internet of Things) library for the Go programming language. An extensive Philips Hue client library for Go
How do I install huego?
Install huego with the Go module system using `go get amimof/huego`. Check the repository for the current installation instructions.
What category does huego belong to?
huego is listed under IoT (Internet of Things), specifically IoT (Internet of Things).