Private WebSocket
Public WebSocket
Optional[capture
The Symbol.for('nodejs.rejection') method
is called in case a promise rejection happens when
emitting an event and captureRejections is
enabled on the emitter. It is possible to use
events.captureRejectionSymbol in place of
Symbol.for('nodejs.rejection').
import { EventEmitter, captureRejectionSymbol } from 'node:events';
class MyClass extends EventEmitter {
constructor() {
super({ captureRejections: true });
}
[captureRejectionSymbol](err, event, ...args) {
console.log('rejection happened for', event, 'with', err, ...args);
this.destroy(err);
}
destroy(err) {
// Tear the resource down here.
}
}
Authenticate to the private websocket.
Connect to the private websocket.
Connect to the public websocket.
Disconnect from the private websocket.
Disconnect from the public websocket.
Returns an array listing the events for which the emitter has registered listeners.
import { EventEmitter } from 'node:events';
const myEE = new EventEmitter();
myEE.on('foo', () => {});
myEE.on('bar', () => {});
const sym = Symbol('symbol');
myEE.on(sym, () => {});
console.log(myEE.eventNames());
// Prints: [ 'foo', 'bar', Symbol(symbol) ]
Get the list of current private subscriptions.
Get the list of current public subscriptions.
Returns the number of listeners listening for the event
named eventName. If
listener is provided, it will return how
many times the listener is found in the list of the
listeners of the event.
The name of the event being listened for
Optionallistener:
(...args:
any[])
=>
void
The event handler function
Returns a copy of the array of listeners for the event
named eventName.
server.on('connection', (stream) => {
console.log('someone connected!');
});
console.log(util.inspect(server.listeners('connection')));
// Prints: [ [Function] ]
Send a ping message to the private server.
Send a ping message to the public server.
Returns a copy of the array of listeners for the event
named eventName, including any wrappers
(such as those created by .once()).
import { EventEmitter } from 'node:events';
const emitter = new EventEmitter();
emitter.once('log', () => console.log('log once'));
// Returns a new Array with a function `onceWrapper` which has a property
// `listener` which contains the original listener bound above
const listeners = emitter.rawListeners('log');
const logFnWrapper = listeners[0];
// Logs "log once" to the console and does not unbind the `once` event
logFnWrapper.listener();
// Logs "log once" to the console and removes the listener
logFnWrapper();
emitter.on('log', () => console.log('log persistently'));
// Will return a new Array with a single function bound by `.on()` above
const newListeners = emitter.rawListeners('log');
// Logs "log persistently" twice
newListeners[0]();
emitter.emit('log');
Removes all listeners, or those of the specified
eventName.
It is bad practice to remove listeners added elsewhere
in the code, particularly when the
EventEmitter instance was created by some
other component or module (e.g. sockets or file
streams).
Returns a reference to the EventEmitter, so
that calls can be chained.
OptionaleventName:
string
|
symbol
Removes the specified listener from the
listener array for the event named
eventName.
const callback = (stream) => {
console.log('someone connected!');
};
server.on('connection', callback);
// ...
server.removeListener('connection', callback);
removeListener() will remove, at most, one
instance of a listener from the listener array. If any
single listener has been added multiple times to the
listener array for the specified eventName,
then removeListener() must be called
multiple times to remove each instance.
Once an event is emitted, all listeners attached to it
at the time of emitting are called in order. This
implies that any removeListener() or
removeAllListeners() calls
after emitting and before the last
listener finishes execution will not remove them from
emit() in progress. Subsequent events
behave as expected.
import { EventEmitter } from 'node:events';
class MyEmitter extends EventEmitter {}
const myEmitter = new MyEmitter();
const callbackA = () => {
console.log('A');
myEmitter.removeListener('event', callbackB);
};
const callbackB = () => {
console.log('B');
};
myEmitter.on('event', callbackA);
myEmitter.on('event', callbackB);
// callbackA removes listener callbackB but it will still be called.
// Internal listener array at time of emit [callbackA, callbackB]
myEmitter.emit('event');
// Prints:
// A
// B
// callbackB is now removed.
// Internal listener array [callbackA]
myEmitter.emit('event');
// Prints:
// A
Because listeners are managed using an internal array,
calling this will change the position indexes of any
listener registered after the listener being
removed. This will not impact the order in which
listeners are called, but it means that any copies of
the listener array as returned by the
emitter.listeners() method will need to be
recreated.
When a single function has been added as a handler
multiple times for a single event (as in the example
below), removeListener() will remove the
most recently added instance. In the example the
once('ping') listener is removed:
import { EventEmitter } from 'node:events';
const ee = new EventEmitter();
function pong() {
console.log('pong');
}
ee.on('ping', pong);
ee.once('ping', pong);
ee.removeListener('ping', pong);
ee.emit('ping');
ee.emit('ping');
Returns a reference to the EventEmitter, so
that calls can be chained.
Send a message to the WebSocket server
By default EventEmitters will print a
warning if more than 10 listeners are added
for a particular event. This is a useful default that
helps finding memory leaks. The
emitter.setMaxListeners() method allows the
limit to be modified for this specific
EventEmitter instance. The value can be set
to Infinity (or 0) to indicate
an unlimited number of listeners.
Returns a reference to the EventEmitter, so
that calls can be chained.
Subscribe to the balances channel.
Subscribe to the book channel.
Subscribe to the channel (candles).
Subscribe to the book_lv2 channel.
Subscribe to the orders channel.
Subscribe to the ticker channel.
Subscribe to the trades channel.
Unsubscribe from the balances channel.
Unsubscribe from the book channel.
Unsubscribe from the channel (candles).
Unsubscribe from the book_lv2 channel.
Unsubscribe from the orders channel.
Unsubscribe from all public channels.
Unsubscribe from all public channels.
Unsubscribe from the ticker channel.
Unsubscribe from the trades channel.
Create WebSocketClient.