From 2e7870df5dd3392a91e683d80c085a4713018ee1 Mon Sep 17 00:00:00 2001 From: NiseVoid Date: Thu, 25 Oct 2018 13:32:00 +0200 Subject: [PATCH] Reconnect websocket on error --- fortoprt/fetch.go | 11 ----------- main.go | 13 +++++++++++-- 2 files changed, 11 insertions(+), 13 deletions(-) diff --git a/fortoprt/fetch.go b/fortoprt/fetch.go index 16de375..a25264a 100644 --- a/fortoprt/fetch.go +++ b/fortoprt/fetch.go @@ -2,13 +2,11 @@ package fortoprt import ( "encoding/json" - "fmt" "strconv" "time" "git.fuyu.moe/5GPowerQuality/parser/data" "git.fuyu.moe/5GPowerQuality/parser/shared" - "git.fuyu.moe/Fuyu/flog" "golang.org/x/net/websocket" ) @@ -32,8 +30,6 @@ type measurement struct { var host = `dcem5g.ddns.net` func FetchData() { - fmt.Println(`Connecting`) - conn, err := websocket.Dial(`ws://`+host+`/ValuesSocketServer/VMvalues`, ``, `http://localhost`) if err != nil { panic(err) @@ -49,13 +45,6 @@ func FetchData() { } func readData(conn *websocket.Conn) { - defer func() { - v := recover() - if v != nil { - flog.Critical(v) - } - }() - b, n := make([]byte, 16384), 0 msg := message{} diff --git a/main.go b/main.go index 548b9e3..e2d57af 100644 --- a/main.go +++ b/main.go @@ -17,8 +17,8 @@ func main() { data.InitDB() - // go fetchFortopData() - go fortoprt.FetchData() + go fetchFortopData() + go fetchFortopRealtimeData() envitron.ReceiveData() } @@ -37,3 +37,12 @@ func fetchFortopData() { }() } } + +func fetchFortopRealtimeData() { + for { + func() { + defer recoverFunc() + fortoprt.FetchData() + }() + } +}