From 419d1a21a5964b9726ec0ba9775cc54a25367444 Mon Sep 17 00:00:00 2001 From: fish <gcslyp@gmail.com> Date: Thu, 21 Mar 2019 10:47:00 +0800 Subject: [PATCH] =?UTF-8?q?=E6=B7=BB=E5=8A=A0=E6=B5=8B=E8=AF=95tcp=20clien?= =?UTF-8?q?t=E6=96=AD=E5=BC=80=E5=90=8E=EF=BC=8C=E5=85=B3=E9=97=ADchannle?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- conf/gateway.conf | 3 ++- db/gateway.db | Bin 73728 -> 73728 bytes do_send_data.go | 3 +++ main.go | 9 +++++++-- tcpserver.go | 11 ++++++++++- worker.go | 2 +- 6 files changed, 23 insertions(+), 5 deletions(-) diff --git a/conf/gateway.conf b/conf/gateway.conf index 1517024..9bbbbac 100644 --- a/conf/gateway.conf +++ b/conf/gateway.conf @@ -92,7 +92,8 @@ ] }, "devices_list": [ - ["4E5D52DD-EB81-43C0-A2B6-04E432412EBA", "loraport", "yunhorn_kgl_l_v1", "1"] + ["4E5D52DD-EB81-43C0-A2B6-04E432412EBA", "loraport", "yunhorn_kgl_l_v1", "1"], + ["EB5B0798-9B7F-474E-AAB8-467FD5FE1293", "loraport", "yunhorn_kgl_l_v1", "2"] ], "serialports_list": { "loraport": { diff --git a/db/gateway.db b/db/gateway.db index fc64590cdedf6d6262c02df21ef28a65fce3a008..215fc0adb5e3c7805beb240da3dfabafe7b3d686 100644 GIT binary patch delta 30 mcmZoTz|wGlWr8&0yooZ-jPo`o%(rJW+~n|IpV4qp!3F@Z=?j+t delta 30 mcmZoTz|wGlWr8&0oQX2djB_?7%(rJW*yQkEpV44Z!3F@ZkqeOk diff --git a/do_send_data.go b/do_send_data.go index 7d1e641..044a987 100644 --- a/do_send_data.go +++ b/do_send_data.go @@ -41,6 +41,9 @@ func build_data(code int, data []Device) []byte { R_data.GATEWAY_INFO = conf.GATEWAY_INFO DEVICEDATAS.RLock() for _, i := range DEVICEDATAS.DATA { + log.Println("=========================================") + log.Println(i) + log.Println("=========================================") R_data.DEVICES = append(R_data.DEVICES, i) } DEVICEDATAS.RUnlock() diff --git a/main.go b/main.go index 1d332f9..c912c26 100644 --- a/main.go +++ b/main.go @@ -13,10 +13,15 @@ func main() { go gw_router() go serial_run() c := cron.New() - send_data(1001) + // send_data(1001) c.AddFunc("0, *, *, *, *, *", func() { - send_data(1001) + // send_data(1001) }) + // devices := []Device{} + c.AddFunc("*/10, *, *, *, *, *", func(){ + // log.Println(string(build_data(1001,devices))) + }) + c.AddFunc("0, */10, *, *, *, *", savedata_cron) c.AddFunc("0, 0, 0, *, *, *", insertdata) c.AddFunc("0, 0, *, *, *, *", get_weather) diff --git a/tcpserver.go b/tcpserver.go index c0f275e..c30284f 100644 --- a/tcpserver.go +++ b/tcpserver.go @@ -22,6 +22,8 @@ func handleConn(conn net.Conn) { go readConn(conn, readChan, stopChan) // go writeConn(conn, writeChan, stopChan) + var heartbeat []byte = []byte{0x01} + for { select { case readStr := <-readChan: @@ -33,6 +35,13 @@ func handleConn(conn net.Conn) { if stop { break } + case <-time.After(5000 * time.Millisecond): + n,err := conn.Write(heartbeat) + if err != nil{ + log.Println("write msg error!",err) + }else{ + log.Println("write msg success!",n) + } } } } @@ -56,7 +65,7 @@ func readConn(conn net.Conn, readChan chan<- []byte, stopChan chan<- bool) { //strData := string(Rdata) //Rdata = make([]byte,0) //log.Println("Received:", strData) - + //readChan <- Rdata //Rdata = make([]byte,0) } diff --git a/worker.go b/worker.go index d240d8c..4f96f2f 100644 --- a/worker.go +++ b/worker.go @@ -53,7 +53,7 @@ func yunhorn_ys_l_v1(data_buf []byte){ if conf.DEBUG { log.Println(device) } - send_data(1005, device) + // send_data(1005, device) }