Use WebsocketEvent in ws client and add timestamp to Tickers

Fixes https://github.com/thrasher-/gocryptotrader/issues/137
This commit is contained in:
Adrian Gallagher
2018-07-13 11:20:29 +10:00
parent 69acf88a7b
commit e5b3ce8de8
3 changed files with 13 additions and 1 deletions

View File

@@ -157,6 +157,10 @@ func CreateNewOrderbook(exchangeName string, p pair.CurrencyPair, orderbookNew B
// ProcessOrderbook processes incoming orderbooks, creating or updating the
// Orderbook list
func ProcessOrderbook(exchangeName string, p pair.CurrencyPair, orderbookNew Base, orderbookType string) {
if orderbookNew.Pair.Pair() == "" {
// set Pair if not set
orderbookNew.Pair = p
}
orderbookNew.CurrencyPair = p.Pair().String()
orderbookNew.LastUpdated = time.Now()

View File

@@ -4,6 +4,7 @@ import (
"errors"
"strconv"
"sync"
"time"
"github.com/thrasher-/gocryptotrader/common"
"github.com/thrasher-/gocryptotrader/currency/pair"
@@ -27,6 +28,7 @@ var (
// Price struct stores the currency pair and pricing information
type Price struct {
Pair pair.CurrencyPair `json:"Pair"`
LastUpdated time.Time `json:"LastUpdated"`
CurrencyPair string `json:"CurrencyPair"`
Last float64 `json:"Last"`
High float64 `json:"High"`
@@ -148,7 +150,13 @@ func CreateNewTicker(exchangeName string, p pair.CurrencyPair, tickerNew Price,
// ProcessTicker processes incoming tickers, creating or updating the Tickers
// list
func ProcessTicker(exchangeName string, p pair.CurrencyPair, tickerNew Price, tickerType string) {
if tickerNew.Pair.Pair() == "" {
// set Pair if not set
tickerNew.Pair = p
}
tickerNew.CurrencyPair = p.Pair().String()
tickerNew.LastUpdated = time.Now()
if len(Tickers) == 0 {
CreateNewTicker(exchangeName, p, tickerNew, tickerType)
return

View File

@@ -179,7 +179,7 @@ func main() {
log.Println("Got orderbook!")
for {
var wsEvent WebsocketEventResponse
var wsEvent WebsocketEvent
err = WSConn.ReadJSON(&wsEvent)
if err != nil {
break