From 45d39c55e3966d5f6e7f2db962d53a4eab52e53d Mon Sep 17 00:00:00 2001 From: Collin Guarino Date: Fri, 22 Jan 2016 20:42:35 -0500 Subject: Starting implementation for GetBridgeInfo --- bridge.go | 47 ++++++++++++++++++++++++++++++++++++----------- 1 file changed, 36 insertions(+), 11 deletions(-) diff --git a/bridge.go b/bridge.go index 2a6b97d..00e88c9 100644 --- a/bridge.go +++ b/bridge.go @@ -2,6 +2,7 @@ package main import ( "log" + "encoding/xml" ) func main() { @@ -11,16 +12,40 @@ func main() { type Bridge struct { IPAddress string Username string - Debug bool - Info struct { - DeviceType string - FriendlyName string - ManufacturerURL string - About string - ModelName string - ModelNumber string - ModelURL string - SerialNumber string - UDN string + Info Info +} + +Info struct { + DeviceType string + FriendlyName string + ManufacturerURL string + About string + ModelName string + ModelNumber string + ModelURL string + SerialNumber string + UDN string +} + +func NewBridge(ip string) *Bridge { + // TODO: if yaml file exists then return + bridge := Bridge { + IPAddress: ip + // TODO: other defaults here + } + + response := GetBridgeInfo() + bridge.Info = GetBridgeInfo("192.168.1.128") // TODO: IP var +} + +// Go to http:///description.xml and parse the info +func GetBridgeInfo(ip string) Info { + data := Info{} + + err := xml.Unmarshal([]byte(data), &data) + if err != nil { + fmt.Println("GetBridgeInfo error. Cannot parse data from description.") } + + log.Println("FriendlyName") } -- cgit v1.2.3