diff options
Diffstat (limited to 'main.go')
| -rw-r--r-- | main.go | 28 |
1 files changed, 27 insertions, 1 deletions
@@ -1,9 +1,35 @@ package main import ( + "fmt" "log" + + "xengineering.eu/homematic-go/homematic" +) + +const ( + HOST = `127.0.0.1` + PORT = 8080 ) func main() { - log.Println("Hello world!") + server := fmt.Sprintf("http://%s:%d", HOST, PORT) + + req := homematic.NewRequester(server) + + inventory, err := req.ListDevices() + if err != nil { + log.Fatalf("Failed to retrieve device list: %v", err) + } + + for _, device := range inventory { + if device.Type == `SHUTTER_CONTACT` { + state, err := req.GetValue(device.Address) + if err != nil { + log.Fatalf("Failed to get value: %v", err) + } + + log.Printf("%s %s has state %t", device.Type, device.Address, state) + } + } } |
