I've mentioned this before but logging it here formally :).
var Beam = require('beam-client-node');
var Tetris = require('beam-interactive-node');
var rjs = require('robotjs');
var stream = 1234;
var username = 'connor';
var password = 'password';
var beam = new Beam();
beam.use('password', {
username: username,
password: password
}).attempt().then(function () {
return beam.game.join(stream); //FAILS HERE
}).then(function (details) {
var robot = new Tetris.Robot(details);
robot.handshake();
robot.on('report', function (report) {
var mouse = robot.getMousePos();
rjs.moveMouse(
Math.round(mouse.x + 300 * report.joystick[0].mean),
Math.round(mouse.y + 300 * report.joystick[1].mean)
);
});
});
Getting around this using manual requesting but you might want to fix it up at some point.