Example #1
0
 private void OnClientDataReceived(object sender, TcpClientDataReceivedEventArgs e)
 {
     if (DataReceived != null)
     {
         DataReceived(this, new ActorTransportDataReceivedEventArgs(e.Session.SessionKey, e.Data, e.DataOffset, e.DataLength));
     }
 }
Example #2
0
 static void server_ClientDataReceived(object sender, TcpClientDataReceivedEventArgs e)
 {
     var text = Encoding.UTF8.GetString(e.Data, e.DataOffset, e.DataLength);
     Console.Write(string.Format("Client : {0} {1} --> ", e.Session.RemoteEndPoint, e.Session));
     Console.WriteLine(string.Format("{0}", text));
     _server.Broadcast(Encoding.UTF8.GetBytes(text));
 }
Example #3
0
        static void server_ClientDataReceived(object sender, TcpClientDataReceivedEventArgs e)
        {
            var text = Encoding.UTF8.GetString(e.Data, e.DataOffset, e.DataLength);

            Console.Write(string.Format("Client : {0} {1} --> ", e.Session.RemoteEndPoint, e.Session));
            Console.WriteLine(string.Format("{0}", text));
            _server.Broadcast(Encoding.UTF8.GetBytes(text));
        }
Example #4
0
        /// <summary>
        /// 接收客户端发送的消息
        /// </summary>
        /// <param name="sender"></param>
        /// <param name="e"></param>
        private static void server_ClientDataReceived(object sender, TcpClientDataReceivedEventArgs e)
        {
            SockMsgJson actMsg = JsonBufHelper.BytesToObject <SockMsgJson>(e.Data, e.DataOffset, e.DataLength);

            if (actMsg == null)
            {
                return;
            }

            TasksSchedule tasksch = new TasksSchedule();

            Console.WriteLine("收到模拟器消息……");
            Console.WriteLine(actMsg.action + ":" + actMsg.tasknum + ":" + actMsg.context);
            switch (actMsg.action)
            {
            case SocketCase.Init:
                string imei        = actMsg.context;
                int    mobileIndex = VmManager.Instance.VmModels.Values.FirstOrDefault(vm => vm.Imei == imei).Index;
                AllConnectionKey.FirstOrDefault(p => p.Value.SessionKey == e.Session.SessionKey).Value.MobileIndex = mobileIndex;
                LogUtils.Information(string.Format("模拟器{0}绑定成功,IMEI{1}:", mobileIndex, imei));
                //writeLogs(string.Format("模拟器{0}绑定成功,IMEI{1}:", mobileIndex, imei));
                break;

            case SocketCase.ClientTask:          //更新任务状态
                int    tasknum = actMsg.tasknum;
                string status  = actMsg.context; //任务状态
                if (status != "")
                {
                    tasksch.UpdateTaskResval(tasknum, status);
                }
                break;

            case SocketCase.ClientPhone:                   //更新手机号码状态
                int phone   = actMsg.tasknum;
                int respone = Int32.Parse(actMsg.context); //响应状态
                tasksch.UpdatePhoneStatus(phone, respone);
                break;

            case SocketCase.ClientInitPhone:

                string[] datas     = actMsg.context.Split(new char[] { '|' });
                string   phoneImei = datas[0];
                string   phoneNum  = datas[1];

                var vmModel = VmManager.Instance.VmModels.Values.FirstOrDefault(vm => vm.Imei == phoneImei);
                if (vmModel != null)
                {
                    vmModel.PhoneNumber = phoneNum;
                }

                break;
            }
        }
Example #5
0
        private void OnClientDataReceived(object sender, TcpClientDataReceivedEventArgs e)
        {
            ActorTransportSession session = null;

            if (_sessions.TryGetValue(e.Session.SessionKey, out session))
            {
                if (DataReceived != null)
                {
                    DataReceived(this, new ActorTransportSessionDataReceivedEventArgs(session, e.Data, e.DataOffset, e.DataLength));
                }
            }
        }
