package main import "log" import "os" import "time" import "net" import "fmt" import "bufio" import "github.com/gookit/config" import "github.com/andlabs/ui" import _ "github.com/andlabs/ui/winmanifest" import "github.com/davecgh/go-spew/spew" // dns // import "github.com/miekg/dns" // reminder to use protobuf // https://github.com/golang/protobuf // reminder to use this for JSON // https://github.com/tidwall/gjson // value := gjson.Get(json, "name.last") // println(value.String()) // value := gjson.Get(json, friends.#[last=="Murphy"].first) // use mergo to merge structs // import "github.com/imdario/mergo" // mergo.Merge(&dest, src) // always sorted slice (new project) // https://github.com/yaa110/sslice const ( CONN_HOST = "v000185.testing.com.customers.wprod.wit.com" CONN_PORT = "3333" CONN_PROTO = "tcp" ) func socketToWIT() { // connect to this socket conn, err := net.Dial(CONN_PROTO, CONN_HOST+":"+CONN_PORT) if err != nil { log.Println(CONN_HOST, CONN_PORT, CONN_PROTO) log.Println(err) log.Println("socket connect failed. Not sure what to do here. os.Exit() ?") return } // read in input from stdin reader := bufio.NewReader(os.Stdin) fmt.Fprintf(conn,"librem15.lab.wit.com\n") for { fmt.Print("Text to send: ") text, _ := reader.ReadString('\n') // send to socket fmt.Fprintf(conn, text + "\n") // listen for reply message, _ := bufio.NewReader(conn).ReadString('\n') fmt.Print("Message from server: "+message) } } func doGUI() { ui.Main(setupUI) log.Println("GUI exited. Not sure what to do here. os.Exit() ?") } func main() { parseConfig() go doGUI() for { log.Println("Sleep for 10 seconds, then try to establish connection to WIT") time.Sleep(10 * 1000 * 1000 * 1000) // for now, loop until I figure out what to actually do socketToWIT() } log.Println("Sleep for 1 second") time.Sleep(1 * 1000 * 1000 * 1000) f, err := os.Create("/tmp/cloud-control-panel-test") spew.Dump(err) config.DumpTo(f, "yaml") }