Documentation ¶
Index ¶
- Constants
- func KuCoinRunner(ws *TickerWebSocketHandler)
- func ServerMain(options Options)
- type BinanceRunner
- type Options
- type TickerStream
- type TickerWebSocketHandler
- func (h *TickerWebSocketHandler) AddClient(client *WebSocketClient)
- func (h *TickerWebSocketHandler) Broadcast(v TickerStream) error
- func (h *TickerWebSocketHandler) CloseClient(client *WebSocketClient)
- func (h *TickerWebSocketHandler) Handle(w http.ResponseWriter, r *http.Request)
- func (h *TickerWebSocketHandler) Upgrade(w http.ResponseWriter, r *http.Request) (*WebSocketClient, error)
- type WebSocketClient
- type WsConnectionTracker
Constants ¶
View Source
const PROTO_VERSION = 3
Variables ¶
This section is empty.
Functions ¶
func KuCoinRunner ¶
func KuCoinRunner(ws *TickerWebSocketHandler)
func ServerMain ¶
func ServerMain(options Options)
Types ¶
type BinanceRunner ¶
type BinanceRunner struct {
// contains filtered or unexported fields
}
func NewBinanceRunner ¶
func NewBinanceRunner() *BinanceRunner
func (*BinanceRunner) Run ¶
func (b *BinanceRunner) Run()
func (*BinanceRunner) Subscribe ¶
func (b *BinanceRunner) Subscribe(symbol string) chan interface{}
func (*BinanceRunner) Unsubscribe ¶
func (b *BinanceRunner) Unsubscribe(symbol string, channel chan interface{})
type TickerStream ¶
type TickerStream struct {
Tickers []interface{} `json:"tickers"`
}
type TickerWebSocketHandler ¶
type TickerWebSocketHandler struct { Feed *BinanceRunner // contains filtered or unexported fields }
func NewBroadcastWebSocketHandler ¶
func NewBroadcastWebSocketHandler() *TickerWebSocketHandler
func (*TickerWebSocketHandler) AddClient ¶
func (h *TickerWebSocketHandler) AddClient(client *WebSocketClient)
func (*TickerWebSocketHandler) Broadcast ¶
func (h *TickerWebSocketHandler) Broadcast(v TickerStream) error
func (*TickerWebSocketHandler) CloseClient ¶
func (h *TickerWebSocketHandler) CloseClient(client *WebSocketClient)
func (*TickerWebSocketHandler) Handle ¶
func (h *TickerWebSocketHandler) Handle(w http.ResponseWriter, r *http.Request)
func (*TickerWebSocketHandler) Upgrade ¶
func (h *TickerWebSocketHandler) Upgrade(w http.ResponseWriter, r *http.Request) (*WebSocketClient, error)
type WebSocketClient ¶
type WebSocketClient struct {
// contains filtered or unexported fields
}
func NewWebSocketClient ¶
func NewWebSocketClient(c *websocket.Conn, r *http.Request) *WebSocketClient
func (*WebSocketClient) GetRemoteAddr ¶
func (c *WebSocketClient) GetRemoteAddr() string
func (*WebSocketClient) GetRemoteHost ¶
func (c *WebSocketClient) GetRemoteHost() string
func (*WebSocketClient) WriteTextMessage ¶
func (c *WebSocketClient) WriteTextMessage(msg []byte) error
type WsConnectionTracker ¶
type WsConnectionTracker struct { Paths map[string]map[*WebSocketClient]bool Clients map[*WebSocketClient]map[string]bool Lock sync.RWMutex }
func NewWsConnectionTracker ¶
func NewWsConnectionTracker() *WsConnectionTracker
func (*WsConnectionTracker) Add ¶
func (w *WsConnectionTracker) Add(path string, conn *WebSocketClient)
func (*WsConnectionTracker) Del ¶
func (w *WsConnectionTracker) Del(path string, conn *WebSocketClient)
Click to show internal directories.
Click to hide internal directories.