private void button11_Click(object sender, EventArgs e) { label1.Text = ""; try { string datastring = "{\"frame_type\":\"real_time_data\",\"equipment_type\":\"dust_noise\",\"time_stamp\":\"2019-08-0822:27:00\",\"frame_token\":\"z7d8jfgn39ki987779jh2\",\"short_link\":\"true\",\"data\":{\"sn\":\"12345678\",\"timestamp\":1565338446000,\"pm2_5\":231,\"pm10\":000,\"tsp\":000,\"noise\":1300,\"temperature\":2000,\"humidity\":4500,\"wind_speed\":030,\"wind_grade\":1,\"wind_direction\":000,\"air_pressure\":000,\"rainfall\":000}}"; Send_frame temp = JsonConvert.DeserializeObject <Send_frame>(datastring); Dust_noise__send_frame tower_Send_Frame = JsonConvert.DeserializeObject <Dust_noise__send_frame>(temp.data.ToString()); //第一帧 tower_Send_Frame.pm2_5 = Class1.NextDouble1(new Random(), 200, 500); tower_Send_Frame.pm10 = Class1.NextDouble1(new Random(), 200, 500); tower_Send_Frame.noise = Class1.NextDouble1(new Random(), 100, 170); tower_Send_Frame.timestamp = Class1.ConvertDateTimeLong(DateTime.Now); temp.data = tower_Send_Frame; temp.time_stamp = DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss"); Socket client = new Socket(AddressFamily.InterNetwork, SocketType.Stream, ProtocolType.Tcp); client.Connect("39.104.228.149", 6000); string sendstring = JsonConvert.SerializeObject(temp); int t = client.Send(Encoding.UTF8.GetBytes(sendstring)); client.Close(); MessageBox.Show("完成"); } catch (Exception ex) { MessageBox.Show(ex.Message); } label1.Text = ""; }
private void button12_Click(object sender, EventArgs e) { string project_code = textBox1.Text; string personal_id_code = textBox2.Text; string in_or_out = comboBox1.Text; try { string datastring = "{\"frame_type\":\"real_time_data\",\"equipment_type\":\"personnel\",\"time_stamp\":\"2019-08-0822:27:00\",\"frame_token\":\"z7d8jfgn39ki987779jh2\",\"short_link\":\"true\",\"data\":{\"project_code\":\"" + project_code + "\",\"sn\":\"13246\",\"gate_no\":\"145\",\"timestamp\":" + Class1.ConvertDateTimeLong(DateTime.Now) + ",\"channel_no\":\"1\",\"cert_mode\":\"03\",\"in_or_out\":\"" + in_or_out + "\",\"personal_id_code\":\"" + personal_id_code + "\",\"features_code\":\"\"}}"; // string datastring =string.Format("{\"frame_type\":\"real_time_data\",\"equipment_type\":\"personnel\",\"time_stamp\":\"2019-08-0822:27:00\",\"frame_token\":\"z7d8jfgn39ki987779jh2\",\"short_link\":\"true\",\"data\":{\"project_code\":\"{0}\",\"sn\":\"13246\",\"gate_no\":\"145\",\"timestamp\":{1},\"channel_no\":\"1\",\"cert_mode\":\"03\",\"in_or_out\":\"{2}\",\"personal_id_code\":\"{3}\",\"features_code\":\"\"}}", project_code, Class1.ConvertDateTimeLong(DateTime.Now), in_or_out, personal_id_code); Send_frame temp = JsonConvert.DeserializeObject <Send_frame>(datastring); Personnel_send_frame tower_Send_Frame = JsonConvert.DeserializeObject <Personnel_send_frame>(temp.data.ToString()); //第一帧 tower_Send_Frame.timestamp = Class1.ConvertDateTimeLong(DateTime.Now); temp.data = tower_Send_Frame; temp.time_stamp = DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss"); Socket client = new Socket(AddressFamily.InterNetwork, SocketType.Stream, ProtocolType.Tcp); client.Connect("39.104.228.149", 6000); string sendstring = JsonConvert.SerializeObject(temp); int t = client.Send(Encoding.UTF8.GetBytes(sendstring)); client.Close(); MessageBox.Show("完成"); } catch (Exception ex) { MessageBox.Show(ex.Message); } label1.Text = ""; }
private void button7_Click(object sender, EventArgs e) { label1.Text = "请稍后。。。。。。"; label1.Refresh(); try { string datastring = "{\"frame_type\":\"real_time_data\",\"equipment_type\":\"discharge\",\"time_stamp\":\"2019-08-0822:27:00\",\"frame_token\":\"z7d8jfgn39ki987779jh2\",\"short_link\":\"true\",\"data\":{\"sn\":\"12345678\",\"is_warning\":\"Y\",\"warning_type\":[\"04\"],\"timestamp\":1565338446000,\"weight\":231,\"dip_x\":000,\"dip_y\":000}}"; Send_frame temp = JsonConvert.DeserializeObject <Send_frame>(datastring); Discharge__send_frame tower_Send_Frame = JsonConvert.DeserializeObject <Discharge__send_frame>(temp.data.ToString()); //第一帧 tower_Send_Frame.weight = 0; tower_Send_Frame.is_warning = "N"; tower_Send_Frame.warning_type = new string[] { }; tower_Send_Frame.timestamp = Class1.ConvertDateTimeLong(DateTime.Now); temp.data = tower_Send_Frame; temp.time_stamp = DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss"); Socket client = new Socket(AddressFamily.InterNetwork, SocketType.Stream, ProtocolType.Tcp); client.Connect("39.104.228.149", 6000); string sendstring = JsonConvert.SerializeObject(temp); int t = client.Send(Encoding.UTF8.GetBytes(sendstring)); client.Close(); Thread.Sleep(1000); MessageBox.Show("完成"); } catch (Exception ex) { MessageBox.Show(ex.Message); } label1.Text = ""; }
/// <summary> /// 塔吊不报警循环 /// </summary> /// <param name="sender"></param> /// <param name="e"></param> private void button2_Click(object sender, EventArgs e) { label1.Text = "请稍后。。。。。。"; label1.Refresh(); try { string datastring = "{\"frame_type\":\"real_time_data\",\"equipment_type\":\"tower\",\"time_stamp\":\"2019-08-0822:27:00\",\"frame_token\":\"z7d8jfgn39ki987779jh2\",\"short_link\":\"true\",\"data\":{\"sn\":\"12345678\",\"is_warning\":\"Y\",\"warning_type\":[\"04\",\"05\"],\"timestamp\":1565338446000,\"weight\":231,\"height\":231,\"range\":231,\"rotation\":231,\"moment_forces\":231,\"wind_grade\":2,\"wind_speed\":231,\"dip_x\":000,\"dip_y\":000,\"boom_arm_length\":60,\"blance_arm_length\":1,\"tower_body_height\":55,\"tower_hat_height\":2,\"driver_id_code\":\"411402188754652254\"}}"; Send_frame temp = JsonConvert.DeserializeObject <Send_frame>(datastring); Tower_send_frame tower_Send_Frame = JsonConvert.DeserializeObject <Tower_send_frame>(temp.data.ToString()); //第一帧 tower_Send_Frame.weight = Class1.NextDouble1(new Random(), 0.3, 5.0); tower_Send_Frame.height = Class1.NextDouble1(new Random(), 10, 55); tower_Send_Frame.is_warning = "N"; tower_Send_Frame.warning_type = new string[] { }; tower_Send_Frame.timestamp = Class1.ConvertDateTimeLong(DateTime.Now); temp.data = tower_Send_Frame; temp.time_stamp = DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss"); Socket client = new Socket(AddressFamily.InterNetwork, SocketType.Stream, ProtocolType.Tcp); client.Connect("39.104.228.149", 6000); string sendstring = JsonConvert.SerializeObject(temp); int t = client.Send(Encoding.UTF8.GetBytes(sendstring)); client.Close(); Thread.Sleep(1000); //第二帧 tower_Send_Frame.weight = Class1.NextDouble1(new Random(), 0.3, 5.0); tower_Send_Frame.height = Class1.NextDouble1(new Random(), 10, 55); tower_Send_Frame.is_warning = "N"; tower_Send_Frame.warning_type = new string[] { }; tower_Send_Frame.timestamp = Class1.ConvertDateTimeLong(DateTime.Now); temp.data = tower_Send_Frame; temp.time_stamp = DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss"); client = new Socket(AddressFamily.InterNetwork, SocketType.Stream, ProtocolType.Tcp); client.Connect("39.104.228.149", 6000); sendstring = JsonConvert.SerializeObject(temp); t = client.Send(Encoding.UTF8.GetBytes(sendstring)); client.Close(); Thread.Sleep(1000); //第三帧 tower_Send_Frame.weight = 0.0d; tower_Send_Frame.height = Class1.NextDouble1(new Random(), 10, 55); tower_Send_Frame.is_warning = "N"; tower_Send_Frame.warning_type = new string[] { }; tower_Send_Frame.timestamp = Class1.ConvertDateTimeLong(DateTime.Now); temp.data = tower_Send_Frame; temp.time_stamp = DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss"); client = new Socket(AddressFamily.InterNetwork, SocketType.Stream, ProtocolType.Tcp); client.Connect("39.104.228.149", 6000); sendstring = JsonConvert.SerializeObject(temp); t = client.Send(Encoding.UTF8.GetBytes(sendstring)); client.Close(); MessageBox.Show("完成"); } catch (Exception ex) { MessageBox.Show(ex.Message); } label1.Text = ""; }
public static void OnResolveRecvMessage(byte[] b, int c, TcpSocketClient client) { try { string datastring = Encoding.UTF8.GetString(b, 0, c); Send_frame sf = JsonConvert.DeserializeObject <Send_frame>(datastring); if (sf == null) { //数据错误 string sendmessage = JsonConvert.SerializeObject(Iot_reply_frame.Get_reply_frame(Result_code.data_error, Result_code.data_error_des)); client.SendMessage(sendmessage); //杀死该socket Thread.Sleep(1000); client.DisSocket(); } //长链接 else if (sf.short_link == null) { if (sf.frame_type == Frame_type.注册帧) { string frame_token = Register_operation.Judge_vendor_code(sf.data); if (string.IsNullOrEmpty(frame_token)) { //数据错误 string sendmessage = JsonConvert.SerializeObject(Iot_reply_frame.Get_reply_frame(Result_code.vendor_code_error, Result_code.vendor_code_error_des)); client.SendMessage(sendmessage); //杀死该socket Thread.Sleep(1000); client.DisSocket(); } else { TcpClientBindingExternalClass TcpExtendTemp = client.External.External as TcpClientBindingExternalClass; TcpExtendTemp.uuid = frame_token; //frame_token //发送正确的应答 string sendmessage = JsonConvert.SerializeObject(Iot_reply_frame.Get_reply_frame(new Register_reply_frame() { frame_token = frame_token })); client.SendMessage(sendmessage); } } else if (sf.frame_type == Frame_type.心跳帧) { TcpClientBindingExternalClass TcpExtendTemp = client.External.External as TcpClientBindingExternalClass; //TcpExtendTemp.uuid = "";//frame_token if (TcpExtendTemp.uuid == null || TcpExtendTemp.uuid == "" || TcpExtendTemp.uuid != sf.frame_token) { //帧token错误 string sendmessage = JsonConvert.SerializeObject(Iot_reply_frame.Get_reply_frame(Result_code.frame_token_error, Result_code.frame_token_error_des)); client.SendMessage(sendmessage); //杀死该socket Thread.Sleep(1000); client.DisSocket(); } else { //正确应答 string sendmessage = JsonConvert.SerializeObject(Iot_reply_frame.Get_reply_frame(Result_code.success, Result_code.success_des)); client.SendMessage(sendmessage); } } else if (sf.frame_type == Frame_type.数据帧) { TcpClientBindingExternalClass TcpExtendTemp = client.External.External as TcpClientBindingExternalClass; //TcpExtendTemp.uuid = "";//frame_token if (TcpExtendTemp.uuid == null || TcpExtendTemp.uuid == "" || TcpExtendTemp.uuid != sf.frame_token) { //帧token错误 string sendmessage = JsonConvert.SerializeObject(Iot_reply_frame.Get_reply_frame(Result_code.frame_token_error, Result_code.frame_token_error_des)); client.SendMessage(sendmessage); //杀死该socket Thread.Sleep(1000); client.DisSocket(); } else { //正确应答 string sendmessage = JsonConvert.SerializeObject(Iot_reply_frame.Get_reply_frame(Result_code.success, Result_code.success_des)); client.SendMessage(sendmessage); //todo解析 Data_frame_operation.Data_operation(sf.equipment_type, sf.data); } } else { //数据错误 string sendmessage = JsonConvert.SerializeObject(Iot_reply_frame.Get_reply_frame(Result_code.data_error, Result_code.data_error_des)); client.SendMessage(sendmessage); //杀死该socket Thread.Sleep(1000); client.DisSocket(); } } //短链接 else if (sf.short_link == "true") { if (sf.frame_type == Frame_type.数据帧) { bool frame_token = Register_operation.Judge_vendor_code(sf.frame_token); if (!frame_token)//厂商验证码不正确 { //数据错误 string sendmessage = JsonConvert.SerializeObject(Iot_reply_frame.Get_reply_frame(Result_code.vendor_code_error, Result_code.vendor_code_error_des)); client.SendMessage(sendmessage); //杀死该socket Thread.Sleep(1000); client.DisSocket(); } else//厂商验证码正确 { //正确应答 string sendmessage = JsonConvert.SerializeObject(Iot_reply_frame.Get_reply_frame(Result_code.success, Result_code.success_des)); client.SendMessage(sendmessage); //todo解析 Data_frame_operation.Data_operation(sf.equipment_type, sf.data); //短链接差不多就杀死这个链接 Thread.Sleep(3000); client.DisSocket(); } } else { //数据错误 string sendmessage = JsonConvert.SerializeObject(Iot_reply_frame.Get_reply_frame(Result_code.data_error, Result_code.data_error_des)); client.SendMessage(sendmessage); //杀死该socket Thread.Sleep(1000); client.DisSocket(); } } else { //数据错误 string sendmessage = JsonConvert.SerializeObject(Iot_reply_frame.Get_reply_frame(Result_code.data_error, Result_code.data_error_des)); client.SendMessage(sendmessage); //杀死该socket Thread.Sleep(1000); client.DisSocket(); } } catch (Exception ex) { if (client != null) { string sendmessage = JsonConvert.SerializeObject(Iot_reply_frame.Get_reply_frame(Result_code.unknown_error, Result_code.unknown_error_des)); client.SendMessage(sendmessage); //杀死该socket Thread.Sleep(1000); client.DisSocket(); } } }