void sendMessage() { // logger.info("WelCome To Face2face Chat Room, You Can Say Something Now: "); // Scanner sc = new Scanner(System.in); // String content = sc.nextLine(); String content = "Hello, I am Tom!"; // logger.info("{} Send Message: {} to {}", _userId, content, _friend); Chat.CPrivateChat.Builder cp = Chat.CPrivateChat.newBuilder(); cp.setContent(content); cp.setSelf(_userId); cp.setDest(_userId); ByteBuf byteBuf = Utils.pack2Client(cp.build()); _gateClientConnection.writeAndFlush(byteBuf); }
void sendCRegister(ChannelHandlerContext ctx, String userid, String passwd) { Auth.CRegister.Builder cb = Auth.CRegister.newBuilder(); cb.setUserid(userid); cb.setPasswd(passwd); ByteBuf byteBuf = Utils.pack2Client(cb.build()); ctx.writeAndFlush(byteBuf); logger.info("send CRegister userid:{}", _userId); }
void sendCLogin(ChannelHandlerContext ctx, String userid, String passwd) { Auth.CLogin.Builder loginInfo = Auth.CLogin.newBuilder(); loginInfo.setUserid(userid); loginInfo.setPasswd(passwd); loginInfo.setPlatform("ios"); loginInfo.setAppVersion("1.0.0"); ByteBuf byteBuf = Utils.pack2Client(loginInfo.build()); ctx.writeAndFlush(byteBuf); logger.info("send CLogin userid:{}", _userId); }
@Override protected void excute(Worker worker) throws TException { Chat.CPrivateChat msg = (Chat.CPrivateChat) _msg; ByteBuf byteBuf = null; //转发给auth byteBuf = Utils.pack2Server(_msg, ParseRegistryMap.CPRIVATECHAT, Internal.Dest.Auth, msg.getDest()); LogicServerHandler.getAuthLogicConnection().writeAndFlush(byteBuf); //给发消息的人回应 Auth.SResponse.Builder sr = Auth.SResponse.newBuilder(); sr.setCode(300); sr.setDesc("Server received message successed"); byteBuf = Utils.pack2Client(sr.build()); _ctx.writeAndFlush(byteBuf); } }
@Override protected void channelRead0(ChannelHandlerContext channelHandlerContext, Message message) throws Exception { Internal.GTransfer gtf = (Internal.GTransfer) message; Message cmd = ParseMap.getMessage(gtf.getPtoNum(), gtf.getMsg().toByteArray()); ByteBuf out = Utils.pack2Client(cmd); ClientConnectionMap.getClientConnection(gtf.getNetId()).getCtx().writeAndFlush(out); }
private void sendGreet2Logic() { Internal.Greet.Builder ig = Internal.Greet.newBuilder(); ig.setFrom(Internal.Greet.From.Auth); ByteBuf out = Utils.pack2Server(ig.build(), ParseRegistryMap.GREET, -1, Internal.Dest.Logic, "admin"); getAuthLogicConnection().writeAndFlush(out); logger.info("Auth send Green to Logic."); }
public static void sendResponse(int code, String desc, long netId,String userId) { Auth.SResponse.Builder sb = Auth.SResponse.newBuilder(); sb.setCode(code); sb.setDesc(desc); ByteBuf byteBuf = Utils.pack2Server(sb.build(), ParseRegistryMap.SRESPONSE, netId, Internal.Dest.Client, userId); AuthServerHandler.getGateAuthConnection().writeAndFlush(byteBuf); } }
@Override protected void excute(Worker worker) throws TException { Chat.CPrivateChat msg = (Chat.CPrivateChat) _msg; ByteBuf byteBuf; String dest = msg.getDest(); Long netid = AuthServerHandler.getNetidByUserid(dest); if(netid == null) { logger.error("Dest User not online"); return; } Chat.SPrivateChat.Builder sp = Chat.SPrivateChat.newBuilder(); sp.setContent(msg.getContent()); byteBuf = Utils.pack2Server(sp.build(), ParseRegistryMap.SPRIVATECHAT, netid, Internal.Dest.Gate, dest); _ctx.writeAndFlush(byteBuf); logger.info("message has send from {} to {}", msg.getSelf(), msg.getDest()); } }
public static void transfer2Auth(Message msg, ClientConnection conn) { ByteBuf byteBuf = null; if(msg instanceof Auth.CLogin) { String userId = ((Auth.CLogin) msg).getUserid(); byteBuf = Utils.pack2Server(msg, ParseMap.getPtoNum(msg), conn.getNetId(), Internal.Dest.Auth, userId); ClientConnectionMap.registerUserid(userId, conn.getNetId()); } else if(msg instanceof Auth.CRegister) { byteBuf = Utils.pack2Server(msg, ParseMap.getPtoNum(msg), conn.getNetId(), Internal.Dest.Auth, ((Auth.CRegister) msg).getUserid()); } GateAuthConnectionHandler.getGateAuthConnection().writeAndFlush(byteBuf); } }
public static void transfer2Logic(Message msg, ClientConnection conn) { ByteBuf byteBuf = null; if(conn.getUserId() == null ) { logger.error("User not login."); return; } if(msg instanceof Chat.CPrivateChat) { byteBuf = Utils.pack2Server(msg, ParseMap.getPtoNum(msg), conn.getNetId(), Internal.Dest.Logic, conn.getUserId()); } GateLogicConnectionHandler.getGatelogicConnection().writeAndFlush(byteBuf); }
@Override public void operationComplete(ChannelFuture future) throws Exception { if (future.isSuccess()) { //init registry ParseRegistryMap.initRegistry(); logger.info("Client[{}] connected Gate Successed...", index); } else { logger.error("Client[{}] connected Gate Failed", index); } } });
private void sendGreet2Auth() { //向auth送Greet协议 Internal.Greet.Builder ig = Internal.Greet.newBuilder(); ig.setFrom(Internal.Greet.From.Gate); ByteBuf out = Utils.pack2Server(ig.build(), ParseRegistryMap.GREET, -1, Internal.Dest.Auth, "admin"); getGateAuthConnection().writeAndFlush(out); logger.info("Gate send Green to Auth."); } }
@Override public void operationComplete(ChannelFuture future) throws Exception { if (future.isSuccess()) { ParseRegistryMap.initRegistry(); HandlerManager.initHandlers(); logger.info("[LogicServer] Started Successed, waiting for other server connect..."); } else { logger.error("[LogicServer] Started Failed");} }}); }
private void sendGreet2Logic() { Internal.Greet.Builder ig = Internal.Greet.newBuilder(); ig.setFrom(Internal.Greet.From.Gate); ByteBuf out = Utils.pack2Server(ig.build(), ParseRegistryMap.GREET, -1, Internal.Dest.Logic, "admin"); getGatelogicConnection().writeAndFlush(out); logger.info("Gate send Green to Logic."); } }
@Override public void operationComplete(ChannelFuture future) throws Exception { if (future.isSuccess()) { //init registry ParseRegistryMap.initRegistry(); HandlerManager.initHandlers(); logger.info("[AuthServer] Started Successed, waiting for other server connect..."); } else { logger.error("[AuthServer] Started Failed"); } } });
@Override public void operationComplete(ChannelFuture future) throws Exception { if (future.isSuccess()) { //init Registry ParseRegistryMap.initRegistry(); TransferHandlerMap.initRegistry(); logger.info("[GateServer] Started Successed, registry is complete, waiting for client connect..."); } else { logger.error("[GateServer] Started Failed, registry is incomplete"); } } });