aboutsummaryrefslogtreecommitdiffstats
path: root/binance.js
blob: 007f7848d7187cbba01030666d26d132dc2ee554 (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
const WebSocket = require("ws");

module.exports = (app, socket) => {
  const binance = new WebSocket(
    "wss://stream.binance.com:9443/ws/btcusdt@ticker"
  );

  binance.onmessage = async function(event) {
    let msg = JSON.parse(event.data);
    app.set("bid", msg.b);
    app.set("ask", msg.a);
    app.set("last", msg.l);

    let fx = app.get("rates");
    if (!fx) return;
    let rates = {};

    Object.keys(fx).map(symbol => {
      rates[symbol] = msg.a * fx[symbol];
    });

    socket.emit("rates", rates);
  };
};