后台添加推送奇遇事件功能

This commit is contained in:
luying
2020-10-19 17:31:45 +08:00
parent 99e50c9c36
commit 0da6b7c169
10 changed files with 227 additions and 9 deletions

View File

@@ -2,6 +2,7 @@ import { STATUS } from './../../../consts/statusCode';
import { EquipModel } from './../../../db/Equip';
import { RoleModel } from './../../../db/Role';
import { UserModel } from '../../../db/User';
import { GMUserModel } from '../../../db/GMUser';
import { Application, Session } from 'pinus';
import {FrontendSession} from 'pinus';
import { HeroModel } from './../../../db/Hero';
@@ -22,6 +23,7 @@ export class EntryHandler {
* @param {Object} session current session object
*/
async enter(msg: { token: string, serverId: number }, session: FrontendSession) {
console.log('******enter')
let self = this;
let serverId = msg.serverId;
let sessionService = self.app.get('sessionService');
@@ -97,4 +99,43 @@ export class EntryHandler {
this.app.rpc.battle.eventBattleRemote.kick.route(session)(roleId, this.app.get('serverId'));
// this.app.rpc.chat.chatRemote.kick.route(session, true)(session.uid, this.app.get('serverId'), session.get('rid'));
}
/**
* New client entry chat server.
*
* @param {Object} msg request message
* @param {Object} session current session object
*/
async gmEnter(msg: { token: string, serverId: number }, session: FrontendSession) {
let self = this;
let user = await GMUserModel.getGmAccountByToken(msg.token);
if (!user) {
console.log('user token not found');
return resResult(STATUS.TOKEN_ERR);
}
console.log(self.app.get('serverId'));
await session.abind(user.username);
session.set('uid', user.uid);
session.set('roleId', user.username);
session.set('roleName', user.name);
session.set('eventStatus', 0);
session.set('sid', self.app.get('serverId'));
session.push('sid', () => {});
session.push('roleId', () => {});
session.push('roleName', () => {});
session.push('eventStatus', () => {});
// session.push('rid', function (err) {
// if (err) {
// console.error('set rid for session service failed! error is : %j', err.stack);
// }
// });
session.on('closed', this.onUserLeave.bind(this));
// put user into channel
return resResult(STATUS.SUCCESS);
}
}