Class: Binance::Client::WebSocketFuture
- Inherits:
-
Object
- Object
- Binance::Client::WebSocketFuture
- Defined in:
- lib/binance/client/websocket.rb
Constant Summary collapse
- BASE_URL =
Public: String base url for WebSocket client to use
'wss://fstream.binance.com'.freeze
Instance Method Summary collapse
-
#agg_trade(symbol:, methods:) ⇒ Object
Public: Create an Aggregate Trade stream.
-
#all_market_ticker(methods:) ⇒ Object
Public: Create a Ticker stream for all symbols.
-
#diff_depth(symbol:, methods:) ⇒ Object
Public: Create a Diff Depth stream.
-
#kline(symbol:, interval:, methods:) ⇒ Object
Public: Create an Kline stream.
-
#multi(streams:, methods:) ⇒ Object
Public: Create multiple WebSocket streams.
-
#partial_book_depth(symbol:, level:, methods:) ⇒ Object
Public: Create an Partial Book Depth stream.
-
#single(stream:, methods:) ⇒ Object
Public: Create a single WebSocket stream.
-
#ticker(symbol:, methods:) ⇒ Object
Public: Create a Ticker stream.
-
#trade(symbol:, methods:) ⇒ Object
Public: Create a Trade stream.
-
#user_data(listen_key:, methods:) ⇒ Object
Public: Create a User Data stream.
Instance Method Details
#agg_trade(symbol:, methods:) ⇒ Object
Public: Create an Aggregate Trade stream
:symbol - The String symbol the stream will listen to
:methods - The Hash which contains the event handler methods to pass to
the WebSocket client
:open - The Proc called when a stream is opened (optional)
:message - The Proc called when a stream receives a message
:error - The Proc called when a stream receives an error (optional)
:close - The Proc called when a stream is closed (optional)
271 272 273 |
# File 'lib/binance/client/websocket.rb', line 271 def agg_trade(symbol:, methods:) single stream: { symbol: symbol, type: 'aggTrade' }, methods: methods end |
#all_market_ticker(methods:) ⇒ Object
Public: Create a Ticker stream for all symbols
:methods - The Hash which contains the event handler methods to pass to
the WebSocket client
:open - The Proc called when a stream is opened (optional)
:message - The Proc called when a stream receives a message
:error - The Proc called when a stream receives an error (optional)
:close - The Proc called when a stream is closed (optional)
330 331 332 |
# File 'lib/binance/client/websocket.rb', line 330 def all_market_ticker(methods:) single stream: { symbol: '!ticker', type: 'arr' }, methods: methods end |
#diff_depth(symbol:, methods:) ⇒ Object
Public: Create a Diff Depth stream
:symbol - The String symbol the stream will listen to
:methods - The Hash which contains the event handler methods to pass to
the WebSocket client
:open - The Proc called when a stream is opened (optional)
:message - The Proc called when a stream receives a message
:error - The Proc called when a stream receives an error (optional)
:close - The Proc called when a stream is closed (optional)
362 363 364 |
# File 'lib/binance/client/websocket.rb', line 362 def diff_depth(symbol:, methods:) single stream: { symbol: symbol, type: 'depth' }, methods: methods end |
#kline(symbol:, interval:, methods:) ⇒ Object
Public: Create an Kline stream
:symbol - The String symbol the stream will listen to
:interval - The String interval the stream will update with. The
intervals that may be used can be found in the Binance API
docs.
:methods - The Hash which contains the event handler methods to pass to
the WebSocket client
:open - The Proc called when a stream is opened (optional)
:message - The Proc called when a stream receives a message
:error - The Proc called when a stream receives an error (optional)
:close - The Proc called when a stream is closed (optional)
303 304 305 306 |
# File 'lib/binance/client/websocket.rb', line 303 def kline(symbol:, interval:, methods:) single stream: { symbol: symbol, type: 'kline', interval: interval }, methods: methods end |
#multi(streams:, methods:) ⇒ Object
Public: Create multiple WebSocket streams
:streams - The Array of Hashes used to define the stream. Each Hash can
have the following keys:
:symbol - The String symbol the stream will listen to
:type - The String type of stream to listen to
:level - The String level to use for the depth stream (optional)
:interval - The String interval to use for the kline stream (optional)
:methods - The Hash which contains the event handler methods to pass to
the WebSocket client
:open - The Proc called when a stream is opened (optional)
:message - The Proc called when a stream receives a message
:error - The Proc called when a stream receives an error (optional)
:close - The Proc called when a stream is closed (optional)
255 256 257 258 259 |
# File 'lib/binance/client/websocket.rb', line 255 def multi(streams:, methods:) names = streams.map { |stream| stream_url(stream) } create_stream("#{BASE_URL}/stream?streams=#{names.join('/')}", methods: methods) end |
#partial_book_depth(symbol:, level:, methods:) ⇒ Object
Public: Create an Partial Book Depth stream
:symbol - The String symbol the stream will listen to
:level - The String interval the stream will update with. The intervals
that may be used can be found in the Binance API docs.
:methods - The Hash which contains the event handler methods to pass to
the WebSocket client
:open - The Proc called when a stream is opened (optional)
:message - The Proc called when a stream receives a message
:error - The Proc called when a stream receives an error (optional)
:close - The Proc called when a stream is closed (optional)
347 348 349 350 |
# File 'lib/binance/client/websocket.rb', line 347 def partial_book_depth(symbol:, level:, methods:) single stream: { symbol: symbol, type: 'depth', level: level }, methods: methods end |
#single(stream:, methods:) ⇒ Object
Public: Create a single WebSocket stream
:stream - The Hash used to define the stream
:symbol - The String symbol to listen to
:type - The String type of stream to listen to
:level - The String level to use for the depth stream (optional)
:interval - The String interval to use for the kline stream (optional)
:methods - The Hash which contains the event handler methods to pass to
the WebSocket client
:open - The Proc called when a stream is opened (optional)
:message - The Proc called when a stream receives a message
:error - The Proc called when a stream receives an error (optional)
:close - The Proc called when a stream is closed (optional)
235 236 237 238 |
# File 'lib/binance/client/websocket.rb', line 235 def single(stream:, methods:) create_stream("#{BASE_URL}/ws/#{stream_url(stream)}", methods: methods) end |
#ticker(symbol:, methods:) ⇒ Object
Public: Create a Ticker stream
:symbol - The String symbol the stream will listen to
:methods - The Hash which contains the event handler methods to pass to
the WebSocket client
:open - The Proc called when a stream is opened (optional)
:message - The Proc called when a stream receives a message
:error - The Proc called when a stream receives an error (optional)
:close - The Proc called when a stream is closed (optional)
318 319 320 |
# File 'lib/binance/client/websocket.rb', line 318 def ticker(symbol:, methods:) single stream: { symbol: symbol, type: 'ticker' }, methods: methods end |
#trade(symbol:, methods:) ⇒ Object
Public: Create a Trade stream
:symbol - The String symbol the stream will listen to
:methods - The Hash which contains the event handler methods to pass to
the WebSocket client
:open - The Proc called when a stream is opened (optional)
:message - The Proc called when a stream receives a message
:error - The Proc called when a stream receives an error (optional)
:close - The Proc called when a stream is closed (optional)
285 286 287 |
# File 'lib/binance/client/websocket.rb', line 285 def trade(symbol:, methods:) single stream: { symbol: symbol, type: 'trade' }, methods: methods end |
#user_data(listen_key:, methods:) ⇒ Object
Public: Create a User Data stream
listen_key - The String key the stream will listen to, attained by
interacting with the REST API userDataStream endpoint
:methods - The Hash which contains the event handler methods to pass to
the WebSocket client
:open - The Proc called when a stream is opened (optional)
:message - The Proc called when a stream receives a message
:error - The Proc called when a stream receives an error (optional)
:close - The Proc called when a stream is closed (optional)
377 378 379 |
# File 'lib/binance/client/websocket.rb', line 377 def user_data(listen_key:, methods:) create_stream "#{BASE_URL}/ws/#{listen_key}", methods: methods end |