gamelet-cli
Version:
Download project from code.gamelet.com, edit/test in vscode and sync back to server.
60 lines • 5.82 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", { value: true });
exports.socketManager = void 0;
const ManagerBase_1 = require("./ManagerBase");
const Message_1 = require("../messages/Message");
const PlayerManager_1 = require("./PlayerManager");
const gltserver_service_1 = require("../services/gltserver.service");
const StringUtil_1 = require("../utils/StringUtil");
const ClientManager_1 = require("./ClientManager");
const MonitorManager_1 = require("./MonitorManager");
class SocketManager extends ManagerBase_1.ManagerBase {
constructor() {
super('SocketManager');
}
initialize(gameIO) {
gameIO.on('connection', (socket) => {
//let player: Player = null;
socket.on(Message_1.MessageType.ECHO, (message, cb) => {
cb({ data: message });
});
socket.on(Message_1.MessageType.LOGIN, (token, msgVersion, networkDelay, cb) => {
this.onLogin(socket, token, msgVersion, networkDelay, '', 'en', cb);
});
socket.on(Message_1.MessageType.LOGIN2, (token, msgVersion, networkDelay, devToken, cb) => {
this.onLogin(socket, token, msgVersion, networkDelay, devToken, 'en', cb);
});
socket.on(Message_1.MessageType.LOGIN3, (token, msgVersion, networkDelay, devToken, locale, cb) => {
this.onLogin(socket, token, msgVersion, networkDelay, devToken, locale, cb);
});
});
}
onLogin(socket, token, msgVersion, networkDelay, _devToken, locale, cb) {
gltserver_service_1.serverService.validateAccessToken(token)
.then(user => {
this.designContract(user, 'no user returned');
if (socket.connected) {
return ClientManager_1.clientManager.getClientByToken(token, msgVersion)
.then(client => {
MonitorManager_1.monitorManager.log(client.project.code, 'player', 'user login', user.username);
let player = PlayerManager_1.playerManager.createPlayer(socket, client, user, networkDelay);
player.setLocale(locale);
cb({ data: player.toVo() });
return user;
});
}
else {
return user;
}
})
.catch(err => {
console.error(err);
if (socket.connected) {
cb({ error: StringUtil_1.StringUtil.errorToString(err) });
socket.disconnect(true);
}
});
}
}
exports.socketManager = new SocketManager();
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiU29ja2V0TWFuYWdlci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9zZXJ2ZXIvbWFuYWdlcnMvU29ja2V0TWFuYWdlci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7QUFBQSwrQ0FBNEM7QUFDNUMsaURBQWtEO0FBQ2xELG1EQUFnRDtBQUNoRCxxRUFBOEQ7QUFDOUQsb0RBQWlEO0FBQ2pELG1EQUFnRDtBQUNoRCxxREFBa0Q7QUFFbEQsTUFBTSxhQUFjLFNBQVEseUJBQVc7SUFFbkM7UUFDSSxLQUFLLENBQUMsZUFBZSxDQUFDLENBQUM7SUFDM0IsQ0FBQztJQUVNLFVBQVUsQ0FBQyxNQUEwQjtRQUN4QyxNQUFNLENBQUMsRUFBRSxDQUFDLFlBQVksRUFBRSxDQUFDLE1BQXVCLEVBQUUsRUFBRTtZQUNoRCw0QkFBNEI7WUFFNUIsTUFBTSxDQUFDLEVBQUUsQ0FBQyxxQkFBVyxDQUFDLElBQUksRUFBRSxDQUFDLE9BQU8sRUFBRSxFQUE4QixFQUFFLEVBQUU7Z0JBQ3BFLEVBQUUsQ0FBQyxFQUFFLElBQUksRUFBRSxPQUFPLEVBQUUsQ0FBQyxDQUFDO1lBQzFCLENBQUMsQ0FBQyxDQUFDO1lBQ0gsTUFBTSxDQUFDLEVBQUUsQ0FBQyxxQkFBVyxDQUFDLEtBQUssRUFBRSxDQUFDLEtBQWEsRUFBRSxVQUFrQixFQUFFLFlBQW9CLEVBQUUsRUFBOEIsRUFBRSxFQUFFO2dCQUNySCxJQUFJLENBQUMsT0FBTyxDQUFDLE1BQU0sRUFBRSxLQUFLLEVBQUUsVUFBVSxFQUFFLFlBQVksRUFBRSxFQUFFLEVBQUUsSUFBSSxFQUFFLEVBQUUsQ0FBQyxDQUFDO1lBQ3hFLENBQUMsQ0FBQyxDQUFDO1lBQ0gsTUFBTSxDQUFDLEVBQUUsQ0FBQyxxQkFBVyxDQUFDLE1BQU0sRUFBRSxDQUFDLEtBQWEsRUFBRSxVQUFrQixFQUFFLFlBQW9CLEVBQUUsUUFBZ0IsRUFBRSxFQUE4QixFQUFFLEVBQUU7Z0JBQ3hJLElBQUksQ0FBQyxPQUFPLENBQUMsTUFBTSxFQUFFLEtBQUssRUFBRSxVQUFVLEVBQUUsWUFBWSxFQUFFLFFBQVEsRUFBRSxJQUFJLEVBQUUsRUFBRSxDQUFDLENBQUM7WUFDOUUsQ0FBQyxDQUFDLENBQUM7WUFDSCxNQUFNLENBQUMsRUFBRSxDQUFDLHFCQUFXLENBQUMsTUFBTSxFQUFFLENBQUMsS0FBYSxFQUFFLFVBQWtCLEVBQUUsWUFBb0IsRUFBRSxRQUFnQixFQUFFLE1BQWMsRUFBRSxFQUE4QixFQUFFLEVBQUU7Z0JBQ3hKLElBQUksQ0FBQyxPQUFPLENBQUMsTUFBTSxFQUFFLEtBQUssRUFBRSxVQUFVLEVBQUUsWUFBWSxFQUFFLFFBQVEsRUFBRSxNQUFNLEVBQUUsRUFBRSxDQUFDLENBQUM7WUFDaEYsQ0FBQyxDQUFDLENBQUM7UUFDUCxDQUFDLENBQUMsQ0FBQztJQUNQLENBQUM7SUFFTyxPQUFPLENBQUMsTUFBdUIsRUFBRSxLQUFhLEVBQUUsVUFBa0IsRUFBRSxZQUFvQixFQUFFLFNBQWlCLEVBQUUsTUFBYyxFQUFFLEVBQThCO1FBQy9KLGlDQUFhLENBQUMsbUJBQW1CLENBQUMsS0FBSyxDQUFDO2FBQ25DLElBQUksQ0FBQyxJQUFJLENBQUMsRUFBRTtZQUNULElBQUksQ0FBQyxjQUFjLENBQUMsSUFBSSxFQUFFLGtCQUFrQixDQUFDLENBQUM7WUFFOUMsSUFBSSxNQUFNLENBQUMsU0FBUyxFQUFFO2dCQUNsQixPQUFPLDZCQUFhLENBQUMsZ0JBQWdCLENBQUMsS0FBSyxFQUFFLFVBQVUsQ0FBQztxQkFDbkQsSUFBSSxDQUFDLE1BQU0sQ0FBQyxFQUFFO29CQUNYLCtCQUFjLENBQUMsR0FBRyxDQUFDLE1BQU0sQ0FBQyxPQUFPLENBQUMsSUFBSSxFQUFFLFFBQVEsRUFBRSxZQUFZLEVBQUUsSUFBSSxDQUFDLFFBQVEsQ0FBQyxDQUFDO29CQUMvRSxJQUFJLE1BQU0sR0FBRyw2QkFBYSxDQUFDLFlBQVksQ0FBQyxNQUFNLEVBQUUsTUFBTSxFQUFFLElBQUksRUFBRSxZQUFZLENBQUMsQ0FBQztvQkFDNUUsTUFBTSxDQUFDLFNBQVMsQ0FBQyxNQUFNLENBQUMsQ0FBQztvQkFDekIsRUFBRSxDQUFDLEVBQUUsSUFBSSxFQUFFLE1BQU0sQ0FBQyxJQUFJLEVBQUUsRUFBRSxDQUFDLENBQUM7b0JBQzVCLE9BQU8sSUFBSSxDQUFDO2dCQUNoQixDQUFDLENBQUMsQ0FBQTthQUNUO2lCQUFNO2dCQUNILE9BQU8sSUFBSSxDQUFDO2FBQ2Y7UUFDTCxDQUFDLENBQUM7YUFDRCxLQUFLLENBQUMsR0FBRyxDQUFDLEVBQUU7WUFDVCxPQUFPLENBQUMsS0FBSyxDQUFDLEdBQUcsQ0FBQyxDQUFDO1lBQ25CLElBQUksTUFBTSxDQUFDLFNBQVMsRUFBRTtnQkFDbEIsRUFBRSxDQUFDLEVBQUUsS0FBSyxFQUFFLHVCQUFVLENBQUMsYUFBYSxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQztnQkFDN0MsTUFBTSxDQUFDLFVBQVUsQ0FBQyxJQUFJLENBQUMsQ0FBQzthQUMzQjtRQUNMLENBQUMsQ0FBQyxDQUFBO0lBQ1YsQ0FBQztDQUNKO0FBRVksUUFBQSxhQUFhLEdBQUcsSUFBSSxhQUFhLEVBQUUsQ0FBQyJ9