Example #6
0
        private void _server_ClientDataReceived(object sender, TcpClientDataReceivedEventArgs e)
        {
            //throw new NotImplementedException();
            string dataStr = BitConverter.ToString(e.Data, e.DataOffset, e.DataLength).Replace("-", " ");

            //Encoding.ASCII.GetString(e.Data, e.DataOffset, e.DataLength);
            string resultStr = Encoding.Default.GetString(e.Data, e.DataOffset, e.DataLength);

            Console.WriteLine(dataStr);
            //string resultStr = "接收成功";
            e.Session.Send(Encoding.Default.GetBytes(resultStr));
        }
Example #7
0
        private void ProcessRpcReuqest(TcpClientDataReceivedEventArgs e, RpcRequestPayload payload)
        {
            try
            {
                JObject result = HandleRequest(payload);

                SendRpcResponse(e.Session, payload.Guid, result);
            }
            catch (Exception exception)
            {
                SendRpcException(e.Session, payload.Guid, exception);
            }
        }
        public override void server_ClientDataReceived(object sender, TcpClientDataReceivedEventArgs e)
        {
            MessageType type = (MessageType)e.Data[e.DataOffset];
            var         text = Encoding.UTF8.GetString(e.Data, e.DataOffset + 1, e.DataLength - 1);


            BaseMessage bm = BaseMessage.Factory(type, text);

            // bm.ShowMessage += OnMessageEvent; //任务是以消息的形式发送过来的,显示的话会刷屏
            bm.DataMessage += OnDataMessageEvent;
            // bm.ReLoad += ReLoadDel;
            bm.Receive();
        }
Example #9
0
        static void server_ClientDataReceived(object sender, TcpClientDataReceivedEventArgs e)
        {
            var text = Encoding.UTF8.GetString(e.Data, e.DataOffset, e.DataLength);

            Console.Write(string.Format("Client : {0} {1} --> ", e.Session.RemoteEndPoint, e.Session));
            if (e.DataLength < 1024 * 1024 * 1)
            {
                Console.WriteLine(text);
            }
            else
            {
                Console.WriteLine("{0} Bytes", e.DataLength);
            }

            _server.SendTo(e.Session, Encoding.UTF8.GetBytes(text));
        }
Example #10
0
        private void ClientDataReceived(object sender, TcpClientDataReceivedEventArgs e)
        {
            var text = Encoding.UTF8.GetString(e.Data, e.DataOffset, e.DataLength);

            Console.Write(string.Format("客户端 : {0} {1} --> ", e.Session.RemoteEndPoint, e.Session));
            if (e.DataLength < 256)
            {
                Console.WriteLine(text);
            }
            else
            {
                Console.WriteLine("{0} Bytes", e.DataLength);
            }

            Server.SendTo(e.Session, Encoding.UTF8.GetBytes("ok"));
        }
Example #11
0
        void OnClientDataReceived(object sender, TcpClientDataReceivedEventArgs e)
        {
            if (Settings.Default.DebugMode)
            {
                Log($"RpcAgent recv data, length:{e.DataLength}");
            }

            ; byte[] data = e.Data.Skip(e.DataOffset).Take(e.DataLength).ToArray();
            Message  msg  = data.AsSerializable <Message>();

            if (msg.Command == "rpc-request")
            {
                RpcRequestPayload payload = msg.Payload.AsSerializable <RpcRequestPayload>();

                ProcessRpcReuqest(e, payload);
            }
        }
        public override void server_ClientDataReceived(object sender, TcpClientDataReceivedEventArgs e)
        {
            MessageType type = (MessageType)e.Data[e.DataOffset];
            var         text = Encoding.UTF8.GetString(e.Data, e.DataOffset + 1, e.DataLength - 1);
            // OnDateMessageEvent(text);

            string str = string.Format("Client : {0}--> ", e.Session.RemoteEndPoint);

            OnMessageEvent(this, new MessageEventArgs(str));

            BaseMessage bm = BaseMessage.Factory(type, text);

            bm.ShowMessage += OnMessageEvent;
            bm.DataMessage += OnDataMessageEvent;
            bm.ReLoad      += ReLoadDel;
            bm.Receive();
        }
Example #13
0
 public abstract void server_ClientDataReceived(object sender, TcpClientDataReceivedEventArgs e);