UNPKG

sdg

Version:

pomelo ts

60 lines 5.53 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); const tslib_1 = require("tslib"); const lodash_1 = tslib_1.__importDefault(require("lodash")); const base_1 = tslib_1.__importDefault(require("../../base")); const backendSession_1 = require("./session/backendSession"); class BackendSessionService extends base_1.default { create(session) { if (lodash_1.default.isEmpty(session)) throw 'opts should not be empty'; return new backendSession_1.BackendSession(session, this); } async get(frontendId, sid) { const session = await this.rpc(frontendId, 'sys', 'sessionRemote', 'getBackendSessionBySid', [sid]); return this.createBackendSession(session)[0]; } /** * Get backend sessions by frontend server id and user id. * @param {String} frontendId frontend server id that session attached * @param {String} uid user id binded with the session */ async getByUid(frontendId, uid) { return this.rpc(frontendId, 'sys', 'sessionRemote', 'getBackendSessionsByUid', [uid]); } /** * Kick a session by session id. * @param {String} frontendId cooperating frontend server id * @param {Number} sid session id * @param {String} reason */ async kickBySid(frontendId, sid, reason) { return this.rpc(frontendId, 'sys', 'sessionRemote', 'kickBySid', [sid, reason]); } async kickByUid(frontendId, uid, reason) { return this.rpc(frontendId, 'sys', 'sessionRemote', 'kickByUid', [uid, reason]); } async bind(frontendId, sid, uid) { return this.rpc(frontendId, 'sys', 'sessionRemote', 'bind', [sid, uid]); } async unbind(frontendId, sid, uid) { return this.rpc(frontendId, 'sys', 'sessionRemote', 'unbind', [sid, uid]); } async push(frontendId, sid, key, value) { return this.rpc(frontendId, 'sys', 'sessionRemote', 'push', [sid, key, value]); } async pushAll(frontendId, sid, settings) { return this.rpc(frontendId, 'sys', 'sessionRemote', 'pushAll', [sid, settings]); } async rpc(frontendId, namespace, service, method, args) { return this.app.rpcInvoke(frontendId, { namespace, service, method, args }); } createBackendSession(sessions) { if (!Array.isArray(sessions)) sessions = [sessions]; return sessions.map(session => this.create(session)); } } exports.default = BackendSessionService; ; //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYmFja2VuZFNlc3Npb25TZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL2NvbW1vbi9zZXJ2aWNlL2JhY2tlbmRTZXNzaW9uU2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7QUFBQSw0REFBdUI7QUFFdkIsOERBQThCO0FBQzlCLDZEQUEwRDtBQUcxRCxNQUFxQixxQkFBc0IsU0FBUSxjQUFJO0lBQzlDLE1BQU0sQ0FBQyxPQUErQjtRQUMzQyxJQUFJLGdCQUFDLENBQUMsT0FBTyxDQUFDLE9BQU8sQ0FBQztZQUFFLE1BQU0sMEJBQTBCLENBQUM7UUFFekQsT0FBTyxJQUFJLCtCQUFjLENBQUMsT0FBTyxFQUFFLElBQUksQ0FBQyxDQUFDO0lBQzNDLENBQUM7SUFFTSxLQUFLLENBQUMsR0FBRyxDQUFDLFVBQXVCLEVBQUUsR0FBUTtRQUNoRCxNQUFNLE9BQU8sR0FBRyxNQUFNLElBQUksQ0FBQyxHQUFHLENBQUMsVUFBVSxFQUFFLEtBQUssRUFBRSxlQUFlLEVBQUUsd0JBQXdCLEVBQUUsQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDO1FBQ3BHLE9BQU8sSUFBSSxDQUFDLG9CQUFvQixDQUFDLE9BQU8sQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDO0lBQy9DLENBQUM7SUFDRDs7OztPQUlHO0lBQ0ksS0FBSyxDQUFDLFFBQVEsQ0FBQyxVQUF1QixFQUFFLEdBQVE7UUFDckQsT0FBTyxJQUFJLENBQUMsR0FBRyxDQUFDLFVBQVUsRUFBRSxLQUFLLEVBQUUsZUFBZSxFQUFFLHlCQUF5QixFQUFFLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQztJQUN4RixDQUFDO0lBQ0Q7Ozs7O09BS0c7SUFDSSxLQUFLLENBQUMsU0FBUyxDQUFDLFVBQXVCLEVBQUUsR0FBUSxFQUFFLE1BQWU7UUFDdkUsT0FBTyxJQUFJLENBQUMsR0FBRyxDQUFDLFVBQVUsRUFBRSxLQUFLLEVBQUUsZUFBZSxFQUFFLFdBQVcsRUFBRSxDQUFDLEdBQUcsRUFBRSxNQUFNLENBQUMsQ0FBQyxDQUFDO0lBQ2xGLENBQUM7SUFDTSxLQUFLLENBQUMsU0FBUyxDQUFDLFVBQXVCLEVBQUUsR0FBUSxFQUFFLE1BQWU7UUFDdkUsT0FBTyxJQUFJLENBQUMsR0FBRyxDQUFDLFVBQVUsRUFBRSxLQUFLLEVBQUUsZUFBZSxFQUFFLFdBQVcsRUFBRSxDQUFDLEdBQUcsRUFBRSxNQUFNLENBQUMsQ0FBQyxDQUFDO0lBQ2xGLENBQUM7SUFDTSxLQUFLLENBQUMsSUFBSSxDQUFDLFVBQXVCLEVBQUUsR0FBUSxFQUFFLEdBQVE7UUFDM0QsT0FBTyxJQUFJLENBQUMsR0FBRyxDQUFDLFVBQVUsRUFBRSxLQUFLLEVBQUUsZUFBZSxFQUFFLE1BQU0sRUFBRSxDQUFDLEdBQUcsRUFBRSxHQUFHLENBQUMsQ0FBQyxDQUFDO0lBQzFFLENBQUM7SUFDTSxLQUFLLENBQUMsTUFBTSxDQUFDLFVBQXVCLEVBQUUsR0FBUSxFQUFFLEdBQVE7UUFDN0QsT0FBTyxJQUFJLENBQUMsR0FBRyxDQUFDLFVBQVUsRUFBRSxLQUFLLEVBQUUsZUFBZSxFQUFFLFFBQVEsRUFBQyxDQUFDLEdBQUcsRUFBRSxHQUFHLENBQUMsQ0FBQyxDQUFDO0lBQzNFLENBQUM7SUFDTSxLQUFLLENBQUMsSUFBSSxDQUFDLFVBQXVCLEVBQUUsR0FBUSxFQUFFLEdBQVcsRUFBRSxLQUFhO1FBQzdFLE9BQU8sSUFBSSxDQUFDLEdBQUcsQ0FBQyxVQUFVLEVBQUUsS0FBSyxFQUFFLGVBQWUsRUFBRSxNQUFNLEVBQUUsQ0FBQyxHQUFHLEVBQUUsR0FBRyxFQUFFLEtBQUssQ0FBQyxDQUFDLENBQUM7SUFDakYsQ0FBQztJQUNNLEtBQUssQ0FBQyxPQUFPLENBQUMsVUFBdUIsRUFBRSxHQUFRLEVBQUUsUUFBaUI7UUFDdkUsT0FBTyxJQUFJLENBQUMsR0FBRyxDQUFDLFVBQVUsRUFBRSxLQUFLLEVBQUUsZUFBZSxFQUFFLFNBQVMsRUFBRSxDQUFDLEdBQUcsRUFBRSxRQUFRLENBQUMsQ0FBQyxDQUFDO0lBQ2xGLENBQUM7SUFFTyxLQUFLLENBQUMsR0FBRyxDQUFDLFVBQXVCLEVBQUUsU0FBaUIsRUFBRSxPQUFlLEVBQUUsTUFBYyxFQUFFLElBQVc7UUFDeEcsT0FBTyxJQUFJLENBQUMsR0FBRyxDQUFDLFNBQVMsQ0FBQyxVQUFVLEVBQUUsRUFBRSxTQUFTLEVBQUUsT0FBTyxFQUFFLE1BQU0sRUFBRSxJQUFJLEVBQUUsQ0FBQyxDQUFDO0lBQzlFLENBQUM7SUFFTyxvQkFBb0IsQ0FBQyxRQUEyRDtRQUN0RixJQUFJLENBQUMsS0FBSyxDQUFDLE9BQU8sQ0FBQyxRQUFRLENBQUM7WUFBRSxRQUFRLEdBQUcsQ0FBQyxRQUFRLENBQUMsQ0FBQztRQUVwRCxPQUFPLFFBQVEsQ0FBQyxHQUFHLENBQUMsT0FBTyxDQUFDLEVBQUUsQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLE9BQU8sQ0FBQyxDQUFDLENBQUE7SUFDdEQsQ0FBQztDQUNGO0FBckRELHdDQXFEQztBQUFBLENBQUMifQ==