public void OnMsg(Packet packet) { //首次连接第一个协议必须是user token var protoPacket = ProtoPacket.FromRecvBuf(packet.Bytes, 0, packet.Length); var id = protoPacket.protoId; ReqDispatcher.Instance.Dispatch(this, id, protoPacket); }
public void OnReceive(Packet packet) { var protoPacket = ProtoPacket.FromRecvBuf(packet.Bytes, 0, packet.Length); var id = protoPacket.protoId; DCLog.LogEx("receive protoId ", id); if (id > 0) { mIdToRecord.Remove(id); //长期监听的先执行 Invoke(id, protoPacket, mIdToNormalHandler); Invoke(id, protoPacket, mIdToOnceHandler); mIdToOnceHandler.Remove(id); } }
public void OnMsg(Packet packet) { //首次连接第一个协议必须是user token var protoPacket = ProtoPacket.FromRecvBuf(packet.Bytes, 0, packet.Length); if (protoPacket.ProtoObj is PTestDemoClsReq req) { var f1 = req.F1; if (f1 == null) { DCLog.Log("default is null"); } } //echo to client mChannel.Send( SendBuf.From(Encoding.UTF8.GetBytes("echo ")), SendBuf.From(packet.Bytes, 0, packet.Length)); }